Peter Steinberger
1507a9701b
refactor: centralize inbound supplemental context
...
* refactor: centralize inbound supplemental context
* refactor: trim supplemental finalizer typing
* docs: clarify supplemental context projection
* refactor: move inbound finalization into core
* refactor: simplify channel inbound facts
* refactor: fold supplemental media into inbound finalizer
* refactor: migrate channel inbound callers to builder
* docs: mark inbound finalizer compat types deprecated
* refactor: wire runtime turn context builder
* refactor: replace channel turn runtime API
* fix: respect discord quote visibility
* fix: avoid deprecated line dispatch helper
* refactor: deprecate channel message SDK seams
* docs: trim channel outbound SDK page
* test: migrate irc inbound assertion
* refactor: deprecate outbound SDK facades
* refactor: deprecate channel helper SDK facades
* refactor: deprecate channel streaming SDK facade
* refactor: move direct dm helpers into inbound SDK
* chore: mark legacy test-utils SDK alias deprecated
* refactor: remove unused allow-from read helper
* refactor: route remaining channel dispatch through core
* refactor: enforce modern extension SDK imports
* test: give slow image root tests more time
* ci: support node fallback on windows
* fix: add transcripts tool display metadata
* refactor: trim legacy channel test seams
* fix: preserve channel compat after rebase
* fix: keep deprecated channel inbound aliases
* fix: preserve discord thread context visibility
* fix: clean final rebase conflicts
* fix: preserve channel message dispatch aliases
* fix: sync channel refactor after rebase
* fix: sync channel refactor after latest main
* fix: dedupe memory-core subagent mock
* test: align clickclack inbound dispatch assertions
* fix: sync plugin sdk api hash after rebase
* fix: sync channel refactor after latest main
* fix: sync plugin sdk api hash after rebase
* fix: sync plugin sdk api hash after latest main
* test: remove stale inbound context awaits
2026-05-27 09:26:06 +01:00
Agustin Rivera
08a73dbe4b
fix(qqbot): gate fallback approval buttons ( #87154 )
...
QQBot fallback approval buttons now reuse the same slash-command authorization path as real commands, including access groups and default-account config merging.
Verification:
- node scripts/test-extension.mjs qqbot
- node --max-old-space-size=8192 --import tsx scripts/generate-plugin-sdk-api-baseline.ts --check && git diff --check
- pnpm lint --threads=8
- node scripts/run-vitest.mjs src/agents/agent-command.live-model-switch.test.ts
- GitHub PR checks for 7cc0f15031 : passed
Thanks @eleqtrizit.
Co-authored-by: Agustin Rivera <agustin@rivera-web.com >
2026-05-27 08:44:55 +01:00
Dallin Romney
780bc79147
fix(plugin-sdk): stop exporting vitest test helpers ( #87120 )
2026-05-26 23:10:41 -07:00
Agustin Rivera
2c88547254
fix(prompt): route untrusted group prompts outside system prompt [AI] ( #87144 )
...
* fix(prompt): route untrusted group prompts outside system prompt
* fix(prompt): align untrusted group prompt helpers
2026-05-26 22:47:54 -07:00
Pablo Guardiola
0c867eef75
feat: expose plugin approval action metadata
...
Expose plugin approval action metadata so plugins can describe richer approval actions across gateway, SDK, channel, and UI surfaces.
2026-05-26 22:46:09 -07:00
Peter Steinberger
231a812276
build(codex): update Codex CLI to 0.134.0
2026-05-27 04:42:12 +01:00
Peter Steinberger
0cfccdb0c7
fix(codex): keep WebChat delivery hints out of user requests
...
Land PR #87003 from @ragesaq with a maintainer fix for routed room events.
Co-authored-by: Forge <forge@psiclawops.dev >
2026-05-27 03:44:27 +01:00
uday
0f18d52f16
fix(codex): raise dynamic tool timeout
2026-05-27 01:25:48 +01:00
Kevin Lin
7d6b7f434c
feat(plugin-sdk): add reaction approval helpers ( #86735 )
...
* feat(plugin-sdk): add reaction approval helpers
* fix(signal): register target approval reactions
* Remove legacy WhatsApp approval reaction appender
* refactor(plugin-sdk): share native exec prompt suppression
* revert(discord): keep exec prompt suppression local
* refactor(plugin-sdk): share native approval fallback suppression
* fix(whatsapp): bind outbound approval reactions
* chore(plugin-sdk): refresh api baseline
* revert(imessage): defer reaction approval changes
2026-05-26 15:28:50 -07:00
Peter Steinberger
cac0b2db18
refactor: move transcripts into core
...
Move meeting notes into core transcripts, remove the bundled meeting-notes plugin/API, and require explicit transcripts.enabled before exposing the recording-capable tool.
2026-05-26 14:51:11 +01:00
Peter Steinberger
d00d0a21c2
chore: bump OpenClaw to 2026.5.26
2026-05-26 01:26:00 +01:00
Peter Steinberger
a4f12699cf
refactor: share realtime output activity tracking ( #86661 )
2026-05-25 23:51:34 +01:00
Dmitry Golubev
0f35ec29d3
fix(codex): disable native thread personality ( #85891 ) (thanks @lastguru-net)
...
Behavior addressed: Native Codex app-server threads now disable Codex's built-in personality on thread/start, thread/resume, turn/start, bound conversation turns, and /btw side-thread forks so OpenClaw agent workspace identity stays authoritative.
Real environment tested: Local OpenClaw source checkout plus GitHub CI on PR #85891 .
Exact steps or command run after this patch: pnpm test extensions/codex/src/app-server/thread-lifecycle.test.ts extensions/codex/src/app-server/side-question.test.ts extensions/codex/src/conversation-binding.test.ts extensions/codex/src/app-server/schema-normalization-runtime-contract.test.ts; pnpm check:docs; pnpm prompt:snapshots:check; OPENCLAW_ADDITIONAL_BOUNDARY_SHARD=1/4 OPENCLAW_ADDITIONAL_BOUNDARY_CONCURRENCY=4 node scripts/run-additional-boundary-checks.mjs.
Evidence after fix: Focused Codex test shard passed 4 files / 79 tests; docs check passed; prompt snapshots are current; CI passed all code/quality checks, with only Real behavior proof failing as unrelated proof-bot gating for this non-channel change.
Observed result after fix: App-server request snapshots and unit tests include personality: "none" on native Codex start/resume/turn/fork paths.
What was not tested: A live Codex app-server model run was not executed.
Co-authored-by: Beru <beru@lastguru.lv >
2026-05-25 23:15:03 +01:00
Peter Steinberger
fda0141a01
Refactor realtime voice turn context tracking ( #86650 )
...
* refactor: share realtime turn context tracking
* chore: track realtime voice sdk api baseline
* fix: preserve pruned realtime turn handle state
2026-05-25 23:13:27 +01:00
Peter Steinberger
5dccba7405
refactor: share realtime forced consult coordination
2026-05-25 22:02:19 +01:00
Peter Steinberger
cda7c30150
build: refresh dependency pins ( #86628 )
...
* build: refresh dependencies
* build: align pi fallback version
2026-05-25 21:55:46 +01:00
Sebastien Tardif
e7c7ee4385
docs(manifest): note safe-regex validation for modelPatterns
2026-05-25 20:57:04 +01:00
Peter Steinberger
822ee62947
fix: tighten openshell exec preflight
2026-05-25 18:36:55 +01:00
Gio Della-Libera
fbb6340542
Policy: add agent-scoped policy overlays ( #85817 )
...
* feat(policy): add agent-scoped policy overlays
* docs(policy): use generic agent-scoped examples
* fix(policy): generalize scoped policy overlays
* fix(policy): clean scoped overlay checks
* fix(policy): evaluate inherited scoped agent posture
* chore(policy): keep agent harness out of scoped policy pr
2026-05-25 08:45:16 -07:00
Peter Steinberger
a3ae5c8382
refactor(plugin-sdk): rename plain text tool-call compat wrapper
2026-05-25 15:08:01 +01:00
Peter Steinberger
5d018034f6
feat: promote provider tool call stream wrapper ( #86489 )
2026-05-25 13:55:23 +01:00
FullerStackDev
0a98c2d626
address migrate auth review comments
2026-05-25 09:16:37 +01:00
FullerStackDev
17edec75e4
honor migrate auth opt-out in plan
2026-05-25 09:16:37 +01:00
FullerStackDev
f9a87bf312
fix ci blockers for migrate auth
2026-05-25 09:16:37 +01:00
Kevin Lin
0dabb7010b
docs: replace OpenClaw docs skill and add plugin permissions guide
...
* docs: replace openclaw docs skill
* docs: align technical documentation skill policy
* docs: restore openclaw refactor docs skill
2026-05-24 23:20:14 -07:00
pashpashpash
dd47e479ae
Fail Codex compaction at the Codex boundary ( #85958 )
2026-05-24 22:12:34 -07:00
Peter Steinberger
c38a9a883a
fix: label meeting note transcript speakers
...
Include speaker-labeled transcript lines in Meeting Notes summaries and structured summary artifacts.
2026-05-24 04:29:01 +01:00
Peter Steinberger
0cba872e38
chore: bump version to 2026.5.24
2026-05-24 02:40:16 +01:00
Peter Steinberger
40d36b5bbc
docs(talk): document realtime active-run control
...
Co-authored-by: Colin <colin@solvely.net >
2026-05-24 02:35:04 +01:00
Gio Della-Libera
1e2e614748
Policy: add tool posture conformance checks ( #85482 )
...
* feat(policy): add tool posture conformance
* fix(policy): attest tool alsoAllow posture
2026-05-23 16:44:42 -07:00
Peter Steinberger
c4f0da00a9
refactor: use channel target resolution APIs ( #85814 )
...
* refactor: use channel target resolution apis
* refactor: satisfy delivery lint
* refactor: remove unused target parsing shim
* fix: preserve routed cron topic targets
2026-05-23 21:26:55 +01:00
Peter Steinberger
3e8fd4944f
fix: avoid gateway startup event-loop stalls
...
Defer Gateway channel startup until after readiness, remove startup model prewarm, and move model catalog data onto manifest/static paths so startup no longer loads broad provider runtimes.
Verification:
- focused gateway/catalog/auth/QA Vitest runs
- autoreview clean
- Blacksmith Testbox-through-Crabbox tbx_01ksahn65rsrsqz3q1qyxwf929: pnpm check:changed, exit 0
- PR CI green on ee2b631c72
2026-05-23 15:08:58 +01:00
NianJiu
55a0c9b1f4
fix(gateway): restore WebChat image understanding routing
...
Restores WebChat image uploads to the media-understanding flow without one-turn model overrides.
- removes image-model override plumbing from the reply run
- stages WebChat images as MediaPaths for enrichment
- avoids replaying already-understood images to text-only reply models while preserving undescribed images
Co-authored-by: NianJiuZst <3235467914@qq.com >
2026-05-23 12:31:43 +01:00
Peter Steinberger
a7e0fa08e7
docs: expand meeting notes docs
2026-05-23 11:58:29 +01:00
alkor2000
71ddc016a8
fix(twitch): preserve newer message handler during cleanup ( #85425 )
...
* fix(twitch): preserve newer message handler during cleanup
Fixes #83888 .
`TwitchClientManager.onMessage` returns a cleanup closure that called
`messageHandlers.delete(key)` unconditionally. When a second onMessage()
for the same account replaced the handler, running the earlier cleanup
deleted the newer handler, leaving the account with no handler and
silently dropping all inbound messages.
Guard the delete with a referential check so the cleanup only removes
the handler it registered. Adds regression tests covering both the
stale-cleanup case (newer handler must survive) and the normal case
(current handler is still removed).
* fix(twitch): distinguish handler registrations
* fix(signal): avoid dangling test export name
* test(meeting-notes): use public sdk imports
* test(sdk): classify meeting-notes subpath
* fix(discord): keep channel entrypoint imports narrow
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-23 11:49:01 +01:00
Peter Steinberger
07694c639d
feat: add meeting notes plugin
...
Adds source-only external meeting notes plugin, SDK source-provider contract, CLI access, date-sharded storage, and Discord voice source.
2026-05-23 10:38:09 +01:00
Gio Della-Libera
a94f3444a0
Policy: add agent workspace conformance checks ( #85096 )
...
* feat(policy): add agent workspace conformance
* chore(policy): refresh agent workspace checks
* fix(policy): require enabled sandbox for workspace policy
* fix(policy): align agent workspace evidence with runtime
2026-05-22 20:24:31 -07:00
Peter Steinberger
64d13c017a
docs: refresh contributor docs
...
Co-authored-by: Quratulain-bilal <umayaimanshah@gmail.com >
Co-authored-by: Mariano Belinky <mbelinky@gmail.com >
Co-authored-by: tao <itaofe@gmail.com >
Co-authored-by: julian <julian@tencent.com >
Co-authored-by: xenouzik <xenouziq@gmail.com >
Co-authored-by: Olamiposi <56056759+posigit@users.noreply.github.com >
Co-authored-by: surlymochan <surlymo@apache.org >
Co-authored-by: Janaka A <contact@janaka.co.uk >
Co-authored-by: choiking <samsamuels1927@gmail.com >
2026-05-22 22:58:27 +01:00
Gio Della-Libera
dcc5e45b50
Policy: add gateway exposure checks ( #81981 )
...
* feat(policy): add gateway exposure conformance
* fix(policy): align custom bind exposure evidence
2026-05-22 14:18:01 -07:00
Gio Della-Libera
c85feace54
Policy: add secret and auth conformance checks ( #81974 )
...
* feat(policy): add secrets auth conformance
* fix(policy): include sandbox ssh secret data
* fix(policy): complete secret input provenance
* fix(policy): cover media request secrets
* fix(policy): satisfy policy lint
* fix(policy): narrow secret conformance evidence
* fix(policy): cover request bearer token secrets
2026-05-22 12:48:14 -07:00
狼哥
57178b188b
docs(voyage): clarify API key setup ( #81803 )
2026-05-22 20:20:22 +01:00
Peter Steinberger
86b87df7e3
docs: refine maintainer docs sweep
...
Co-authored-by: Niels Kaspers <kaspersniels@gmail.com >
Co-authored-by: Zhaocun <zhaocunsun@gmail.com >
Co-authored-by: Henson <zccyman@163.com >
2026-05-22 19:22:40 +01:00
Vincent Koc
d70dc4be19
fix(plugins): drop stale tlon tool contract
2026-05-22 16:32:09 +02:00
Bryan P
f9d35dc681
fix(codex): deliver native subagent completions
...
Deliver Codex-native subagent completions through the generic plugin harness task runtime.
Proof:
- Autoreview clean on final branch.
- Testbox changed gate: tbx_01ks80eqs7d2e3jq3p99zbm4wd, pnpm check:changed, exit 0.
- Live Codex harness: tbx_01ks80p4ky32sqv2ksan2p0w0q, codex/gpt-5.5 API-key auth, native parent/child bridge tokens observed, exit 0.
Co-authored-by: bryanpearson <bryanmpearson@gmail.com >
2026-05-22 15:28:46 +01:00
Josh Lehman
cff5244a5b
feat: add context-engine host capability requirements ( #84994 )
...
* feat(context-engine): add host capability requirements
* fix(context-engine): advertise pi host capabilities
* fix: repair incompatible context engine slots
2026-05-22 10:28:08 -04:00
Peter Steinberger
9914e25638
fix: opt acpx out of bundled runtime deps
2026-05-22 12:56:10 +01:00
Peter Steinberger
fcecbd8655
fix: opt codex out of bundled runtime deps
2026-05-22 12:56:10 +01:00
Peter Steinberger
976da39038
fix: publish explicit plugin bundled dependencies
2026-05-22 12:56:10 +01:00
Peter Steinberger
de022bb69d
feat: bundle plugin npm dependencies
2026-05-22 12:56:10 +01:00
Peter Steinberger
b6c8807ca0
chore: add shrinkwrap to plugin npm packages
2026-05-22 12:56:10 +01:00