Peter Steinberger
3c605b6043
fix: restore docker binds and PATH in sandbox exec ( #873 )
...
Thanks @akonyer.
Co-authored-by: Aaron Konyer <aaronk@gomodular.ca>
2026-01-15 02:58:20 +00:00
Peter Steinberger
e908edd04e
docs: add messaging channel guide
2026-01-15 02:50:03 +00:00
Peter Steinberger
a02c7d710d
fix: add plugin runtime registry
2026-01-15 02:44:45 +00:00
Peter Steinberger
fec657e888
feat: load channel plugins
2026-01-15 02:42:44 +00:00
Peter Steinberger
e35013b046
docs: clarify Claude CLI auth mode
2026-01-15 02:35:20 +00:00
Peter Steinberger
ec940b6945
fix: normalize Claude CLI auth mode to oauth ( #855 )
...
Thanks @sebslight.
Co-authored-by: Sebastian <sebslight@gmail.com>
2026-01-15 02:29:43 +00:00
Peter Steinberger
068de868dd
Merge pull request #850 from evalexpr/fix/slack-top-level-require-mention
...
fix(slack): respect top-level requireMention config
2026-01-15 02:28:25 +00:00
Peter Steinberger
d66bcad528
style(slack): satisfy oxfmt ( #850 )
2026-01-15 02:23:22 +00:00
Peter Steinberger
2732740110
docs: document DM history limits ( #883 )
...
Thanks @pkrmf.
Co-authored-by: Marc Terns <tenxurz@gmail.com>
2026-01-15 02:22:29 +00:00
Peter Steinberger
768a39451f
fix(slack): honor channels.slack.requireMention default ( #850 ) (thanks @evalexpr)
2026-01-15 02:19:24 +00:00
Jonathan Wilkins
bdbf8b5ceb
fix(slack): respect top-level requireMention config
...
The `channels.slack.requireMention` setting was defined in the schema
but never passed to `resolveSlackChannelConfig()`, which always
defaulted to `true`. This meant setting `requireMention: false` at the
top level had no effect—channels still required mentions.
Pass `slackCfg.requireMention` as `defaultRequireMention` to the
resolver and use it as the fallback instead of hardcoded `true`.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 02:17:27 +00:00
Peter Steinberger
1bc1989174
fix: add TUI status spinner
2026-01-15 02:11:12 +00:00
Peter Steinberger
9dc9ce1c61
fix: render TUI pickers as overlays
2026-01-15 01:59:05 +00:00
Peter Steinberger
59d7e2bfa2
style: apply oxfmt fixes
2026-01-15 01:53:14 +00:00
Peter Steinberger
77b165e7a9
feat(config): gate channel config writes
2026-01-15 01:41:15 +00:00
Peter Steinberger
87b769996d
fix: suppress raw API error payloads ( #924 ) (thanks @grp06)
...
Co-authored-by: George Pickett <gpickett00@gmail.com>
2026-01-15 01:34:19 +00:00
George Pickett
487dd3ed9b
Format: fix report + telegram formatting
2026-01-15 01:27:16 +00:00
George Pickett
7025feb9a9
Format: apply oxfmt fixes
2026-01-15 01:27:16 +00:00
George Pickett
1c98b9f38d
Tests: add Gemini thoughtSignature for tool-call ids
2026-01-15 01:27:16 +00:00
George Pickett
55ed5718c0
Embedded runner: suppress raw API error payloads ( #919 )
2026-01-15 01:27:16 +00:00
Peter Steinberger
e2832f544f
feat: add security audit + onboarding checkpoint
2026-01-15 01:25:11 +00:00
Peter Steinberger
a08f7f00e8
docs: add context concept page
2026-01-15 01:12:59 +00:00
Peter Steinberger
85310793ce
fix(telegram): migrate group config on supergroup IDs ( #906 )
...
Thanks @sleontenko.
Co-authored-by: Stan <sleontenko@users.noreply.github.com>
2026-01-15 01:10:30 +00:00
sleontenko
25d06ceae2
feat(telegram): auto-migrate group config on supergroup migration
...
When a Telegram group is upgraded to a supergroup, the chat ID changes
(e.g., -123456 → -100123456). This causes the bot to lose its group
configuration since it's keyed by chat ID.
This change:
- Adds handler for `message:migrate_to_chat_id` event
- Logs the migration (old_id → new_id) for visibility
- If the old chat ID has config in channels.telegram.groups, automatically:
- Copies the config to the new chat ID
- Removes the old chat ID entry
- Saves the updated config file
This eliminates the need to manually update clawdbot.json when groups
migrate to supergroups.
2026-01-15 01:10:30 +00:00
Peter Steinberger
7756918f06
feat: add /context prompt breakdown
2026-01-15 01:06:35 +00:00
Peter Steinberger
7b8ceba672
docs: add markdown IR example
2026-01-15 00:37:04 +00:00
Peter Steinberger
75164654aa
docs: expand markdown formatting pipeline
2026-01-15 00:34:34 +00:00
Peter Steinberger
5ed5e159ac
chore: update clawtributors
2026-01-15 00:31:07 +00:00
Peter Steinberger
4fe6b626aa
fix: preserve markdown code fences
2026-01-15 00:31:07 +00:00
Peter Steinberger
b06f812d80
fix: finalize markdown IR formatting
2026-01-15 00:31:07 +00:00
Peter Steinberger
23655d656c
refactor: unify markdown formatting pipeline
2026-01-15 00:31:07 +00:00
Peter Steinberger
a3ebd00681
refactor: unify markdown formatting pipeline
2026-01-15 00:31:07 +00:00
Peter Steinberger
1db2eca941
fix(telegram): wire delete action for message tool ( #903 ) - thanks @sleontenko
...
Co-authored-by: Stan <sleontenko@users.noreply.github.com>
2026-01-15 00:29:53 +00:00
sleontenko
5108f83df1
feat(telegram): add deleteMessage action
...
Add ability to delete messages in Telegram chats via the message tool.
Changes:
- Add deleteMessageTelegram function in send.ts
- Add deleteMessage action handler in telegram-actions.ts
- Add delete action support in telegram message plugin adapter
- Add deleteMessage to TelegramActionConfig type
- Update message tool description to mention delete action
Usage:
- Via message tool: action="delete", chatId, messageId
- Can be disabled via channels.telegram.actions.deleteMessage=false
Limitations (Telegram API):
- Bot can delete its own messages in any chat
- Bot can delete others' messages only if admin with "Delete Messages"
- Messages older than 48h in groups may fail to delete
2026-01-15 00:29:53 +00:00
Peter Steinberger
c417029080
test: add gemini 3 antigravity switch live repro
2026-01-15 00:29:53 +00:00
Peter Steinberger
f2619950bf
fix: handle unsigned tool calls for gemini 3
2026-01-15 00:29:53 +00:00
Peter Steinberger
529955b873
refactor(auth): streamline allowFrom normalization
2026-01-14 23:42:50 +00:00
Peter Steinberger
49f8a7b121
refactor: centralize dashboard url + ws close code
2026-01-14 23:42:12 +00:00
Peter Steinberger
59be9a842c
fix: dashboard auth query items ( #918 ) - thanks @rahthakor
...
Co-authored-by: Rahul Thakor <rahthakor@users.noreply.github.com>
2026-01-14 23:36:23 +00:00
rahthakor
be1036ad78
docs(changelog): add gateway fix entries
2026-01-14 23:34:48 +00:00
rahthakor
3ac08d601a
fix(ui): use application-defined WebSocket close code
2026-01-14 23:34:48 +00:00
rahthakor
f5b0d12ea7
fix(mac): pass auth token to dashboard URL
2026-01-14 23:34:48 +00:00
Peter Steinberger
1a2c05586b
fix(whatsapp): normalize user JIDs for group allowlists ( #838 )
...
Thanks @peschee.
Co-authored-by: Peter Siska <63866+peschee@users.noreply.github.com>
2026-01-14 23:25:42 +00:00
Peter Steinberger
a424e3d9a1
test(whatsapp): add context isolation coverage
...
Includes outbound gating, threading fallback, and web auto-reply context assertions.
2026-01-14 23:23:36 +00:00
Peter Steinberger
7b48f996e3
refactor(discord): centralize autoThread reply plan ( #856 )
2026-01-14 23:07:05 +00:00
Shadow
b19620ac0d
Revert "Clarify coding-agent skill trigger"
...
This reverts commit 65cfcb3d51 .
2026-01-14 15:58:01 -06:00
Peter Steinberger
c58c3ccf1b
chore: standardize Claude Code CLI naming ( #915 )
...
Follow-up to #915 .
2026-01-14 20:07:35 +00:00
Peter Steinberger
432ae423da
fix(whatsapp): use conversation id for context isolation ( #911 )
...
Thanks @tristanmanchester.
Co-authored-by: Tristan Manchester <tmanchester96@gmail.com>
2026-01-14 20:06:20 +00:00
Peter Steinberger
e41e2684b7
refactor(discord): clean autoThread context wiring ( #856 )
...
Build reply/session context once (no post-hoc ctx mutation) and type into the actual delivery target.
Thanks @davidguttman.
Co-authored-by: David Guttman <david@davidguttman.com>
2026-01-14 20:04:25 +00:00
Peter Steinberger
c8d3c31c75
chore(auth): rename Claude CLI to Claude Code CLI ( #915 )
...
Thanks @SeanZoR.
Co-authored-by: Sean Katz <connect@sean8.com>
2026-01-14 19:57:42 +00:00