Peter Steinberger
0faa200924
fix(onboarding): auto-build Control UI assets
2026-01-04 21:53:23 +01:00
Peter Steinberger
78998dba9e
feat: add image model config + tool
2026-01-04 19:35:49 +01:00
Peter Steinberger
0716a624a8
chore(lint): apply biome fixes
2026-01-04 19:08:22 +01:00
Peter Steinberger
e005dcb8e7
fix(oauth): derive oauth.json from state dir
2026-01-04 19:08:13 +01:00
Peter Steinberger
d85f91d247
feat: guide control ui access without gui
2026-01-04 18:49:36 +01:00
Shadow
50cecd8210
Discord: remove duplicate message ids
2026-01-04 11:36:18 -06:00
Peter Steinberger
2110cac5d6
fix(cli): add config alias and reduce probe noise
2026-01-04 17:23:34 +00:00
Peter Steinberger
5d17b84e8a
test(gateway): allow webchat chat.send without node
2026-01-04 17:12:49 +00:00
Peter Steinberger
2694e59ba6
fix(gateway): allow Control UI chat without node
2026-01-04 17:12:49 +00:00
Peter Steinberger
ff46f8ce58
chore: format models CLI
2026-01-04 18:11:41 +01:00
Peter Steinberger
734bb6b4fd
feat: add models scan and fallbacks
2026-01-04 17:57:52 +01:00
Cash Williams
64e656af82
fix: default elevated level to 'off' when not allowed
...
When elevatedAllowed is false (e.g., for heartbeat surface which isn't
in any allowFrom list), the elevated level was incorrectly defaulting
to 'on', causing bash commands to fail with 'elevated is not available'.
Now defaults to 'off' when elevated isn't allowed, so bash works
normally without trying to use elevated mode.
Fixes: https://github.com/clawdbot/clawdbot/issues/181
2026-01-04 17:36:14 +01:00
Clawd
17665d1732
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
718299b25a
feat(doctor): repair sandbox images
2026-01-04 16:02:24 +00:00
Peter Steinberger
5f09d801d0
feat(doctor): migrate legacy Clawdis config
2026-01-04 15:40:06 +00:00
Peter Steinberger
65ad956ab4
feat(daemon): add legacy Clawdis service cleanup
2026-01-04 15:40:06 +00:00
Peter Steinberger
026a25d164
chore: lint and format cleanup
2026-01-04 16:24:17 +01:00
Peter Steinberger
e8de7d083d
feat: update onboard ASCII art to seafood shack lobster theme
2026-01-04 16:24:17 +01:00
Peter Steinberger
8f53e9093d
test: align google-shared expectations
2026-01-04 15:02:42 +00:00
Peter Steinberger
30d5511058
test: add config for gateway sigterm
2026-01-04 14:59:49 +00:00
Peter Steinberger
c6b8235862
style: format tests and helpers
2026-01-04 14:57:57 +00:00
Peter Steinberger
557aa74ee8
test: update google-shared expectations
2026-01-04 14:57:57 +00:00
Peter Steinberger
246adaa119
chore: rename project to clawdbot
2026-01-04 14:38:51 +00:00
Peter Steinberger
d48dc71fa4
feat: add canvasHost liveReload option
2026-01-04 15:22:47 +01:00
Peter Steinberger
1e555e693a
fix: dedupe canvas host watcher
2026-01-04 15:15:46 +01:00
Peter Steinberger
ec09b06636
fix: wire slack deps and stabilize sigterm test
2026-01-04 15:13:23 +01:00
George Tsifrikas
378e4c9b6b
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
5ce1eb791e
chore: align rebase with main
2026-01-04 14:41:52 +01:00
Peter Steinberger
529cf91ac3
fix: keep node presence fresh
2026-01-04 14:41:52 +01:00
Mariano Belinky
672700f2b3
docs: add PR template + node presence beacon
2026-01-04 14:41:52 +01:00
Peter Steinberger
476bbd2915
fix: update lockfile and lint
2026-01-04 14:12:00 +01:00
Peter Steinberger
ec6980cda0
fix: wire slack into delivery routing
2026-01-04 11:44:41 +00:00
Peter Steinberger
b234d82bf3
fix: add slack deps and send helpers
2026-01-04 11:44:41 +00:00
Muhammed Mukhthar CM
9958283ced
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
d6f8b6ac51
fix: update pi-ai patch and tests
2026-01-04 12:24:01 +01:00
Shadow
8c38a7fee8
Slack: add some fixes and connect it all up
2026-01-04 01:53:26 -06:00
Peter Steinberger
607de4a403
fix: add slack chunk limits
2026-01-04 07:23:39 +01:00
Shadow
0085b2e0a9
Slack: refine scopes and onboarding
2026-01-04 07:22:02 +01:00
Shadow
bf3d120f8c
Slack: add new slack connection
2026-01-04 07:18:20 +01:00
Peter Steinberger
c9504a6f20
refactor: split config module
2026-01-04 07:05:17 +01:00
Peter Steinberger
5e36e2c3f3
fix: allow elevated via discord username
2026-01-04 05:47:28 +00:00
Peter Steinberger
d2da305190
feat: fallback elevated allowlist to discord dms
2026-01-04 05:31:00 +00:00
Peter Steinberger
ff88f3c075
style: fix lint ordering
2026-01-04 06:27:54 +01:00
Peter Steinberger
a03895dfa9
fix: default elevated mode to on
2026-01-04 05:19:28 +00:00
Peter Steinberger
6ea0eb438c
style: fix lint formatting
2026-01-04 06:17:07 +01:00
Peter Steinberger
fe0b3500cc
feat: add elevated bash mode
2026-01-04 05:15:59 +00:00
Peter Steinberger
72a9e58777
refactor(auto-reply): split reply flow
2026-01-04 05:47:37 +01:00
Peter Steinberger
fd91da2b7f
fix: log dynamic config reloads
2026-01-04 04:24:50 +00:00
Peter Steinberger
13c2f22240
refactor: split agent tools
2026-01-04 05:07:44 +01:00
Peter Steinberger
7d95f43a75
style: fix lint
2026-01-04 03:37:08 +00:00
Peter Steinberger
12ba32c724
feat(browser): add remote-capable profiles
...
Co-authored-by: James Groat <james@groat.com>
2026-01-04 03:33:07 +00:00
Peter Steinberger
0e75aa2716
test: add sessions_send loopback test
2026-01-04 04:30:57 +01:00
Shadow
3a28e3562c
Discord: tools for uploading emojis and stickers!
2026-01-03 21:20:01 -06:00
Peter Steinberger
24aa3e3311
test: stabilize gateway tests
2026-01-04 04:16:38 +01:00
Peter Steinberger
3c4c2aa98c
refactor: split gateway server methods
2026-01-04 04:05:18 +01:00
Peter Steinberger
55876f7be0
test(agents): cover ping-pong announce flow
2026-01-04 03:41:58 +01:00
Peter Steinberger
cd3c42d0c0
feat(sessions): add agent-to-agent ping-pong
2026-01-04 03:37:44 +01:00
Peter Steinberger
add1301a51
feat(sessions): add agent-to-agent post step
2026-01-04 03:04:55 +01:00
Peter Steinberger
1d06164e18
refactor: use per-send run ids for gateway agent
2026-01-04 02:08:52 +01:00
Peter Steinberger
fe67073b74
fix: avoid sessions_send timeouts
2026-01-04 01:52:01 +01:00
Peter Steinberger
cbf41859aa
test: relax cron default scheduler timeout
2026-01-04 01:45:50 +01:00
Peter Steinberger
fbaa109a3a
fix: stabilize lint and test timeouts
2026-01-04 01:42:08 +01:00
Peter Steinberger
70d68d29d0
fix: warm agent.wait cache
2026-01-04 01:35:02 +01:00
Peter Steinberger
a1780efb9f
fix: adjust typing TTL
2026-01-04 00:26:31 +00:00
Peter Steinberger
53d954695e
style: format agent.wait imports
2026-01-04 01:22:22 +01:00
Peter Steinberger
8724c2aea8
fix: satisfy gate checks
2026-01-04 01:16:53 +01:00
Peter Steinberger
e3c543ec06
fix: wait on agent.wait for sessions_send
2026-01-04 01:15:23 +01:00
Peter Steinberger
412e8b3aee
test: cover gif playback send params
2026-01-03 23:57:43 +00:00
Peter Steinberger
5862f95bd2
fix: lock main session deletion
2026-01-03 23:57:17 +00:00
Peter Steinberger
e17c038d18
fix: add gif playback for WhatsApp sends
2026-01-03 23:56:40 +00:00
Peter Steinberger
e1dd764504
feat: add node location support
2026-01-04 00:54:44 +01:00
Peter Steinberger
3bc24bf179
fix: wait for final agent response in sessions_send
2026-01-04 00:40:40 +01:00
Peter Steinberger
7c062e0ef2
fix: clarify provider requirements in onboarding
2026-01-03 23:29:38 +00:00
Peter Steinberger
0f6e566a20
fix: make sessions_send wait via agent events
2026-01-04 00:12:14 +01:00
Peter Steinberger
86038ec165
chore: apply lint fixes
2026-01-04 00:06:02 +01:00
Peter Steinberger
e7c9b9a749
feat: add sessions tools and send policy
2026-01-03 23:44:42 +01:00
Peter Steinberger
919d5d1dbb
fix: restore sandbox PATH default
2026-01-03 22:36:16 +00:00
Peter Steinberger
8b069e62fc
fix: appease lint after merge
2026-01-03 22:59:11 +01:00
Azade
18a89a31af
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
934f891932
fix: include embedded agent error cause in reply
2026-01-03 21:30:43 +00:00
Peter Steinberger
5493772910
fix: tolerate missing sandbox config in embedded runner
2026-01-03 21:30:40 +00:00
Peter Steinberger
c533593d8e
fix: add ~/.local/bin to PATH bootstrap for uv-installed tools ( fixes #78 ) ( #150 )
2026-01-03 22:25:52 +01:00
Mariano Belinky
d88581eb7c
fix: add ~/.local/bin to PATH for uv tool binaries ( #78 )
2026-01-03 22:21:16 +01:00
Peter Steinberger
d8a417f7ff
feat: add sandbox browser support
2026-01-03 22:14:18 +01:00
Peter Steinberger
107dc1aa42
style(logging): organize embedded log imports
2026-01-03 21:09:44 +00:00
Peter Steinberger
9d2d0c64c2
test(gateway): cover config reload
2026-01-03 21:01:26 +00:00
Peter Steinberger
3872f32419
fix(logging): quiet embedded run console logs
2026-01-03 20:57:39 +00:00
Peter Steinberger
3b075dff8a
feat: add per-session agent sandbox
2026-01-03 21:41:58 +01:00
Peter Steinberger
7bad9f3fbd
fix: drop embedded sandbox wiring
2026-01-03 20:16:53 +00:00
Peter Steinberger
16e3535ac0
refactor: remove bash pty mode
2026-01-03 20:15:10 +00:00
Peter Steinberger
a15cffb7de
fix: stream tool summaries early and tool output
2026-01-03 21:04:40 +01:00
Shadow
6464d93bbb
Discord: add forwarded message handling
2026-01-03 13:56:09 -06:00
Peter Steinberger
e9d7ac8e84
feat(gateway): add config hot reload
2026-01-03 19:52:24 +00:00
Shadow
3e84b9632d
Discord: handle system message types
2026-01-03 13:15:19 -06:00
Peter Steinberger
55a07a0ef0
style: fix lint formatting
2026-01-03 18:51:25 +00:00
Peter Steinberger
52458a5628
Discord: default reaction notifications to own
2026-01-03 18:48:36 +00:00
Shadow
451174ca10
Discord: add reaction notification allowlist
2026-01-03 18:48:36 +00:00
Peter Steinberger
cdfbd6e7eb
test(gateway): align config constants in auth test
2026-01-03 19:37:09 +01:00
Peter Steinberger
350e007a5c
test(agents): extend text_end coverage
2026-01-03 19:37:09 +01:00
Peter Steinberger
5e156135a1
test(gateway): avoid hoisted export errors
2026-01-03 19:37:09 +01:00
Peter Steinberger
b7ec9ae475
fix(gateway): format status/code errors
2026-01-03 19:37:09 +01:00
Peter Steinberger
8a18af409d
test(gateway): cover helper registries
2026-01-03 19:37:09 +01:00
Peter Steinberger
6a125b554b
refactor(gateway): split server helpers
2026-01-03 19:37:09 +01:00
Shadow
ce92fac983
chore: formatting
2026-01-03 12:35:16 -06:00
Peter Steinberger
27a8f3d061
chore: add inline guidance for block streaming
2026-01-03 18:46:59 +01:00
Peter Steinberger
72b34f7d03
fix: harden block stream dedupe
2026-01-03 18:44:07 +01:00
Peter Steinberger
73fa2e10bc
refactor: split gateway server methods
2026-01-03 18:14:07 +01:00
Peter Steinberger
4a6b33d799
refactor: add gateway server helper modules
2026-01-03 18:00:45 +01:00
Peter Steinberger
217b84f2ac
fix: drop final payloads after block streaming
2026-01-03 17:55:31 +01:00
Peter Steinberger
1d6de24ab3
feat: configurable control ui base path
2026-01-03 17:55:31 +01:00
Peter Steinberger
f313af75e9
fix: avoid duplicate block-stream payloads
2026-01-03 16:53:56 +00:00
Peter Steinberger
591773715e
fix: honor whatsapp per-group mention overrides
2026-01-03 17:51:10 +01:00
Peter Steinberger
6ae51ae3de
refactor: split gateway server helpers and tests
2026-01-03 17:34:52 +01:00
Peter Steinberger
200dd634fb
fix: preserve block streaming order
2026-01-03 17:14:01 +01:00
Peter Steinberger
3bbdcaf87f
fix: avoid duplicate block streaming
2026-01-03 17:10:47 +01:00
Peter Steinberger
9f8eeceae7
feat: soften block streaming chunking
2026-01-03 16:48:26 +01:00
Peter Steinberger
53baba71fa
feat: unify onboarding + config schema
2026-01-03 16:48:08 +01:00
Peter Steinberger
72f8148080
fix: clean up embedded lint
2026-01-03 15:09:07 +00:00
Peter Steinberger
9a9b429f74
fix: elevate embedded run logs to info
2026-01-03 15:03:03 +00:00
Peter Steinberger
733e86516e
fix: address runtime warnings in build
2026-01-03 15:01:38 +00:00
Peter Steinberger
1a00175eb7
chore: fix lint formatting
2026-01-03 14:57:49 +00:00
Peter Steinberger
77c76ca52f
test: fix transcription and tool schema assertions
2026-01-03 14:55:05 +00:00
Peter Steinberger
5de3395204
fix: resolve gcloud python path
2026-01-03 14:36:48 +00:00
Peter Steinberger
48731f494b
fix: add embedded run logs and typing ttl
2026-01-03 14:09:19 +00:00
Jake
81f4a7cdb7
Agents: Fix Gemini schema compatibility and robust model discovery
2026-01-03 13:57:29 +01:00
Peter Steinberger
d31dfbc565
chore(canvas): refresh a2ui bundle hash
2026-01-03 13:38:12 +01:00
Peter Steinberger
db36f0105d
fix(gateway): validate event/response frames
2026-01-03 13:37:40 +01:00
Peter Steinberger
5377e2400a
fix: avoid red gmail-watcher prefix
2026-01-03 12:36:15 +00:00
Peter Steinberger
72c0aa63fb
style: tidy imports and formatting
2026-01-03 12:35:23 +00:00
Peter Steinberger
933bee220f
fix(cron): pass resolved channel to agent tools
2026-01-03 12:35:23 +00:00
Peter Steinberger
bd2dabfa8f
fix(agents): load tool display config from disk
2026-01-03 12:35:23 +00:00
Peter Steinberger
bb54e60179
fix(logging): decouple file logs from console verbose
2026-01-03 12:32:14 +00:00
Peter Steinberger
e52bdaa2a2
fix: repair tool meta regex
2026-01-03 12:30:46 +00:00
Peter Steinberger
b6301c719b
fix: default low thinking for reasoning models
2026-01-03 12:19:06 +00:00
Peter Steinberger
6e16c0699a
feat: centralize tool display metadata
2026-01-03 13:18:27 +01:00
Peter Steinberger
7a80e8fe77
refactor: centralize home path shortening
2026-01-03 12:42:27 +01:00
Peter Steinberger
1ec3512925
refactor!: drop clawdis_ tool prefix
2026-01-03 12:39:52 +01:00
Peter Steinberger
772ada4308
fix: refine tool summaries and scope discord tool
2026-01-03 12:33:42 +01:00
Peter Steinberger
7165c8a7e5
refactor: rename bundle identifiers to com.clawdis
2026-01-03 12:26:22 +01:00
Peter Steinberger
f47c7ac369
feat: support configurable gateway port
2026-01-03 12:00:17 +01:00
Muhammed Mukhthar CM
4d42811ecf
fix(telegram): add textLimit to block reply chunking
...
Block streaming replies were missing the textLimit parameter in
deliverReplies(), causing long messages to fail with 'message is too
long' error instead of being chunked properly.
The final reply path already included textLimit, but the onBlockReply
callback path did not.
2026-01-03 11:12:15 +01:00
Peter Steinberger
1bebcf8033
chore: update appcast and TUI streaming handling
2026-01-03 11:06:49 +01:00
Shadow
7400c0946e
Discord: update UIs to use the new config
2026-01-03 01:02:22 -06:00
Peter Steinberger
67a67df35a
fix: avoid unsafe string coercion in tui
2026-01-03 06:44:17 +01:00
Peter Steinberger
662208949f
fix: align sessions.patch and tui typing
2026-01-03 06:37:40 +01:00
Peter Steinberger
d3458a4fc3
feat: overhaul tui controller
2026-01-03 06:27:38 +01:00
Peter Steinberger
32c91bbb25
feat: add tui ui kit
2026-01-03 06:22:20 +01:00
Peter Steinberger
aee13507f9
feat: expand tui gateway client
2026-01-03 06:17:33 +01:00
Peter Steinberger
61b67f6301
feat: extend gateway session patch
2026-01-03 06:16:49 +01:00
Peter Steinberger
53fd7a4473
chore: fix lint ordering
2026-01-03 05:38:29 +01:00
Peter Steinberger
3633c829ae
fix: repair discord action typing
2026-01-03 05:33:57 +01:00
Peter Steinberger
6cda84432e
fix: stabilize pi-ai patch + tests
2026-01-03 05:22:09 +01:00
Peter Steinberger
b914eaa6fa
chore: apply biome lint fixes
2026-01-03 05:10:09 +01:00
Peter Steinberger
988b67aa30
test: refresh auto-reply expectations
2026-01-03 05:09:59 +01:00
Peter Steinberger
0ed5b82389
fix: prefer explicit hook mappings
2026-01-03 05:09:54 +01:00
mukhtharcm
82ad7e29a6
fix: reject antigravity auth in non-interactive onboarding mode
2026-01-03 05:01:42 +01:00
mukhtharcm
2290a3c8af
feat: add VPS-aware Antigravity OAuth with manual URL paste fallback
...
Detects SSH/VPS/headless environments and prompts user to paste
the OAuth callback URL instead of relying on localhost server.
- Add antigravity-oauth.ts with VPS detection and manual OAuth flow
- Update onboard-interactive.ts to use VPS-aware flow
- Update configure.ts to use VPS-aware flow
2026-01-03 05:01:42 +01:00
mukhtharcm
d216cebff5
fix: use claude-opus-4-5-thinking as default antigravity model
2026-01-03 05:01:42 +01:00
mukhtharcm
05bd345828
feat: add Google Antigravity authentication support
...
- Add 'antigravity' as new auth choice in onboard and configure wizards
- Implement Google Antigravity OAuth flow using loginAntigravity from pi-ai
- Update writeOAuthCredentials to accept any OAuthProvider (not just 'anthropic')
- Add schema sanitization for Google Cloud Code Assist API to fix tool call errors
- Default model set to google-antigravity/claude-opus-4-5 after successful auth
The schema sanitization removes unsupported JSON Schema keywords (patternProperties,
const, anyOf, etc.) that Google's Cloud Code Assist API doesn't understand.
2026-01-03 05:01:42 +01:00
Peter Steinberger
08ce608ae7
feat: add gateway TUI
2026-01-03 04:47:34 +01:00
Peter Steinberger
971b98c96d
test: cover new queue modes
2026-01-03 04:47:34 +01:00
Peter Steinberger
a72da30c9a
sag skill: add chat voice response guidance
...
When Peter asks for voice replies, generate audio with sag and send via MEDIA:
2026-01-03 03:34:31 +00:00
Peter Steinberger
ac36eba822
feat: expand queue modes and followup backlog
2026-01-03 04:26:49 +01:00
Peter Steinberger
6160521f2f
fix: guard bash pty cwd
2026-01-03 03:05:51 +00:00
Jared Verdi
ca9b0dbc88
Gmail watcher: start when gateway (re)starts
2026-01-03 03:49:53 +01:00
Peter Steinberger
11c7e05f43
fix: harden pty spawn path
2026-01-03 02:36:01 +00:00
Peter Steinberger
1781105438
group chat: hint that reactions are welcome while lurking
...
Even when staying silent, emoji reactions show engagement without cluttering chat.
2026-01-03 02:29:32 +00:00
Peter Steinberger
632ca01fbf
style: format linted files
2026-01-03 03:10:17 +01:00
Shadow
0c38f2df2a
Discord: drop enableReactions config
2026-01-03 03:07:13 +01:00
Shadow
6bab813bb3
Discord: add reactions, stickers, and polls skill
2026-01-03 03:07:13 +01:00
Peter Steinberger
d8201f8436
fix: handle null action in hooks-mapping mergeAction call
2026-01-03 02:05:01 +00:00
Peter Steinberger
a3865f1417
group chat: add lurking guidance to system prompt
...
Be a good group participant: lurk and follow the conversation,
but only chime in when genuinely helpful. Quality over quantity.
2026-01-03 02:02:55 +00:00
Peter Steinberger
fb10bf5f75
feat: add bash pty diagnostics
2026-01-03 01:56:54 +00:00
Peter Steinberger
a9eb31e8fe
fix: satisfy discord and gateway typing
2026-01-03 02:55:43 +01:00
Peter Steinberger
7e4e9ecdea
templates: add qmd semantic memory recall to AGENTS.md
2026-01-03 01:33:10 +00:00
Peter Steinberger
0c013a237f
fix: default block streaming break to message_end
2026-01-03 01:33:10 +00:00
Jared Verdi
12e27f9e5e
Gateway: ack skipped hook transforms with 204
2026-01-03 02:32:50 +01:00
Peter Steinberger
3368fcf31e
fix: avoid duplicate replies with block streaming
2026-01-03 02:16:01 +01:00
Peter Steinberger
72d1fa4da5
fix: dedupe repeated block replies
2026-01-03 01:49:27 +01:00
Peter Steinberger
2042013360
test: cover provider textChunkLimit config
2026-01-03 01:49:27 +01:00
Peter Steinberger
f5189cc897
refactor: move text chunk limits to providers
2026-01-03 01:49:27 +01:00
Peter Steinberger
5684e2d658
feat: configurable outbound text chunk limits
2026-01-03 01:49:27 +01:00
Peter Steinberger
2d28fa34f5
feat: make block streaming break configurable
2026-01-03 01:49:27 +01:00
Peter Steinberger
fe040b84d9
chore: sync lockfile and bundle hash
2026-01-03 00:40:39 +01:00
Sreekaran Srinath
0ac30afb29
feat: add coding-agent skill and anyBins gating
...
Co-authored-by: Sreekaran Srinath <ss@sreekaran.com>
2026-01-03 00:40:03 +01:00
Peter Steinberger
59601eb99c
fix: preserve newlines in reply tags
2026-01-02 23:36:43 +00:00
Peter Steinberger
9616f4b2b1
feat: stream reply blocks immediately
2026-01-03 00:28:33 +01:00
Peter Steinberger
88ed58b3d0
chore: update deps and extend read tool tests
2026-01-02 23:47:28 +01:00
Peter Steinberger
fc54e905c0
chore: upgrade pi-mono deps to 0.31.1
2026-01-02 23:37:08 +01:00
Peter Steinberger
d1b76cb1b2
test: cover replyToMode behavior
2026-01-02 23:20:52 +01:00
Peter Steinberger
2c92ccd66e
feat: add reply tags and replyToMode
2026-01-02 23:18:41 +01:00
Peter Steinberger
a9ff03acaf
feat: unify group mention defaults
2026-01-02 22:50:58 +01:00
Peter Steinberger
fd32fc8d8d
feat: add discord guild wildcard defaults
2026-01-02 22:33:26 +01:00
Peter Steinberger
47f4f59692
chore: remove stray ds_store files
2026-01-02 22:24:26 +01:00
Peter Steinberger
5cf1a9535e
feat: move group mention gating to provider groups
2026-01-02 22:24:26 +01:00
Shadow
da57c314ef
Discord: clarify docs and drop legacy guild schema
2026-01-02 15:21:13 -06:00
Shadow
2676636316
Discord: fix reply context formatting
2026-01-02 14:55:07 -06:00
Shadow
f3a973dc9e
Discord: include reply context
2026-01-02 14:49:16 -06:00
Peter Steinberger
118a6d7421
fix: align discord config ui
2026-01-02 21:15:59 +01:00
Peter Steinberger
3104b088e4
chore(canvas): update a2ui bundle hash
2026-01-02 19:58:46 +00:00
Peter Steinberger
3b0ad719c9
chore(discord): add verbose diagnostics
2026-01-02 19:58:42 +00:00
Peter Steinberger
e368e56246
chore(gateway): quiet provider startup logs
2026-01-02 19:58:40 +00:00
Peter Steinberger
7b4fa9e1a1
test: cover camera list invoke
2026-01-02 20:24:41 +01:00
Peter Steinberger
43f6b9ef32
fix: resolve camera tool handling
2026-01-02 17:44:25 +00:00
Peter Steinberger
cba37f99b6
test: cover camera device selection
2026-01-02 18:25:22 +01:00
Peter Steinberger
74db53d939
feat: add camera list and device selection
2026-01-02 18:23:26 +01:00
Peter Steinberger
5f82739e2b
test: cover camera snap mime mapping
2026-01-02 17:49:20 +01:00
Peter Steinberger
d79dc4d742
fix: correct camera snap mime mapping
2026-01-02 17:43:34 +01:00
Peter Steinberger
868b438e67
test(gateway): fix nix mode mock toggle
2026-01-02 17:15:26 +01:00
Peter Steinberger
8989bd9fd7
fix(auto-reply): default whatsapp self-only on empty config
2026-01-02 17:15:26 +01:00
Peter Steinberger
97e06a8eb4
chore(canvas): regenerate a2ui bundle hash
2026-01-02 17:15:26 +01:00
Peter Steinberger
314164fb8a
chore: fix lint and add gateway auth tests
2026-01-02 17:15:26 +01:00
Peter Steinberger
f489b6e7a5
chore: merge origin/main
2026-01-02 16:50:29 +01:00
Peter Steinberger
a8bc974a2e
fix: harden gateway password auth
2026-01-02 16:47:52 +01:00
Peter Steinberger
9b3aef3567
fix: show skill descriptions in onboarding list
2026-01-02 16:25:28 +01:00
Peter Steinberger
ad9d6f616d
fix: improve onboarding auth UX
2026-01-02 15:03:38 +01:00
Peter Steinberger
5ecb65cbbe
fix: persist gateway token for local CLI auth
2026-01-02 13:46:48 +01:00
Peter Steinberger
1e04481aaf
style: format discord slash handler
2026-01-02 13:38:36 +01:00
Peter Steinberger
5f103e32bd
fix: gate discord slash commands
2026-01-02 13:38:35 +01:00
Shadow
fff9efe8a8
Discord: auto-register slash command
2026-01-02 13:38:35 +01:00
Shadow
b135b3efb9
Discord: add slash command handling
2026-01-02 13:38:35 +01:00
Peter Steinberger
ecef49605b
test: cover gateway legacy auto-migrate
2026-01-02 13:09:41 +01:00
Peter Steinberger
7b72b35cca
chore: update doctor migration hash
2026-01-02 13:07:26 +01:00
Peter Steinberger
16420e5b31
refactor: auto-migrate legacy config in gateway
2026-01-02 13:07:14 +01:00
Peter Steinberger
55665246bb
chore: refresh doctor migration commit
2026-01-02 13:00:44 +01:00
Peter Steinberger
b9b862a380
chore: note doctor migration commit
2026-01-02 13:00:29 +01:00
Peter Steinberger
0766c5e3cb
refactor: move whatsapp allowFrom config
2026-01-02 13:00:29 +01:00
Peter Steinberger
2b3ddabe90
fix(gateway): gate providers by config presence
2026-01-02 11:41:01 +00:00
Peter Steinberger
e92b480629
fix(signal): surface signal-cli failures as errors
2026-01-02 11:40:55 +00:00
Peter Steinberger
d656db4d04
fix: widen discord channel type check
2026-01-02 12:23:35 +01:00
Peter Steinberger
7f8af736dd
chore(canvas): regenerate a2ui bundle hash
2026-01-02 11:22:06 +00:00
Peter Steinberger
eaacebeecc
fix: improve onboarding/imessage errors
2026-01-02 12:20:48 +01:00
Peter Steinberger
fd4cff06ca
test: fix discord/config test lint
2026-01-02 12:20:43 +01:00
Peter Steinberger
b50df6eb1d
style: format linted files
2026-01-02 12:20:38 +01:00
Peter Steinberger
eda74d3a55
test: cover every schedule anchor boundary
2026-01-02 11:33:49 +01:00
Peter Steinberger
2d1d5d603d
Merge pull request #80 from jamesgroat/fix/cron-every-schedule-infinite-loop
...
fix(cron): prevent every schedule from firing in infinite loop
2026-01-02 11:29:08 +01:00
Peter Steinberger
dc2521a1cf
merge main into shadow/discord-id
2026-01-02 11:27:24 +01:00
Peter Steinberger
30b5955f22
fix(discord): add tag/id to from label
2026-01-02 11:26:09 +01:00
Peter Steinberger
4267a1b87d
test: cover discord config + slug routing
2026-01-02 11:19:10 +01:00
Peter Steinberger
eb44ae76f1
feat: add discord guild map + group dm controls
2026-01-02 11:15:52 +01:00
Peter Steinberger
bd3d18f660
fix: unbreak TypeScript build
2026-01-02 11:02:06 +01:00
Peter Steinberger
8bd5f1b9f2
fix: improve onboarding allowlist + Control UI link
2026-01-02 10:57:04 +01:00
Peter Steinberger
87127fd133
fix: refine web chat session selector
2026-01-02 10:40:24 +01:00
Peter Steinberger
0f56dce748
feat: add discord dm/guild allowlists
2026-01-02 10:32:21 +01:00
Peter Steinberger
9adbf47773
refactor: normalize group session keys
2026-01-02 10:14:58 +01:00
Shadow
63a46a85f6
feat: pass discord id to clawd so it can ping users
2026-01-01 23:30:03 -06:00
Jefferson Nunn
fe87d6d8be
feat(macOS): add gateway password auth support and fix Swift 6.2 concurrency
...
- Add CLAWDIS_GATEWAY_PASSWORD to launchd plist environment
- Read password from gateway.remote.password config in client
- Fix Swift 6.2 sending parameter violations in config save functions
- Add password parameter to GatewayConnection.Config type
- GatewayChannel now sends password in connect auth params
- GatewayEndpointStore and GatewayLaunchAgentManager read password from config
- CLI gateway client reads password from remote config and env
2026-01-01 21:34:46 -06:00
jeffersonwarrior
9387ecf043
fix(macos): support password auth mode for gateway connections
...
GatewayChannel now sends both 'token' and 'password' fields in the auth
payload to support both authentication modes. Gateway checks the field
matching its auth.mode configuration ('token' or 'password').
Also adds config file password fallback for remote mode, allowing
gateway password to be configured in ~/.clawdis/clawdis.json without
requiring environment variables.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-01 21:26:37 -06:00
Peter Steinberger
76e24653e9
fix(media): preserve GIF animation, skip JPEG optimization
...
- Skip JPEG optimization for image/gif content type (both local and URL)
- Preserves animation in uploaded GIFs to Discord/other providers
- Added tests for GIF preservation from local files and URLs
- Updated changelog
2026-01-02 00:56:04 +00:00
Peter Steinberger
4c2812b429
fix: refine HEARTBEAT_OK handling
2026-01-02 01:42:27 +01:00
James Groat
7154bc6857
fix(cron): prevent every schedule from firing in infinite loop
...
When anchorMs is not provided (always in production), the schedule
computed nextRunAtMs as nowMs, causing jobs to fire immediately and
repeatedly instead of at the configured interval.
- Change nowMs <= anchor to nowMs < anchor to prevent early return
- Add Math.max(1, ...) to ensure steps is always at least 1
- Add test for anchorMs not provided case
2026-01-01 17:30:05 -07:00
Peter Steinberger
c31070db24
style: apply biome formatting
2026-01-02 01:29:05 +01:00
Peter Steinberger
cbac34347b
feat: add imessage rpc adapter
2026-01-02 01:19:40 +01:00
Peter Steinberger
4ec020a86d
fix(logging): trim provider log prefixes
2026-01-02 00:15:01 +00:00
Peter Steinberger
464dabdc16
docs: default discord reactions to on
2026-01-02 01:11:04 +01:00
Peter Steinberger
c0976ec099
fix(gateway): stream chat events for agent runs
2026-01-02 01:04:59 +01:00
Peter Steinberger
7f3113b8d4
feat: add discord reaction tool
2026-01-02 00:29:32 +01:00
Peter Steinberger
c5daa754ff
chore: refresh a2ui bundle hash
2026-01-02 00:17:59 +01:00
Peter Steinberger
23a29216d3
fix: allow remote gateway password config
2026-01-02 00:17:54 +01:00
Peter Steinberger
38d8a669b4
fix: add discord mention context history
2026-01-01 23:58:35 +01:00
Peter Steinberger
06e379a239
fix: suppress stray HEARTBEAT_OK replies
2026-01-01 23:53:29 +01:00
Peter Steinberger
c7c13f2d5e
fix(gateway): read CLAWDIS_GATEWAY_PASSWORD from env
...
The CLI client (callGateway) now reads password from:
1. opts.password (explicit parameter)
2. CLAWDIS_GATEWAY_PASSWORD env var (NEW)
3. remote.password from config
This allows CLI commands like doctor/health to authenticate
without needing a --password flag when the env var is set.
Fixes auth issues for users with password-protected gateways.
2026-01-01 22:40:36 +00:00
Peter Steinberger
ca81d94b90
feat(cli): hint gateway reachability for local/remote
2026-01-01 23:30:02 +01:00
Peter Steinberger
a39ef7181d
feat(cli): add provider setup primers
2026-01-01 23:22:52 +01:00
Peter Steinberger
867883453e
fix(cli): allow skipping skill dependency installs
2026-01-01 23:19:26 +01:00
Peter Steinberger
46c763410f
fix(cli): colorize provider status note
2026-01-01 23:16:36 +01:00
Peter Steinberger
815d4572f6
feat(cli): explain Tailscale exposure options
2026-01-01 23:16:28 +01:00
Peter Steinberger
fbf5efb570
feat(process): support env overrides in exec
2026-01-01 22:55:21 +01:00
Peter Steinberger
1a3323a261
fix(cli): improve skill install failure output
2026-01-01 22:55:15 +01:00
Peter Steinberger
0aff827414
fix: preserve webchat run ordering
2026-01-01 22:46:43 +01:00
Peter Steinberger
bd8a0a9f8f
feat: add remote CDP browser support
2026-01-01 22:44:52 +01:00
Peter Steinberger
73d0e2cb81
fix: gate skills by OS
2026-01-01 22:25:37 +01:00
Peter Steinberger
47f816696c
fix: refine A2UI status HUD styling
2026-01-01 20:47:51 +00:00
Peter Steinberger
dce3bf01fd
build: refresh a2ui bundle hash
2026-01-01 20:41:09 +00:00
Peter Steinberger
7b1687d7e5
fix: resolve macOS config store concurrency
2026-01-01 21:31:37 +01:00
Peter Steinberger
4c1424bb83
chore: fix lint warnings
2026-01-01 21:25:29 +01:00
Peter Steinberger
c7364de2f0
fix: align telegram token resolution
2026-01-01 21:22:59 +01:00
Peter Steinberger
bd7cd33b02
feat: add remote gateway client config
2026-01-01 20:10:50 +01:00
Peter Steinberger
a72fdf7c26
feat: expand wizard setup flow
2026-01-01 19:14:14 +01:00
Peter Steinberger
351db0632d
fix(signal): map stderr INFO to log
2026-01-01 17:30:51 +00:00
Peter Steinberger
d642e90cdd
style: format onboarding commands
2026-01-01 17:30:51 +00:00
Peter Steinberger
7c2c541729
feat: expand onboarding wizard
2026-01-01 18:23:59 +01:00
Peter Steinberger
f10abc8ee0
fix: narrow onboarding prompt types
2026-01-01 17:14:02 +00:00
Peter Steinberger
8ea27968d7
style: apply biome formatting
2026-01-01 17:06:47 +00:00
Peter Steinberger
956db9c182
fix: keep pi-ai tool types for published sdk
2026-01-01 17:02:02 +00:00
Peter Steinberger
3eb3f38adf
test: add onboarding e2e harness
2026-01-01 18:01:42 +01:00
Peter Steinberger
35b66e5ad1
feat: add onboarding wizard
2026-01-01 17:58:07 +01:00
Peter Steinberger
d83ea305b5
fix: satisfy bun biome formatting
2026-01-01 16:54:46 +00:00
Peter Steinberger
c1d8508748
fix: clean up pi-agent-core lint
2026-01-01 16:51:08 +00:00
Peter Steinberger
dc8f2bda2a
fix: restart via systemd on linux
2026-01-01 17:48:28 +01:00
Peter Steinberger
f0f5acfa42
fix: update pi-agent-core integration
2026-01-01 16:46:40 +00:00
Petter Blomberg
da454fa376
build: update A2UI bundle hash
2026-01-01 17:37:19 +01:00
Peter Steinberger
358dd4f791
merge: fix/codesign-adhoc
2026-01-01 17:34:46 +01:00
Peter Steinberger
56ea6b6e43
fix: align tool schemas and health snapshot
2026-01-01 17:30:19 +01:00
Peter Steinberger
04691ed598
chore: apply biome formatting
2026-01-01 17:30:15 +01:00
Peter Steinberger
a248bea50f
chore(browser): format CDP helpers
2026-01-01 16:19:37 +00:00
Peter Steinberger
c8c84bc419
test(browser): fix chrome reachability mock
2026-01-01 16:16:55 +00:00
Peter Steinberger
538c1eb660
fix(browser): harden CDP readiness
2026-01-01 16:15:12 +00:00
Peter Steinberger
c1ccbd58f5
fix(signal): stabilize daemon + add signal delivery
2026-01-01 15:31:41 +00:00
Peter Steinberger
09a2ab420b
style: biome formatting
2026-01-01 15:31:36 +00:00
Peter Steinberger
596770942a
feat: add Signal provider support
2026-01-01 15:43:15 +01:00
Peter Steinberger
6ea10dd153
fix: allow direct file input uploads
2026-01-01 09:44:29 +00:00
Peter Steinberger
bf0bee58b3
fix: improve browser upload triggering
2026-01-01 09:35:20 +00:00
Peter Steinberger
fbcbc60e85
feat: unify skills config
2026-01-01 10:07:31 +01:00
Peter Steinberger
0a9f06d60f
docs: annotate nix path resolution
2026-01-01 09:30:12 +01:00
Peter Steinberger
f6956320f9
feat: centralize config paths and expose in snapshot
2026-01-01 09:22:37 +01:00
Peter Steinberger
ad9a9d8d35
Merge remote-tracking branch 'origin/main' into upstream-preview-nix-2025-12-20
2026-01-01 09:15:28 +01:00
Mariano Belinky
941ad27551
Bundle Control UI in Mac app
2026-01-01 08:55:09 +01:00
Peter Steinberger
f03605d8ae
test: add minimax live test
2025-12-31 16:31:23 +01:00
Peter Steinberger
12084fc4f9
test: extend Z.AI live test timeout
2025-12-31 12:43:34 +01:00
Peter Steinberger
21237dae98
feat: add Z.AI env support and live test
2025-12-31 11:36:57 +01:00
Peter Steinberger
7e40147aa3
fix: gate web chat/talk on mobile nodes
2025-12-30 22:05:17 +01:00
Peter Steinberger
01b8a71ee6
docs: clarify browser wait guidance
2025-12-30 19:22:38 +00:00
Peter Steinberger
42cbb11de8
build: update a2ui bundle
2025-12-30 14:43:34 +01:00
Peter Steinberger
2814815312
feat: add talk voice alias map
2025-12-30 11:35:29 +01:00
Peter Steinberger
dcee8beb99
style: biome format gateway server tests
2025-12-30 05:34:53 +01:00
Peter Steinberger
b3f2416a09
test: reduce flaky timeouts
2025-12-30 05:27:18 +01:00
Peter Steinberger
b5ae2ccc3c
fix(voice): sync talk mode chat events
2025-12-30 05:27:11 +01:00
Peter Steinberger
d2ac672f47
feat: add ui.seamColor accent
2025-12-30 04:14:36 +01:00
Peter Steinberger
c5d5c9fcb5
fix: make android canvas background visible
2025-12-30 04:02:52 +01:00
Peter Steinberger
2e040ee07a
fix: brighten android canvas
2025-12-30 03:58:18 +01:00
Peter Steinberger
9846c46434
fix: tag A2UI platform and boost Android canvas
2025-12-30 03:49:24 +01:00
Peter Steinberger
e119a82334
feat: talk mode key distribution and tts polling
2025-12-30 01:57:58 +01:00
Peter Steinberger
10e1e7fd44
chore: apply biome formatting
2025-12-30 00:16:07 +00:00
Peter Steinberger
20d7882033
feat: add talk mode across nodes
2025-12-29 23:21:05 +01:00
Peter Steinberger
6e83f95c83
fix: clamp tool images to 5MB
2025-12-29 22:13:39 +00:00
Peter Steinberger
52263bd5a3
fix: avoid cli gateway close race
2025-12-29 20:45:50 +01:00
Josh Palmer
10eced9971
fix: use telegram token file for sends and guard console EPIPE
2025-12-29 17:49:13 +01:00
Josh Palmer
5d19afd422
feat: improve health checks (telegram tokenFile + hints)
2025-12-29 17:49:13 +01:00
Josh Palmer
b7363f7c18
feat: Nix mode config, UX, onboarding, SwiftPM plist, docs
2025-12-29 17:49:13 +01:00
Peter Steinberger
ebfe55f909
fix: enable canvas webview scrolling on mobile nodes
2025-12-29 17:13:31 +01:00
Peter Steinberger
3bb4c0c237
fix: report macos product version in presence
2025-12-28 14:34:07 +00:00
Peter Steinberger
255a875a2a
chore: refresh a2ui bundle hash
2025-12-28 12:06:48 +00:00
Peter Steinberger
eb158545fc
fix: force web reconnect on stalled close
2025-12-28 12:04:20 +00:00
Peter Steinberger
91c9859000
fix: harden heartbeat acks + gateway reconnect
2025-12-27 20:02:27 +00:00
Peter Steinberger
3a485a14a4
fix: skip whatsapp heartbeat when provider inactive
2025-12-27 19:34:10 +00:00
Peter Steinberger
cae78b3f91
fix: treat /model status as model list
2025-12-27 12:10:44 +00:00
Peter Steinberger
c0fb814658
fix: normalize imports for lint
2025-12-27 04:02:13 +01:00
Peter Steinberger
12b3034921
chore(canvas): update a2ui bundle hash
2025-12-27 03:21:20 +01:00
Peter Steinberger
96911d7790
fix: enqueue system event on model switch
2025-12-27 01:17:12 +00:00
Peter Steinberger
8826170635
fix: resolve CI lint and android build
2025-12-27 01:41:43 +01:00
Peter Steinberger
c54e4d0900
refactor: node tools and canvas host url
2025-12-27 01:36:29 +01:00
Peter Steinberger
52ca5c4aa2
fix: drop identity emoji response prefix
2025-12-27 00:36:04 +00:00
Peter Steinberger
95f8f80e74
fix: allow empty responsePrefix
2025-12-27 00:33:04 +00:00
Peter Steinberger
7e380bb6f8
fix: enable lmstudio responses and drop think tags
2025-12-27 00:28:52 +00:00
Peter Steinberger
2477ffd860
chore: fix lint/test gating
2025-12-26 23:54:30 +00:00
Peter Steinberger
a3dc46bf9d
fix(a2ui): center status overlay
2025-12-27 00:28:38 +01:00
Peter Steinberger
5c8e1b6eef
feat: add model aliases + minimax shortlist
2025-12-26 23:26:14 +00:00
Peter Steinberger
ae9a8ce34c
fix(a2ui): center status overlay
2025-12-27 00:23:27 +01:00
Peter Steinberger
fae11e5a55
fix(gateway): advertise reachable canvas host
2025-12-27 00:07:19 +01:00
Peter Steinberger
9e32f29d19
test: organize heartbeat test imports
2025-12-26 21:29:49 +00:00
Peter Steinberger
e336b7f27e
fix: use final heartbeat payload
2025-12-26 20:39:20 +00:00
Peter Steinberger
4016bc2416
fix(a2ui): center empty canvas text
2025-12-26 20:43:45 +01:00
Peter Steinberger
1236c4dafb
refactor: make browser actions ref-only
2025-12-26 19:02:27 +00:00
Peter Steinberger
747cc4daa5
fix: gate libsignal session logs behind verbose
2025-12-26 19:02:27 +00:00
Peter Steinberger
51b6a785e6
fix(canvas): center debug status overlay
2025-12-26 20:01:23 +01:00
Peter Steinberger
ed2e738ea4
fix: provider startup order and enable flags
2025-12-26 16:54:53 +00:00
Peter Steinberger
17d9ba256b
fix(discord): ignore destroy promise
2025-12-26 17:21:32 +01:00
Peter Steinberger
034c93fd65
fix: align discord types
2025-12-26 14:47:15 +01:00
Peter Steinberger
ce91aba4de
fix: apply biome formatting
2025-12-26 14:38:37 +01:00
Peter Steinberger
e33c09f8d4
fix(tests): align discord + queue changes
2025-12-26 14:32:57 +01:00
Peter Steinberger
a678c3f53e
refactor(queue): remove drop mode
2025-12-26 14:29:28 +01:00
Peter Steinberger
3e4fc7ff7f
feat(queue): add reset/default directive
2025-12-26 14:24:53 +01:00
Peter Steinberger
8dda07a1e9
feat(queue): add queue modes and discord gating
2025-12-26 13:35:44 +01:00
Shadow
ac659ff5a7
feat(discord): Discord transport
2025-12-26 13:20:30 +01:00
Peter Steinberger
557f8e5a04
fix: restore build after deps update
2025-12-26 12:17:36 +00:00
Peter Steinberger
0709586e3a
fix: support mocked model registry in catalog
2025-12-26 11:53:55 +01:00
Peter Steinberger
82ced33747
fix: align pi model discovery with auth storage
2025-12-26 11:49:13 +01:00
Peter Steinberger
d31c5d7a2c
style: format web inbound
2025-12-26 11:39:48 +01:00
Peter Steinberger
2045487d5e
fix: extract quoted WhatsApp reply text
2025-12-26 10:51:08 +01:00
Peter Steinberger
ffe9a2435b
fix: clean up web inbox listeners on close
2025-12-26 09:27:06 +00:00
Peter Steinberger
f5d8876384
test: expand compaction retry coverage
2025-12-26 10:22:04 +01:00
Peter Steinberger
d28265cfbe
fix: handle embedded agent overflow
2025-12-26 10:20:21 +01:00
Peter Steinberger
d6f07c9f91
chore: fix lint after logging tweaks
2025-12-26 09:08:37 +00:00
Peter Steinberger
917cb8fa67
fix: brighten gateway model console log
2025-12-26 08:45:15 +00:00
Peter Steinberger
461db9e469
fix: split whatsapp listen hint from subsystem log
2025-12-26 08:41:58 +00:00
Peter Steinberger
112908886c
fix: log heartbeat failure reasons
2025-12-26 08:34:42 +00:00
Peter Steinberger
f734801da1
fix: correct heartbeat log formatting
2025-12-26 08:17:29 +00:00
Peter Steinberger
cd81348ca5
chore: fix env spread lint
2025-12-26 02:02:49 +00:00
Peter Steinberger
0d8e0ddc4f
feat: unify gateway heartbeat
2025-12-26 02:35:40 +01:00
Peter Steinberger
8f9d7405ed
style: fix biome formatting
2025-12-26 00:50:46 +00:00
Peter Steinberger
19f87f0a89
feat: allow hour durations
2025-12-26 01:34:46 +01:00
Peter Steinberger
9f7b1f0942
feat: move heartbeat config to agent.heartbeat
2025-12-26 01:13:42 +01:00
Peter Steinberger
1ef888ca23
refactor(config): drop agent.provider
2025-12-26 01:13:42 +01:00
Peter Steinberger
8b815bce94
feat(config): allow provider/model shorthand
2025-12-26 01:13:42 +01:00
Peter Steinberger
655fa5b8e0
style: fix pi embedded runner lint
2025-12-25 23:58:37 +00:00
Rolf Fredheim
2295cbb815
feat(agent): add maxConcurrent config for parallel message handling
...
Adds `agent.maxConcurrent` config option to control how many agent runs
can execute in parallel across all conversations. Default remains 1
(sequential) for backwards compatibility.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-25 23:55:41 +01:00
Peter Steinberger
198f8ea700
fix(agent): serialize runs per session
2025-12-25 23:50:52 +01:00
Peter Steinberger
f6fcddbe0b
fix: relax tool typing for bash tools
2025-12-25 20:27:05 +00:00
Peter Steinberger
474180c112
style: fix bash tools lint
2025-12-25 20:20:38 +00:00
Peter Steinberger
c860573f13
style: fix biome formatting
2025-12-25 20:13:48 +00:00
Peter Steinberger
42eb7640f9
feat: add gateway restart tool
2025-12-25 18:05:37 +00:00
Peter Steinberger
aafcd569b1
feat: line-based process logs
2025-12-25 18:03:57 +00:00
Peter Steinberger
764f7586de
fix: adjust tool casts for build
2025-12-25 03:36:04 +01:00
Peter Steinberger
d96f2abc4e
fix: resolve agent tool typing
2025-12-25 03:33:09 +01:00
Peter Steinberger
92f467e81c
fix: clean agent bash lint
2025-12-25 03:29:36 +01:00
Peter Steinberger
9fb74cb58a
test: assert bridge does not add loopback listener
2025-12-25 01:41:09 +00:00
Peter Steinberger
81e11c1d91
fix: bridge tailnet bind also listens on loopback
2025-12-25 01:37:47 +00:00
Peter Steinberger
3c6432da1f
feat: add background bash sessions
2025-12-25 00:25:11 +00:00
Peter Steinberger
3b83d3ff3a
fix: preserve tool action enums
2025-12-24 22:50:40 +00:00
Peter Steinberger
88b92a9605
style: format gmail hooks and tools
2025-12-24 23:11:14 +01:00
Peter Steinberger
59443d7ec6
style: format reply changes
2025-12-24 23:06:20 +01:00
Peter Steinberger
cffac6e11a
fix: auto gmail serve path for tailscale
2025-12-24 21:56:17 +00:00
Peter Steinberger
79870472e1
fix: expose union tool parameters
2025-12-24 21:48:22 +00:00
Peter Steinberger
cf8d1cf0e7
fix: avoid threaded replies for agent output
2025-12-24 22:36:42 +01:00
Peter Steinberger
009fbeb543
chore: add gmail hook setup notes
2025-12-24 21:20:20 +00:00
Peter Steinberger
9ceb8731d3
chore: clarify gmail serve path
2025-12-24 21:20:20 +00:00
Peter Steinberger
8ee62f0ac8
style: format locator selector
2025-12-24 21:49:31 +01:00
Peter Steinberger
27025b71db
feat: add selector-based browser actions
2025-12-24 19:52:28 +00:00
Peter Steinberger
523d9ec3c2
feat: add gmail hooks wizard
2025-12-24 19:48:35 +00:00
Peter Steinberger
aeb5455555
feat: add webhook hook mappings
...
# Conflicts:
# src/gateway/server.ts
2025-12-24 19:48:05 +00:00
Peter Steinberger
b85503b3b2
fix: guard hook payload strings
2025-12-24 17:49:52 +01:00
Peter Steinberger
bd223606b1
style: format gateway server
2025-12-24 17:45:39 +01:00
Peter Steinberger
1e2946ebc6
test: extend webhook coverage
2025-12-24 14:39:21 +00:00
Peter Steinberger
1ed5ca3fde
feat: add gateway webhooks
2025-12-24 14:33:05 +00:00
Peter Steinberger
0139a77e94
fix: resolve ts build errors
2025-12-24 00:57:11 +00:00
Peter Steinberger
e76d1b899b
fix: clean telegram parse error logging
2025-12-24 00:53:27 +00:00
Peter Steinberger
3fcdd6c9d7
feat: enforce final tag parsing for embedded PI
2025-12-24 00:52:33 +00:00
Peter Steinberger
bc916dbf35
feat: require final tag format in system prompt
2025-12-24 00:52:30 +00:00
Peter Steinberger
267cdf20e1
style: fix biome lint
2025-12-24 00:33:35 +00:00
Peter Steinberger
93af424ce5
refactor: move inbound config
2025-12-24 00:22:52 +00:00
Peter Steinberger
364a6a9444
feat: add per-session model selection
2025-12-23 23:45:20 +00:00
Peter Steinberger
b6bfd8e34f
fix: anchor typing loop to run
2025-12-23 15:03:05 +00:00
Peter Steinberger
b05981ef27
fix: add reasoning tag hint for local providers
2025-12-23 14:34:56 +00:00
Peter Steinberger
42f1a56832
test: cover system prompt owner numbers
2025-12-23 14:20:09 +00:00
Peter Steinberger
f667d56701
fix: tag owner numbers in system prompt
2025-12-23 14:19:41 +00:00
Peter Steinberger
df5284beaf
fix: suppress thinking stream + typing
2025-12-23 14:17:18 +00:00
Peter Steinberger
6d551b0d6e
fix: normalize tool schemas for lm studio
2025-12-23 14:09:07 +00:00
Peter Steinberger
f70fd30cd3
chore: include runtime info in system prompt
2025-12-23 14:05:43 +00:00
Peter Steinberger
863d26558a
fix: delay typing until reply payload
2025-12-23 13:55:01 +00:00
Peter Steinberger
cba12a1abd
fix: inject group activation in system prompt
2025-12-23 13:32:07 +00:00
Peter Steinberger
96d57a18ee
chore: demote reply chunk logs
2025-12-23 13:25:56 +00:00
Peter Steinberger
e54ed10bc1
fix: honor /new resets with mentions in groups
2025-12-23 13:20:11 +00:00
Peter Steinberger
c8c807adcc
refactor: drop PAM auth and require password for funnel
2025-12-23 13:13:09 +00:00
Peter Steinberger
cd6ed79433
fix: honor group requireMention default
2025-12-23 12:53:30 +00:00
Peter Steinberger
ea4b3b74bb
chore: log whatsapp identity on start
2025-12-23 12:45:18 +00:00
Peter Steinberger
bbff19698b
chore: flatten provider console subsystems
2025-12-23 11:27:14 +00:00
Peter Steinberger
56245d5646
fix: strip repeated heartbeat ok tails
2025-12-23 03:12:24 +01:00
Peter Steinberger
4af08b1606
fix: preserve whatsapp group JIDs
2025-12-23 03:05:59 +01:00
Peter Steinberger
279500cba4
fix: resolve build errors
2025-12-23 03:00:04 +01:00
Peter Steinberger
183270b443
fix: correct models config schema
2025-12-23 02:50:26 +01:00
Peter Steinberger
a5f4332f21
style: apply biome formatting
2025-12-23 02:49:49 +01:00
Peter Steinberger
dff6274a93
test: cover models config merge
2025-12-23 02:48:54 +01:00
Peter Steinberger
082c872469
feat: support custom model providers
2025-12-23 02:48:48 +01:00
Peter Steinberger
67a3dda53a
fix: inject reply context into body
2025-12-23 02:44:38 +01:00
Peter Steinberger
950432eac0
test: update whatsapp reply quote assertions
2025-12-23 02:30:21 +01:00
Peter Steinberger
6550e7d562
fix: add whatsapp reply context
2025-12-23 02:30:21 +01:00
Peter Steinberger
ffe75f3e20
🤖 codex: add telegram reply context
...
# Conflicts:
# src/telegram/bot.ts
2025-12-23 02:30:21 +01:00
Peter Steinberger
918cbdcf03
refactor: lint cleanups and helpers
2025-12-23 00:28:55 +00:00
Peter Steinberger
ce04308c17
refactor: remove session syncing metadata
2025-12-23 00:50:51 +01:00
Peter Steinberger
c0c20ebf3e
feat: replace clawdis skills with tools
2025-12-22 23:40:57 +00:00
Peter Steinberger
91238df13f
chore: alias console subsystem names
2025-12-22 23:06:15 +00:00
Peter Steinberger
9118884e92
fix(web): restore creds before auth check
2025-12-22 22:55:27 +00:00
Peter Steinberger
e403f8b620
style(pi): sort imports
2025-12-22 22:55:27 +00:00
Peter Steinberger
4ca6591045
refactor: move OAuth storage and drop legacy sessions
2025-12-22 21:02:48 +00:00
Peter Steinberger
9717f2d374
fix: bump pi deps and fix lint
2025-12-22 20:45:38 +00:00
Peter Steinberger
e3c3d108fe
refactor(logging): shorten subsystem prefixes
2025-12-22 19:42:22 +00:00
Peter Steinberger
f10c8f2b4c
feat: add group activation command
2025-12-22 20:36:29 +01:00
Peter Steinberger
15e468f5dd
feat: add group chat activation mode
2025-12-22 19:32:12 +01:00
Peter Steinberger
a0dd504991
feat(mac): sessions submenus
2025-12-22 19:29:24 +01:00
Peter Steinberger
3ce5b9b0d9
test: extend gateway sigterm timeouts
2025-12-22 18:52:35 +01:00
Peter Steinberger
2d7c5f8c53
refactor: migrate embedded pi to sdk
2025-12-22 18:05:44 +01:00
Peter Steinberger
79c0fd27a0
fix: center debug status overlay
2025-12-21 20:43:06 +01:00
Peter Steinberger
52e7a4456a
refactor(logging): streamline whatsapp console output
2025-12-21 17:36:24 +00:00
Peter Steinberger
ff63204d17
fix(web): harden WhatsApp creds persistence
2025-12-21 13:58:31 +00:00
Peter Steinberger
4f3a3e93a9
style: biome formatting
2025-12-21 13:58:27 +00:00
Peter Steinberger
b56d4b90ce
fix(logging): repair chalk/tslog typing
2025-12-21 13:58:22 +00:00
Peter Steinberger
a8629e1855
fix(logging): simplify tty color detection
2025-12-21 13:34:13 +00:00
Peter Steinberger
0146784e18
feat(logging): add console color modes
2025-12-21 13:26:50 +00:00
Peter Steinberger
249b85af1e
refactor(gateway): switch logs to subsystem logger
2025-12-21 13:24:15 +00:00
Peter Steinberger
efc12ab28d
refactor(browser): use subsystem logger
2025-12-21 13:24:15 +00:00
Peter Steinberger
5b2e7d4464
refactor(logging): add subsystem console formatting
2025-12-21 13:24:15 +00:00
Peter Steinberger
264c91e620
feat(canvas): gate debug status overlay
2025-12-21 14:21:06 +01:00
Peter Steinberger
85816a5ee2
fix(cli): hint peekaboo unauthorized
2025-12-21 13:09:48 +00:00
Peter Steinberger
3b63d1cb77
fix: auto-restart WhatsApp QR login
2025-12-21 13:36:26 +01:00
Peter Steinberger
e71c71c6c2
fix: add canvas gutter vars for A2UI
2025-12-21 03:21:48 +01:00
Peter Steinberger
b82dfe08a2
fix: prefer header mime for media extensions
2025-12-21 02:34:19 +01:00
Peter Steinberger
4671c9e672
fix: align A2UI canvas background
2025-12-21 02:34:19 +01:00
Peter Steinberger
053c8d5731
feat(gateway): add tailscale auth + pam
2025-12-21 00:44:39 +00:00
Peter Steinberger
d69064f364
fix(gateway): avoid crash in handshake auth
2025-12-21 00:41:06 +00:00
Peter Steinberger
98891103d0
fix: streamline WhatsApp login flow
2025-12-21 01:07:35 +01:00
Peter Steinberger
383097a03a
fix: emit delta-only node system events
2025-12-21 01:07:35 +01:00
Peter Steinberger
bc3f744e45
chore(canvas): refresh a2ui bundle
2025-12-21 00:25:56 +01:00
Peter Steinberger
fb8da15b01
chore(canvas): rebuild a2ui bundle
2025-12-21 00:25:56 +01:00
Peter Steinberger
ef20053e72
style(tests): format gateway server test
2025-12-21 00:25:56 +01:00
Peter Steinberger
df54fc6098
test(gateway): cover provider status/logout RPCs
2025-12-20 23:51:36 +01:00
Peter Steinberger
fe0fb8d296
chore(canvas): rebuild a2ui bundle
2025-12-20 22:45:15 +00:00
Peter Steinberger
873daf079c
feat(web): emit provider status updates
2025-12-20 23:43:27 +01:00
Peter Steinberger
e3015bbfb7
test(gateway): cover models.list
2025-12-20 23:43:27 +01:00
Peter Steinberger
817abd8b5f
feat(gateway): add models.list
2025-12-20 23:43:27 +01:00
Peter Steinberger
b635e83651
chore(pi): bump deps, drop steerable transport
2025-12-20 22:38:12 +00:00
Peter Steinberger
6a30452b4a
fix: use bridge canvas host for nodes
2025-12-20 22:28:35 +01:00
Peter Steinberger
2bcdf741f9
feat(cron): require job name
2025-12-20 19:56:49 +00:00
Peter Steinberger
abf05af474
chore(ci): format macos relay
2025-12-20 20:41:21 +01:00
Peter Steinberger
405ff0377a
refactor(macos): bundle single relay binary
2025-12-20 19:35:30 +00:00
Peter Steinberger
8421ef7b4a
feat(gateway): add gateway-daemon command
2025-12-20 19:35:30 +00:00
Peter Steinberger
fd151c4fc6
chore(ci): fix biome formatting
2025-12-20 20:33:27 +01:00
Peter Steinberger
b36b20d246
feat(voicewake): add computer wake word
2025-12-20 20:33:03 +01:00
Peter Steinberger
ab4457e2a3
fix(browser): allow control server without playwright
2025-12-20 19:16:56 +00:00
Peter Steinberger
21ac34bc6a
fix(gateway): start browser control server
2025-12-20 19:16:49 +00:00
Peter Steinberger
c050a82c3a
fix(macos): patch bun Long for protobuf
2025-12-20 19:16:44 +00:00
Peter Steinberger
50e817f193
fix: use local timestamps in agent envelope
2025-12-20 19:40:48 +01:00
Peter Steinberger
929a10e33d
fix(web): handle self-chat mode
2025-12-20 19:32:06 +01:00
Peter Steinberger
96cbab2b22
test: expand mime detection coverage
2025-12-20 19:16:53 +01:00
Peter Steinberger
36c85a617a
fix: use file-type for mime sniffing
2025-12-20 19:13:50 +01:00
Peter Steinberger
49ec53f4ae
fix: detect main module under PM2
2025-12-20 18:39:17 +01:00
Peter Steinberger
5687a03f0b
chore: biome format
2025-12-20 18:39:17 +01:00
Peter Steinberger
8ec0d813c0
test: stabilize gateway sigterm startup
2025-12-20 18:29:46 +01:00
Peter Steinberger
ea5333e5f7
fix: make web inbox non-blocking
2025-12-20 18:24:05 +01:00
Peter Steinberger
f49c20c508
fix: accept duplex upgrade sockets
2025-12-20 18:01:09 +01:00
Peter Steinberger
d3821123ee
test: include token for canvas host hello
2025-12-20 18:01:09 +01:00
Peter Steinberger
759ab8acbc
test: mock embedded queue in auto-reply tests
2025-12-20 18:01:09 +01:00
Peter Steinberger
7a88071a16
style: format skill installer logic
2025-12-20 18:01:09 +01:00
Peter Steinberger
4e491757ef
feat(web): add whatsapp QR login tool
2025-12-20 16:52:11 +00:00
Peter Steinberger
e618a21f4e
style: biome formatting
2025-12-20 17:50:45 +01:00
Peter Steinberger
0f271ab535
refactor: tighten steerable agent loop typing
2025-12-20 17:50:35 +01:00
Peter Steinberger
4c054917ef
feat: add uv skill installers
2025-12-20 17:50:29 +01:00
Peter Steinberger
4ee292a952
refactor: drop pnpm skill installer
2025-12-20 17:39:54 +01:00
Peter Steinberger
adc2900aff
refactor: trim skill install spec
2025-12-20 17:39:14 +01:00
Peter Steinberger
9c801e9c08
Merge remote-tracking branch 'origin/main'
2025-12-20 17:33:00 +01:00
Peter Steinberger
ba0791b896
feat: add skills search and website
2025-12-20 17:32:40 +01:00
Peter Steinberger
c4a67b7d02
feat: refresh skills metadata and toggles
2025-12-20 17:32:05 +01:00
Peter Steinberger
bd572c775d
refactor: remove canvasHost port config
2025-12-20 17:15:43 +01:00
Peter Steinberger
65329496a7
refactor: serve canvas host on gateway port
2025-12-20 17:13:36 +01:00
Peter Steinberger
3876c1679a
feat(workspace): add bootstrap ritual
2025-12-20 15:48:57 +00:00
Peter Steinberger
ba85f4a62a
test: cover tailnet hello canvas host
2025-12-20 16:45:26 +01:00
Peter Steinberger
a1b34ef0ef
refactor: extract canvas a2ui handler
2025-12-20 16:45:26 +01:00
Peter Steinberger
f03d2d1b33
feat: advertise cli path for remote ssh
2025-12-20 16:45:26 +01:00
Peter Steinberger
c7048973bb
chore(agent): track upstream steerable loop
2025-12-20 16:45:26 +01:00
Peter Steinberger
44339a6447
feat(agent): queue steering messages
2025-12-20 16:10:53 +01:00
Peter Steinberger
d95c09d94a
feat(gateway): enrich agent WS logs
2025-12-20 14:54:38 +00:00
Peter Steinberger
cf96ad8ef9
fix: route voice wake to main
2025-12-20 15:33:28 +01:00
Peter Steinberger
6ca897e055
fix(telegram): normalize chat ids and improve errors
2025-12-20 14:21:49 +00:00
Peter Steinberger
044f525eb8
fix: include tailnetDns in wide-area beacons
2025-12-20 15:02:23 +01:00
Peter Steinberger
554d9bc6ce
fix: stabilize a2ui bundle output
2025-12-20 14:54:37 +01:00
Peter Steinberger
49654803aa
style: fix lint formatting
2025-12-20 14:54:37 +01:00
Peter Steinberger
44c951e432
test(web): cover tool summary streaming
2025-12-20 13:53:56 +00:00
Peter Steinberger
e1b8c30163
feat(web): toggle tool summaries mid-run
2025-12-20 13:52:04 +00:00
Peter Steinberger
70faa4ff36
feat(web): stream tool summaries
2025-12-20 13:47:07 +00:00
Peter Steinberger
63b63cd66d
style(auto-reply): format bare /new
2025-12-20 13:31:46 +00:00
Peter Steinberger
137980b46e
fix(agents): support loadSkillsFromDir result
2025-12-20 13:31:46 +00:00
Peter Steinberger
055d839fc3
feat(runtime): bootstrap PATH for clawdis
2025-12-20 13:31:46 +00:00
Peter Steinberger
3e39dd49aa
fix: auto-detect tailnet DNS hint
2025-12-20 14:23:53 +01:00
Peter Steinberger
1ab69948a5
chore(canvas): refresh a2ui bundle
2025-12-20 13:06:34 +00:00
Peter Steinberger
13298d84ea
test(agents): cover empty managed skills dir
2025-12-20 13:04:59 +00:00
Peter Steinberger
c2c5b28c70
feat(auto-reply): greet on bare /new
2025-12-20 13:04:55 +00:00
Peter Steinberger
6e200ed1c0
fix(agents): handle managed skills list
2025-12-20 12:59:57 +00:00
Peter Steinberger
3fadbb29a1
docs: refresh peekaboo skill details
2025-12-20 13:56:42 +01:00
Peter Steinberger
e0cd5650c5
style: biome formatting
2025-12-20 12:52:14 +00:00
Peter Steinberger
cc0075e988
feat: add skills settings and gateway skills management
2025-12-20 13:33:42 +01:00
Peter Steinberger
973bf67683
feat(skills): add extraDirs load paths
2025-12-20 12:26:58 +00:00
Peter Steinberger
ff6a918e7e
feat(skills): load bundled skills
2025-12-20 12:23:53 +00:00
Peter Steinberger
ed001a5f55
refactor(canvas): host A2UI via gateway
2025-12-20 12:17:27 +00:00
Peter Steinberger
13ebbd1a2b
feat: parse skill install metadata
2025-12-20 13:00:57 +01:00
Peter Steinberger
0e2993a6c8
fix(skills): prevent skills loading crash
2025-12-20 11:49:24 +00:00
Peter Steinberger
f0ebad3f21
fix: address skills lint
2025-12-20 12:29:45 +01:00
Peter Steinberger
d1850aaada
feat: add managed skills gating
2025-12-20 12:22:38 +01:00
Peter Steinberger
94c495c8ed
fix(browser): default hook timeout 2m
2025-12-20 09:45:04 +00:00
Peter Steinberger
f54c801bd2
fix(browser): extend hook arm timeouts
2025-12-20 09:43:58 +00:00
Peter Steinberger
429972b5c5
test(browser): cover agent contract
2025-12-20 09:34:22 +00:00
Peter Steinberger
235f3ce0ba
refactor(browser): simplify control API
2025-12-20 03:27:12 +00:00
Peter Steinberger
6fc30962d6
refactor(browser): prune browser automation surface
2025-12-20 02:53:22 +00:00
Peter Steinberger
849446ae17
refactor(cli): unify on clawdis CLI + node permissions
2025-12-20 02:08:04 +00:00
Peter Steinberger
479720c169
refactor(browser): trim observe endpoints
2025-12-20 02:07:27 +00:00
Peter Steinberger
0e94c6b025
fix(browser): restore tsc types
2025-12-20 01:27:51 +00:00
Peter Steinberger
a526d3c1f2
feat(browser): add native action commands
2025-12-20 00:53:56 +00:00
Peter Steinberger
afa4a234f9
fix: remove WhatsApp batching delay
2025-12-20 01:48:29 +01:00
Peter Steinberger
d54ecc3961
test(browser): cover MCP tool routes
2025-12-19 23:57:32 +00:00
Peter Steinberger
fa54950d2e
feat(browser): add MCP tool dispatch
2025-12-19 23:57:26 +00:00
Peter Steinberger
bc2a66da32
refactor: unify gateway discovery on bridge
2025-12-19 23:12:52 +01:00
Peter Steinberger
836f645621
perf(macos): compile embedded gateway with bytecode
2025-12-19 22:11:41 +01:00
Peter Steinberger
bb7f4abd4b
feat(gateway): support bun-compiled embedded gateway
2025-12-19 19:21:26 +01:00
Peter Steinberger
590f3d0e8f
feat(templates): centralize workspace templates
2025-12-19 18:18:15 +00:00
Peter Steinberger
6b6f2b5414
fix(control-ui): drop /ui alias
2025-12-19 05:13:07 +00:00
Peter Steinberger
c498348a34
fix(control-ui): serve dashboard at root
2025-12-19 05:11:08 +00:00
Peter Steinberger
fb3fae43c0
feat(agent): load workspace skills
2025-12-19 03:53:55 +01:00
Peter Steinberger
beefda7f60
refactor: replace canvas.show with canvas.present
2025-12-19 03:35:33 +01:00
Peter Steinberger
74cdc1cf3e
feat: route mac control via nodes
2025-12-19 03:16:25 +01:00
Peter Steinberger
7f3be083c1
feat: add node screen recording across apps
2025-12-19 02:57:00 +01:00
Peter Steinberger
95ea67de28
feat: add mac node screen recording and ssh tunnel
2025-12-19 02:33:43 +01:00
Peter Steinberger
77a67484ea
feat(pairing): add silent SSH auto-approve
2025-12-19 01:04:47 +01:00
Peter Steinberger
0b4e70e38b
CLI: retry --force until gateway port is free
2025-12-18 23:56:08 +00:00
Peter Steinberger
256080e2a2
Canvas host: fix action bridge invocation
2025-12-19 00:04:45 +01:00
Peter Steinberger
0c06276b48
Agent: document 2000px image downscale
2025-12-18 23:02:33 +00:00
Peter Steinberger
d66d5cc17e
Agent: avoid silent failures on oversized images
2025-12-18 22:58:31 +00:00
Peter Steinberger
df0c51a63b
Gateway: add browser control UI
2025-12-18 22:41:06 +00:00
Peter Steinberger
c34da133f6
CLI: fix nodes canvas snapshot option typing
2025-12-18 23:40:42 +01:00
Peter Steinberger
2a4ccaf993
CLI: add nodes canvas snapshot + duration parsing
2025-12-18 23:32:36 +01:00
Peter Steinberger
ac50a14b6a
Gateway: enable canvas host + inject action bridge
2025-12-18 23:32:22 +01:00
Peter Steinberger
7008493f03
Gateway: raise client maxPayload
2025-12-18 19:48:29 +01:00
Peter Steinberger
ae58838cc5
Web: fix lint/format for error formatter
2025-12-18 18:22:32 +00:00
Peter Steinberger
9a4fc3e086
Web: improve WhatsApp error formatting
2025-12-18 18:03:25 +00:00
Peter Steinberger
0241f1a29c
Web: harden WhatsApp creds handling
2025-12-18 17:19:53 +00:00
Peter Steinberger
856ce06fda
style: biome format ws logging
2025-12-18 14:31:10 +01:00
Peter Steinberger
d406d3a058
Gateway: optimize ws logs in normal mode
2025-12-18 13:27:52 +00:00
Peter Steinberger
ad26026802
Gateway: add compact ws verbose logs
2025-12-18 13:07:42 +00:00
Peter Steinberger
c2b8f9a7c3
style: biome format gateway server
2025-12-18 14:00:46 +01:00
Peter Steinberger
ba79977f07
Gateway: shorten ws log tag
2025-12-18 12:58:47 +00:00
Peter Steinberger
bb5d26ba9e
Gateway: improve verbose ws logs
2025-12-18 12:47:41 +00:00
Peter Steinberger
d182f7e4b2
chore(naming): remove Iris codename
2025-12-18 13:18:33 +01:00