Peter Steinberger
8f9d7405ed
style: fix biome formatting
2025-12-26 00:50:46 +00: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
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
42eb7640f9
feat: add gateway restart tool
2025-12-25 18:05:37 +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
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
c8c807adcc
refactor: drop PAM auth and require password for funnel
2025-12-23 13:13:09 +00:00
Peter Steinberger
ea4b3b74bb
chore: log whatsapp identity on start
2025-12-23 12:45:18 +00:00
Peter Steinberger
a5f4332f21
style: apply biome formatting
2025-12-23 02:49:49 +01:00
Peter Steinberger
082c872469
feat: support custom model providers
2025-12-23 02:48:48 +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
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
f10c8f2b4c
feat: add group activation command
2025-12-22 20:36:29 +01:00
Peter Steinberger
a0dd504991
feat(mac): sessions submenus
2025-12-22 19:29:24 +01:00
Peter Steinberger
2d7c5f8c53
refactor: migrate embedded pi to sdk
2025-12-22 18:05:44 +01:00
Peter Steinberger
4f3a3e93a9
style: biome formatting
2025-12-21 13:58:27 +00:00
Peter Steinberger
249b85af1e
refactor(gateway): switch logs to subsystem logger
2025-12-21 13:24:15 +00: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
383097a03a
fix: emit delta-only node system events
2025-12-21 01:07:35 +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
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
b36b20d246
feat(voicewake): add computer wake word
2025-12-20 20:33:03 +01:00
Peter Steinberger
21ac34bc6a
fix(gateway): start browser control server
2025-12-20 19:16:49 +00:00
Peter Steinberger
d3821123ee
test: include token for canvas host hello
2025-12-20 18:01:09 +01:00
Peter Steinberger
e618a21f4e
style: biome formatting
2025-12-20 17:50:45 +01:00
Peter Steinberger
65329496a7
refactor: serve canvas host on gateway port
2025-12-20 17:13:36 +01:00
Peter Steinberger
ba85f4a62a
test: cover tailnet hello canvas host
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
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
044f525eb8
fix: include tailnetDns in wide-area beacons
2025-12-20 15:02:23 +01: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
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
ed001a5f55
refactor(canvas): host A2UI via gateway
2025-12-20 12:17:27 +00:00
Peter Steinberger
0e2993a6c8
fix(skills): prevent skills loading crash
2025-12-20 11:49:24 +00:00
Peter Steinberger
d1850aaada
feat: add managed skills gating
2025-12-20 12:22:38 +01:00
Peter Steinberger
849446ae17
refactor(cli): unify on clawdis CLI + node permissions
2025-12-20 02:08:04 +00:00
Peter Steinberger
bb7f4abd4b
feat(gateway): support bun-compiled embedded gateway
2025-12-19 19:21:26 +01: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
77a67484ea
feat(pairing): add silent SSH auto-approve
2025-12-19 01:04:47 +01:00
Peter Steinberger
df0c51a63b
Gateway: add browser control UI
2025-12-18 22:41:06 +00: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
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
Peter Steinberger
cd729e83b6
Gateway: optional canvas host
2025-12-18 11:35:21 +01:00
Peter Steinberger
0fc5ccb76c
Tests: cover node.describe for connected unpaired nodes
2025-12-18 08:38:33 +00:00
Peter Steinberger
5c705ab675
ci: fix swiftformat and bun CI
2025-12-18 08:55:47 +01:00
Peter Steinberger
742027a447
Gateway: list/describe node capabilities and commands
2025-12-18 02:06:35 +00:00
Peter Steinberger
7bb058215d
Tests: loosen chat.abort mismatch timeout
2025-12-18 01:20:20 +00:00
Peter Steinberger
22516437b7
Protocol: switch node.invoke screen.* to canvas.*
2025-12-18 01:20:20 +00:00
Peter Steinberger
f973b9e0e5
Gateway: alias canvas.* for node.invoke
2025-12-18 01:10:40 +00:00
Peter Steinberger
99325040f8
gateway: persist and surface node capabilities
2025-12-18 01:36:38 +01:00
Peter Steinberger
9f73131621
Gateway: include node caps + hardware in node.list
2025-12-18 00:16:36 +00:00
Peter Steinberger
5c2288218f
fix(gateway): make chat.abort reliable
2025-12-17 23:28:37 +01:00
Peter Steinberger
0844fa38a8
style(gateway): satisfy biome
2025-12-17 23:27:27 +01:00
Peter Steinberger
875cf9a054
refactor(webchat): SwiftUI-only WebChat UI
...
# Conflicts:
# apps/macos/Package.swift
2025-12-17 23:05:28 +01:00
Peter Steinberger
44365f2e27
test(chat): harden abort/stream + hide session switching
2025-12-17 23:01:30 +01:00
Peter Steinberger
7950a646c3
macOS: show friendly device names in Instances
2025-12-17 22:23:57 +01:00
Peter Steinberger
69daa24869
fix(test): stabilize chat.abort
2025-12-17 22:12:16 +01:00
Peter Steinberger
35214b6dec
test(gateway): stabilize chat abort
2025-12-17 22:04:54 +01:00
Peter Steinberger
e0276ed4b4
fix(gateway): harden request handling
2025-12-17 22:04:22 +01:00
Peter Steinberger
51bdf01e2e
Presence: add device identity fields
2025-12-17 21:51:36 +01:00
Peter Steinberger
428a82e734
feat(chat): Swift chat parity (abort/sessions/stream)
2025-12-17 20:51:27 +01:00
Peter Steinberger
557ffdbe35
Discovery: wide-area bridge DNS-SD
...
# Conflicts:
# apps/ios/Sources/Bridge/BridgeDiscoveryModel.swift
# src/cli/dns-cli.ts
2025-12-17 20:31:02 +01:00
Peter Steinberger
e9ae10e569
Gateway: wide-area Bonjour via clawdis.internal
2025-12-17 17:01:10 +01:00
Peter Steinberger
fece42ce0a
feat: embed pi agent runtime
2025-12-17 11:29:04 +01:00
Peter Steinberger
060a209ecb
fix(system): inject transitions only
2025-12-17 08:31:23 +01:00
Peter Steinberger
e1e3da946f
fix(chat): reduce system spam and cap history
2025-12-16 20:35:03 +01:00
Peter Steinberger
74b19843ae
fix(gateway): clamp chat.history to 1000 max
2025-12-16 19:55:17 +01:00
Peter Steinberger
d691e28675
fix(gateway): cap chat.history to 1000 messages
2025-12-16 19:44:49 +01:00
Peter Steinberger
2a5f0d6063
fix(gateway): cap chat.history payload size
2025-12-16 19:34:36 +01:00
Peter Steinberger
1a92127dfa
feat(voicewake): add gateway-owned wake words sync
2025-12-14 05:06:27 +00:00
Peter Steinberger
e0545e2f94
fix(chat): improve history + polish SwiftUI panel
2025-12-14 04:31:04 +00:00
Peter Steinberger
dccdc950bf
feat(gateway): add bridge RPC chat history and push
2025-12-14 01:55:40 +00:00
Peter Steinberger
2583fb66cc
fix(webchat): stream assistant events and correlate runId
2025-12-14 00:56:06 +00:00
Peter Steinberger
aef18b7359
fix(gateway): resolve iOS node invokes
2025-12-14 00:00:05 +00:00
Peter Steinberger
a53d8ed4e4
feat(instances): show OS version
2025-12-13 23:51:18 +00:00
Peter Steinberger
3fcee21ff7
feat(gateway): add node.invoke for iOS canvas
2025-12-13 23:45:16 +00:00
Peter Steinberger
7c3502f031
fix(ios): improve bridge discovery and pairing UX
2025-12-13 17:58:03 +00:00
Peter Steinberger
44f9327087
test(gateway): extend sessions RPC coverage
2025-12-13 16:36:09 +00:00
Peter Steinberger
7d89fa2591
feat(gateway): add sessions list/patch RPC
2025-12-13 16:32:42 +00:00
Peter Steinberger
208ba02a4a
feat(browser): add clawd browser control
2025-12-13 16:26:48 +00:00
Peter Steinberger
3e2e4be680
refactor(cron): move store into ~/.clawdis/cron
2025-12-13 12:38:08 +00:00
Peter Steinberger
c02613e15f
feat(cron): post isolated summaries
2025-12-13 12:09:15 +00:00
Peter Steinberger
1f37d94f9e
feat(discovery): bonjour beacons + bridge presence
2025-12-13 04:28:43 +00:00
Peter Steinberger
4b608117a2
fix(discovery): lazy-load bonjour; add tests
2025-12-13 03:55:36 +00:00
Peter Steinberger
47b4d245aa
test(cron): cover default-enabled scheduling
2025-12-13 03:54:21 +00:00
Peter Steinberger
772b5fdf0f
feat(cron): default scheduler enabled
2025-12-13 03:49:42 +00:00
Peter Steinberger
eace21dcae
feat(discovery): gateway bonjour + node pairing bridge
2025-12-13 03:47:53 +00:00
Peter Steinberger
415cb857d9
feat(cron): add scheduler status endpoint
2025-12-13 03:43:40 +00:00
Peter Steinberger
f9409cbe43
Cron: add scheduler, wakeups, and run history
2025-12-13 02:34:38 +00:00
Peter Steinberger
8846ffec64
fix: expose heartbeat controls and harden mac CLI
2025-12-12 23:34:26 +00:00
Peter Steinberger
d5d80f4247
feat(gateway)!: switch handshake to req:connect (protocol v2)
2025-12-12 23:29:57 +00:00
Peter Steinberger
211efffa10
fix(gateway): treat webchat last as whatsapp
2025-12-12 21:05:39 +00:00
Peter Steinberger
aae49f1d68
fix(gateway): don"t let webchat clobber last route
2025-12-12 21:00:33 +00:00
Peter Steinberger
8fb3aef917
fix(gateway): handle SIGTERM shutdown cleanly
2025-12-12 18:28:08 +00:00
Peter Steinberger
8ca240fb2c
fix(gateway): ignore stale lastTo for voice
2025-12-12 18:11:26 +00:00
Peter Steinberger
9ea697ac09
style(test): biome format
2025-12-12 18:07:33 +00:00
Peter Steinberger
62a7a07127
fix(gateway): ack agent requests immediately
2025-12-12 18:00:49 +00:00
Peter Steinberger
957d7fbe2a
test(voice): cover gateway last-channel whatsapp
2025-12-12 17:29:04 +00:00
Peter Steinberger
7dab927260
fix(presence): hide cli sessions; use numeric mac build
2025-12-12 17:27:11 +00:00
Peter Steinberger
7a1d64fff9
style(tests): format imports
2025-12-12 16:47:10 +00:00
Peter Steinberger
debcf19199
fix(presence): stabilize instance identity
2025-12-12 16:47:07 +00:00
Peter Steinberger
9eda40234f
test: cover main last-channel routing
2025-12-12 16:35:47 +00:00
Peter Steinberger
a524b9ae9b
feat(voicewake): route replies to last channel
2025-12-12 16:22:30 +00:00
Peter Steinberger
0242383ec3
test(gateway): cover port lock guard
2025-12-11 18:53:40 +00:00
Peter Steinberger
f417b51fb6
chore(gateway): use ws bind as lock
2025-12-11 15:17:40 +00:00
Peter Steinberger
47a1f757a9
lint: format and stabilize gateway health
2025-12-10 18:00:33 +00:00
Peter Steinberger
27ad3b917f
chore(gateway): log pre-hello ws closures
2025-12-10 16:58:56 +00:00
Peter Steinberger
93a5784c58
feat(gateway): allow webchat port override
2025-12-10 16:55:17 +00:00
Peter Steinberger
2967bc5988
health: stop direct baileys probes
2025-12-10 16:35:42 +00:00
Peter Steinberger
6459582952
gateway: add webchat handshake logging
2025-12-10 15:32:34 +00:00
Peter Steinberger
df4331da04
gateway: dedupe system-event presence
2025-12-10 11:48:17 +00:00
Peter Steinberger
5d26bb2566
gateway: include last input in presence events
2025-12-10 03:48:53 +01:00
Peter Steinberger
3907e9eedd
test: isolate gateway lock per run
2025-12-10 00:58:59 +00:00
Peter Steinberger
cf8b00890f
fix: stabilize health probe and gateway handshake
2025-12-10 00:52:43 +00:00
Peter Steinberger
426503e062
infra: use flock gateway lock
2025-12-10 00:46:50 +00:00
Peter Steinberger
dd88345483
gateway: cache health snapshot
2025-12-09 23:39:02 +00:00
Peter Steinberger
78d41b8e41
test: cover chat attachments
2025-12-09 23:31:14 +01:00
Peter Steinberger
1dd5c97ae0
feat: add ws chat attachments
2025-12-09 23:16:57 +01:00
Peter Steinberger
be3326d0d9
chore(webchat): log url on gateway start
2025-12-09 21:10:49 +00:00
Peter Steinberger
bd41cf377a
feat(webchat): auto-start at root
2025-12-09 21:07:53 +00:00
Peter Steinberger
a8baf0ef45
chore(gateway): color ws direction logs
2025-12-09 20:37:01 +00:00
Peter Steinberger
e84ed61339
cli: gateway subcommands, drop ipc probes
2025-12-09 20:27:35 +00:00
Peter Steinberger
5e5845547e
gateway: improve conflict handling and logging
2025-12-09 20:07:24 +00:00
Peter Steinberger
5df438fd2a
fix: enforce gateway single instance
2025-12-09 19:40:01 +00:00
Peter Steinberger
c683ae69af
gateway: log provider errors verbosely
2025-12-09 19:10:10 +00:00
Peter Steinberger
ab9b12e883
gateway: enforce hello order and modern json
2025-12-09 19:09:06 +00:00
Peter Steinberger
8d888b426f
chore: format swift/ts and fix gateway lint
2025-12-09 17:11:25 +00:00
Peter Steinberger
60a68aa136
Gateway: start providers and route sends to their surface
2025-12-09 16:38:43 +00:00
Peter Steinberger
464e4c1938
Gateway: honor verbose for Baileys and show log path
2025-12-09 16:33:04 +00:00
Peter Steinberger
96be7c8990
tests: cover agent sequencing, tick watchdog, presence fingerprint
2025-12-09 17:05:47 +01:00
Peter Steinberger
72eb240c3b
gateway: harden ws protocol and liveness
2025-12-09 17:02:58 +01:00
Peter Steinberger
cf5769753a
Protocol: lint fixes for client/program
2025-12-09 15:18:34 +01:00
Peter Steinberger
172ce6c79f
Gateway: discriminated protocol schema + CLI updates
2025-12-09 15:01:13 +01:00
Peter Steinberger
b2e7fb01a9
Gateway: finalize WS control plane
2025-12-09 14:41:41 +01:00