Commit Graph

1155 Commits

Author SHA1 Message Date
Peter Steinberger
566f7f2713 feat: add onboard reset option 2026-01-11 05:04:36 +01:00
Peter Steinberger
88a957c5de docs: avoid hardcoded pinned version 2026-01-11 04:46:27 +01:00
Peter Steinberger
bc59c501e4 fix: patch openai-responses replay + docs 2026-01-11 04:45:37 +01:00
Peter Steinberger
1cc5d35742 chore(release): consolidate into 2026.1.10 2026-01-11 04:42:01 +01:00
Peter Steinberger
0bc068b40b docs: add telegram reactions 2026-01-11 03:30:09 +00:00
Peter Steinberger
901d83682c docs: clarify agent providers and polls 2026-01-11 03:30:09 +00:00
Peter Steinberger
a6520b916b docs: fix session key examples 2026-01-11 03:30:09 +00:00
Peter Steinberger
6c53f80b4c docs: align messaging and node docs 2026-01-11 03:30:09 +00:00
Peter Steinberger
3194ab1f5f docs: fix provider session key examples 2026-01-11 03:30:09 +00:00
Peter Steinberger
c8e94f3a0c fix: tighten WhatsApp ack reactions and migrate config (#629) (thanks @pasogott) 2026-01-11 04:11:04 +01:00
sheeek
dd184d33fb feat(whatsapp): redesign ack-reaction as whatsapp-specific feature
- Move config from messages.ackReaction to whatsapp.ackReaction
- New structure: {emoji, direct, group} with granular control
- Support per-account overrides in whatsapp.accounts.*.ackReaction
- Add Zod schema validation for new config
- Maintain backward compatibility with old messages.ackReaction format
- Update tests to new config structure (14 tests, all passing)
- Add comprehensive documentation in docs/providers/whatsapp.md
- Timing: reactions sent immediately upon message receipt (before bot reply)

Breaking changes:
- Config moved from messages.ackReaction to whatsapp.ackReaction
- Scope values changed: 'all'/'direct'/'group-all'/'group-mentions'
  → direct: boolean + group: 'always'/'mentions'/'never'
- Old config still supported via fallback for smooth migration
2026-01-11 04:10:43 +01:00
Peter Steinberger
392a0efbb8 docs: consolidate 2026.1.10 notes 2026-01-11 04:08:33 +01:00
Peter Steinberger
7c133591e8 fix: improve telegram configuration safety 2026-01-11 03:57:52 +01:00
Peter Steinberger
77d843a83f fix(macos): improve onboarding discovery 2026-01-11 03:51:08 +01:00
Peter Steinberger
ac7fcf3d5e docs(status): make status first-step 2026-01-11 03:34:33 +01:00
Peter Steinberger
4b1000e45c Merge pull request #697 from gabriel-trigo/feat/docker-apt-packages
feat(docker): optional apt packages in docker-setup
2026-01-11 02:28:36 +00:00
Peter Steinberger
a95fe638b1 fix: harden docker apt install (#697) (thanks @gabriel-trigo) 2026-01-11 03:27:48 +01:00
Peter Steinberger
a8c6551580 fix: stabilize live probes and docs 2026-01-11 02:26:39 +00:00
Gabriel Trigo
36d69444f1 feat(docker): optional apt packages in docker-setup 2026-01-11 03:26:05 +01:00
Peter Steinberger
a75fe7e986 Merge pull request #695 from jeffersonwarrior/jeff/no-sign-launchagent
macOS: stabilize launchagent in --no-sign
2026-01-11 02:20:32 +00:00
Peter Steinberger
d4f96cd6e2 fix: reset unsigned launchd overrides (#695) (thanks @jeffersonwarrior) 2026-01-11 03:19:24 +01:00
Peter Steinberger
4520dbe570 docs: clarify gateway remote node flow 2026-01-11 03:17:06 +01:00
Peter Steinberger
c051f971fe fix(status): improve diagnostics and output 2026-01-11 02:42:24 +01:00
Peter Steinberger
fcd7bac754 docs: add quick setup blocks to chat providers 2026-01-11 02:40:38 +01:00
Peter Steinberger
86d6670192 feat: add codex cli backend 2026-01-11 01:39:30 +00:00
Peter Steinberger
57488364b0 docs: add provider hub and model provider pages 2026-01-11 02:27:37 +01:00
Peter Steinberger
3e2b22c0a8 feat: improve gateway services and auto-reply commands 2026-01-11 02:27:16 +01:00
Peter Steinberger
07c9b307ce docs: add FAQ for Anthropic setup-token and Codex auth 2026-01-11 02:05:35 +01:00
Peter Steinberger
a430f7cdfa docs: clarify browser allowlist defaults and risks 2026-01-11 02:00:30 +01:00
Peter Steinberger
9a13be4d2a fix: inject image paths for cli backends 2026-01-11 00:55:22 +00:00
Peter Steinberger
b39f8059de test: add CLI backend image probe 2026-01-11 00:55:22 +00:00
Peter Steinberger
36aef5c340 fix: unblock claude-cli live runs 2026-01-11 00:55:22 +00:00
Peter Steinberger
f615cb2857 feat: add CLI backend fallback 2026-01-11 00:55:22 +00:00
Peter Steinberger
c53403a484 feat: add sandbox browser control allowlists 2026-01-11 01:52:32 +01:00
Peter Steinberger
f4e2fb75c6 fix: update gateway auth docs and clients 2026-01-11 01:51:24 +01:00
Peter Steinberger
affbfca811 chore(release): 2026.1.11-3 2026-01-11 01:38:15 +01:00
Peter Steinberger
a3fb90e416 docs(status): add diagnostics commands 2026-01-11 01:31:56 +01:00
Peter Steinberger
3884c016bc feat: add browser target selection for sandboxed agents 2026-01-11 01:31:56 +01:00
Peter Steinberger
48b6145088 fix: dedupe inbound messages across providers 2026-01-11 00:12:25 +01:00
Peter Steinberger
bbd7937f68 fix(mac): add tailnet discovery fallback and debug CLI 2026-01-10 23:39:27 +01:00
Peter Steinberger
c25989b59c feat(status): improve status output 2026-01-10 23:32:07 +01:00
Peter Steinberger
0390d39d95 Heartbeat: optional reasoning delivery (#690)
* feat: expose heartbeat reasoning output

* docs(changelog): mention heartbeat reasoning toggle
2026-01-10 22:26:20 +00:00
Peter Steinberger
853d153b69 Gateway: disable OpenAI HTTP chat completions by default (#686)
* feat(gateway): disable OpenAI chat completions HTTP by default

* test(gateway): deflake mock OpenAI tool-calling

* docs(changelog): note OpenAI HTTP endpoint default-off
2026-01-10 21:55:54 +00:00
Peter Steinberger
635ac60185 test: add setup-token live smoke 2026-01-10 21:45:15 +00:00
Peter Steinberger
3b898b8898 fix(doctor): warn on opencode overrides 2026-01-10 22:44:31 +01:00
Peter Steinberger
c3ba0505f8 fix: keep docker home volume mounts 2026-01-10 22:42:57 +01:00
Gabriel Trigo
96ee7027f2 feat: add optional home volume and extra mounts 2026-01-10 22:40:57 +01:00
Peter Steinberger
1825cde46e docs(gateway): rename OpenAI HTTP endpoint doc 2026-01-10 22:39:06 +01:00
Peter Steinberger
d254843da0 feat(gateway): add config toggle for chat completions endpoint 2026-01-10 22:39:06 +01:00
Peter Steinberger
30dd2a497d fix: add reasoning visibility hint 2026-01-10 22:24:22 +01:00
Peter Steinberger
5bb13589bc test(live): add provider filters + google skip rules 2026-01-10 21:16:59 +00:00
Peter Steinberger
6410149eb5 feat(gateway): allow agent via model 2026-01-10 22:11:12 +01:00
Peter Steinberger
c052eb4f8b fix(docs): dedupe /sandbox redirects 2026-01-10 22:11:10 +01:00
Peter Steinberger
8e727bb589 docs(gateway): add OpenAI HTTP API to docs nav 2026-01-10 22:11:07 +01:00
Peter Steinberger
f8fe43591e feat(gateway): add OpenAI-compatible HTTP endpoint 2026-01-10 22:11:04 +01:00
Peter Steinberger
f110611865 docs(testing): add google live recipes 2026-01-10 20:55:57 +00:00
Shadow
6620983fc5 Docs: fix internal links 2026-01-10 14:51:33 -06:00
Peter Steinberger
1c9d9bfa3d feat(gateway): add agent image attachments + live probe 2026-01-10 20:44:23 +00:00
Peter Steinberger
87de07ee74 fix: align opencode-zen provider setup 2026-01-10 21:38:18 +01:00
Peter Steinberger
6fdeab6dc4 fix: describe sandboxed elevated in prompt 2026-01-10 21:37:15 +01:00
Peter Steinberger
376ab2ad71 feat(doctor): offer update first 2026-01-10 21:34:59 +01:00
Peter Steinberger
8c463dfde7 docs: expand testing guide 2026-01-10 19:53:34 +00:00
Peter Steinberger
e42b74dc11 feat: add colored CLI docs links 2026-01-10 20:51:03 +01:00
Peter Steinberger
fda4fa90b8 docs: document clawdbot update 2026-01-10 20:33:02 +01:00
Peter Steinberger
2df5727757 feat(sandbox): add sandbox explain inspector 2026-01-10 20:28:43 +01:00
Peter Steinberger
a000e740c4 docs: add group flow diagram 2026-01-10 20:05:22 +01:00
Peter Steinberger
4a9b735c53 docs: clarify group chat behavior 2026-01-10 19:56:46 +01:00
Peter Steinberger
2bcb81ab86 feat(hooks): allow gmail tailscale target URLs 2026-01-10 19:19:43 +01:00
Peter Steinberger
cf3283e630 docs: clarify tailscale gmail path forwarding 2026-01-10 19:19:43 +01:00
Peter Steinberger
6d2def4753 docs: call out group history limits 2026-01-10 19:19:31 +01:00
Peter Steinberger
5e01b0a530 docs: document history context overrides 2026-01-10 19:16:25 +01:00
Peter Steinberger
400a829b02 fix: telegram draft chunking defaults (#667) (thanks @rubyrunsstuff) 2026-01-10 18:30:06 +01:00
Peter Steinberger
95f008b0ad docs: expand TypeBox protocol guide 2026-01-10 17:38:34 +01:00
Peter Steinberger
88342a1004 docs: clarify model picks and auth setup 2026-01-10 17:36:54 +01:00
Jonáš Jančařík
95109ce2b1 feat: add shared model picker to configure/onboarding 2026-01-10 16:32:59 +00:00
Peter Steinberger
e8236ef955 fix(auto-reply): RawBody commands + locked session updates (#643) 2026-01-10 17:32:31 +01:00
Peter Steinberger
e55a72e3ea fix(gateway): harden chat abort semantics 2026-01-10 17:23:27 +01:00
Lloyd
f0fe89439a feat(agent): add human-like delay between block replies
Adds `agent.humanDelay` config option to create natural rhythm between
streamed message bubbles. When enabled, introduces a random delay
(default 800-2500ms) between block replies, making multi-message
responses feel more like natural human texting.

Config example:
```json
{
  "agent": {
    "blockStreamingDefault": "on",
    "humanDelay": {
      "enabled": true,
      "minMs": 800,
      "maxMs": 2500
    }
  }
}
```

- First message sends immediately
- Subsequent messages wait a random delay before sending
- Works with iMessage, Signal, and Discord providers

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 17:12:50 +01:00
Peter Steinberger
1f0d451dec docs: use providers login 2026-01-10 16:44:59 +01:00
Peter Steinberger
f5023e9ee8 fix(pairing): accept positional provider args 2026-01-10 16:36:43 +01:00
Peter Steinberger
23935ee3b1 feat: add ZAI auth choice 2026-01-10 16:32:21 +01:00
henrymascot
fb1fdb9c6f docs(showcase): add ParentPay, R2 Upload, iOS TestFlight, Oura Health
New community showcase entries from Discord #showcase:
- ParentPay School Meals (@George5562) - UK school meal automation
- R2 Upload (@julianengel) - presigned URL file sharing
- iOS App via Telegram (@coard) - full iOS app built via chat
- Oura Ring Health Assistant (@AS) - health/calendar integration
2026-01-10 16:15:55 +01:00
Peter Steinberger
293a4f2005 docs: remove legacy bundled gateway doc 2026-01-10 16:03:36 +01:00
Peter Steinberger
58b6c95098 refactor: tidy mac bundled gateway packaging 2026-01-10 16:03:36 +01:00
Radek Paclt
71bca07533 fix(auth): enable OAuth refresh for Claude CLI credentials
When Claude CLI credentials (anthropic:claude-cli) expire, automatically
refresh using the stored refresh token instead of failing with
"No credentials found" error.

Changes:
- Read refreshToken from Claude CLI and store as OAuth credential type
- Implement bidirectional sync: after refresh, write new tokens back to
  Claude Code storage (file on Linux/Windows, Keychain on macOS)
- Prefer OAuth over Token credentials (enables auto-refresh capability)
- Maintain backward compatibility for credentials without refreshToken

This enables long-running agents to operate autonomously without manual
re-authentication when OAuth tokens expire.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-10 15:40:27 +01:00
Peter Steinberger
c65b75ee8f fix: bundle node runtime for mac app 2026-01-10 15:28:37 +01:00
henrymascot
6bbac66a27 docs(showcase): add Adam H's multi-agent swarm
- 14+ Clawdbot agents under single gateway
- Opus 4.5 orchestrator + Codex workers
- Self-maintaining agent architecture
- Open-sourced clawdspace sandbox
2026-01-10 14:21:18 +00:00
pasogott
fbe1baa8e5 docs(telegram): Add @userinfobot tip with privacy note (#649)
* docs(telegram): Add @userinfobot tip with screenshot and privacy note

* docs: adjust telegram userinfobot tip

---------

Co-authored-by: sheeek <gitlab@ott.team>
Co-authored-by: Ayaan Zaidi <zaidi@uplause.io>
2026-01-10 19:21:51 +05:30
Peter Steinberger
49937cc973 test(docker): add multi-container gateway network smoke 2026-01-10 04:14:39 +00:00
Peter Steinberger
fbf44d47be chore: normalize Clawdbot naming 2026-01-10 05:14:09 +01:00
Peter Steinberger
6812f44193 docs(testing): document onboarding + wizard regressions 2026-01-10 03:47:44 +00:00
Peter Steinberger
953dc2d233 docs(testing): refresh live docker runners 2026-01-10 03:06:07 +00:00
Peter Steinberger
8c5601966b chore: add dev gateway/tui scripts 2026-01-10 03:53:32 +01:00
Peter Steinberger
dcc6dc4792 docs: add /config get alias 2026-01-10 03:10:14 +01:00
Peter Steinberger
4f56ed368e feat: auto-start sandbox browser 2026-01-10 02:06:21 +00:00
Peter Steinberger
83f111839c feat: add /config chat config updates 2026-01-10 03:01:27 +01:00
Peter Steinberger
1c78b449bf docs: document testing kit 2026-01-10 01:15:47 +00:00
Peter Steinberger
43ca0e19b3 fix: remove ack reactions after reply (#633) (thanks @levifig) 2026-01-10 02:14:14 +01:00
Peter Steinberger
0c85764db0 docs: improve Hetzner 24/7 VPS guide 2026-01-10 01:43:28 +01:00
Peter Steinberger
1ed062e21b docs: document OpenCode Zen config (#623) 2026-01-10 01:26:25 +01:00
Peter Steinberger
af7b8542af refactor: centralize failover error parsing 2026-01-10 01:26:06 +01:00
Peter Steinberger
1da850aa0f fix: polish opencode-zen onboarding (#623) (thanks @magimetal) 2026-01-10 01:09:34 +01:00
Peter Steinberger
130b63d23a fix: limit subagent bootstrap context 2026-01-10 00:01:16 +00:00
Peter Steinberger
2ae1e20cc4 refactor: centralize reasoning tag handling 2026-01-10 00:53:48 +01:00
Peter Steinberger
5ad2dd8be0 fix: centralize verbose overrides and tool stream gating 2026-01-10 00:52:24 +01:00
Peter Steinberger
a25ffba8f2 feat: allow session_status in sandbox 2026-01-09 23:41:57 +00:00
Peter Steinberger
09b836b593 fix: clarify sessions_send delivery semantics 2026-01-10 00:34:24 +01:00
Peter Steinberger
c1c71b3ebf fix: suppress <think> leakage + split reasoning output (#614) (thanks @zknicker) 2026-01-10 00:02:13 +01:00
Peter Steinberger
9374401cb7 fix: cap pairing requests and suppress outbound pairing replies 2026-01-09 22:58:18 +00:00
Peter Steinberger
177542d3d0 docs: add fresh showcase projects 2026-01-09 23:56:44 +01:00
Peter Steinberger
98263d9ede feat(signal): add reaction notifications 2026-01-09 23:53:36 +01:00
Peter Steinberger
9af73bfc82 docs: embed YouTube video on showcase 2026-01-09 23:10:22 +01:00
Peter Steinberger
18b8802191 docs: clarify npm vs git install switching 2026-01-09 23:10:15 +01:00
Peter Steinberger
8cdc2c6890 fix(auto-reply): tighten block streaming defaults 2026-01-09 22:41:10 +01:00
Peter Steinberger
51806c78b0 fix: default block streaming coalesce idle to 1s 2026-01-09 22:31:19 +01:00
Peter Steinberger
9ddc9868cb Merge pull request #464 from austinm911/fix/slack-thread-replies
feat(slack): implement configurable reply threading
2026-01-09 21:10:39 +00:00
Peter Steinberger
6cec9c0673 fix(auth): billing backoff + cooldown UX 2026-01-09 22:00:14 +01:00
Austin Mudd
680d8eca9d Slack: implement replyToMode threading for tool path
- Add shared hasRepliedRef state between auto-reply and tool paths
- Extract buildSlackThreadingContext helper in agent-runner.ts
- Extract resolveThreadTsFromContext helper in slack-actions.ts
- Update docs with clear replyToMode table (off/first/all)
- Add tests for first mode behavior across multiple messages
2026-01-09 21:59:51 +01:00
Peter Steinberger
ba1e9058e7 feat: add per-agent elevated controls 2026-01-09 20:42:19 +00:00
Peter Steinberger
f1a8a712d4 refactor: harden broadcast groups 2026-01-09 21:39:58 +01:00
Peter Steinberger
2030ff833c refactor: centralize cli timeout parsing 2026-01-09 21:29:52 +01:00
Peter Steinberger
b433be8b7f refactor: centralize skills prompt resolution 2026-01-09 21:27:20 +01:00
Zach Knickerbocker
4ac4a75fed Docker: cache deps layer for faster rebuilds (#605) 2026-01-09 14:23:06 -06:00
Peter Steinberger
036e25c00d fix: honor config timeout in tui 2026-01-09 21:22:50 +01:00
Peter Steinberger
46dec6ed7d fix: inject skills prompt list 2026-01-09 21:20:51 +01:00
Peter Steinberger
8bb8515c0e fix: land broadcast groups (#547) (thanks @pasogott) 2026-01-09 21:14:19 +01:00
sheeek
0d298b134d feat: add broadcast groups for multi-agent responses
Enables multiple agents to process the same message simultaneously,
allowing teams of specialized agents with atomic tasks to work together
in the same group using one phone number.

Key features:
- Configure multiple agents per WhatsApp group/DM via routing.broadcast
- Parallel (default) or sequential processing strategies
- Full session isolation (separate history, workspace, tools per agent)
- Minimal code changes (~50 lines in auto-reply.ts)
- Backward compatible with existing routing

Use cases:
- Specialized agent teams (code reviewer + security scanner + docs)
- Multi-language support (EN + DE + ES agents)
- Quality assurance workflows (support + QA agents)
- Task automation (tracker + logger + reporter)

Example config:
{
  "routing": {
    "broadcast": {
      "strategy": "parallel",
      "120363403215116621@g.us": ["alfred", "baerbel", "assistant3"]
    }
  }
}

This enables scaling to hundreds of focused micro-agents on a single
phone number, each handling specific atomic tasks.
2026-01-09 21:05:58 +01:00
Peter Steinberger
9817df9b67 feat(telegram): inline keyboard buttons (#491)
Co-authored-by: Azade <azade@hey.com>
2026-01-09 20:47:03 +01:00
Peter Steinberger
eed2ac72ef feat(messages): add whatsapp messagePrefix and responsePrefix auto 2026-01-09 19:29:04 +00:00
Peter Steinberger
1f8e4790b5 fix(messages): restore explicit responsePrefix default 2026-01-09 19:18:34 +00:00
Peter Steinberger
865abef566 refactor: centralize model override validation 2026-01-09 20:14:42 +01:00
Peter Steinberger
75d667e1b0 docs: add messages concept overview 2026-01-09 19:06:14 +00:00
Peter Steinberger
9031406494 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
6e4098fcd3 docs: split CLI install commands into separate code blocks (#601) 2026-01-09 13:00:50 -06:00
Peter Steinberger
b53f657485 fix: harden Gmail hook model defaults (#472) (thanks @koala73) 2026-01-09 19:59:45 +01:00
Magi Metal
c3336cec4b 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
Peter Steinberger
07310951d4 fix: honor whatsapp mediaMaxMb (#505) (thanks @koala73) 2026-01-09 19:51:35 +01:00
Elie Habib
84b6e8aa04 docs: add gateway restart guide 2026-01-09 19:39:42 +01:00
Peter Steinberger
7550ef8192 fix(auto-reply): coalesce block replies and document streaming toggles (#536) (thanks @mcinteerj) 2026-01-09 18:19:55 +00:00
Peter Steinberger
a9b72db51c 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
Peter Steinberger
a248dc0f4e refactor: centralize minimax onboarding + keys 2026-01-09 18:37:06 +01:00
Peter Steinberger
ec5aeb6dce Merge branch 'main' into fix/imessage-groupish-threads 2026-01-09 17:36:15 +00:00
Peter Steinberger
681aacacf0 docs: link Hetzner guide from install/platforms 2026-01-09 18:21:28 +01:00
Peter Steinberger
abec870104 Merge pull request #556 from Iamadig/docs/hetzner-guide
Docs/hetzner guide
2026-01-09 17:18:18 +00:00
Peter Steinberger
91343e8dbc fix: align Hetzner docker guide with gateway runtime (#556) (thanks @Iamadig) 2026-01-09 18:17:19 +01:00
Peter Steinberger
1529c4df66 Merge branch 'main' into fix/imessage-groupish-threads 2026-01-09 17:16:44 +00:00
AG
7ad94f1878 docs: add Hetzner deployment guide 2026-01-09 18:15:02 +01:00
mneves75
a35f3f4c7c feat: Add MiniMax Anthropic-compatible API support (minimax-api)
Add --auth-choice minimax-api for direct MiniMax API usage at
https://api.minimax.io/anthropic using the anthropic-messages API.

Changes:
- Add applyMinimaxApiConfig() function with provider/model config
- Add minimax-api to AuthChoice type and CLI options
- Add handler and non-interactive support
- Fix duplicate minimax entry in envMap
- Update live test to use anthropic-messages API
- Add 11 unit tests covering all edge cases
- Document configuration in gateway docs

Test results:
- 11/11 unit tests pass
- 1/1 live API test passes (verified with real API key)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-09 18:13:18 +01:00
Peter Steinberger
5efbe8b48c Merge pull request #587 from clawdbot/refactor/hook-agent-normalize
Hooks: normalize agent provider handling
2026-01-09 16:52:32 +00:00
Peter Steinberger
26ec390cf0 feat: add setup-token + token auth 2026-01-09 17:50:34 +01:00