Vincent Koc
89aadef6ef
feat(plugins): externalize iMessage channel ( #117101 )
2026-08-01 08:01:18 +08:00
zw-xysk
08305dbb94
docs(config-channels): repair Discord, Slack, and Google Chat configuration examples ( #106188 )
...
* docs(config-channels): replace legacy allow:true with enabled:true for Discord, Slack, and Google Chat config examples
* docs(config-channels): repair channel configuration examples
Make the complete Discord, Slack, and Google Chat setup examples valid and keep Slack channel routing on stable IDs.
Co-authored-by: 赵旺0668001248 <zhao.wang1@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-31 16:58:02 -07:00
wm0018
ccaf807fa0
docs(install): fix fly discord channel allow -> enabled to match schema ( #102129 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-31 16:43:43 -07:00
zw-xysk
124a68bd26
docs(multi-agent): replace legacy allow:true with enabled:true for Discord channel config examples ( #106201 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-31 16:41:57 -07:00
qingminlong
3fc7fb2813
docs: clarify Control UI pairing in private browsing (issue #113000 ) ( #114111 )
2026-07-31 16:34:40 -07:00
Paco Cartones
955c8fe4af
docs(nodes): system.run parameters were documented as non-existent CLI flags ( #116930 )
...
* docs(nodes): system.run parameters were documented as non-existent CLI flags
* docs(nodes): remove retired node env flags
Co-authored-by: Paco Cartones <253313177+pacocartones@users.noreply.github.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-31 16:11:24 -07:00
Ali Adnan
de143f2760
docs: fix controlUi.root config value using unexpanded tilde ( #114594 )
2026-07-31 15:54:51 -07:00
Peter Steinberger
87d412d557
fix(cron): keep scheduler state and quarantine in SQLite ( #117071 )
2026-07-31 15:47:06 -07:00
Koduri Mahesh Bhushan Chowdary
9878bfc8e5
docs: drop retired gateway.reload keys and modes from config docs ( #116975 )
...
The gateway.reload documentation advertised four settings the shipped
build rejects. gateway.reload is a strictObject accepting only `mode`,
and `mode` is a union of "off" | "hybrid", so a config written from the
docs fails validation and the gateway fails closed on the unknown keys.
Retired but still documented:
- `debounceMs` and `deferralTimeoutMs` (RETIRED_TUNING_PATHS; stripped by
`openclaw doctor --fix` via stripRetiredTuningKnobs)
- `mode: "restart"` and `mode: "hot"` (mapped to "hybrid" by
`openclaw doctor --fix`)
Correct all four docs pages that still describe them, and say what
replaced them: debounce and active-work deferral now run behind built-in
defaults rather than config keys.
Refs #116973
2026-07-31 15:35:16 -07:00
Vincent Koc
61fb29e90a
feat(plugins): externalize OpenCode Go provider ( #117064 )
2026-08-01 06:31:19 +08:00
Ali Adnan
b6d9b38146
docs: fix tilde paths in CLI output examples ( #114595 )
2026-07-31 15:12:03 -07:00
Vincent Koc
e73250f54b
feat(plugins): externalize OpenCode provider ( #117035 )
...
* feat(plugins): externalize OpenCode provider
* docs: refresh OpenCode provider map
2026-08-01 05:07:35 +08:00
Vincent Koc
e84e2a49fc
feat(plugins): externalize NovitaAI provider ( #117007 )
2026-08-01 03:53:46 +08:00
Peter Steinberger
eb0087dc7c
fix(discord): connect mention-only bots without Message Content intent ( #116962 )
...
* fix(discord): support mention-only gateway intent
* chore: keep release changelog owner-only
2026-07-31 12:04:16 -07:00
Vincent Koc
8b93fd963c
feat(plugins): externalize Mistral provider ( #116919 )
...
* feat(plugins): externalize Mistral provider
* fix(update): preserve external provider models during repair
* chore(release): keep Mistral note in PR body
2026-08-01 03:04:12 +08:00
Vincent Koc
f9e35bc59c
merge: clarify local provider setup actions ( #116953 )
...
* fix/local-provider-setup:
fix(macos): preserve localized setup fallback
improve(setup): clarify local provider actions
2026-08-01 01:44:46 +08:00
Peter Steinberger
cd8a96491e
fix: repair canonical session keys with doctor ( #116703 )
...
* fix: repair canonical session keys with doctor
* test: align canonical validation with reopen boundary
* test: align session fixtures with canonical keys
* fix: copy only canonical session repair winners
* fix: cover canonical repair edge cases
* test: remove retired preview helper import
* test: align canonical repair delivery scope
* fix: close canonical repair validation gaps
* fix: preserve destination-only repair generations
* fix: preserve canonical repair window projections
* style: format canonical repair imports
* fix: preserve canonical repair delivery ownership
* fix: preserve winner-owned cross-store state
* fix: guard canonical delivery rehoming
* fix: align canonical session contracts after rebase
* test: accept internal canonical repair fixtures
* test: move sharing alias coverage to doctor
2026-07-31 10:04:08 -07:00
Vincent Koc
0e24d596c0
improve(setup): clarify local provider actions
2026-08-01 00:26:40 +08:00
Vincent Koc
a4faeae9df
Merge pull request #101358 from mrunalp/podman-sandbox-backend
...
Add Podman sandbox backend
2026-08-01 00:00:18 +08:00
Vincent Koc
a1026663ae
feat(plugins): externalize ComfyUI provider ( #116888 )
2026-07-31 23:26:51 +08:00
Harjoth Khara
102c2e1a64
fix(slack): recover MPIM thread context from outbound replies ( #116660 )
...
Co-authored-by: scoootscooob <167050519+scoootscooob@users.noreply.github.com >
2026-07-31 23:12:56 +08:00
Vincent Koc
e93de36081
feat(plugins): externalize BytePlus provider ( #116866 )
2026-07-31 22:37:47 +08:00
Vincent Koc
fab2c33cad
feat(plugins): externalize Xiaomi provider ( #116861 )
2026-07-31 22:02:07 +08:00
Vincent Koc
b2b62b2e1e
feat(plugins): externalize Volcengine provider ( #116854 )
2026-07-31 21:28:01 +08:00
Shakker
5cd00cfbaa
fix: reserve Buzz relay subscription capacity ( #116799 )
2026-07-31 13:40:34 +01:00
Shakker
eab10bd7c8
docs: refresh the Buzz documentation map
2026-07-31 13:40:34 +01:00
Shakker
b3c4ea0291
docs: explain Buzz archived room handling
2026-07-31 13:40:34 +01:00
Shakker
729d21336b
docs: clarify Buzz directory reconnects
2026-07-31 13:40:33 +01:00
Shakker
6c7a96e588
fix: budget Buzz relay subscriptions
2026-07-31 13:40:32 +01:00
Shakker
3c78fe00f3
docs: document Buzz directory identities
2026-07-31 13:40:32 +01:00
Vincent Koc
ba1a6722bb
feat(plugins): externalize Vydra provider ( #116813 )
2026-07-31 20:35:43 +08:00
Vincent Koc
eb55c8ea8f
feat(plugins): externalize Voyage embeddings ( #116785 )
...
* feat(voyage): externalize embedding provider
* fix(voyage): drop stale bundled description
2026-07-31 19:52:33 +08:00
wangyan2026
d865c9b8f5
fix(build): fail closed on symlinked build output roots ( #116705 )
...
Reject symlinked generated-output roots before build and postbuild mutation paths can recurse into unrelated targets. Cover aggregate, UI, export-template, bundled-plugin, Docker-prune, and plugin-runtime entry points with regression tests and migration guidance.
Closes #116498
Co-authored-by: WangYan <wang.yan29@xydigit.com >
2026-07-31 19:37:05 +08:00
Peter Steinberger
82231b425b
fix(qa-channel): isolate account evidence and exclude deleted messages ( #116744 )
...
* fix(qa): scope transport verdicts to visible account replies
* refactor(qa): remove obsolete outbound wait aliases
---------
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 04:19:41 -07:00
Vincent Koc
6830820755
feat(plugins): externalize DuckDuckGo search ( #116740 )
2026-07-31 18:49:07 +08:00
Vincent Koc
d194f4b712
fix(sandbox): gate Podman versioned features
2026-07-31 18:29:53 +08:00
Vincent Koc
a53caebb6f
fix(sandbox): reject unsafe rootless Podman users
2026-07-31 18:02:27 +08:00
Vincent Koc
94c0f33f1f
Merge pull request #116611 from openclaw/experiment/google-cli-supported-paths
...
fix(google): stop offering unsupported CLI setup
2026-07-31 17:48:18 +08:00
Vincent Koc
a550827dad
feat(plugins): externalize Synthetic provider ( #116720 )
2026-07-31 17:19:43 +08:00
Vincent Koc
20e68e01df
fix(gateway): sign device proofs with challenge time ( #116679 )
2026-07-31 16:45:53 +08:00
Vincent Koc
091bc7f9ed
Merge remote-tracking branch 'origin/main' into experiment/google-cli-supported-paths
...
* origin/main: (115 commits)
test: type session request parameters (#116713 )
fix: retain event invalidation for pagination
docs: note queued session refresh fix
fix: preserve queued session refresh options
fix(exec): require approval for abbreviated inline eval flags [AI] (#116529 )
fix: keep owner-only tools out of non-owner skill commands [AI] (#116532 )
fix(tui): require a fresh agent roster (#116715 )
fix(memory-wiki): preserve user edits when rolling back ChatGPT imports (#116517 )
fix(agents): cron failures preserve timeout and cancellation reasons (#116566 )
fix(release): unblock beta validation workflows (#116708 )
fix(ci): discover frozen target startup benchmark cases (#116711 )
fix(session): preserve reset message payloads (#116195 )
fix(qa): tolerate loaded-runner bus delivery stalls (#116448 )
improve(ci): rebalance embedded agent test configs (#116436 )
fix(browser): return committed trace path (#116702 )
fix(qa): exceed Slack table aggregate limit in fallback probe (#116447 )
fix(qa): use built plugin tools server (#116442 )
fix(test): keep memory FD repro config valid (#116698 )
fix(telegram): keep queued tool progress in one message (#116685 )
fix(qa): stop waiting on yielded fanout runs (#116440 )
...
# Conflicts:
# src/system-agent/setup-inference-detect.ts
# ui/src/e2e/model-setup.e2e.test.ts
2026-07-31 16:40:33 +08:00
Yuval Dinodia
623a015928
fix(memory-wiki): preserve user edits when rolling back ChatGPT imports ( #116517 )
...
* fix(memory-wiki): preserve user edits when rolling back ChatGPT imports
Rollback deleted created pages and overwrote updated pages unconditionally,
destroying content the user added after the import with no recovery copy.
Import runs now record a content hash of each written page after vault
compile, and rollback preserves any page whose current content no longer
matches into the run's recovered directory before deleting or restoring.
Legacy run records without hashes preserve unconditionally.
Fixes #116457
* fix(memory-wiki): move pages aside atomically during rollback
Rollback now renames the live page into the recovery location before
inspecting it, so a concurrent external save cannot land between the
content read and the delete or snapshot restore. Matching pages drop
the moved copy; mismatching pages keep it as the recovery file.
* fix(memory-wiki): make rollback snapshot restore collision-safe
The snapshot restore wrote directly to the page path after the
move-aside, so a page recreated by an editor in that window was
overwritten with no recovery copy. Restore now creates the snapshot
exclusively and on collision moves the recreated page aside and
retries; recovery filenames are uniqued so a second move-aside cannot
clobber an earlier preserved copy.
* fix(memory-wiki): record rollback hashes at write time
* fix(memory-wiki): make ChatGPT rollback retry-safe
* fix(memory-wiki): fence ChatGPT rollback phases
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-31 08:01:52 +00:00
Vincent Koc
fa4cc51a87
feat(plugins): externalize Teams and Zoom meetings ( #116682 )
2026-07-31 14:10:46 +08:00
Peter Steinberger
31ccf56a81
fix(cli): report failed MCP probes to automation ( #116664 )
...
* fix(cli): fail MCP probes without losing output
* test(cli): use shared MCP probe temp cleanup
2026-07-30 21:57:35 -07:00
Vincent Koc
c892a712e6
feat(plugins): externalize Cohere and Meta providers ( #116662 )
...
* feat(plugins): externalize Cohere and Meta providers
* docs(changelog): note provider externalization
* chore: keep changelog release-owned
2026-07-31 12:53:01 +08:00
sallyom
4ba02b83e8
refactor(sandbox): share container backend with Podman
...
Signed-off-by: sallyom <somalley@redhat.com >
2026-07-31 00:06:33 -04:00
joshavant
23dbee9e38
fix(github-copilot): honor live model selection in guided setup
2026-07-30 21:15:10 -05:00
joshavant
94542eb872
fix(github-copilot): select available onboarding model
2026-07-30 21:15:10 -05:00
Vincent Koc
9e965073e5
Merge remote-tracking branch 'origin/main' into experiment/google-cli-supported-paths
...
* origin/main: (168 commits)
fix(plugins): keep registry sqlite root consistent (#116427 )
fix(cli): keep Gateway auth failures parseable in JSON (#116597 )
fix(trajectory): preserve prompts in oversized events (#116220 )
test(buzz): add live QA Lab channel lane (#116298 )
chore(i18n): refresh native locales (#116567 )
feat: add OpenClaw TUI prototype skill (#116583 )
fix(update): accept concrete versions selected by ranges (#116585 )
fix(agents): preserve locked session model routes
test(qa-lab): preserve Matrix fault proxy identity
fix(ci): extend OpenAI live profile setup budget (#116580 )
fix: prevent configured models from stalling startup (#116553 )
fix(cli): close MCP listener after one-shot commands
fix(auto-reply): keep explicit NO_REPLY silent (#116548 )
test(discord): cover deferred backpressure terminals
fix(discord): cancel backpressured realtime playback
test(discord): cover realtime output backpressure
fix(codex): add remote WebSocket heartbeat and reconnect (#116135 )
fix(macos): wait for the current reconnect snapshot (#116550 )
fix(outbound): recognize current-source message-tool sends (#116560 )
fix(voice-call): type cancelled consult outcomes
...
# Conflicts:
# extensions/google/setup-api.test.ts
# ui/src/e2e/model-setup.e2e.test.ts
2026-07-31 09:30:03 +08:00
Patrick Erichsen
61cf4b9246
test(buzz): add live QA Lab channel lane ( #116298 )
...
* feat(buzz): add live QA runner
* ci(qa): add gated Buzz live lane
* docs(qa): document Buzz live testing
* fix(buzz): keep QA relay type private
* test(buzz): type QA suite mock
* fix(buzz): preserve racing QA reply relations
* fix(qa): harden Buzz credential redaction
* fix(buzz): ignore retained QA relay events
* fix(buzz): clean up observer setup failures
* test(buzz): return complete racing messages
* fix(buzz): default QA credentials to file
* fix(qa): validate pooled Buzz secrets
* fix(qa): redact structured Buzz auth tags
* fix(buzz): preserve QA credential env override
* fix(qa): redact inspected Buzz auth tags
* test(buzz): limit live QA to supported scenarios
* ci(qa): run Buzz lane in release checks
* fix(qa): require secure remote Buzz relays
* fix(qa): satisfy Buzz QA validation gates
* fix(qa): inject credential leasing into transport adapters
2026-07-30 17:44:27 -07:00