Peter Steinberger
01641b34ea
feat(doctor): audit supervisor config + docs
2026-01-08 21:28:48 +01:00
Peter Steinberger
58a9e35233
style(cron): format telegram target tests
2026-01-08 21:23:07 +01:00
Peter Steinberger
5fea53d89c
fix(cron): parse telegram targets with prefixes (thanks @mitschabaude-bot)
2026-01-08 21:23:07 +01:00
Azade
3a8d8bc6a4
fix(daemon): align systemd unit with documentation
...
Align generated systemd service file with docs:
https://docs.clawd.bot/gateway#supervision-systemd-user-unit
Adds:
- After=network-online.target
- Wants=network-online.target
- RestartSec=5
2026-01-08 21:16:19 +01:00
Peter Steinberger
31fb5867e8
refactor(outbound): centralize telegram account defaults
2026-01-08 21:05:01 +01:00
Peter Steinberger
7905a27416
style: format gateway-cli log lines
2026-01-08 20:04:10 +00:00
Peter Steinberger
04e0e10411
fix: restore hidden gateway-daemon alias
2026-01-08 19:54:23 +00:00
Peter Steinberger
871c9e5286
fix(heartbeat): telegram accountId + cron jobId compat ( #516 , thanks @YuriNachos)
2026-01-08 20:47:22 +01:00
Yurii Chukhlib
9d42972b8a
fix(heartbeat): pass accountId for Telegram delivery
...
Heartbeat Telegram delivery was failing when the bot token was
configured only via telegram.botToken in config (without TELEGRAM_BOT_TOKEN
environment variable).
Root cause: deliverOutboundPayloads was called without accountId parameter,
so sendMessageTelegram couldn't determine which account to use and couldn't
find the token from config.
Fix: Resolve default Telegram accountId when provider is "telegram" and pass
it to deliverOutboundPayloads. This follows the same pattern used elsewhere in
the codebase (e.g., cron uses resolveTelegramToken).
Changes:
- Added import for resolveDefaultTelegramAccountId
- Added accountId resolution for telegram provider
- Updated deliverOutboundPayloads call to include accountId
Fixes #318
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-08 20:47:22 +01:00
Yurii Chukhlib
4dac298ae2
fix(cron): use jobId parameter instead of id for AI tool schema
...
Fixes parameter mismatch between AI tool schema and internal validation.
The TypeBox schema now uses `jobId` for update/remove/run/runs actions,
matching what users expect based on the returned job objects.
Changes:
- Changed parameter from `id` to `jobId` in TypeBox schema for update/remove/run/runs
- Updated execute function to read `jobId` parameter
- Updated tests to use `jobId` in input parameters
The gateway protocol still uses `id` internally - the tool now maps
`jobId` from the AI to `id` for the gateway call.
Fixes #185
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-08 20:47:22 +01:00
Peter Steinberger
4a918ccf47
fix: avoid splitting outbound chunks inside parentheses ( #499 ) — thanks @philipp-spiess
2026-01-08 20:39:28 +01:00
Philipp Spiess
4082b90aa4
Chunking: avoid splits inside parentheses
2026-01-08 20:38:00 +01:00
Peter Steinberger
ba19173b96
test: cover status model provider prefix
2026-01-08 20:23:38 +01:00
Peter Steinberger
393c414e90
refactor: split discord gateway helpers
2026-01-08 20:23:06 +01:00
Peter Steinberger
bf67b29a0e
fix(telegram): resolve grammY fetch type mismatch ( #512 )
...
Co-authored-by: Yuri Chukhlib <yuri.v.chu@gmail.com>
2026-01-08 20:18:17 +01:00
Keith the Silly Goose
7866203c5c
fix(status): include provider prefix in model display
...
The /status command was showing 'anthropic/claude-sonnet-4-5' even when
using 'google-antigravity/claude-sonnet-4-5' because buildStatusMessage
received only the model name without the provider prefix.
When resolveConfiguredModelRef parsed a model string without a slash,
it fell back to DEFAULT_PROVIDER ('anthropic'), causing the misleading
display.
Fix: Pass the full 'provider/model' string to buildStatusMessage so
the provider is correctly extracted and displayed.
🪿 Investigated and submitted by Keith the Silly Goose
2026-01-08 20:11:37 +01:00
Peter Steinberger
c54f2a122a
fix: update changelog + prompt test
2026-01-08 20:08:27 +01:00
Josh Palmer
b7c900739e
🤖 codex: handle discord gateway error events ( #504 )
2026-01-08 20:06:02 +01:00
Josh Palmer
cc94db458c
🤖 codex: fix block reply ordering ( #503 )
...
What: serialize block reply sends, make typing non-blocking, add timeout fallback + abort-aware routing, and add regression tests.
Why: prevent out-of-order streamed blocks while keeping final fallback on timeouts.
Tests: ./node_modules/.bin/vitest run src/auto-reply/reply.block-streaming.test.ts src/auto-reply/reply/route-reply.test.ts
Tests: corepack pnpm lint && corepack pnpm build (pass). corepack pnpm test (ran locally; failure observed during run).
Co-authored-by: Josh Palmer <joshp123@users.noreply.github.com>
2026-01-08 19:30:24 +01:00
Gregor's Bot
7450aed663
fix: rename ClaudeBot to Clawdbot in system prompt ( #502 )
2026-01-08 11:24:00 -06:00
Peter Steinberger
c20a12aa7b
fix: format onboarding hint
2026-01-08 12:25:39 +01:00
Peter Steinberger
a564558a67
chore: drop bun from daemon runtime options
2026-01-08 12:20:45 +01:00
Peter Steinberger
51c2d29693
feat: auto-install gateway in quickstart
2026-01-08 12:19:45 +01:00
Peter Steinberger
8ed412db22
feat: streamline quickstart provider selection
2026-01-08 12:19:16 +01:00
Peter Steinberger
e210069dbd
fix: soften codex oauth expiry hint
2026-01-08 12:16:09 +01:00
Peter Steinberger
4dde870121
docs: split onboarding mode hints
2026-01-08 12:14:36 +01:00
Peter Steinberger
959a19d8ae
fix: clean lint issues
2026-01-08 11:07:11 +00:00
Peter Steinberger
63bad210c9
docs: tighten onboarding quickstart hint
2026-01-08 12:06:45 +01:00
Peter Steinberger
4c09acb2a9
feat: add telegram topic delivery for cron
2026-01-08 11:05:28 +00:00
Peter Steinberger
874c7465a5
fix: surface control ui config in daemon status
2026-01-08 11:05:28 +00:00
Peter Steinberger
e7b3cc3d3d
fix: add provider account metadata
2026-01-08 11:05:28 +00:00
Peter Steinberger
fd04bdb9cf
chore: tighten self-update guidance
2026-01-08 12:04:29 +01:00
Peter Steinberger
63ff5819b1
fix: retry telegram poll conflicts
2026-01-08 12:04:21 +01:00
Peter Steinberger
d42444928b
chore: add provider logs command
2026-01-08 12:01:06 +01:00
Peter Steinberger
a483e58860
feat: add quickstart onboarding defaults
2026-01-08 11:54:40 +01:00
Peter Steinberger
f24a4626e3
fix(config): reject shared agentDir
2026-01-08 11:54:26 +01:00
Peter Steinberger
390b102563
chore: show dm policy + allowlist preview
2026-01-08 11:25:17 +01:00
Peter Steinberger
8803787e48
chore: fallback providers status when gateway down
2026-01-08 11:05:03 +01:00
Peter Steinberger
a851444a1d
chore: expand provider details in status
2026-01-08 11:02:13 +01:00
Peter Steinberger
e8698fb9ef
chore: show dashboard url in status
2026-01-08 10:51:55 +01:00
Peter Steinberger
af2accf5e3
test: force bun fetch path in telegram send
2026-01-08 10:37:29 +01:00
Peter Steinberger
fa501e7730
fix: import path in doctor
2026-01-08 10:36:20 +01:00
Peter Steinberger
73988506fe
feat: allow hook model overrides
2026-01-08 09:33:42 +00:00
Peter Steinberger
e6f8e1e531
fix(telegram): restrict native fetch to bun
2026-01-08 10:31:16 +01:00
Peter Steinberger
4019fafc2c
chore: add spacing to status output
2026-01-08 10:30:57 +01:00
Peter Steinberger
21ef1761c6
chore: prompt to install or start gateway
2026-01-08 10:29:48 +01:00
Peter Steinberger
f6b1dc452a
chore: surface daemon status help
2026-01-08 10:29:44 +01:00
Peter Steinberger
a54442866a
chore: refine daemon runtime hint
2026-01-08 10:29:40 +01:00
Peter Steinberger
b80b3a38bf
chore: clarify telegram docs links
2026-01-08 10:29:36 +01:00
Peter Steinberger
bfd3eb46c7
docs: drop legacy telegram pairing mention
2026-01-08 09:57:03 +01:00
Peter Steinberger
bce3cc992f
fix: group /model list output
2026-01-08 09:44:59 +01:00
Peter Steinberger
0b611fc354
docs: add OAuth deep dive
2026-01-08 09:29:29 +01:00
Peter Steinberger
908a7e4fcb
chore: sync ci tasks and relax telegram test timeouts
2026-01-08 09:09:33 +01:00
Peter Steinberger
2450af26ec
test: fix telegram fetch expectation
2026-01-08 07:51:58 +00:00
Peter Steinberger
44441dd5d8
fix: clarify daemon status probe target
2026-01-08 08:50:09 +01:00
Peter Steinberger
8930ec32cb
feat: add slack multi-account routing
2026-01-08 08:49:16 +01:00
Peter Steinberger
00c1403f5c
fix: unblock ci
2026-01-08 07:41:39 +00:00
Peter Steinberger
1b2957d050
style: lint cleanup
2026-01-08 08:40:02 +01:00
Peter Steinberger
9a11325cc9
fix: daemon status guidance and telegram fetch
2026-01-08 08:39:55 +01:00
Peter Steinberger
5b397c0f15
style: tidy cli formatting
2026-01-08 08:26:40 +01:00
Peter Steinberger
c7cade5232
style: tidy gateway auth imports
2026-01-08 08:26:40 +01:00
Peter Steinberger
a676e16fbb
feat: expand daemon status diagnostics
2026-01-08 08:26:40 +01:00
Peter Steinberger
97cb469faf
chore(telegram): fix bun comment
2026-01-08 08:26:40 +01:00
Peter Steinberger
c241cb25bd
fix(telegram): gate native fetch to bun
2026-01-08 08:26:40 +01:00
Peter Steinberger
c1e97fab80
feat(cli): clarify agents list output
2026-01-08 08:26:40 +01:00
Peter Steinberger
b367ed75bf
fix: wire gateway auth diagnostics into doctor
2026-01-08 08:26:40 +01:00
Peter Steinberger
629eec11cc
feat: improve agents cli automation
2026-01-08 08:26:40 +01:00
Peter Steinberger
5565dcd447
fix: tighten gateway bind auth diagnostics
2026-01-08 08:26:40 +01:00
Peter Steinberger
debfce5a77
test: add agent allowlist coverage
2026-01-08 07:14:08 +00:00
Peter Steinberger
2b29b86ab5
feat: add agents_list tool
2026-01-08 07:06:36 +00:00
Peter Steinberger
0ba72477de
feat: allow sessions_spawn cross-agent
2026-01-08 06:56:34 +00:00
Peter Steinberger
d1ceb3aa60
feat: add logs cli and restart hints
2026-01-08 06:56:34 +00:00
Peter Steinberger
c9e07616c7
refactor: centralize WhatsApp config merging
2026-01-08 06:56:34 +00:00
Peter Steinberger
e09d44e63a
test(cli): cover provider login/logout
2026-01-08 07:41:17 +01:00
Peter Steinberger
e83c6ac088
feat(cli): move provider login/logout
2026-01-08 07:40:08 +01:00
Peter Steinberger
903f5af59c
feat: add skills CLI
2026-01-08 07:23:05 +01:00
Peter Steinberger
d14e05ac45
refactor: centralize provider helpers
2026-01-08 07:20:10 +01:00
Peter Steinberger
6a81652ebf
fix(typing): keep tool-start ttl mode-safe ( #452 , thanks @thesash)
2026-01-08 06:18:35 +00:00
Sash Catanzarite
29c5ed54b2
feat(typing): trigger indicator on tool start events
...
Add signalToolStart to TypingSignaler and call it from onAgentEvent
when tools begin executing. This keeps the typing indicator visible
during long-running tool operations.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-08 06:18:35 +00:00
Peter Steinberger
19595a8f99
refactor: simplify cli commands
2026-01-08 07:16:12 +01:00
Randy Torres
3c2e848a8e
Docker: fix WhatsApp config typing in onboarding + add tests
2026-01-08 06:05:56 +00:00
Peter Steinberger
367ee8ea7b
fix: stabilize telegram media group tests
2026-01-08 05:48:25 +00:00
Peter Steinberger
9b152ecb12
refactor: split providers commands
2026-01-08 06:46:40 +01:00
Peter Steinberger
f818d03ebf
style: format taglines
2026-01-08 06:37:03 +01:00
Peter Steinberger
8a7862452e
feat: add CLI taglines
2026-01-08 06:37:03 +01:00
Peter Steinberger
b50ea3ec59
feat: refine providers onboarding and cli
2026-01-08 06:25:21 +01:00
Peter Steinberger
6850e7b477
fix: align tailscale formatting
2026-01-08 05:21:20 +00:00
Peter Steinberger
4b9e8b580a
fix: stabilize bridge loopback + discord client
2026-01-08 05:15:51 +00:00
Peter Steinberger
b8a186fbd3
refactor: polish CLI theme + progress helpers
2026-01-08 06:02:36 +01:00
Peter Steinberger
e758cccd46
fix(discord): remove eventQueue client option
2026-01-08 06:00:20 +01:00
Sash Catanzarite
a6a550032a
fix(typing): refresh TTL on every startTypingLoop call
...
Previously, startTypingLoop would return early if the typing timer was
already running, which meant the TTL would never get refreshed during
long tool executions. This caused the typing indicator to stop after
2 minutes even if tools were still running.
Now we refresh the TTL at the start of startTypingLoop, before the
early-return checks. This keeps typing alive during long operations.
2026-01-08 05:45:46 +01:00
Peter Steinberger
dc3e3f27d4
style: apply lint fixes
2026-01-08 04:44:15 +00:00
Peter Steinberger
5b45a143a1
fix: stabilize media paths and logs
2026-01-08 04:41:01 +00:00
Peter Steinberger
9c9d191d6f
feat: improve cli setup flow
2026-01-08 05:33:54 +01:00
Peter Steinberger
4ef2fd328d
test: cover multi-media prompt note
2026-01-08 05:30:04 +01:00
Peter Steinberger
3f11927cd9
chore: update ClawdBot CLI branding
2026-01-08 05:20:39 +01:00
Peter Steinberger
ab8db941d0
feat: expand inbound media notes
2026-01-08 05:20:39 +01:00
Peter Steinberger
2287d32263
feat: add model scan progress callbacks
2026-01-08 05:20:39 +01:00
Peter Steinberger
28cd2e4c24
feat: refresh CLI output styling and progress
2026-01-08 05:20:39 +01:00
Peter Steinberger
ab98ffe9fe
fix: force telegram native fetch under bun
2026-01-08 05:20:38 +01:00