Ayaan Zaidi
db576c4a2d
refactor(agents): trim native compaction ownership follow-up
2026-06-02 14:39:35 +05:30
Cameron Beeley
5e52a9b513
docs(cli-backends): document ownsNativeCompaction opt-out contract
2026-06-02 14:39:35 +05:30
Tosko4
5f505236a6
docs(android): document device apps command
2026-06-02 13:44:45 +05:30
Tosko4
3d1ec37129
feat(android): add installed apps node command
2026-06-02 13:44:45 +05:30
Onur Solmaz
a4b4fed412
fix(memory): validate memory index identity
...
* docs: add memory index identity plan
* fix(memory): validate memory index identity
* fix(memory): align status index identity with vector probe
* fix(memory): fail closed on stale fts-only search
* fix(memory): clear sessions-only identity reindex dirty state
* fix(memory): gate targeted session sync by index identity
* fix(memory): clear resolved index identity dirtiness
* fix(memory): block search on missing index identity
* fix(memory): preserve dirty events during identity reindex
* fix(memory): resolve provider aliases for index identity
* fix(memory): report missing identity states accurately
* fix(memory): mark missing session index identity dirty
* test(memory): expose provider alias resolver in mocks
* chore(memory): remove scratch implementation plan
* fix(memory): avoid automatic full reindex on provider cutover
* docs(memory): plan no-schema cutover repair
* fix(memory): pause vector search on index identity mismatch
* fix(memory): freeze dirty identity sync writes
* fix(memory): skip paused-index search retry
* test(memory): keep retry tests on same provider identity
* fix(memory): surface paused index recall
* chore(memory): remove scratch plan from pr
* fix(memory): preserve paused session dirtiness
* fix(memory): make paused recall warning explicit
* docs(memory): document explicit index repair
2026-06-02 14:22:25 +08:00
WJzz1
6349af6502
docs: add ClawHub CLI page ( #89297 )
...
Summary:
- Adds `docs/clawhub/cli.md` documenting OpenClaw skill/plugin ClawHub commands plus standalone ClawHub publish, sync, and transfer workflows.
- PR surface: Docs +82. Total +82 across 1 file.
- Reproducibility: not applicable. this is a docs-only missing-route repair rather than a runtime bug. Source ... rrent main lacks `docs/clawhub/cli.md` while navigation and existing docs already reference `/clawhub/cli`.
Automerge notes:
- PR branch already contained follow-up commit before automerge: docs: add ClawHub CLI page
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-8929…
Validation:
- ClawSweeper review passed for head 11e071c344 .
- Required merge gates passed before the squash merge.
Prepared head SHA: 11e071c344
Review: https://github.com/openclaw/openclaw/pull/89297#issuecomment-4598332147
Co-authored-by: Wang-Yeah623 <205193123+Wang-Yeah623@users.noreply.github.com >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com >
2026-06-02 04:13:50 +00:00
Peter Steinberger
9ead0ae921
fix: repair live model inference edge cases
...
Fix live model inference edge cases across provider streaming, model switching, outbound delivery, and gateway tool resolution.
Includes live/provider issue fixes and leaves #89100 explicitly partial for the remaining FM-2 group routing case.
2026-06-01 23:03:27 -04:00
Dallin Romney
0904f3e553
revert: undo gateway memory watch warning ( #89246 )
2026-06-01 15:32:42 -07:00
Dallin Romney
2405bbcbaf
fix(memory): warn on gateway watcher FD risk ( #89185 )
...
* fix(memory): default gateway memory watch off
* fix(memory): warn on gateway watcher fd risk
* fix(config): avoid warning helper narrowing
* fix(config): remove redundant warning boolean cast
* docs(memory): clarify watcher default wording
* docs(memory): simplify watcher warning copy
* fix(config): scope watcher warning to local gateway
2026-06-01 14:23:25 -07:00
Vyctor H. Brzezowski
05ea36a81f
docs: refresh ClawHub showcase cards ( #88734 )
2026-06-01 13:08:56 -07:00
NianJiu
5a55135146
fix(memory): retry transient FileProvider-backed reads ( #85351 )
2026-06-01 12:40:20 -07:00
Vincent Koc
d10d71cdb6
fix(codex): stabilize app-server cleanup tests
2026-06-01 13:15:05 +02:00
Peter Steinberger
8e28c773fe
chore(release): prepare 2026.6.1
2026-06-01 10:30:15 +01:00
Mason Huang
004835f4c7
fix(plugins): block untrusted workspace setup-only channel loads ( #86953 )
...
Summary:
- This PR blocks disabled workspace-origin channel plugins from setup-only scoped imports, rejects their channel registrations at registry assembly, documents the trust rule, and adds regression coverage.
- PR surface: Source +46, Tests +610, Docs +13. Total +669 across 22 files.
- Reproducibility: yes. source inspection gives a high-confidence reproduction path: current main's setup-only ... ce channel plugin can be imported before this PR. I did not run the repro locally in this read-only review.
Automerge notes:
- PR branch already contained follow-up commit before automerge: test(plugins): cover workspace channel registry guard
- PR branch already contained follow-up commit before automerge: fix(plugins): isolate setup channel registration errors
- PR branch already contained follow-up commit before automerge: fix(channels): mark raw catalog listing internal
- PR branch already contained follow-up commit before automerge: test(channels): cover trusted catalog filtering
- PR branch already contained follow-up commit before automerge: test(channels): mock raw catalog helper
- PR branch already contained follow-up commit before automerge: docs(changelog): credit setup channel hardening
Validation:
- ClawSweeper review passed for head 11438bc1a0 .
- Required merge gates passed before the squash merge.
Prepared head SHA: 11438bc1a0
Review: https://github.com/openclaw/openclaw/pull/86953#issuecomment-4545730044
Co-authored-by: masonxhuang <masonxhuang@tencent.com >
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: Mason Huang <masonxhuang@tencent.com >
Co-authored-by: Sebastien Tardif <sebtardif@ncf.ca >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: hxy91819
Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com >
2026-06-01 09:25:56 +00:00
Vincent Koc
f8e9ba3718
fix(codex): prevent aborted app-server turn handles
2026-06-01 10:12:36 +01:00
Peter Steinberger
1d4c1ba56d
fix: harden memory envelope sanitization
...
Co-authored-by: amittell <mittell@me.com >
2026-06-01 09:30:08 +01:00
Peter Steinberger
6173a4babb
docs(plugin-sdk): refresh API baseline
2026-06-01 06:29:51 +01:00
Peter Steinberger
db4990d260
refactor: compact copilot sessions through sdk state
...
Route Copilot compaction through SDK-backed state, remove marker sidecars, preserve auth/session binding behavior in SQLite-backed plugin state, and route Copilot CLI budget compaction through native harness compaction.
2026-06-01 01:18:46 -04:00
Peter Steinberger
d925249ac0
docs(plugin-sdk): refresh API baseline hash
2026-06-01 06:05:37 +01:00
amittell
945faf8e67
fix(memory-lancedb): reject envelope metadata sludge
...
Summary:
- Strip memory-lancedb envelope and metadata sludge before auto-capture/recall, including pending history wrappers, current-message reply context, message-tool delivery hints, media annotations, and marker-free channel envelopes.
- Expose bundled chat-channel IDs/prefixes through the plugin SDK so sanitizer matching follows the channel catalog.
- Refactor cron tool schemas to fresh factory instances while preserving runtime nullable clears and provider-facing OpenAPI projection.
Verification:
- git diff --check origin/main...HEAD
- ./node_modules/.bin/oxfmt --check src/plugin-sdk/chat-channel-ids.ts src/plugin-sdk/chat-channel-ids.test.ts extensions/memory-lancedb/index.ts extensions/memory-lancedb/index.test.ts src/agents/tools/cron-tool.ts src/agents/tools/cron-tool.schema.test.ts
- pnpm plugin-sdk:api:check
- node scripts/run-vitest.mjs run src/plugin-sdk/chat-channel-ids.test.ts extensions/memory-lancedb src/agents/tools/cron-tool.schema.test.ts src/agents/tools/cron-tool.test.ts --reporter=dot
- pnpm lint:extensions --threads=8
- .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main
- GitHub checks on 62d1da1257 : 139 pass, 0 pending, 0 fail, 22 skipped.
2026-06-01 00:57:25 -04:00
Peter Steinberger
5b79e81569
fix: harden CLI and plugin edge cases ( #88896 )
...
* fix: harden CLI and plugin edge cases
* fix: preserve explicit TTS provider credentials
* fix: preserve direct TTS credentials
* fix: type TTS credential hydration config
* fix: preserve scoped TTS channel credentials
* fix: pin hydrated TTS runtime config
* fix: satisfy TTS hydration lint
* fix: preserve inherited TTS provider keys
* fix: read resolved TTS provider keys
2026-06-01 00:30:12 -04:00
Peter Steinberger
3b802a7fbc
docs(plugin-sdk): refresh API baseline hash
2026-06-01 04:59:39 +01:00
Firas Alswihry
70c59f59b2
feat(dreaming): score candidates with shadow trial results
...
Add report-only memory-core dreaming shadow trial scoring and ranking helpers. Keep rank lookup keyed by durable candidate keys and document the advisory behavior. Thanks @iFiras-Max1.
2026-05-31 23:40:20 -04:00
Peter Steinberger
ebcdb637bb
perf(memory-core): defer embedding engine startup imports
2026-06-01 04:22:22 +01:00
Peter Steinberger
592b6e2916
docs(config): refresh config baseline hash
2026-06-01 04:20:57 +01:00
Peter Steinberger
6deded6698
fix: raise bootstrap file default limit
2026-06-01 04:02:51 +01:00
Peter Steinberger
f879e3d6a0
docs(plugin-sdk): refresh API baseline hash
2026-06-01 04:01:25 +01:00
Andy Ye
c317fd2bd7
docs(imessage): document SSH wrapper TCC send failure ( #88758 )
2026-05-31 23:00:08 -04:00
Dallin Romney
78165cc387
docs: clarify diffs language pack additions ( #88865 )
2026-05-31 19:24:45 -07:00
Andy Ye
921598442a
fix(hooks): expose inbound reply metadata before dispatch
...
Fixes #88521 .
Expose finalized inbound reply metadata on plugin-visible hook payloads so before_dispatch and message hooks can implement reply-aware behavior without channel-specific workarounds.
2026-05-31 22:15:17 -04:00
Peter Steinberger
0369672691
feat(minimax): add m3 model support ( #88860 )
2026-05-31 21:47:47 -04:00
Vincent Koc
b6bac3cc2b
test(agents): include Ollama in small live model matrix ( #87838 )
...
* test(agents): include Ollama in small live model matrix
* test: avoid Ollama cloud key in local live runs
* test: recognize Ollama env secret refs
* test: type Ollama live key fixtures
* test: prevent Ollama cloud auth in local live probes
* test: preserve equivalent Ollama live credentials
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-31 21:38:31 -04:00
EmpX2025
83f290005a
feat(ios): support native iPad display
...
Make the iOS app a universal iPhone+iPad app by targeting device family 1,2 in the XcodeGen source of truth.
Update iOS docs and App Store metadata so user-facing copy no longer describes the app as iPhone-only.
Verification:
- git diff --check
- cd apps/ios && xcodegen generate
- xcodebuild -project apps/ios/OpenClaw.xcodeproj -scheme OpenClaw -configuration Debug -destination 'platform=iOS Simulator,id=410B81D3-784E-4A01-B69C-490B79EAFCEA' CODE_SIGNING_ALLOWED=NO build
- GitHub CI: Real behavior proof, macos-swift, macos-node, check-docs, preflight, security-fast, actionlint, no-tabs, dependency-guard, OpenGrep
Thanks @EmpX2025.
2026-05-31 21:23:33 -04:00
Andy Ye
1b10739d60
fix(agents): guard vanished workspaces
...
Fixes #88333
Preserves contributor workspace contents when an attested workspace disappears or is partially regenerated, and clears OpenClaw-owned attestation state on delete/reset/uninstall.
Co-authored-by: Andy Ye <35905412+TurboTheTurtle@users.noreply.github.com >
2026-05-31 21:14:54 -04:00
Peter Steinberger
5443baa852
Persist plugin install index in SQLite ( #88794 )
...
* refactor: persist plugin install index in sqlite
* fix: merge legacy plugin index records into sqlite
* test: update plugin index sqlite fixtures
* fix: migrate custom plugin install indexes
* test: update plugin index sentinel
* fix: exclude migrated plugin index archives
* fix: read post-upgrade plugin index from sqlite
* fix: migrate legacy plugin index before agent runs
* fix: respect disabled persisted plugin registry reads
* test: type plugin install record fixtures
* fix: simplify plugin index record reader type
* test: fix sqlite plugin index CI fallout
* test: mock provider normalization in agent command tests
# Conflicts:
# src/commands/agent-command.test-mocks.ts
* build: remove unused ui three dependency
2026-05-31 20:51:33 -04:00
Vincent Koc
82d24b26ea
fix(workboard): wire task-backed board runs
...
Summary:
- remove the leftover Workboard mini-game/prototype surface
- wire autonomous Workboard card starts through Gateway task-backed agent runs
- reconcile card task/session lifecycle for starts, stops, stale tasks, reassignment, and default-agent sessions
- clarify dispatch summary copy and admin-only model override behavior
Verification:
- autoreview clean: no accepted/actionable findings
- targeted Workboard/UI Vitest: 72 tests passed
- Workboard extension Vitest: 9 tests passed
- UI build, docs list, docs format, diff check, and focused oxlint passed
- PR CI checks: 50 ok, 0 attention
- Testbox tbx_01kt07mk5sjyj2whjq2sc967hg: pnpm verify check phase passed; broad test phase exposed unrelated latest-main failures/stalls in memory, Codex app-server, provider timeout, command daemon env, Telegram worker OOM, and gateway-client timeout suites
2026-06-01 01:41:21 +01:00
Peter Steinberger
3491834d49
Migrate iMessage monitor state to SQLite ( #88797 )
...
* refactor: move imessage monitor state to sqlite
* test: use OpenClaw temp root in iMessage state helper
* test: avoid pending promise lint in chat tests
* test: harden gateway ci flakes
* test: align session list merge expectation
2026-06-01 00:19:51 +01:00
zhang-guiping
cbdb59b255
fix(agents): keep light isolated subagents lightweight
...
Keep native subagent spawns with `lightContext=true` and resolved isolated context out of context-engine pre-spawn preparation so they remain lightweight.
The normal isolated and forked context-engine lifecycle stays intact, and docs now call out the lightweight isolated exception.
Fixes #81214
2026-05-31 22:37:59 +01:00
Peter Steinberger
50f27ee91d
docs: document code-mode MCP API files
2026-05-31 22:33:06 +01:00
David
61e9961abb
fix(agents): expose session status route context
...
Expose session status route context so agents can distinguish session origin, active live route, and persisted delivery route.
Add maintainer fixup to keep active route metadata on the real live run key when policy and run keys differ.
Thanks @nxmxbbd.
Closes #84544
2026-05-31 22:25:47 +01:00
Peter Steinberger
8383e2e4d9
fix(doctor): keep post-upgrade JSON stable
2026-05-31 22:12:38 +01:00
Arnab Saha
6ed6120977
docs(doctor): document --post-upgrade and --json flags
2026-05-31 22:12:38 +01:00
Peter Steinberger
e681569536
feat: add code-mode MCP API files
...
* feat: add code-mode MCP API files
* fix: satisfy code-mode MCP lint
2026-05-31 21:29:06 +01:00
Peter Steinberger
b0679d1f13
refactor(channels): store inbound queues in SQLite
2026-05-31 21:15:29 +01:00
WT-WSL
462b52f62c
fix(ci): guard workflow template injection
...
Guard the remaining Windows Testbox workflow ref logging against GitHub Actions template injection by moving `target_ref` through step env before PowerShell reads it.
Extend the local workflow check wrapper to run pinned `zizmor` across every workflow file, and keep Workflow Sanity's CI audit explicit with trusted-base pre-commit and zizmor configs for pull-request runs.
Thanks @WT-WSL for the original report and patch.
Co-authored-by: dev111-actor <captaintobb@outlook.com >
2026-05-31 20:28:40 +01:00
charles-openclaw
a6f4de4a66
feat(gateway): support Tailscale Serve service names
...
Adds optional `gateway.tailscale.serviceName` support for Tailscale Serve so the Gateway Control UI can be exposed through a named Tailscale Service while existing hostname-based Serve and Funnel behavior stays unchanged.
The implementation validates `svc:<dns-label>`, passes the Service name to `tailscale serve`, clears named Service config with `tailscale serve clear <service>` when resetOnExit runs, and uses the derived Service hostname in startup logs, status output, and pairing URLs.
Verification:
- node scripts/run-vitest.mjs src/infra/tailscale.test.ts src/gateway/server-tailscale.test.ts src/config/config.gateway-tailscale-bind.test.ts src/gateway/startup-auth.test.ts src/commands/status.scan.shared.test.ts src/pairing/setup-code.test.ts
- .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main --parallel-tests "node scripts/run-vitest.mjs src/infra/tailscale.test.ts src/gateway/server-tailscale.test.ts src/config/config.gateway-tailscale-bind.test.ts src/gateway/startup-auth.test.ts src/commands/status.scan.shared.test.ts src/pairing/setup-code.test.ts"
- git diff --check
- git merge-tree --write-tree origin/main origin/pr/88691
Closes #88629 .
Co-authored-by: Charles OpenClaw <charles-openclaw@9bcfae.inboxapi.ai >
2026-05-31 20:05:02 +01:00
Jason
e74931778c
fix: preserve workspaces during state-only uninstall
...
Preserve workspace directories when `openclaw uninstall --state` removes local state, including configured workspaces and implicit per-agent workspaces resolved by the runtime. State-only uninstall now uses a cleanup plan that keeps those workspace roots unless `--workspace` is selected.
Fixes #75052 .
Proof:
- `git diff --check origin/main...HEAD`
- `pnpm exec oxfmt --check --threads=1 src/commands/cleanup-utils.ts src/commands/cleanup-utils.test.ts src/commands/uninstall.ts src/commands/uninstall.test.ts docs/cli/uninstall.md docs/install/uninstall.md`
- `node scripts/run-vitest.mjs src/commands/uninstall.test.ts src/commands/cleanup-utils.test.ts src/commands/reset.test.ts src/commands/agents.delete.test.ts`
- `node scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.core.test.json --incremental --tsBuildInfoFile /tmp/openclaw-pr75061-core-test-final-rebase2.tsbuildinfo`
- `pnpm docs:list`
- `node scripts/check-docs-mdx.mjs docs/cli/uninstall.md docs/install/uninstall.md`
- `.agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main`
- CI: https://github.com/openclaw/openclaw/actions/runs/26721260691
Co-authored-by: Jason-Bai <boybai.work@gmail.com >
2026-05-31 19:54:34 +01:00
Mert Başar
0ff5fe3a80
fix(auth): add force re-login recovery and fallback auth skips
...
Summary:
- Add forced provider re-login support that clears cached auth profiles before running provider login again.
- Add provider-auth remediation guidance and a session-scoped skip cache for known-bad fallback auth attempts.
- Wire session ids through agent command, auto-reply, and embedded compaction fallback callers so the skip cache applies on real run paths.
- Fail closed when forced auth profile removal cannot update the profile store.
Verification:
- Local format, lint, diff-check, focused Vitest shards, and autoreview passed.
- PR CI, CodeQL Security High, and Critical Quality agent-runtime-boundary passed on head 1b4e9e753e .
Co-authored-by: Mert Basar <MertBasar0@users.noreply.github.com >
2026-05-31 19:01:51 +01:00
Peter Steinberger
e014145ac1
docs: mention markdown host-local media sends ( #79658 )
2026-05-31 18:51:45 +01:00
Clever
9f7eaf06e1
docs: clarify host-local text media boundary
2026-05-31 18:51:45 +01:00