Clawd
c2d2f7afce
fix(cron): pass 'id' instead of 'jobId' to gateway
...
The cron tool was passing { jobId } to the gateway for update/remove/run/runs
actions, but the gateway protocol schema expects { id }. This caused validation
errors when trying to update or remove cron jobs via the tool.
Fixes the parameter name while keeping the external tool API unchanged (still
accepts 'jobId' from callers).
2026-01-04 17:18:29 +01:00
Peter Steinberger
a51da02680
feat(doctor): repair sandbox images
2026-01-04 16:02:24 +00:00
Peter Steinberger
efa19bd64b
feat(doctor): migrate legacy Clawdis config
2026-01-04 15:40:06 +00:00
Peter Steinberger
1457400861
feat(daemon): add legacy Clawdis service cleanup
2026-01-04 15:40:06 +00:00
Peter Steinberger
fa4d5cb362
chore: lint and format cleanup
2026-01-04 16:24:17 +01:00
Peter Steinberger
8a3b9b3b6e
feat: update onboard ASCII art to seafood shack lobster theme
2026-01-04 16:24:17 +01:00
Peter Steinberger
2512146de1
test: align google-shared expectations
2026-01-04 15:02:42 +00:00
Peter Steinberger
bf580540f0
test: add config for gateway sigterm
2026-01-04 14:59:49 +00:00
Peter Steinberger
a326430a94
style: format tests and helpers
2026-01-04 14:57:57 +00:00
Peter Steinberger
7d499bd7ef
test: update google-shared expectations
2026-01-04 14:57:57 +00:00
Peter Steinberger
f7cb3846f1
chore: rename project to clawdbot
2026-01-04 14:38:51 +00:00
Peter Steinberger
f3388cf644
feat: add canvasHost liveReload option
2026-01-04 15:22:47 +01:00
Peter Steinberger
c6d1b74ac2
fix: dedupe canvas host watcher
2026-01-04 15:15:46 +01:00
Peter Steinberger
89e6ed99be
fix: wire slack deps and stabilize sigterm test
2026-01-04 15:13:23 +01:00
George Tsifrikas
f9e2d9d053
Fix duplicate sendMessageSlack imports
...
Remove duplicate import statements for sendMessageSlack that were
causing TypeScript compilation errors in deps.ts and heartbeat-runner.ts
Co-Authored-By: Warp <agent@warp.dev>
2026-01-04 14:47:17 +01:00
Peter Steinberger
e21c66a136
chore: align rebase with main
2026-01-04 14:41:52 +01:00
Peter Steinberger
a1806acb16
fix: keep node presence fresh
2026-01-04 14:41:52 +01:00
Mariano Belinky
bd04488be9
docs: add PR template + node presence beacon
2026-01-04 14:41:52 +01:00
Peter Steinberger
82208a5078
fix: update lockfile and lint
2026-01-04 14:12:00 +01:00
Peter Steinberger
a8d7bde809
fix: wire slack into delivery routing
2026-01-04 11:44:41 +00:00
Peter Steinberger
c1b9858542
fix: add slack deps and send helpers
2026-01-04 11:44:41 +00:00
Muhammed Mukhthar CM
84fb1123dc
fix: Antigravity API compatibility and Gemini thinking tag leakage ( #167 )
...
* fix: ensure type:object in sanitized tool schemas for Antigravity API
The sanitizeSchemaForGoogle function strips unsupported JSON Schema
keywords like anyOf, but this can leave schemas with 'properties' and
'required' fields without a 'type' field. Both Google's Gemini API and
Anthropic via Antigravity require 'type: object' when these fields exist.
This fix adds a post-sanitization check that ensures type is set to
'object' when properties or required fields are present.
Fixes errors like:
- Gemini: 'parameters.properties: only allowed for OBJECT type'
- Anthropic: 'tools.6.custom.input_schema.type: Field required'
* fix: regenerate pi-ai patch with proper pnpm format
The patch now correctly applies via pnpm patch-commit, fixing:
- Thinking blocks: skip for Gemini, send with signature for Claude
- Schema sanitization: ensure type:object after removing anyOf
- Remove strict:null for LM Studio/Antigravity compatibility
Tested with all Antigravity models (Gemini and Claude).
* fix: strip thinking tags from block streaming output to prevent Gemini tag leakage
2026-01-04 12:44:19 +01:00
Peter Steinberger
1be5aa5c1d
fix: update pi-ai patch and tests
2026-01-04 12:24:01 +01:00
Shadow
33998f9570
Slack: add some fixes and connect it all up
2026-01-04 01:53:26 -06:00
Peter Steinberger
576743ba96
fix: add slack chunk limits
2026-01-04 07:23:39 +01:00
Shadow
bda68c1aae
Slack: refine scopes and onboarding
2026-01-04 07:22:02 +01:00
Shadow
cbd7495f47
Slack: add new slack connection
2026-01-04 07:18:20 +01:00
Peter Steinberger
d1ad26c35a
refactor: split config module
2026-01-04 07:05:17 +01:00
Peter Steinberger
29cc06786d
fix: allow elevated via discord username
2026-01-04 05:47:28 +00:00
Peter Steinberger
4a9629608d
feat: fallback elevated allowlist to discord dms
2026-01-04 05:31:00 +00:00
Peter Steinberger
0dbe997ef4
style: fix lint ordering
2026-01-04 06:27:54 +01:00
Peter Steinberger
7cc8553d03
fix: default elevated mode to on
2026-01-04 05:19:28 +00:00
Peter Steinberger
96a39a3dfb
style: fix lint formatting
2026-01-04 06:17:07 +01:00
Peter Steinberger
5d2bfa8421
feat: add elevated bash mode
2026-01-04 05:15:59 +00:00
Peter Steinberger
4015498035
refactor(auto-reply): split reply flow
2026-01-04 05:47:37 +01:00
Peter Steinberger
44f33f762b
fix: log dynamic config reloads
2026-01-04 04:24:50 +00:00
Peter Steinberger
73a20d205f
refactor: split agent tools
2026-01-04 05:07:44 +01:00
Peter Steinberger
ca3f739e98
style: fix lint
2026-01-04 03:37:08 +00:00
Peter Steinberger
42c1470b89
feat(browser): add remote-capable profiles
...
Co-authored-by: James Groat <james@groat.com>
2026-01-04 03:33:07 +00:00
Peter Steinberger
0d3eba5969
test: add sessions_send loopback test
2026-01-04 04:30:57 +01:00
Shadow
a9784d0853
Discord: tools for uploading emojis and stickers!
2026-01-03 21:20:01 -06:00
Peter Steinberger
251b679714
test: stabilize gateway tests
2026-01-04 04:16:38 +01:00
Peter Steinberger
2f31fd5a45
refactor: split gateway server methods
2026-01-04 04:05:18 +01:00
Peter Steinberger
6424033dee
test(agents): cover ping-pong announce flow
2026-01-04 03:41:58 +01:00
Peter Steinberger
97020aa7eb
feat(sessions): add agent-to-agent ping-pong
2026-01-04 03:37:44 +01:00
Peter Steinberger
9f8a3bd1b9
feat(sessions): add agent-to-agent post step
2026-01-04 03:04:55 +01:00
Peter Steinberger
b7fe5cc5ce
refactor: use per-send run ids for gateway agent
2026-01-04 02:08:52 +01:00
Peter Steinberger
ba3c810170
fix: avoid sessions_send timeouts
2026-01-04 01:52:01 +01:00
Peter Steinberger
df5655c445
test: relax cron default scheduler timeout
2026-01-04 01:45:50 +01:00
Peter Steinberger
c3cf26e5fb
fix: stabilize lint and test timeouts
2026-01-04 01:42:08 +01:00
Peter Steinberger
713c3b2f6f
fix: warm agent.wait cache
2026-01-04 01:35:02 +01:00
Peter Steinberger
0bfb714b1f
fix: adjust typing TTL
2026-01-04 00:26:31 +00:00
Peter Steinberger
062a4dfceb
style: format agent.wait imports
2026-01-04 01:22:22 +01:00
Peter Steinberger
49689096cf
fix: satisfy gate checks
2026-01-04 01:16:53 +01:00
Peter Steinberger
5115295a0f
fix: wait on agent.wait for sessions_send
2026-01-04 01:15:23 +01:00
Peter Steinberger
e297d8d28d
test: cover gif playback send params
2026-01-03 23:57:43 +00:00
Peter Steinberger
6b6a4c69f8
fix: lock main session deletion
2026-01-03 23:57:17 +00:00
Peter Steinberger
660eeb5ea1
fix: add gif playback for WhatsApp sends
2026-01-03 23:56:40 +00:00
Peter Steinberger
df609cdd27
feat: add node location support
2026-01-04 00:54:44 +01:00
Peter Steinberger
8ff33be1d5
fix: wait for final agent response in sessions_send
2026-01-04 00:40:40 +01:00
Peter Steinberger
f131e8fbad
fix: clarify provider requirements in onboarding
2026-01-03 23:29:38 +00:00
Peter Steinberger
c08ef29221
fix: make sessions_send wait via agent events
2026-01-04 00:12:14 +01:00
Peter Steinberger
6c4b68edda
chore: apply lint fixes
2026-01-04 00:06:02 +01:00
Peter Steinberger
a923d622a5
feat: add sessions tools and send policy
2026-01-03 23:44:42 +01:00
Peter Steinberger
75c987f8d6
fix: restore sandbox PATH default
2026-01-03 22:36:16 +00:00
Peter Steinberger
52320ecc56
fix: appease lint after merge
2026-01-03 22:59:11 +01:00
Azade
f486883491
fix(browser): avoid esbuild __name helper in evaluateViaPlaywright
...
When tsx/esbuild compiles arrow functions, it adds a __name helper
for debugging. This helper doesn't exist in the browser context,
causing 'ReferenceError: __name is not defined' when using
page.evaluate() with inline functions.
The fix uses new Function() constructed at runtime, which esbuild
doesn't transform, avoiding the __name injection.
2026-01-03 22:37:21 +01:00
Peter Steinberger
5cf3a12140
fix: include embedded agent error cause in reply
2026-01-03 21:30:43 +00:00
Peter Steinberger
f8d0988805
fix: tolerate missing sandbox config in embedded runner
2026-01-03 21:30:40 +00:00
Peter Steinberger
c1e015ce43
fix: add ~/.local/bin to PATH bootstrap for uv-installed tools ( fixes #78 ) ( #150 )
2026-01-03 22:25:52 +01:00
Mariano Belinky
39cb8647b0
fix: add ~/.local/bin to PATH for uv tool binaries ( #78 )
2026-01-03 22:21:16 +01:00
Peter Steinberger
f4c20d44da
feat: add sandbox browser support
2026-01-03 22:14:18 +01:00
Peter Steinberger
25c4aeedc1
style(logging): organize embedded log imports
2026-01-03 21:09:44 +00:00
Peter Steinberger
a7f9134089
test(gateway): cover config reload
2026-01-03 21:01:26 +00:00
Peter Steinberger
487d1901e3
fix(logging): quiet embedded run console logs
2026-01-03 20:57:39 +00:00
Peter Steinberger
28ec06cddc
feat: add per-session agent sandbox
2026-01-03 21:41:58 +01:00
Peter Steinberger
3b7d35c729
fix: drop embedded sandbox wiring
2026-01-03 20:16:53 +00:00
Peter Steinberger
d751c5e40d
refactor: remove bash pty mode
2026-01-03 20:15:10 +00:00
Peter Steinberger
30cc7e5a10
fix: stream tool summaries early and tool output
2026-01-03 21:04:40 +01:00
Shadow
a73656bef1
Discord: add forwarded message handling
2026-01-03 13:56:09 -06:00
Peter Steinberger
5b79f7e26f
feat(gateway): add config hot reload
2026-01-03 19:52:24 +00:00
Shadow
a1c548366e
Discord: handle system message types
2026-01-03 13:15:19 -06:00
Peter Steinberger
86ec71d2a7
style: fix lint formatting
2026-01-03 18:51:25 +00:00
Peter Steinberger
965f9c4746
Discord: default reaction notifications to own
2026-01-03 18:48:36 +00:00
Shadow
1acd162502
Discord: add reaction notification allowlist
2026-01-03 18:48:36 +00:00
Peter Steinberger
50f62f4af4
test(gateway): align config constants in auth test
2026-01-03 19:37:09 +01:00
Peter Steinberger
04662717ad
test(agents): extend text_end coverage
2026-01-03 19:37:09 +01:00
Peter Steinberger
1c105271c7
test(gateway): avoid hoisted export errors
2026-01-03 19:37:09 +01:00
Peter Steinberger
47d8c2d937
fix(gateway): format status/code errors
2026-01-03 19:37:09 +01:00
Peter Steinberger
696b308ea8
test(gateway): cover helper registries
2026-01-03 19:37:09 +01:00
Peter Steinberger
029cb5b162
refactor(gateway): split server helpers
2026-01-03 19:37:09 +01:00
Shadow
dd60465720
chore: formatting
2026-01-03 12:35:16 -06:00
Peter Steinberger
166258b77a
chore: add inline guidance for block streaming
2026-01-03 18:46:59 +01:00
Peter Steinberger
888f943543
fix: harden block stream dedupe
2026-01-03 18:44:07 +01:00
Peter Steinberger
81edbf47ab
refactor: split gateway server methods
2026-01-03 18:14:07 +01:00
Peter Steinberger
5a5e650ec9
refactor: add gateway server helper modules
2026-01-03 18:00:45 +01:00
Peter Steinberger
ecb3773893
fix: drop final payloads after block streaming
2026-01-03 17:55:31 +01:00
Peter Steinberger
590de25780
feat: configurable control ui base path
2026-01-03 17:55:31 +01:00
Peter Steinberger
c3d5804ec3
fix: avoid duplicate block-stream payloads
2026-01-03 16:53:56 +00:00
Peter Steinberger
aa9cf42fcc
fix: honor whatsapp per-group mention overrides
2026-01-03 17:51:10 +01:00