Kastrah
0ec276d421
chore: format partially staged files
2026-01-26 11:35:13 +01:00
Kastrah
cf20305894
chore: add Zoho Cliq docs, VPS scripts, and leaf config schema
2026-01-26 11:34:21 +01:00
Kastrah
b35ceca265
feat: Zoho Cliq integration and config updates
2026-01-26 11:33:00 +01:00
Kastrah
6f37fe0acc
fix: detect and sanitize HTML error pages in agent responses
2026-01-26 11:05:59 +01:00
Kastrah
fa4222fdee
Merge remote main and re-apply circular dependency fixes
2026-01-24 19:58:00 +01:00
Kastrah
30fc2b1f17
Merge branch 'main' of https://github.com/kastrah/clawdia
2026-01-24 19:54:46 +01:00
Peter Steinberger
93737ee152
test: align agent id normalization
2026-01-24 14:36:31 +00:00
Peter Steinberger
765626b492
test: trim cron agentId label
2026-01-24 14:36:31 +00:00
Peter Steinberger
876bbb742a
test: skip opencode alpha GLM in live suite
2026-01-24 14:08:16 +00:00
Peter Steinberger
ef7971e3a4
fix: normalize heartbeat targets
2026-01-24 13:53:00 +00:00
Peter Steinberger
9d742ba51f
fix: hide message_id hints in web chat
2026-01-24 13:52:31 +00:00
Peter Steinberger
386d21b6d1
fix: sync tests with config normalization
2026-01-24 13:32:26 +00:00
Peter Steinberger
d0e21f05a6
fix: drop opencode alpha GLM model
2026-01-24 13:19:55 +00:00
Peter Steinberger
62c9255b6a
fix: harden outbound mirroring normalization
2026-01-24 12:57:58 +00:00
hsrvc
ac45c8b404
fix: preserve Telegram topic (message_thread_id) in sub-agent announcements
...
When native slash commands are executed in Telegram topics/forums, the
originating topic context was not being preserved. This caused sub-agent
announcements to be delivered to the wrong topic.
Root cause: Native slash command context did not set OriginatingChannel
and OriginatingTo, causing session delivery context to fallback to the
user's personal ID instead of the group ID + topic.
Fix: Added OriginatingChannel and OriginatingTo to native slash command
context, ensuring topic information is preserved for sub-agent announcements.
Related session fields:
- lastThreadId: preserved via MessageThreadId
- lastTo: now correctly set to group ID via OriginatingTo
- deliveryContext: includes threadId for proper routing
2026-01-24 12:26:29 +00:00
Peter Steinberger
fa746b05de
fix: preserve agent id casing
2026-01-24 12:23:44 +00:00
Peter Steinberger
49c518951c
fix: align bluebubbles outbound group sessions
2026-01-24 12:23:26 +00:00
Peter Steinberger
c42e9b1d19
fix: log discord deploy error details
2026-01-24 12:10:59 +00:00
Peter Steinberger
298901208d
fix: align agent id normalization
2026-01-24 12:10:08 +00:00
Peter Steinberger
4b6cdd1d3c
fix: normalize session keys and outbound mirroring
2026-01-24 11:57:11 +00:00
Peter Steinberger
eaeb52f70a
chore: update protocol artifacts
2026-01-24 11:28:24 +00:00
Luke
be1cdc9370
fix(agents): treat provider request-aborted as timeout for fallback ( #1576 )
...
* fix(agents): treat request-aborted as timeout for fallback
* test(e2e): add provider timeout fallback
2026-01-24 11:27:24 +00:00
Peter Steinberger
8002143d92
fix: guard cli session update
2026-01-24 11:21:34 +00:00
Peter Steinberger
4a9123d415
chore: suppress remaining deprecation warnings
2026-01-24 11:16:46 +00:00
Peter Steinberger
dbf139d14e
test: cover explicit mention gating across channels
2026-01-24 11:09:33 +00:00
Peter Steinberger
d905ca0e02
fix: enforce explicit mention gating across channels
2026-01-24 11:09:33 +00:00
Peter Steinberger
ab000398be
fix: resolve session ids in session tools
2026-01-24 11:09:11 +00:00
Peter Steinberger
1bbbb10abf
fix: persist session usage metadata on suppressed replies
2026-01-24 11:05:02 +00:00
Peter Steinberger
5482803547
chore: filter noisy warnings
2026-01-24 10:48:33 +00:00
Peter Steinberger
a6ddd82a14
feat: add TTS hint to system prompt
2026-01-24 10:25:42 +00:00
Peter Steinberger
d8a6317dfc
fix: show voice mode in status
2026-01-24 10:03:19 +00:00
Peter Steinberger
c8c58c0537
fix: avoid Discord /tts conflict
2026-01-24 09:58:06 +00:00
Peter Steinberger
6765fd15eb
feat: default TTS model overrides on ( #1559 ) (thanks @Glucksberg)
...
Co-authored-by: Glucksberg <80581902+Glucksberg@users.noreply.github.com>
2026-01-24 09:42:32 +00:00
Peter Steinberger
d73e8ecca3
fix: document tools invoke + honor main session key ( #1575 ) (thanks @vignesh07)
2026-01-24 09:29:32 +00:00
Vignesh Natarajan
f1083cd52c
gateway: add /tools/invoke HTTP endpoint
2026-01-24 09:29:32 +00:00
Dave Lauer
f9cf508cff
feat(heartbeat): add configurable visibility for heartbeat responses
...
Add per-channel and per-account heartbeat visibility settings:
- showOk: hide/show HEARTBEAT_OK messages (default: false)
- showAlerts: hide/show alert messages (default: true)
- useIndicator: emit typing indicator events (default: true)
Config precedence: per-account > per-channel > channel-defaults > global
This allows silencing routine heartbeat acks while still surfacing
alerts when something needs attention.
2026-01-24 09:07:03 +00:00
Peter Steinberger
9b12275fe1
fix(hooks): emit message_received metadata
2026-01-24 08:56:16 +00:00
Peter Steinberger
f70ac0c7c2
fix: harden discord rate-limit handling
2026-01-24 08:43:28 +00:00
Peter Steinberger
8ea8801d06
fix: show tool error fallback for tool-only replies
2026-01-24 08:17:50 +00:00
Peter Steinberger
c97bf23a4a
fix: gate openai reasoning downgrade on model switches ( #1562 ) (thanks @roshanasingh4)
2026-01-24 08:16:42 +00:00
Peter Steinberger
3fff943ba1
fix: harden gateway lock validation ( #1572 ) (thanks @steipete)
2026-01-24 08:15:07 +00:00
Peter Steinberger
dea96a2c3d
fix: handle PID recycling in container gateway lock
...
In containers, PIDs can be recycled quickly after restarts. When a container
restarts, a different process might get the same PID as the previous gateway,
causing the lock check to incorrectly think the old gateway is still running.
This fix adds isGatewayProcess() which verifies on Linux that the PID actually
belongs to a clawdbot gateway by checking /proc/PID/cmdline. If the cmdline
doesn't contain 'clawdbot' or 'gateway', we assume the lock is stale.
Fixes gateway boot-loop in Docker/Fly.io deployments.
2026-01-24 08:15:07 +00:00
Peter Steinberger
d9a467fe3b
feat: move TTS into core ( #1559 ) (thanks @Glucksberg)
2026-01-24 08:00:44 +00:00
Glucksberg
df09e583aa
feat(telegram-tts): add auto-TTS hook and provider switching
...
- Integrate message_sending hook into Telegram delivery path
- Send text first, then audio as voice message after
- Add /tts_provider command to switch between OpenAI and ElevenLabs
- Implement automatic fallback when primary provider fails
- Use gpt-4o-mini-tts as default OpenAI model
- Add hook integration to route-reply.ts for other channels
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 08:00:44 +00:00
Roshan Singh
202d7af855
Fix OpenAI Responses transcript after model switch
2026-01-24 07:58:25 +00:00
Tak hoffman
ff52aec38e
Agents: drop bash tool alias
2026-01-24 07:44:04 +00:00
Peter Steinberger
15620b1092
fix: guard tool allowlists with warnings
2026-01-24 07:38:42 +00:00
Peter Steinberger
ad7fc4964a
fix: gate TUI lifecycle updates to active run ( #1567 ) (thanks @vignesh07)
2026-01-24 07:23:41 +00:00
Tak Hoffman
8f4426052c
CLI: fix Windows node argv stripping ( #1564 )
...
Co-authored-by: Tak hoffman <takayukihoffman@gmail.com>
2026-01-24 07:10:40 +00:00
Peter Steinberger
6a60d47c53
fix: cover slack open policy gating ( #1563 ) (thanks @itsjaydesu)
2026-01-24 07:09:26 +00:00