Commit Graph

938 Commits

Author SHA1 Message Date
Jesse Merhi
87eb450047 Check ClawHub trust before plugin installs (#81307)
Merged via squash.

Prepared head SHA: 273fd7c20e
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
Reviewed-by: @jesse-merhi
2026-05-13 16:31:52 +10:00
Kevin Lin
bc44f3824f fix: improve Codex migration selector enter 2026-05-12 15:23:28 -07:00
Kevin Lin
9ff5250792 fix(codex): gate migration on app readiness (#80815)
* fix(codex): gate migration on app readiness

* fix(codex): preserve source auth during migration

* fix(codex): isolate migration source app probes

* docs(codex): align migration readiness reasons

* docs(codex): remove stale auth-required source reason

* fix(codex): narrow native auth profile resolver input

* fix: clarify codex migration subscription gating

* refactor: simplify codex migration subscription gate

* fix: make codex app verification optional

* docs: clarify codex app inventory cache

* test: avoid map spread in migration test
2026-05-12 13:01:22 -07:00
Pavan Kumar Gondhi
da6f32bedf fix(gateway): honor minimal discovery mode for wide-area DNS-SD [AI] (#80903)
* fix: respect discovery mode for wide-area cli path

* addressing codex review

* docs: add changelog entry for PR merge
2026-05-12 16:03:50 +05:30
B.K.
109493bcdd fix(update): mandatory post-core plugin convergence before gateway restart
Summary:
- validate active plugin payloads, including openclaw.extensions entry files, after core package updates
- treat corrupt active install records without installPath as convergence failures
- prevent managed gateway recovery restart when post-core plugin convergence fails

Verification:
- CI=true pnpm test src/cli/update-cli/plugin-payload-validation.test.ts src/cli/update-cli/post-core-plugin-convergence.test.ts src/cli/update-cli.test.ts src/commands/doctor/shared/missing-configured-plugin-install.test.ts src/commands/doctor/shared/update-phase.test.ts
- CI=true pnpm check:changed
- PR checks green for 2afa84dffe
2026-05-12 08:02:10 +01:00
Alex Naidis
a290cd633f fix(doctor): repair managed plugin peer links
Repair managed npm plugin OpenClaw peer links across doctor, install, and update flows.

- relink `peerDependencies.openclaw` packages under managed npm roots during doctor repair
- make read-only doctor preview broken peer links with a `doctor --fix` hint
- reject target plugin installs when their own peer link cannot be repaired, without blocking unrelated installs for stale sibling packages
- preserve update warning behavior for unrepairable package-local `node_modules`

Verification:
- `pnpm test src/plugins/plugin-peer-link.test.ts src/plugins/install.test.ts src/plugins/install.npm-spec.test.ts src/plugins/update.test.ts src/commands/doctor-plugin-registry.test.ts src/commands/doctor/repair-sequencing.test.ts -- --reporter=verbose`
- `pnpm exec oxfmt --check --threads=1 ...`
- `git diff --check`
- Crabbox/Testbox `tbx_01krde1jx199rnpm2rv1rdcj76`: focused tests + `pnpm check:changed`, exit 0
- Real CLI proof in PR body: read-only `openclaw doctor` warning plus `openclaw doctor --fix` symlink repair

Thanks @TheCrazyLex.
2026-05-12 07:49:08 +01:00
Kevin Lin
8954c03231 fix(codex): default plugin destructive actions on (#80792) 2026-05-11 16:50:15 -07:00
pashpashpash
3b44dfc367 Make OpenAI auth login use ChatGPT by default (#80790)
* fix(openai): default provider login to ChatGPT auth

* fix(openai): align auth login metadata and fast tests

* fix(openai): prefer setup auth providers for login

* fix(openai): reject unknown explicit auth methods

* fix(line): keep channel entry imports scoped
2026-05-12 08:17:14 +09:00
Val Alexander
51b73b39a8 fix(auth): align operator bootstrap scopes
Preserve full shared-token operator sessions while reusing bootstrap/cached device-token scopes for handoff reconnects.

Surface device-token scope mismatches as AUTH_SCOPE_MISMATCH and stop reconnect retry loops without clearing valid stored tokens.

Fixes #79292.
Supersedes #79314, #79296, #79295.
2026-05-11 14:14:33 -05:00
samzong
380a679313 feat(cron): add direct job lookup
Signed-off-by: samzong <samzong.lu@gmail.com>
2026-05-11 18:47:46 +01:00
Omar Shahine
efc8641393 fix: add channel status filtering (#80706)
Summary:
- Add `openclaw channels status --channel <name>` filtering through CLI, gateway protocol, and fallback status rendering.
- Document the BlueBubbles-to-iMessage cutover path so operators can probe iMessage without starting both monitors.
- Refresh generated Swift protocol model for the new optional channel status parameter.

Verification:
- `pnpm test src/gateway/server-methods/channels.status.test.ts src/commands/channels.status.command-flow.test.ts src/cli/program/routes.test.ts -- --reporter=verbose`
- `CI=true pnpm check:docs`
- `pnpm protocol:check`
- `git diff --check`
- `node scripts/check-changelog-attributions.mjs`
- CI head `45b27e3866`: focused/docs/protocol shards green locally; GitHub broad/scanner jobs queued for runners at merge attempt time; `Real behavior proof` failure is the maintainer-ignorable external-real-proof complaint.
2026-05-11 18:44:54 +01:00
samzong
df30515315 feat(acp): expose session lineage metadata
Signed-off-by: samzong <samzong.lu@gmail.com>
2026-05-11 18:32:46 +01:00
Peter Steinberger
738f94b290 fix: clarify update warning states 2026-05-11 18:02:05 +01:00
Kaspre
8399ff888f docs(system event): document --session-key timing exception
Codex review on PR #78687 [P3] flagged that the docs say next-heartbeat
"waits for the next scheduled tick" while the patched timer collapses
next-heartbeat+sessionKey to an immediate targeted wake. Add a callout
describing the exception and pointing callers who want delayed delivery
back at the no-session-key path.

Refs #78687.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 17:24:30 +01:00
Kaspre
4ddd942f5f feat(wake): expose typed sessionKey on wake protocol + system event CLI
Adds an optional sessionKey to the WakeParamsSchema and threads it through
the gateway wake handler, CronService.wake(), and the underlying timer.wake()
ops so callers can target a specific session for async-task completion
relays instead of always hitting the agent's main session.

Also adds --session-key to `openclaw system event`.

The schema rejects empty/non-string sessionKey at the gateway boundary;
mismatched session keys (a key that does not belong to the resolving agent)
fall back to the agent's main session inside resolveCronSessionKey, which
is the existing safety path.

Refs #52305 (companion to PR #50818, which closes the related cron-run
remap slice at internal enqueue sites). Doesn't depend on #50818.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 17:24:30 +01:00
Jayesh Betala
0c9f34eac1 fix(telegram): honor forced document videos
Fixes #80389. Thanks @jbetala7.
2026-05-11 20:27:36 +05:30
Kaspre
ade2e11947 fix(doctor): tolerate stale plugin deny refs 2026-05-11 05:05:30 +01:00
Altay
3855e7b0ac build(pnpm): upgrade workspace to pnpm 11 2026-05-11 00:48:14 +01:00
Vincent Koc
839a5b1ec0 docs(cli): document plugin-aware deep status warnings on gateway/daemon 2026-05-11 07:44:13 +08:00
Vincent Koc
2c4d9bea82 docs(cli): fix setup.md options table mangled by formatter on pipe char 2026-05-10 22:41:39 +08:00
Vincent Koc
7a463f3019 docs(cli): rewrite voicecall and tighten setup/health with code-verified options 2026-05-10 22:41:38 +08:00
Vincent Koc
5056527916 docs: rewrite 3 pages with code-verified options and Mintlify funnel 2026-05-10 22:31:10 +08:00
Vincent Koc
33eb0b9eee docs(cli): expand docs and tasks-flow CLI references with verified options 2026-05-10 22:17:42 +08:00
Peter Steinberger
f50ece6d62 fix(cli): expose gateway delivery status 2026-05-10 14:09:01 +01:00
Kaspre
7903fe2ab7 docs(cli): clarify delivery error fields 2026-05-10 14:09:01 +01:00
Kaspre
94d923c055 fix(cli): surface durable delivery status 2026-05-10 14:09:01 +01:00
Peter Steinberger
a39c05559b fix: preserve Codex auth during route repair
Summary:
- repair legacy openai-codex model refs to canonical openai refs without losing Codex auth intent
- keep scoped repairs from broadening runtime policy to unrelated agent/channel routes
- preserve explicit concrete model runtime pins and shield listed-agent canonical refs from default policy spillover

Verification:
- pnpm test src/commands/doctor/shared/codex-route-warnings.test.ts src/config/plugin-auto-enable.core.test.ts src/commands/doctor/shared/missing-configured-plugin-install.test.ts
- env -u OPENCLAW_TESTBOX -u OPENCLAW_TESTBOX_ID pnpm check:changed
- GitHub checks for 81b2934240
2026-05-10 04:53:44 -04:00
Peter Steinberger
47c4d73580 docs(cron): clarify cli pre-model watchdog 2026-05-10 02:47:34 -04:00
Peter Steinberger
5b3e2497bd fix(cron): diagnose isolated pre-model stalls 2026-05-10 02:47:34 -04:00
Kevin Lin
b79de62b3c fix(codex): remove dynamic tools profile option 2026-05-09 21:34:33 -07:00
Vincent Koc
f13dfd6004 docs(cli): align setup command hierarchy 2026-05-10 10:28:48 +08:00
brokemac79
4ab6878473 fix(tasks): report cron session preserves from locked store 2026-05-09 20:05:07 -04:00
Peter Steinberger
355ea947f5 fix: allow explicit local infer static catalog models 2026-05-09 12:16:58 +01:00
VACInc
5ac1fee4de fix(cli): route infer thinking through simple completions 2026-05-09 06:51:20 -04:00
VACInc
223c4cf46c feat(cli): add thinking override to infer model run 2026-05-09 06:51:20 -04:00
Peter Steinberger
b27a251ce5 docs: document mistral medium 3.5 usage 2026-05-09 11:45:43 +01:00
Peter Steinberger
1f4f51e8e2 feat: add plugin install overrides 2026-05-09 06:06:08 -04:00
Abner Shang
9eaca28ef7 fix(backup): retry tar EOF races and skip live volatile files
Fixes #72249.\n\nSummary:\n- retry live backup tar EOF races\n- skip current live session, cron, log, and delivery-queue state files\n- preserve workspace lock/temp files and keep backup --json parseable\n\nVerification:\n- Crabbox pre-fix repro: tbx_01kr5xt9vf5pas5ee4aefrp3am\n- Crabbox post-fix proof: tbx_01kr5y3e1kbtt6chbypfdydbgs\n- pnpm check:test-types\n- pnpm lint:core\n- pnpm test src/commands/backup.test.ts src/infra/backup-volatile-filter.test.ts src/infra/backup-create.test.ts\n- CI on 37664570c7: green\n\nThanks @abnershang.
2026-05-09 05:11:43 -04:00
Peter Steinberger
58a80d3d93 docs(oc-path): expand usage examples 2026-05-09 01:48:35 -04:00
Peter Steinberger
696540f63a docs(oc-path): explain why path addressing helps 2026-05-09 01:48:35 -04:00
Peter Steinberger
52a319047e docs(oc-path): add bundled plugin overview and per-kind CLI recipes 2026-05-09 01:48:35 -04:00
Gio Della-Libera
4656848900 docs(path): format oc-path CLI table 2026-05-09 01:48:35 -04:00
Gio Della-Libera
8f26422840 fix(oc-path): tighten path contracts 2026-05-09 01:48:35 -04:00
Peter Steinberger
a22c5822c3 docs: finish oc-path plugin docs 2026-05-09 01:48:35 -04:00
Gio Della-Libera
457c29b36a docs(path): scrub references to dropped grammar features 2026-05-09 01:48:35 -04:00
Peter Steinberger
e3b33a26cd refactor: move oc-path into plugin 2026-05-09 01:48:35 -04:00
Peter Steinberger
b3c06e8d79 revert: remove oc-path implementation 2026-05-09 03:07:12 +01:00
Kevin Lin
d922edd861 Fix Codex plugin migration selection UX (#79160)
* fix: prompt for codex plugin migration selection

* test: use shared ANSI stripping in migrate output test

* fix(codex): guard migrated plugins with guardian mode

* fix(codex): keep plugin migration interactive after skill skip

* fix(codex): keep migration plugins on default app server

* fix(codex): exit cleanly when migration selection is empty

* fix(codex): remove migration test non-null assertions

* test(codex): drop auth profile migration fixture
2026-05-08 18:17:41 -07:00
Solomon Neas
b81414be45 fix: expose safe restart deferral bypass (#78658)
Expose the existing safe-restart skipDeferral escape hatch through gateway RPC and the daemon CLI, document the flag, and add restart/CLI regression coverage.

Also keep CLI failure output off the cold bootstrap graph and align CLI guidance expectations needed by current CI.

Co-authored-by: Solomon Neas <solomonneas@users.noreply.github.com>
2026-05-08 20:42:36 -04:00
Alex Knight
68f9710f47 Relay ACP exec approval permissions
* Relay ACP exec approval permissions

* fix: relay ACP exec approvals before tool completion

* fix: guard ACP approval relay retries

* test: fix ACP permission relay mock typing

* test: satisfy ACP permission relay lint

---------

Co-authored-by: Alex Knight <15041791+amknight@users.noreply.github.com>
2026-05-09 06:16:17 +10:00