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
|
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
|
279500cba4
|
fix: resolve build errors
|
2025-12-23 03:00:04 +01:00 |
|
Peter Steinberger
|
918cbdcf03
|
refactor: lint cleanups and helpers
|
2025-12-23 00:28:55 +00:00 |
|
Peter Steinberger
|
3ce5b9b0d9
|
test: extend gateway sigterm timeouts
|
2025-12-22 18:52:35 +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
|
5b2e7d4464
|
refactor(logging): add subsystem console formatting
|
2025-12-21 13:24:15 +00:00 |
|
Peter Steinberger
|
85816a5ee2
|
fix(cli): hint peekaboo unauthorized
|
2025-12-21 13:09:48 +00:00 |
|
Peter Steinberger
|
053c8d5731
|
feat(gateway): add tailscale auth + pam
|
2025-12-21 00:44:39 +00:00 |
|
Peter Steinberger
|
2bcdf741f9
|
feat(cron): require job name
|
2025-12-20 19:56:49 +00:00 |
|
Peter Steinberger
|
8421ef7b4a
|
feat(gateway): add gateway-daemon command
|
2025-12-20 19:35:30 +00:00 |
|
Peter Steinberger
|
8ec0d813c0
|
test: stabilize gateway sigterm startup
|
2025-12-20 18:29:46 +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
|
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
|
fa54950d2e
|
feat(browser): add MCP tool dispatch
|
2025-12-19 23:57:26 +00: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
|
0b4e70e38b
|
CLI: retry --force until gateway port is free
|
2025-12-18 23:56:08 +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
|
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
|
a74c4db948
|
Tests: show unpaired nodes in nodes status
|
2025-12-18 08:38:33 +00:00 |
|
Peter Steinberger
|
57ee34839d
|
CLI/docs: expose node metadata and commands
|
2025-12-18 02:06:36 +00:00 |
|
Peter Steinberger
|
22516437b7
|
Protocol: switch node.invoke screen.* to canvas.*
|
2025-12-18 01:20:20 +00:00 |
|
Peter Steinberger
|
c976799f8c
|
CLI/docs: mention canvas.* alias
|
2025-12-18 01:10:40 +00:00 |
|
Peter Steinberger
|
460e170f7a
|
CLI: add nodes status
|
2025-12-18 00:37:54 +00: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
|
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
|
6148f862b9
|
CLI: bootstrap invalid wide-area DNS zone
|
2025-12-17 18:02:25 +01:00 |
|
Peter Steinberger
|
514759bde7
|
CLI: make dns setup create valid zone
|
2025-12-17 17:25:34 +01:00 |
|
Peter Steinberger
|
2eb27ffb4a
|
CLI: dns setup supports sudo-owned CoreDNS config
|
2025-12-17 17:15:51 +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
|
ebbc416d4b
|
test(cli): cover camera flags
|
2025-12-14 00:54:49 +00:00 |
|
Peter Steinberger
|
a92eb1f33d
|
feat(camera): add snap/clip capture
|
2025-12-14 00:48:58 +00:00 |
|
Peter Steinberger
|
aef18b7359
|
fix(gateway): resolve iOS node invokes
|
2025-12-14 00:00:05 +00:00 |
|
Peter Steinberger
|
cf3becfb2e
|
refactor(macos)!: remove clawdis-mac ui; host PeekabooBridge
|
2025-12-13 23:49:29 +00:00 |
|
Peter Steinberger
|
3fcee21ff7
|
feat(gateway): add node.invoke for iOS canvas
|
2025-12-13 23:45:16 +00:00 |
|
Peter Steinberger
|
cf28ea0d1c
|
test: raise vitest coverage
|
2025-12-13 20:37:56 +00:00 |
|
Peter Steinberger
|
ba22890205
|
feat(browser): add ai snapshot refs + click
|
2025-12-13 18:48:55 +00:00 |
|
Peter Steinberger
|
7b675864a8
|
feat(browser): add DOM inspection commands
|
2025-12-13 18:33:04 +00:00 |
|
Peter Steinberger
|
3b283f3167
|
fix(cli): improve ui arg passthrough
|
2025-12-13 17:12:51 +00:00 |
|
Peter Steinberger
|
86ed3de1c1
|
feat(browser): add clawdis-mac browser controls
|
2025-12-13 17:05:58 +00:00 |
|
Peter Steinberger
|
c17440f5b4
|
feat(mac): host PeekabooBridge for ui
|
2025-12-13 16:56:22 +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
|
5f159c43c5
|
feat(cli): expand cron commands
|
2025-12-13 12:09:20 +00:00 |
|
Peter Steinberger
|
32cd1175fb
|
refactor(cron): simplify main-summary prefix config
|
2025-12-13 11:43:18 +00:00 |
|
Peter Steinberger
|
8d1e73edc7
|
feat(cron): always post isolated summaries to main
|
2025-12-13 11:33:46 +00:00 |
|
Peter Steinberger
|
4b608117a2
|
fix(discovery): lazy-load bonjour; add tests
|
2025-12-13 03:55:36 +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
|
d5db20c296
|
feat(cli): add cron status + warn when disabled
|
2025-12-13 03:43:47 +00:00 |
|
Peter Steinberger
|
f9409cbe43
|
Cron: add scheduler, wakeups, and run history
|
2025-12-13 02:34:38 +00:00 |
|
Peter Steinberger
|
d5d80f4247
|
feat(gateway)!: switch handshake to req:connect (protocol v2)
|
2025-12-12 23:29:57 +00:00 |
|
Peter Steinberger
|
378e39d7ad
|
test(cli): verify gateway exits 0 on SIGTERM
|
2025-12-12 18:30:19 +00:00 |
|
Peter Steinberger
|
8fb3aef917
|
fix(gateway): handle SIGTERM shutdown cleanly
|
2025-12-12 18:28:08 +00:00 |
|
Peter Steinberger
|
0780859a4d
|
fix(auto-reply): prefer Pi RPC by default
|
2025-12-12 17:30:34 +00:00 |
|
Peter Steinberger
|
47a1f757a9
|
lint: format and stabilize gateway health
|
2025-12-10 18:00:33 +00:00 |
|
Peter Steinberger
|
93a5784c58
|
feat(gateway): allow webchat port override
|
2025-12-10 16:55:17 +00:00 |
|
Peter Steinberger
|
55772eec5a
|
gateway: force ws-only clients
|
2025-12-10 16:27:54 +00:00 |
|
Peter Steinberger
|
cf8b00890f
|
fix: stabilize health probe and gateway handshake
|
2025-12-10 00:52:43 +00:00 |
|
Peter Steinberger
|
1dd5c97ae0
|
feat: add ws chat attachments
|
2025-12-09 23:16:57 +01:00 |
|
Peter Steinberger
|
6129924eb2
|
chore: remove legacy rpc command
|
2025-12-09 21:28:39 +00: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
|
e84ed61339
|
cli: gateway subcommands, drop ipc probes
|
2025-12-09 20:27:35 +00:00 |
|
Peter Steinberger
|
131864b940
|
gateway: drop ipc and simplify cli
|
2025-12-09 20:18:50 +00:00 |
|
Peter Steinberger
|
5df438fd2a
|
fix: enforce gateway single instance
|
2025-12-09 19:40:01 +00:00 |
|
Peter Steinberger
|
a3bf2bdd8c
|
chore: rename relay to gateway
|
2025-12-09 18:00:01 +00:00 |
|
Peter Steinberger
|
8d888b426f
|
chore: format swift/ts and fix gateway lint
|
2025-12-09 17:11:25 +00:00 |
|
Peter Steinberger
|
dc8f9e043d
|
Tests: cover gateway --force helpers
|
2025-12-09 16:31:28 +00:00 |
|
Peter Steinberger
|
6afcf43ff2
|
CLI: add gateway --force option
|
2025-12-09 16:28:26 +00:00 |
|
Peter Steinberger
|
4bf968a45a
|
CLI: add gateway verbose flag
|
2025-12-09 17:17:58 +01:00 |
|
Peter Steinberger
|
e40f9c9730
|
Mac: launch gateway and add relay installer
|
2025-12-09 16:15:53 +00:00 |
|
Peter Steinberger
|
cf5769753a
|
Protocol: lint fixes for client/program
|
2025-12-09 15:18:34 +01:00 |
|
Peter Steinberger
|
d1217e84c7
|
CLI: remove relay/heartbeat legacy commands
|
2025-12-09 15:06:44 +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 |
|
Peter Steinberger
|
cfd2c41c21
|
fix(rpc): keep stdout json-only
|
2025-12-09 04:34:11 +01:00 |
|
Peter Steinberger
|
2cd27d0d4a
|
Relay: enforce single instance lock
|
2025-12-09 03:17:23 +00:00 |
|
Peter Steinberger
|
59a2cbefcb
|
RPC: extract stdio loop and tests
|
2025-12-09 02:37:04 +00:00 |
|
Peter Steinberger
|
c568284f1b
|
Build: fix RPC sendable params and CLI imports
|
2025-12-09 03:33:16 +01:00 |
|
Peter Steinberger
|
04f595cd97
|
Control: route health/heartbeat over RPC stdio
|
2025-12-09 02:26:08 +00:00 |
|
Peter Steinberger
|
f965e1c3ff
|
chore: single-source working state from agent events
|
2025-12-09 01:17:01 +01:00 |
|
Peter Steinberger
|
34d2527606
|
chore: tidy agent event streaming types
|
2025-12-09 00:59:56 +01:00 |
|
Peter Steinberger
|
594e837440
|
feat: emit job-state events from rpc
|
2025-12-09 00:18:14 +01:00 |
|
Peter Steinberger
|
22996854f7
|
relay: add control channel and heartbeat stream
|
2025-12-08 21:50:24 +01:00 |
|
Peter Steinberger
|
ded106b9e3
|
ux: keep window in edit, add escape to cancel; fix lint drift
|
2025-12-08 20:22:56 +01:00 |
|
Peter Steinberger
|
ab448988ff
|
RPC: stream heartbeat events to menu
|
2025-12-08 20:18:54 +01:00 |
|
Peter Steinberger
|
c3f955d3f1
|
chore: fix lint warnings and formatting
|
2025-12-08 17:05:27 +01:00 |
|
Peter Steinberger
|
de70d82cea
|
fix(mac): surface health errors instead of pending
|
2025-12-08 16:50:20 +01:00 |
|
Peter Steinberger
|
90a0bb5acb
|
feat(cli): unify relay providers and heartbeat flag
|
2025-12-08 16:34:06 +01:00 |
|
Peter Steinberger
|
17a6d716ad
|
Webchat: auto-start server and simplify config
|
2025-12-08 13:12:34 +00:00 |
|
Peter Steinberger
|
92457f7fab
|
Remote web chat tunnel and onboarding polish
|
2025-12-08 12:50:37 +01:00 |
|
Peter Steinberger
|
17fa2f4053
|
refactor(cli): drop tmux helpers and update help copy
|
2025-12-08 12:43:13 +01:00 |
|
Peter Steinberger
|
dc22661744
|
webchat: move serving to relay loopback and tunnel from mac app
|
2025-12-08 11:54:30 +01:00 |
|
Peter Steinberger
|
f65702a8a8
|
chore(ci): fix lint and swiftformat failures
|
2025-12-08 01:48:53 +01:00 |
|
Peter Steinberger
|
1595fb8739
|
docs: move grammY research note to docs/grammy.md
|
2025-12-07 22:53:58 +01:00 |
|
Peter Steinberger
|
d73d571f19
|
Launch agent: disable autostart without killing running app
|
2025-12-07 19:01:14 +01:00 |
|
Peter Steinberger
|
d463c82c95
|
build: add local node bin to restart script PATH
|
2025-12-07 19:01:14 +01:00 |
|
Peter Steinberger
|
7efa152418
|
VoiceWake: document escape path and reset stale forward command
|
2025-12-07 18:23:34 +01:00 |
|
Peter Steinberger
|
b30db08110
|
feat: add heartbeat toggle with live RPC control
|
2025-12-07 15:32:48 +01:00 |
|
Peter Steinberger
|
67fa82cf14
|
agent: deliver via rpc and voice forward
|
2025-12-07 06:05:00 +01:00 |
|
Peter Steinberger
|
67c67dd86d
|
Docs: swap to obviously fake phone numbers
|
2025-12-07 04:42:58 +00:00 |
|
Peter Steinberger
|
cb5c932447
|
Health: CLI probe and mac UI surfacing
|
2025-12-07 04:38:20 +00:00 |
|
Peter Steinberger
|
2714ed503b
|
CLI: add health probe command
|
2025-12-07 04:33:22 +00:00 |
|
Peter Steinberger
|
0a9b98ed67
|
feat(cli): add stdin/stdout rpc loop for agent sends
|
2025-12-07 05:10:58 +01:00 |
|
Peter Steinberger
|
31f788eb5e
|
CLI: allow --provider flag for login/logout (default whatsapp)
|
2025-12-07 03:41:27 +00:00 |
|
Peter Steinberger
|
690113dd73
|
Add bundled pi default and session token reporting
|
2025-12-05 23:18:43 +01:00 |
|
Peter Steinberger
|
7c7314f673
|
chore: drop twilio and go web-only
|
2025-12-05 19:03:59 +00:00 |
|
Peter Steinberger
|
fcf0c28132
|
chore: make pi-only rpc with fixed sessions
|
2025-12-05 17:50:02 +00:00 |
|
Peter Steinberger
|
b3e50cbb33
|
Switch to clawdis RPC mode and complete rebrand
|
2025-12-05 17:22:53 +00:00 |
|
Peter Steinberger
|
05b76281f7
|
CLI: add agent command for direct agent runs
|
2025-12-04 17:54:20 +00:00 |
|
Peter Steinberger
|
12d7be7cad
|
feat(heartbeat): allow manual message and dry-run for web/twilio
|
2025-11-28 08:14:07 +01:00 |
|
Peter Steinberger
|
73456a68d7
|
Fix heartbeat CLI import for recipients resolution
|
2025-11-26 18:22:28 +01:00 |
|
Peter Steinberger
|
8f6e43fd66
|
Changelog: bump to 1.2.0 unreleased
|
2025-11-26 18:18:13 +01:00 |
|
Peter Steinberger
|
ebce6ef263
|
Docs: show --all heartbeat example
|
2025-11-26 18:17:30 +01:00 |
|
Peter Steinberger
|
c20a266a11
|
Heartbeat: harden targeting and support lid mapping
|
2025-11-26 18:15:57 +01:00 |
|
Peter Steinberger
|
7e5b3958cc
|
CLI: rename heartbeat tmux helper and log file path
|
2025-11-26 18:00:23 +01:00 |
|
Peter Steinberger
|
deded848ee
|
Heartbeat: add relay helper and fix CLI tests
|
2025-11-26 17:49:34 +01:00 |
|
Peter Steinberger
|
271004bf60
|
feat: add heartbeat cli and relay trigger
|
2025-11-26 17:04:43 +01:00 |
|
Peter Steinberger
|
5c66e8273b
|
chore: update changelog and surface web relay settings
|
2025-11-26 02:43:24 +01:00 |
|
Peter Steinberger
|
baf20af17f
|
web: add heartbeat and bounded reconnect tuning
|
2025-11-26 02:34:43 +01:00 |
|
Peter Steinberger
|
e482e7768b
|
chore: commit pending cli/web test tweaks
|
2025-11-26 02:19:45 +01:00 |
|
Peter Steinberger
|
a2586b8b06
|
feat(web): add logout command and tests
|
2025-11-26 01:29:02 +01:00 |
|
Peter Steinberger
|
e5f677803f
|
chore: format to 2-space and bump changelog
|
2025-11-26 00:53:53 +01:00 |
|
Peter Steinberger
|
20fc412765
|
Refactor: derive version from package.json
|
2025-11-25 17:10:53 +01:00 |
|
Peter Steinberger
|
c251681a40
|
Chore: prep 0.1.4 unreleased placeholder and release guardrails
|
2025-11-25 17:08:13 +01:00 |
|
Peter Steinberger
|
9c25e15e92
|
Release 0.1.3
|
2025-11-25 16:53:30 +01:00 |
|
Peter Steinberger
|
80d9d288c2
|
chore: bump to 0.1.2 and fix commander typings
|
2025-11-25 14:26:55 +01:00 |
|
Peter Steinberger
|
dd55a80430
|
chore: prep 0.1.1 (version bump, lowercase branding, ua update)
|
2025-11-25 14:13:17 +01:00 |
|
Peter Steinberger
|
3b8783ec0e
|
docs: colorized help and example footer
|
2025-11-25 14:09:59 +01:00 |
|
Peter Steinberger
|
cadd29e147
|
fix: make CLI bin invoke program parse
|
2025-11-25 13:22:54 +01:00 |
|
Peter Steinberger
|
962dfa08d1
|
CLI: add verbose flag to send and status
|
2025-11-25 12:43:20 +01:00 |
|
Peter Steinberger
|
dd32638eb4
|
Cleanup: remove deprecated up alias and update ingress docs
|
2025-11-25 12:40:56 +01:00 |
|
Peter Steinberger
|
c83efdc5bc
|
CLI: unify webhook ingress and keep up as tailscale alias
|
2025-11-25 12:38:38 +01:00 |
|
Peter Steinberger
|
e6b98cb445
|
CLI: drop web:login alias and simplify web quickstart
|
2025-11-25 12:30:43 +01:00 |
|
Peter Steinberger
|
ff6e13d274
|
Add CLI and infra test coverage
|
2025-11-25 12:30:43 +01:00 |
|
Peter Steinberger
|
38659f5d3e
|
test: sync updated specs
|
2025-11-25 12:12:29 +01:00 |
|
Peter Steinberger
|
800c7a1e1f
|
chore: sync source updates
|
2025-11-25 12:12:13 +01:00 |
|
Peter Steinberger
|
071786fe16
|
feat: add relay:tmux:attach to join existing session
|
2025-11-25 05:53:21 +01:00 |
|
Peter Steinberger
|
bafaed37fe
|
chore: attach when starting relay tmux session
|
2025-11-25 05:48:00 +01:00 |
|
Peter Steinberger
|
729ae64822
|
feat: add relay:tmux helper for relay watcher
|
2025-11-25 05:47:06 +01:00 |
|
Peter Steinberger
|
948ff7f035
|
feat: add image support across web and twilio
|
2025-11-25 04:58:31 +01:00 |
|
Peter Steinberger
|
2aac606979
|
chore: fix type regressions and helpers
|
2025-11-25 04:40:57 +01:00 |
|
Peter Steinberger
|
ca0b50d772
|
chore: align web provider logging and relay e2e
|
2025-11-25 04:15:20 +01:00 |
|
Peter Steinberger
|
28277a298a
|
feat: retries for webhook bring-up and send --json docs
|
2025-11-25 04:10:20 +01:00 |
|
Peter Steinberger
|
d1923e6efe
|
feat: add send --json, logger cleanup, and resilient Claude parsing
|
2025-11-25 04:08:42 +01:00 |
|
Peter Steinberger
|
fdfb1df0de
|
feat: add dry-run options and retry helper
|
2025-11-25 03:57:50 +01:00 |
|
Peter Steinberger
|
af577f07da
|
refactor: add provider barrels and webhook grouping
|
2025-11-25 03:56:11 +01:00 |
|
Peter Steinberger
|
8bd406f6b1
|
feat: add config validation and send dry-run
|
2025-11-25 03:46:26 +01:00 |
|
Peter Steinberger
|
a89d7319a9
|
refactor: modularize cli helpers
|
2025-11-25 03:42:12 +01:00 |
|
Peter Steinberger
|
afdaa7ef98
|
Refactor CLI and Twilio modules; add helper tests and comments
|
2025-11-25 03:11:39 +01:00 |
|