Peter Steinberger
4121f9e6dc
feat(agents): add session_status tool
2026-01-09 21:09:42 +01:00
Peter Steinberger
d309d4fe8b
fix(discord): log gateway reconnects
2026-01-09 21:06:19 +01:00
Peter Steinberger
e73b812236
fix: dedupe telegram updates
2026-01-09 21:06:06 +01:00
Shadow
2469384643
update carbon
2026-01-09 13:52:59 -06:00
Peter Steinberger
81e7e25b3a
style(macos): swiftformat cleanup
2026-01-09 19:49:12 +00:00
Peter Steinberger
f97fbbf2b8
chore(swift): narrow formatter/lint scope
2026-01-09 19:49:12 +00:00
Peter Steinberger
6d378ee608
feat(telegram): inline keyboard buttons ( #491 )
...
Co-authored-by: Azade <azade@hey.com >
2026-01-09 20:47:03 +01:00
Peter Steinberger
46f0a08878
chore: update clawtributors
2026-01-09 20:46:33 +01:00
Peter Steinberger
fb989cd0f8
Merge pull request #600 from samratjha96/fix/discord-duplicate-messages
...
fix(queue): deduplicate followup queue entries
2026-01-09 19:45:10 +00:00
Peter Steinberger
d3a0114b6b
fix: dedupe followup queue by message id ( #600 ) (thanks @samratjha96)
2026-01-09 20:44:11 +01:00
Peter Steinberger
e4cd03033a
Merge pull request #537 from Nachx639/fix/discord-web-provider-activity
...
fix: Discord eventQueue + WhatsApp provider activity accounting
2026-01-09 19:43:27 +00:00
Peter Steinberger
a65455e25d
fix: align WhatsApp activity account id ( #537 ) (thanks @Nachx639)
2026-01-09 20:42:35 +01:00
Samrat Jha
9185fdc896
fix(queue): deduplicate followup queue entries to prevent duplicate responses
...
## Problem
When messages arrived while the agent was busy processing a previous message,
the same message could be enqueued multiple times into the followup queue.
This happened because Discord's event system can emit the same message multiple
times (e.g., during reconnects or due to slow listener processing), and the
followup queue had no deduplication logic.
This caused the bot to respond to the same user message 2-4+ times.
## Solution
Add simple exact-match deduplication in `enqueueFollowupRun()`: if a prompt
is already in the queue, skip adding it again. Extracted into a small
`isPromptAlreadyQueued()` helper for clarity.
## Testing
- Added test cases for deduplication (same prompt rejected, different accepted)
- Manually verified on Discord: single response per message even when multiple
events fire during slow agent processing
2026-01-09 20:40:18 +01:00
Tu Nombre Real
a05c4fca5c
fix(web): pass accountId in WhatsApp provider activity tracking
...
Recent changes added recordProviderActivity calls with accountId, but
the type definition and usage didn't include accountId in ActiveWebSendOptions.
This fix adds the optional accountId field and uses optional chaining
when accessing it to handle cases where options is undefined.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-09 20:40:03 +01:00
Peter Steinberger
85fab7afe3
chore: add pnpm app workflow scripts
2026-01-09 19:38:48 +00:00
Peter Steinberger
2977b296e6
feat(messages): add whatsapp messagePrefix and responsePrefix auto
2026-01-09 19:29:04 +00:00
Peter Steinberger
0a4cb0d264
Merge pull request #604 from clawdbot/fix/model-fallback-error-message
...
Fix model fallback error message handling
2026-01-09 19:24:22 +00:00
Peter Steinberger
9ecef09c69
docs: update changelog for model fallback lint fix ( #604 ) (thanks @steipete)
2026-01-09 20:24:08 +01:00
Peter Steinberger
6481806751
fix: avoid base-to-string in model fallback
2026-01-09 20:23:00 +01:00
Shadow
60bd21d77b
chore: update carbon
2026-01-09 13:22:32 -06:00
Peter Steinberger
7e00fc4ebc
Merge pull request #603 from clawdbot/refactor/ui-chat-split-475
...
refactor(ui): split chat renderers and styles
2026-01-09 19:21:56 +00:00
Peter Steinberger
1acbd6aea0
refactor(ui): split chat renderers and styles
2026-01-09 20:20:06 +01:00
Peter Steinberger
71a08eed84
Merge pull request #599 from mcinteerj/fix/gemini-tool-schemas
...
fix: simplify tool schemas for Gemini compatibility
2026-01-09 19:19:01 +00:00
Peter Steinberger
72b0777341
fix(messages): restore explicit responsePrefix default
2026-01-09 19:18:34 +00:00
Peter Steinberger
0edacd0469
fix: simplify session tool schemas for Gemini compatibility ( #599 ) (thanks @mcinteerj)
2026-01-09 20:17:46 +01:00
Peter Steinberger
237480ed9b
Merge pull request #602 from clawdbot/refactor/model-override-warnings
...
refactor: centralize model override validation
2026-01-09 19:15:51 +00:00
Peter Steinberger
837cec64af
refactor: centralize test path containment checks
2026-01-09 19:15:44 +00:00
Keith the Silly Goose
423eef4624
fix: simplify tool schemas for Gemini compatibility
...
Replaces Type.Integer with Type.Number and simplifies the sessions_send tool schema to avoid anyOf/oneOf unions that cause 400 errors with Google Cloud Code Assist API.
2026-01-09 20:15:26 +01:00
Peter Steinberger
133e30c594
refactor: centralize model override validation ( #602 ) (thanks @steipete)
2026-01-09 20:15:26 +01:00
Peter Steinberger
7e81980747
refactor: centralize model override validation
2026-01-09 20:14:42 +01:00
Shadow
f0a909f6dd
Changelog: add PR 601
2026-01-09 13:06:41 -06:00
Peter Steinberger
840ccbccf6
docs: add messages concept overview
2026-01-09 19:06:14 +00:00
Peter Steinberger
ade06cb9fb
Merge pull request #472 from koala73/main
...
feat: add hooks.gmail.model for cheaper Gmail PubSub processing
2026-01-09 19:00:53 +00:00
Martin Púčik
d23bba9d24
docs: split CLI install commands into separate code blocks ( #601 )
2026-01-09 13:00:50 -06:00
Peter Steinberger
5755d85ad1
fix: harden Gmail hook model defaults ( #472 ) (thanks @koala73)
2026-01-09 19:59:45 +01:00
Magi Metal
50a5b4ddcc
Discord: fix DM recipient parsing for bare numeric user IDs ( #596 )
...
Co-authored-by: Shadow <shadow@clawd.bot >
2026-01-09 12:58:25 -06:00
Shadow
04512ee67c
Docs: pin Carbon dependency
2026-01-09 12:57:58 -06:00
Peter Steinberger
47a8b410ee
Merge pull request #475 from rahthakor/feature/ui-enhancements
...
feat(ui): refactor chat layout with sidebar, message grouping, and nav improvements
2026-01-09 18:54:44 +00:00
Peter Steinberger
067c20608c
fix(ui): landing cleanup ( #475 ) (thanks @rahthakor)
2026-01-09 19:53:32 +01:00
Peter Steinberger
6ec4c4bf8f
Merge pull request #505 from koala73/feat/whatsapp-media-max-size
...
feat(whatsapp): add configurable media max size
2026-01-09 18:53:04 +00:00
Peter Steinberger
87f432880a
fix: honor whatsapp mediaMaxMb ( #505 ) (thanks @koala73)
2026-01-09 19:51:35 +01:00
rahthakor
9624d70187
test(ui): add tests for chat modules and update for icon refactor
...
- Add 21 tests for message-normalizer.ts (normalizeMessage, normalizeRoleForGrouping, isToolResultMessage)
- Add 17 tests for tool-helpers.ts (formatToolOutputForSidebar, getTruncatedPreview)
- Update navigation.test.ts to test iconClassForTab instead of deprecated iconForTab
- Skip focus-mode.browser.test.ts (toggle button moved to settings)
- Skip chat-markdown.browser.test.ts (tool card rendering refactored to sidebar)
- Skip bash-tools.test.ts line offset tests (shell env pollution issue)
2026-01-09 19:47:19 +01:00
Elie Habib
3026367c1b
feat(whatsapp): add configurable media max size
...
- Add whatsapp.mediaMaxMb config option (default: 50MB)
- Increases default from previous 5MB hardcoded limit
- Allows receiving larger documents/media files
- Per-account override via whatsapp.accounts.*.mediaMaxMb
Fixes #<issue-number> (if applicable)
2026-01-09 19:40:21 +01:00
Elie Habib
da2323f80e
docs: add gateway restart guide
2026-01-09 19:39:42 +01:00
Elie Habib
f85807a2a6
fix: add serveBaseUrl to compactEmbeddedPiSession params
2026-01-09 19:39:42 +01:00
Elie Habib
1a47aec6e4
feat(gateway): add serve feature for sharing files via public URLs
2026-01-09 19:39:42 +01:00
Peter Steinberger
fd15704c77
fix(auto-reply): coalesce block replies and document streaming toggles ( #536 ) (thanks @mcinteerj)
2026-01-09 18:19:55 +00:00
Jake
a05916bee8
Config: add support for per-provider blockStreaming override
2026-01-09 18:11:27 +00:00
Peter Steinberger
91a6f721a3
docs: changelog for iMessage thread isolation ( #535 ) (thanks @mdahmann)
2026-01-09 18:43:32 +01:00
Peter Steinberger
3eef200145
Merge pull request #535 from mdahmann/fix/imessage-groupish-threads
...
imessage: isolate group-ish threads by chat_id
2026-01-09 17:42:42 +00:00