Commit Graph

669 Commits

Author SHA1 Message Date
Peter Steinberger
072e73d7c3 fix(codex): release quiet app-server turns 2026-04-29 19:42:02 +01:00
Peter Steinberger
09baec68ea fix(codex): bound dynamic tool bridge responses 2026-04-29 18:13:53 +01:00
Peter Steinberger
8cf724a381 fix(plugins): simplify bundled runtime deps staging
* fix(plugins): simplify bundled runtime deps staging

* refactor(plugins): declare bundled root runtime deps

* fix(plugins): isolate pnpm runtime dependency installs

* test(gateway): wait for deferred agent routing calls in server suite

* test(ci): follow extracted update-channel assertions

* fix(plugins): bypass pnpm age gate for bundled runtime deps

* test: drop stale rebase leftovers

* test: preserve mirrored root dependency drift guard

* test: stage mirrored deps in facade fixtures

* fix(plugin-sdk): expose provider setup metadata

* test(plugin-sdk): satisfy spread lint in facade deps fixture

* refactor(plugins): share bundled runtime deps install flow

* fix(plugins): finish runtime deps rebase cleanup

* fix(plugins): remove stale mirror import

* refactor(plugins): centralize bundled runtime root preparation

* fix(plugins): skip Windows pnpm cmd shims

* refactor(plugins): let package managers own runtime deps staging

* fix(plugins): validate staged runtime deps

