Kevin Lin
1008b8213b
fix(slack): keep approvals in app conversation threads
...
* fix(slack): keep plugin approvals in app conversation threads
* fix(slack): preserve plugin approval routing
* fix(slack): keep suppression typing aligned
* fix(slack): suppress native dm approval fallback
* fix(slack): suppress stored native approval fallback
2026-05-21 21:51:34 -07:00
Kevin Lin
7f499643b2
enhance(slack): deliver native plugin approvals ( #85062 )
...
* fix(slack): deliver native plugin approvals
* fix(slack): deliver plugin approvals with native UI
* docs: defer slack plugin approval docs
2026-05-21 17:31:06 -07:00
Kevin Lin
777a113973
fix(codex): await computer use elicitation bridge ( #85117 )
...
* fix(codex): bridge computer use elicitations
* fix(codex): preserve computer use approval boundary
* fix(codex): await app-server elicitation bridge
2026-05-21 17:17:46 -07:00
OpenClaw Contributor
4c6fe55d20
fix(discord): cap component ttl at one day
2026-05-21 21:54:30 +01:00
OpenClaw Contributor
c17a48ccfd
docs(discord): document component ttl config
2026-05-21 21:54:30 +01:00
Peter Steinberger
e0b53cae41
docs: remove stale owner tool wording
2026-05-21 15:14:48 +01:00
Jason (Json)
48a14e41e2
feat(discord): add realtime voice bootstrap context
...
Add bounded realtime profile context for Discord realtime voice sessions.
Default to `IDENTITY.md`, `USER.md`, and `SOUL.md`; `voice.realtime.bootstrapContextFiles: []` disables the extra context.
Document the config/SDK surface and refresh generated metadata.
Co-authored-by: FullerStackDev <263060202+fuller-stack-dev@users.noreply.github.com >
2026-05-20 14:13:59 +01:00
Jason (Json)
befb0f3d39
feat(discord): follow configured users in voice
...
Summary:
- Adds Discord voice followUsers/followUsersEnabled config, metadata, docs, and changelog coverage.
- Makes Discord voice follow configured users across joins, moves, disconnects, admin moves, handoff, bounded reconciliation, transient REST failures, destroy cleanup, and DAVE recovery.
- Adds focused Discord voice/config regression tests and refreshes generated config docs metadata.
Verification:
- node scripts/run-vitest.mjs run --config test/vitest/vitest.e2e.config.ts extensions/discord/src/voice/manager.e2e.test.ts
- node scripts/run-vitest.mjs run --config test/vitest/vitest.extension-discord.config.ts extensions/discord/src/config-schema.test.ts
- pnpm config:channels:check
- pnpm config:docs:check
- pnpm config:schema:check
- pnpm exec oxfmt --check --threads=1 docs/channels/discord.md extensions/discord/src/voice/manager.ts extensions/discord/src/voice/manager.e2e.test.ts src/config/bundled-channel-config-metadata.generated.ts CHANGELOG.md
- git diff --check
- pnpm build
- pnpm check:test-types
- Mac Studio config validate + gateway:watch proof on cf67023fdf; Discord provider started and gateway ready
- Autoreview passed after two actionable findings were fixed
CI notes:
- PR-specific proof is green: check-docs, config-boundary, real behavior proof, check-test-types, OpenGrep, CodeQL, no-tabs, security-fast.
- Remaining broad CI reds match current main failures/noise on unrelated fs-safe Python helper, Windows ACL locale, managed media staging, and dependency guardrail surfaces.
Co-authored-by: FullerStackDev <263060202+fuller-stack-dev@users.noreply.github.com >
2026-05-20 12:49:15 +01:00
clawsweeper[bot]
a57ab2448f
docs(imessage): warn that cliPath wrappers must stream JSON-RPC stdio ( #84330 ) ( #84420 )
...
Summary:
- The PR adds a Warning block to `docs/channels/imessage.md` explaining that iMessage `cliPath` wrappers and SSH proxies must stream long-lived JSON-RPC stdin/stdout incrementally.
- Reproducibility: not applicable. for this docs-only PR. Source inspection verifies the runtime uses long-lived line-framed stdio, and current main lacks the operator warning being added.
Automerge notes:
- PR branch already contained follow-up commit before automerge: docs(imessage): warn that cliPath wrappers must stream JSON-RPC stdio…
Validation:
- ClawSweeper review passed for head a371ee998e .
- Required merge gates passed before the squash merge.
Prepared head SHA: a371ee998e
Review: https://github.com/openclaw/openclaw/pull/84420#issuecomment-4494313781
Co-authored-by: HCL <chenglunhu@gmail.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-05-20 03:51:32 +00:00
Nimrod Gutman
94d8391c03
[codex] restore QR bootstrap operator handoff ( #83684 )
...
Merged via squash.
Prepared head SHA: 2dc955cfb7
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com >
Reviewed-by: @ngutman
2026-05-19 20:59:09 +03:00
Patrick Erichsen
d60ab48511
Add Telegram progress preview flows ( #83847 )
...
* feat(telegram): add progress preview flow tooling
* docs: add channel flow preview skill
* test(telegram): exercise native draft flow fixture
* fix(telegram): remove progress label ellipsis animation
* fix(telegram): address progress preview review
2026-05-18 21:23:55 -07:00
clawsweeper[bot]
b2f9f197a5
fix(whatsapp): clarify inbound group diagnostics ( #83969 )
...
Summary:
- The PR updates WhatsApp inbound listener and group-drop diagnostics, adds focused tests, and documents that observed but unregistered groups must be admitted through `channels.whatsapp.groups`.
- Reproducibility: yes. from source inspection: current main still emits the DM-only startup log and vague gro ... sions/whatsapp/src/auto-reply/monitor.ts` and `extensions/whatsapp/src/auto-reply/monitor/group-gating.ts`.
Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(whatsapp): clarify group drop guidance
- PR branch already contained follow-up commit before automerge: fix(whatsapp): make inbound diagnostics policy-aware
- PR branch already contained follow-up commit before automerge: fix(whatsapp): clarify inbound group diagnostics
Validation:
- ClawSweeper review passed for head 0da24e3bbb .
- Required merge gates passed before the squash merge.
Prepared head SHA: 0da24e3bbb
Review: https://github.com/openclaw/openclaw/pull/83969#issuecomment-4484218945
Co-authored-by: Neerav Makwana <261249544+neeravmakwana@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-05-19 03:53:56 +00:00
Ayaan Zaidi
890139f998
refactor(telegram): simplify native draft progress path
2026-05-18 22:14:30 +05:30
Alexander Krimm
f199cec885
docs(telegram): clarify native draft progress config
2026-05-18 22:14:30 +05:30
Alexander Krimm
a433cef05f
fix(telegram): gate native tool progress drafts
2026-05-18 22:14:30 +05:30
Alexander Krimm
7cc4258dd5
feat(telegram): use native DM drafts for tool progress
2026-05-18 22:14:30 +05:30
Peter Steinberger
c32878d1b7
fix(messages): keep Codex source replies tool-gated
2026-05-18 13:51:21 +01:00
Peter Steinberger
4b35003051
fix(messages): keep Codex direct replies automatic
2026-05-18 13:51:21 +01:00
Peter Steinberger
1e5450f23e
fix(messages): keep group visible replies automatic by default ( #83498 )
...
* fix(messages): keep group visible replies automatic by default
* fix(messages): keep unauthorized slash turns quiet
* fix(messages): return boolean from slash guard
* test(messages): narrow visible reply fixtures
* test(messages): align completion delivery default
2026-05-18 09:48:58 +01:00
Tak Hoffman
f349fb82aa
fix(mantis): remove ambiguous github trigger mention ( #83179 )
2026-05-17 11:24:23 -05:00
Peter Steinberger
b78c2ee8c8
refactor: adopt presentation rendering in Mattermost
2026-05-17 14:18:23 +01:00
Peter Steinberger
f5090d2624
feat: render Teams presentations as Adaptive Cards
2026-05-17 14:18:23 +01:00
Peter Steinberger
ee72ce8cf7
refactor: deprecate legacy interactive reply APIs
2026-05-17 14:18:23 +01:00
Peter Steinberger
ad861d4c9d
feat: add presentation capability limits
2026-05-17 14:18:23 +01:00
Peter Steinberger
6b688ed614
docs: clarify ambient room recommendation
2026-05-17 08:16:58 +01:00
Peter Steinberger
77547226ce
fix: improve progress draft truncation
2026-05-17 08:13:39 +01:00
Peter Steinberger
a46d2e2b06
docs: add ambient room events guide
2026-05-17 07:20:15 +01:00
Youssef Hemimy
94ed68bc76
fix(whatsapp): honor forceDocument flag end-to-end ( #79272 )
...
Merged via squash.
Prepared head SHA: faaff35f1e
Co-authored-by: itsuzef <53057646+itsuzef@users.noreply.github.com >
Co-authored-by: mcaxtr <7562095+mcaxtr@users.noreply.github.com >
Reviewed-by: @mcaxtr
2026-05-16 23:29:01 -03:00
Peter Steinberger
0190f4ae1e
fix: finish inbound event rebase ( #82606 )
2026-05-17 00:10:29 +01:00
Peter Steinberger
07f05e972e
refactor: move inbound event classification into core
2026-05-17 00:10:29 +01:00
Peter Steinberger
80eeb688c1
feat(slack): add assistant thread lifecycle
2026-05-16 22:31:22 +01:00
Peter Steinberger
95741daeb4
fix(telegram): cache startup bot info
2026-05-16 17:56:01 +01:00
Peter Steinberger
575936473d
fix(auto-reply): log suppressed message-tool-only finals ( #82609 )
...
* fix(auto-reply): fallback group finals when message tool is missed
* fix(auto-reply): log suppressed message-tool finals
* docs(auto-reply): clarify message-tool finals stay private
# Conflicts:
# CHANGELOG.md
* docs(auto-reply): fix group visible reply examples
2026-05-16 16:30:07 +01:00
Peter Steinberger
d4b98f0dc9
fix: gate ambient room event turns
2026-05-15 21:47:46 +01:00
Ayaan Zaidi
61f3a4d71d
fix(telegram): keep room events quiet
2026-05-15 21:47:46 +01:00
Ayaan Zaidi
c2e659472a
docs(channels): describe room events
2026-05-15 21:47:46 +01:00
Peter Steinberger
f0ceb3c5aa
fix(auto-reply): restrict no-reply to automatic groups
2026-05-15 21:29:39 +01:00
Peter Steinberger
4780e69352
fix(line): acknowledge webhooks before agent processing
2026-05-15 15:49:36 +01:00
Peter Steinberger
41810a462e
fix(discord): suppress link embeds by default
...
* fix(discord): suppress link embeds by default
* fix(discord): handle missing stream config
2026-05-15 15:22:54 +01:00
Peter Steinberger
2ea0c6c929
docs(slack): align unfurl default docs ( #82123 )
2026-05-15 13:25:52 +01:00
Kibi
cb695b0986
fix(slack): default unfurl_links to false for outbound messages
...
Slack link unfurls (inline message previews) are enabled by default
when unfurl_links is not explicitly set in chat.postMessage. This means
bot messages containing Slack message links or URLs automatically expand
into rich preview cards, which can be noisy in channels.
Default unfurl_links to false so outbound messages don't show inline
link previews unless the operator explicitly opts in via:
channels.slack.unfurlLinks: true
unfurlMedia remains opt-in (only sent when explicitly configured).
2026-05-15 13:25:52 +01:00
Peter Steinberger
d89732efca
fix(slack): route plugin modal submissions
...
Co-authored-by: shannon0430 <258282406+shannon0430@users.noreply.github.com >
Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com >
Co-authored-by: Jin Kim <198280395+jink-ucla@users.noreply.github.com >
2026-05-15 13:18:55 +01:00
Peter Steinberger
b830beb34b
fix: surface update restart and plugin repair guidance
2026-05-15 07:32:29 +01:00
pashpashpash
1a5548203e
Stream Codex preambles in channel progress drafts ( #81887 )
...
* codex: stream preambles in progress drafts
* test: update preamble progress PR checks
* test: refresh plugin sdk api baseline
2026-05-15 05:32:42 +09:00
Gado
83b8289ee2
feat: WhatsApp status reactions, new emoji categories, self-explanatory defaults ( #59077 ) ( #80612 )
...
Merged via squash.
Prepared head SHA: 25e0a7a9fd
Co-authored-by: gado-ships-it <276509604+gado-ships-it@users.noreply.github.com >
Co-authored-by: velvet-shark <126378+velvet-shark@users.noreply.github.com >
Reviewed-by: @velvet-shark
2026-05-14 14:37:23 +02:00
Peter Steinberger
81b239dc98
build: externalize slack openshell vertex plugins
2026-05-14 07:46:58 +01:00
Bek
aa39107261
docs: align Slack docs for socket mode and troubleshooting ( #81647 )
2026-05-14 00:34:30 -04:00
Peter Steinberger
5ac6b600de
docs(channels): document bot loop protection
2026-05-13 14:59:47 +01:00
stain lu
f1381b5312
fix(telegram): limit startup probes ( #80986 )
...
## Summary
- Limit Telegram startup `getMe` probes to two concurrent accounts.
- Add regression coverage for queued startup and queued abort behavior.
- Document the multi-account startup bound and add changelog credit.
## Verification
- `pnpm exec oxfmt --check --threads=1 CHANGELOG.md docs/channels/telegram.md extensions/telegram/src/channel.ts extensions/telegram/src/channel.gateway.test.ts extensions/telegram/src/startup-probe-limiter.ts`
- `node scripts/format-docs.mjs --check docs/channels/telegram.md`
- `git diff --check HEAD~1..HEAD`
- `env OPENCLAW_TEST_HEAVY_CHECK_LOCK_HELD=1 OPENCLAW_VITEST_MAX_WORKERS=1 pnpm --config.manage-package-manager-versions=false test extensions/telegram/src/channel.gateway.test.ts src/gateway/server-channels.test.ts`
- `env OPENCLAW_TSGO_HEAVY_CHECK_LOCK_HELD=1 pnpm --config.manage-package-manager-versions=false run tsgo:extensions`
- `env OPENCLAW_TSGO_HEAVY_CHECK_LOCK_HELD=1 pnpm --config.manage-package-manager-versions=false run tsgo:extensions:test`
- GitHub CI mostly green on `2d389e1010742efa884eacea520afd588d0b898f`; `check-test-types` red in unrelated `src/auto-reply/reply/queue/settings.test.ts` outside this PR's diff.
Co-authored-by: stainlu <stainlu@newtype-ai.org >
2026-05-13 14:23:32 +01:00
Pavan Kumar Gondhi
b17e77a22b
Require approval for setup-code device pairing [AI] ( #81292 )
...
* fix: require approval for setup-code bootstrap pairing
* addressing review-skill
* addressing codex review
* addressing codex review
* addressing codex review
* addressing codex review
* addressing codex review
* addressing ci
* addressing ci
* docs: add changelog entry for PR merge
2026-05-13 18:48:44 +05:30