Commit Graph

141 Commits

Author SHA1 Message Date
Peter Steinberger
06411d0fdc fix: derive prefixes from routed identity (#578) (thanks @p6l-richard) 2026-01-09 16:39:32 +01:00
Richard Poelderl
5a63621a38 feat(messages): also derive responsePrefix from identity.name
When identity.name is configured and responsePrefix is not explicitly set,
automatically default responsePrefix to [identity.name].

This means users only need to set their identity once:
  { identity: { name: "MyBot" } }

And outbound messages will automatically be prefixed with [MyBot].
2026-01-09 16:31:20 +01:00
Richard Poelderl
fcadcd38c4 feat(messages): derive messagePrefix from identity.name
When identity.name is configured, use it for the default messagePrefix
instead of hardcoded '[clawdbot]'. Falls back to 'clawdbot' if not set.

This allows users to customize how their bot identifies itself in messages
by setting identity.name in their config or IDENTITY.md.
2026-01-09 16:31:01 +01:00
Peter Steinberger
947844117c feat: wire multi-agent config and routing
Co-authored-by: Mark Pors <1078320+pors@users.noreply.github.com>
2026-01-09 12:48:42 +00:00
Jake
5ce0339b69 WhatsApp: fix routing for queued messages by using correct OriginatingTo 2026-01-09 02:01:33 +01:00
Peter Steinberger
7a5585ab4c fix: tighten group elevated targeting 2026-01-08 22:57:18 +01:00
Peter Steinberger
7ab6c73a62 feat(cli): move provider login/logout 2026-01-08 07:40:08 +01:00
Peter Steinberger
0be0b48de4 fix: satisfy lint for slow listener logs 2026-01-08 01:32:52 +01:00
Peter Steinberger
1a16e0b0a5 fix: format slow listener logs 2026-01-08 01:28:21 +01:00
Peter Steinberger
ea45f76e87 fix(routing): harden originating reply routing 2026-01-07 05:02:34 +00:00
Peter Steinberger
b9ff5fb808 feat: update heartbeat defaults 2026-01-06 21:54:42 +00:00
Peter Steinberger
13e94f4f66 fix(slack): clear assistant thread status after replies 2026-01-06 21:41:30 +01:00
Peter Steinberger
4284a2f2c5 fix: preserve markdown fences when chunking 2026-01-06 20:23:41 +01:00
Peter Steinberger
882bcaf414 feat: multi-agent routing + multi-account providers 2026-01-06 18:33:37 +00:00
Peter Steinberger
11a373685b feat(providers): normalize location parsing 2026-01-06 06:31:09 +01:00
Peter Steinberger
f7bdefbe3d refactor: centralize reply dispatch 2026-01-06 04:55:00 +01:00
Peter Steinberger
425b7fcd23 refactor: unify group allowlist policy 2026-01-06 04:27:51 +01:00
Peter Steinberger
cb0c40b16f style: satisfy lint 2026-01-06 03:11:42 +00:00
Peter Steinberger
dbfe031707 fix: stop typing after dispatcher idle 2026-01-06 03:09:49 +00:00
Peter Steinberger
17358af33b fix: unify mention gating across providers 2026-01-06 01:32:17 +01:00
Peter Steinberger
33390d3a72 fix/heartbeat ok delivery filter (#246)
* cron: skip delivery for HEARTBEAT_OK responses

When an isolated cron job has deliver:true, skip message delivery if the
response is just HEARTBEAT_OK (or contains HEARTBEAT_OK at edges with
short remaining content <= 30 chars). This allows cron jobs to silently
ack when nothing to report but still deliver actual content when there
is something meaningful to say.

Media is still delivered even if text is HEARTBEAT_OK, since the
presence of media indicates there's something to share.

* fix(heartbeat): make ack padding configurable

* chore(deps): update to latest

---------

Co-authored-by: Josh Lehman <josh@martian.engineering>
2026-01-05 22:52:13 +00:00
Peter Steinberger
09baa58aa2 refactor: unify reply dispatch across providers 2026-01-05 19:43:54 +01:00
Peter Steinberger
d463edb17e fix(whatsapp): reconnect on crypto unhandled rejection 2026-01-05 13:55:37 +00:00
Peter Steinberger
4e19cd451d style: tidy auto-reply imports and formatting 2026-01-05 01:46:16 +01:00
Peter Steinberger
ddf6e0d104 fix: unify control command handling 2026-01-05 01:31:36 +01:00
Peter Steinberger
f7cb3846f1 chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
Shadow
dd60465720 chore: formatting 2026-01-03 12:35:16 -06:00
Peter Steinberger
aa9cf42fcc fix: honor whatsapp per-group mention overrides 2026-01-03 17:51:10 +01:00
Peter Steinberger
3d22afea6f fix(logging): decouple file logs from console verbose 2026-01-03 12:32:14 +00:00
Peter Steinberger
561500e042 feat: configurable outbound text chunk limits 2026-01-03 01:49:27 +01:00
Peter Steinberger
331fbd02d8 feat: stream reply blocks immediately 2026-01-03 00:28:33 +01:00
Peter Steinberger
365f18b978 feat: add reply tags and replyToMode 2026-01-02 23:18:41 +01:00
Peter Steinberger
ef6151804a feat: move group mention gating to provider groups 2026-01-02 22:24:26 +01:00
Peter Steinberger
e98d9a8a98 refactor: move whatsapp allowFrom config 2026-01-02 13:00:29 +01:00
Peter Steinberger
ce319bef69 refactor: normalize group session keys 2026-01-02 10:14:58 +01:00
Peter Steinberger
3e89059036 fix: refine HEARTBEAT_OK handling 2026-01-02 01:42:27 +01:00
Peter Steinberger
5073dd3392 fix: suppress stray HEARTBEAT_OK replies 2026-01-01 23:53:29 +01:00
Peter Steinberger
4a81346e7a fix: force web reconnect on stalled close 2025-12-28 12:04:20 +00:00
Peter Steinberger
c680f3bac5 fix: use final heartbeat payload 2025-12-26 20:39:20 +00:00
Peter Steinberger
86b4816ac9 chore: fix lint after logging tweaks 2025-12-26 09:08:37 +00:00
Peter Steinberger
e17cfe6c3b fix: split whatsapp listen hint from subsystem log 2025-12-26 08:41:58 +00:00
Peter Steinberger
4cb41565e9 feat: unify gateway heartbeat 2025-12-26 02:35:40 +01:00
Peter Steinberger
3ffd1c9bba feat: move heartbeat config to agent.heartbeat 2025-12-26 01:13:42 +01:00
Peter Steinberger
d980ce77f2 refactor: move inbound config 2025-12-24 00:22:52 +00:00
Peter Steinberger
b0c901fc76 feat: add per-session model selection 2025-12-23 23:45:20 +00:00
Peter Steinberger
a24d541abc fix: suppress thinking stream + typing 2025-12-23 14:17:18 +00:00
Peter Steinberger
49bf82bd8d chore: demote reply chunk logs 2025-12-23 13:25:56 +00:00
Peter Steinberger
aada8f7c84 fix: honor group requireMention default 2025-12-23 12:53:30 +00:00
Peter Steinberger
46ff27c8a1 fix: strip repeated heartbeat ok tails 2025-12-23 03:12:24 +01:00
Peter Steinberger
e0706949a7 fix: inject reply context into body 2025-12-23 02:44:38 +01:00