* fix(plugins): preserve lazy runtime deps fallback
2026-04-29 17:04:56 +01:00
Peter Steinberger
8c68e7535f refactor: centralize channel DM access resolution 2026-04-29 16:35:37 +01:00
Peter Steinberger
6bbacd14a3 fix(gateway): wait for event loop before client start 2026-04-29 14:50:44 +01:00
Alex Knight
bbf985d50a feat(plugins): add SQLite plugin state store (#74190)
* feat(plugins): add experimental sqlite plugin state store
2026-04-29 23:02:14 +10:00
Vincent Koc
c357235fe6 docs(memory): document active-memory circuit breaker config and lancedb memory query CLI
- docs/concepts/active-memory.md: extend the "Useful tuning fields" config
  table with the new `config.circuitBreakerMaxTimeouts` and
  `config.circuitBreakerCooldownMs` keys (with their schema-declared ranges
  and defaults) added by 89cd2b6362, so operators tuning Active Memory
  recall after consecutive timeouts can find the knobs alongside
  `cacheTtlMs`.
- docs/plugins/memory-lancedb.md: extend the "Commands" section with the
  new `openclaw memory query` subcommand 6b44dce0c8 registered when
  memory-lancedb is the active memory plugin, including the `--cols`,
  `--filter`, `--limit`, and `--order-by` options and the safety bounds
  (200-character filter cap, sanitized character allowlist, positive
  integer limit, in-memory order-by).
2026-04-29 04:41:06 -07:00
Peter Steinberger
dc9f1b8525 fix(telegram): honor managed proxy env 2026-04-29 12:18:49 +01:00
Shakker
4fbd683819 test: clarify manifest catalog alias planning 2026-04-29 09:40:45 +01:00
peter
e71d7d48fb fix(telegram): probe video dimensions through sdk
Fix Telegram portrait video distortion by probing video dimensions through the shared media helper and passing width/height to sendVideo.

Validation:
- Targeted Telegram/media tests passed locally.
- Plugin SDK API baseline check passed locally.
- Formatter and git diff whitespace checks passed locally.

CI note: current boundary drift observed on prior run came from existing src/plugin-sdk/discord.ts and src/plugin-sdk/telegram-account.ts, not this PR diff.
2026-04-29 01:58:25 -05:00
Peter Steinberger
364c67bcb5 refactor(discord): share channel run queue 2026-04-29 06:21:09 +01:00
Peter Steinberger
2b0b614417 docs(plugins): clarify clawhub npm migration 2026-04-29 06:09:34 +01:00
Vincent Koc
9e34fb9feb fix(plugin-sdk): restore channel compatibility facades 2026-04-28 21:38:11 -07:00
Peter Steinberger
34ef403cb2 docs: clarify provider hook compatibility 2026-04-29 05:02:04 +01:00
Peter Steinberger
e27fe55aa8 refactor: simplify plugin cache boundaries 2026-04-29 04:33:15 +01:00
Peter Steinberger
6fcaf6ed58 docs(plugins): clarify setup metadata cache boundary 2026-04-29 04:21:37 +01:00
Peter Steinberger
7a5b419843 refactor(plugins): simplify plugin cache boundaries 2026-04-29 03:52:22 +01:00
Jari Mustonen
d8a600f2ad context-engine: pass runtime context to ContextEngineFactory (#67243)
Merged via squash.

Prepared head SHA: 9aca6a5af1
Co-authored-by: jarimustonen <1272053+jarimustonen@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-04-28 18:21:14 -07:00
pashpashpash
6ce1058296 Wire diagnostics through the core chat command (#72936)
* feat: wire codex diagnostics feedback

* fix: harden codex diagnostics hints

* fix: neutralize codex diagnostics output

* fix: tighten codex diagnostics safeguards

* fix: bound codex diagnostics feedback output

* fix: tighten codex diagnostics throttling

* fix: confirm codex diagnostics uploads

* docs: clarify codex diagnostics add-on

* fix: route diagnostics through core command

* fix: tighten diagnostics authorization

* fix: pin diagnostics to bundled codex command

* fix: limit owner status in plugin commands

* fix: scope diagnostics confirmations

* fix: scope codex diagnostics cooldowns

* fix: harden codex diagnostics ownership scopes

* fix: harden diagnostics command trust and display

* fix: keep diagnostics command trust internal

* fix: clarify diagnostics exec boundary

* fix: consume codex diagnostics confirmations atomically

* test: include codex diagnostics binding metadata

* test: use string codex binding timestamps

* fix: keep reserved command trust host-only

* fix: harden diagnostics trust and resume hints

* wire diagnostics through exec approval

* fix: keep diagnostics tests aligned with bundled root trust

* fix telegram diagnostics owner auth

* route trajectory exports through exec approval

* fix trajectory exec command encoding

* fix telegram group owner auth

* fix export trajectory approval hardening

* fix pairing command owner bootstrap

* fix telegram owner exec approvals

* fix: make diagnostics approval flow pasteable

* fix: route native sensitive command followups

* fix: invoke diagnostics exports with current cli

* fix: refresh exec approval protocol models

* fix: list codex diagnostics from thread bindings

* fix: fold codex diagnostics into exec approval

* fix: preserve diagnostics approval line breaks

* docs: clarify diagnostics codex workflow
2026-04-29 07:40:37 +09:00
Peter Steinberger
3cad579c4e fix(plugin-sdk): restore discord compatibility facade 2026-04-28 20:59:26 +01:00
Vincent Koc
7d2d8732d0 docs(plugins/hooks): document per-hook timeoutMs registration option
For 891c7d9f1c: docs/plugins/hooks.md "Quick start" now lists the `priority`
and new `timeoutMs` opts that `api.on(...)` accepts, explaining that the
per-hook budget aborts a slow handler instead of letting plugin setup or
recall work consume the caller's configured model timeout. The change is
traceable to the new `OpenClawPluginApi.on` `{ priority?; timeoutMs? }`
signature and `PluginHookRegistration.timeoutMs` field added in the same
SHA.
2026-04-28 10:12:44 -07:00
Shakker
c0ec58f4b6 fix: preserve runtime kind install fallback 2026-04-28 18:04:54 +01:00
Vincent Koc
c478aeca5a docs: cover cron_changed plugin hook and legacy env-var deprecation
- docs/plugins/hooks.md: add `cron_changed` to the Lifecycle hook catalog and
  a Gateway lifecycle paragraph describing its typed event payload, run
  status, delivery status, and removed-event job snapshot, so plugin authors
  picking up f155a5f955 (#72773) have a canonical reference beyond the
  sdk-overview bullet that already shipped in the same SHA.
- docs/help/environment.md: add a "Legacy environment variables" section for
  aa1834a3ff so users see that `CLAWDBOT_*` and `MOLTBOT_*` prefixes are now
  ignored and trigger an `OPENCLAW_LEGACY_ENV_VARS` deprecation warning,
  with a rename example to `OPENCLAW_*`.
2026-04-28 04:40:38 -07:00
Alex Knight
f155a5f955 Add cron changed plugin hook (#72773)
* feat: add cron changed plugin hook

* fix: improve cron_changed hook correctness and code quality

- Fix PluginHookGatewayCronDeliveryStatus: replace 'error' with 'unknown'
  to match internal CronDeliveryStatus enum
- Add job snapshot to CronEvent so removed events carry the deleted job
- Extract pickDefined helper, replace 14-field verbose spread mapping
- Add toPluginCronJob mapper for explicit internal→public type boundary
- Fix schedule union: use literal-only kind discriminants for TS narrowing
- Use loadConfig() (runtime) instead of params.cfg (startup) in hook ctx
- Use formatErrorMessage instead of String(err) for stack preservation
- Fix pre-existing getCron TS2322 with explicit cast (matches gateway_start)
- Re-export supporting types from hooks.ts for plugin consumers
- Add tests: removed events with job, finished with full fields, runtime cfg
2026-04-28 21:34:42 +10:00
Vincent Koc
e2f3044b8f fix(memory-wiki): route bridge CLI through gateway
Route Memory Wiki bridge-mode status, doctor, and bridge import CLI paths through Gateway RPC when bridge artifact reads are active, while preserving local/offline fallbacks.

Harden Gateway CLI rendering and imported-source writes: validate RPC response shapes, bound response strings before rendering/JSON serialization, sanitize/escape terminal-controlled output, avoid redundant JSON forwarding, and replace imported source pages through a temp-file rename path with symlink and hardlink regressions.

Fixes #65722
Fixes #65976
Fixes #66082
Fixes #67979
Fixes #68371
Fixes #68828
Fixes #69019
Fixes #70181
Fixes #70242
Fixes #70842

Thanks @moorsecopers99, @vincentkoc, and @prasad-yashdeep.
2026-04-28 03:22:12 -07:00
Peter Steinberger
67b16a4a6d fix: centralize source reply delivery mode 2026-04-28 09:14:19 +01:00
Peter Steinberger
78a12706ec fix(docs): make docs formatter mintlify-safe 2026-04-28 08:13:21 +01:00
Peter Steinberger
8831d2cf0a fix: normalize docs mintlify components 2026-04-28 07:52:17 +01:00
Shakker
d48c3e12a5 feat: gate legacy startup sidecar fallback 2026-04-28 06:31:55 +01:00
Peter Steinberger
25851e3cae fix(google-meet): harden observe mode speech health (#73256)
* fix(google-meet): harden observe mode speech health

* fix(google-meet): address observe speech review

* docs(google-meet): clarify observe mode guarantees
2026-04-28 06:21:10 +01:00
Shakker
d062f8130b feat: warn on implicit startup plugin compatibility 2026-04-28 06:18:45 +01:00
Peter Steinberger
526372ea36 fix(gateway): use runtime config for secret-backed talk
* fix(gateway): use runtime config for secret-backed talk

* test(gateway): relax talk config rpc timeout

* refactor(gateway): clarify talk config resolution
2026-04-28 06:05:27 +01:00
Peter Steinberger
66f80d1ed6 docs: avoid mdx list in sdk overview tip 2026-04-28 05:56:57 +01:00
Peter Steinberger
540cbe24be fix: allow memory flush model override 2026-04-28 05:50:55 +01:00
Vincent Koc
6d7901f5c8 fix(acpx): lazy-load startup backend 2026-04-27 21:46:45 -07:00
Peter Steinberger
59bd7e47e8 docs: avoid mdx lists inside callouts 2026-04-28 05:34:44 +01:00
Peter Steinberger
b60eb1711a refactor(plugin-sdk): add managed task flow runtime 2026-04-28 05:32:40 +01:00
Shakker
68a1dfb7e3 docs: document manifest provider catalog sdk helper 2026-04-28 05:30:04 +01:00
Peter Steinberger
af7f651db3 refactor(plugin-sdk): retire reserved helper exports 2026-04-28 05:21:57 +01:00
Peter Steinberger
1e3ce10e27 refactor(plugin-sdk): remove unused reserved helper exports 2026-04-28 05:00:53 +01:00
Peter Steinberger
c17b9fe623 chore(plugins): add SDK retirement plan report 2026-04-28 04:42:55 +01:00
Peter Steinberger
4fb543796b refactor(plugin-sdk): annotate dormant reserved subpaths 2026-04-28 04:39:33 +01:00
Peter Steinberger
38ba27834d chore: harden plugin boundary report 2026-04-28 04:23:53 +01:00
Peter Steinberger
00e30ba8d9 chore: add plugin boundary report 2026-04-28 04:12:30 +01:00
Peter Steinberger
719ec4f292 refactor: share OpenAI-compatible image provider 2026-04-28 04:01:43 +01:00
Peter Steinberger
518d568de5 test: cover staged bundled facade deps 2026-04-28 03:52:24 +01:00
Peter Steinberger
129b996a4e refactor: tighten extension test support boundaries 2026-04-28 03:52:19 +01:00
Peter Steinberger
2628326264 refactor: expose agent runtime test contracts 2026-04-28 03:40:57 +01:00
Peter Steinberger
e1acb61317 refactor: expose SDK test helper subpaths 2026-04-28 03:28:17 +01:00
Shakker
13987b726a docs: show explicit startup activation in plugin examples 2026-04-28 03:13:20 +01:00