Peter Steinberger
3094b72bea
docs(changelog): add android notification tap fix
2026-01-04 17:02:46 +00:00
Peter Steinberger
a63af8d8ff
test(android): cover notification tap intent
2026-01-04 17:02:21 +00:00
Manuel Jiménez Torres
40ffbd32cb
feat(android): open app when tapping foreground service notification
...
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-04 17:01:34 +00:00
Peter Steinberger
d923dc56ec
fix: update ClawdBot Swift references
2026-01-04 17:57:53 +01:00
Peter Steinberger
5eb6b779f5
fix: macOS Swift cleanup
2026-01-04 17:57:53 +01:00
Peter Steinberger
0928e3c866
docs: update changelog for models CLI
2026-01-04 17:57:53 +01:00
Peter Steinberger
734bb6b4fd
feat: add models scan and fallbacks
2026-01-04 17:57:52 +01:00
Peter Steinberger
a2ba7ddf90
docs: add models cli plan
2026-01-04 17:57:35 +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
Peter Steinberger
a2d7632cf3
docs: add changelog entry for cron tool fix
2026-01-04 17:18:29 +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
4e072d59c1
chore(protocol): regenerate GatewayModels
2026-01-04 16:05:47 +00:00
Peter Steinberger
94da41dc52
docs: document sandbox image recovery
2026-01-04 16:02:28 +00:00
Peter Steinberger
718299b25a
feat(doctor): repair sandbox images
2026-01-04 16:02:24 +00:00
Peter Steinberger
e80bd1882f
chore: bump Peekaboo submodule
2026-01-04 16:02:16 +00:00
Peter Steinberger
ca09078934
docs: add Discord writing style guide to skill
2026-01-04 15:42:32 +00:00
Peter Steinberger
c54fcd1e74
docs: document legacy doctor migrations
2026-01-04 15:41:25 +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
20e41c5a10
docs: update changelog and README
2026-01-04 16:36:40 +01:00
Peter Steinberger
5d29985c4f
fix: avoid sendable issue in mac location timeout
2026-01-04 16:27:17 +01:00
Peter Steinberger
026a25d164
chore: lint and format cleanup
2026-01-04 16:24:17 +01:00
Peter Steinberger
fd95ededaa
refactor: streamline node invoke handling
2026-01-04 16:24:17 +01:00
Peter Steinberger
c0b248f291
refactor: split connections settings/store
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
21826cdfb9
chore: update Peekaboo submodule
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
7ff318d3f2
docs: note canvasHost reload requires restart
2026-01-04 15:45:42 +01:00
Peter Steinberger
8ff802a072
chore: bump Peekaboo submodule
2026-01-04 14:42:12 +00:00
Peter Steinberger
b79fdd2be8
chore: ignore module cache
2026-01-04 14:41:25 +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
9616add9b1
docs: note android sms capability
2026-01-04 13:59:05 +01:00
Peter Steinberger
71fdf46f18
fix(android): refresh hello on sms permission grant
2026-01-04 13:59:05 +01:00
Peter Steinberger
0d56a73118
fix(android): add sms permission flow and tests
2026-01-04 13:59:05 +01:00
Vasanth Rao Naik Sabavat
1318276105
feat(android): add SMS sending capability to Android node
...
Add sms.send command to allow sending text messages via the paired Android device.
Changes:
- Add SmsManager class to handle SMS sending via Android SmsManager API
- Add ClawdisSmsCommand enum and Sms capability to protocol constants
- Wire sms.send command into NodeRuntime invoke handler
- Add SEND_SMS permission to AndroidManifest.xml
- Advertise sms capability when SEND_SMS permission is granted
The SMS capability is only advertised when the user has granted SEND_SMS
permission. Messages longer than 160 chars are automatically split into
multipart messages.
2026-01-04 13:58:05 +01:00
Peter Steinberger
7aab2ae182
docs: update changelog
2026-01-04 11:44:41 +00: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
jeffersonwarrior
02d7e286ea
docs: add remote gateway SSH tunnel setup guide
...
- Add SSH config setup for remote gateway access
- Document step-by-step setup process
- Include auto-start LaunchAgent configuration
- Add troubleshooting section
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-01-04 07:48:20 +01:00
Peter Steinberger
3910b9b39e
docs(skills): update mcporter
2026-01-04 07:26:59 +01:00
Peter Steinberger
607de4a403
fix: add slack chunk limits
2026-01-04 07:23:39 +01:00
Shadow
7701d395e9
Slack: update docs and tool display
2026-01-04 07:22:05 +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
4b3ca29404
build: add homebrew to sandbox image
2026-01-04 06:12:06 +00:00
Peter Steinberger
259b14d66a
chore: refresh protocol models
2026-01-04 07:07:21 +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
be9fa124df
build: add pkg-config + libasound2-dev to sandbox image
2026-01-04 05:28:08 +00:00
Peter Steinberger
ff88f3c075
style: fix lint ordering
2026-01-04 06:27:54 +01:00
Peter Steinberger
1315fc4caf
docs: split elevated directives
2026-01-04 05:21:12 +00:00
Peter Steinberger
a03895dfa9
fix: default elevated mode to on
2026-01-04 05:19:28 +00:00
Peter Steinberger
40c3898ca1
docs: update changelog for #166
2026-01-04 06:17:07 +01:00
Peter Steinberger
6ea0eb438c
style: fix lint formatting
2026-01-04 06:17:07 +01:00
Peter Steinberger
04cd1bd11a
fix(macos): bridge wizard option values
2026-01-04 06:17:07 +01:00
Peter Steinberger
fe0b3500cc
feat: add elevated bash mode
2026-01-04 05:15:59 +00:00
Tu Nombre Real
b978cc4e91
feat(macos): add Swift 6 strict concurrency compatibility
...
Prepares the macOS app for Swift 6 strict concurrency mode by:
1. Adding Sendable conformance to WizardNextResult, WizardStartResult,
and WizardStatusResult in GatewayModels.swift
2. Adding AnyCodable bridging helpers in OnboardingWizard.swift to
handle type conflicts between ClawdisProtocol and local module
3. Making CLLocationManagerDelegate methods nonisolated in:
- MacNodeLocationService.swift
- PermissionManager.swift (LocationPermissionRequester)
Using Task { @MainActor in } pattern to safely access MainActor
state from nonisolated protocol requirements.
These changes are forward-compatible and don't affect behavior on
current Swift versions.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-04 06:09:52 +01: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
5673f4299a
build: add sandbox common image builder
2026-01-04 04:17:13 +00:00
Peter Steinberger
770daadaf7
chore: bump Peekaboo submodule
2026-01-04 05:15:57 +01:00
Peter Steinberger
13c2f22240
refactor: split agent tools
2026-01-04 05:07:44 +01:00
Peter Steinberger
f2ce455c8c
fix: set writable home for sandbox browser
2026-01-04 03:49:39 +00:00
Peter Steinberger
640ec465d7
chore: bump Peekaboo submodule
2026-01-04 04:46:07 +01:00
Peter Steinberger
70f79bd926
fix: stabilize sandbox browser startup
2026-01-04 03:45:14 +00:00
Peter Steinberger
7d95f43a75
style: fix lint
2026-01-04 03:37:08 +00:00
Peter Steinberger
c2f3b653c2
docs: thank scald for Notion skill
2026-01-04 04:36:28 +01: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
Steve Caldwell
44990d837f
feat: add Notion API skill
...
Create and manage Notion pages, databases, and blocks via API.
2026-01-04 04:29:44 +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
3ebee63cb3
feat: add clawdhub skill
2026-01-04 04:05:10 +01:00
Peter Steinberger
6d6038b855
docs: tighten wacli skill guidance
2026-01-04 03:45:49 +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
052cec70ae
fix: render thinking text in italics
2026-01-04 02:44:11 +01:00
Peter Steinberger
534de59f7c
docs: clarify menu bar sessionKey usage
2026-01-04 02:10:22 +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
Cash Williams
12186e14a9
fix(android): handle unreachable gateway gracefully
...
Previously, if the gateway was unreachable (wrong IP, offline, etc.),
the Android app would crash with an unhandled socket exception.
Changes:
- Wrap socket.connect() in try/catch to handle connection failures
- Return PairResult with error message instead of crashing
- Display actual error message in status text instead of generic 'pairing required'
This gives users useful feedback like 'Connection refused' or
'Network is unreachable' instead of a crash.
2026-01-04 01:44:43 +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
e7615c464a
docs: update apple-reminders skill for remindctl
2026-01-04 01:33:47 +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
44bdd4ca0c
chore: regen Swift protocol models
2026-01-04 01:20:20 +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
52f59e6dc1
fix: drop stale ClawdisCLI build flag
2026-01-04 00:42:22 +01:00
Peter Steinberger
3bc24bf179
fix: wait for final agent response in sessions_send
2026-01-04 00:40:40 +01:00
Peter Steinberger
e07fdd117d
docs: migrate Mintlify config
2026-01-04 00:36:55 +01:00
Peter Steinberger
7c062e0ef2
fix: clarify provider requirements in onboarding
2026-01-03 23:29:38 +00:00
Peter Steinberger
0f1781fc2c
docs: add Mintlify config
2026-01-04 00:25:42 +01:00
Peter Steinberger
0f6e566a20
fix: make sessions_send wait via agent events
2026-01-04 00:12:14 +01:00
Peter Steinberger
03ee77b0e1
docs: add mac config sync note
2026-01-04 00:09:18 +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
3f7c69fa7f
docs: note mac app config sync
2026-01-03 23:34:25 +01:00
Shadow
cc07ea82a4
CI: split macOS/android checks
2026-01-03 23:25:51 +01:00
Peter Steinberger
30e22769bb
docs: update changelog for #144
2026-01-03 22:25:30 +00:00
Peter Steinberger
6c406b488d
ci: consolidate check jobs
2026-01-03 22:25:29 +00:00
Peter Steinberger
f13f89e8b9
docs: update changelog for PR 156
2026-01-03 22:59:11 +01:00
Peter Steinberger
8b069e62fc
fix: appease lint after merge
2026-01-03 22:59:11 +01:00
Shadow
e2709a3ebd
CI: split macOS/android checks
2026-01-03 21:55:39 +00: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
fe1b894676
docs: clarify personal vs private in README ( #125 )
2026-01-03 22:21:55 +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
3d39e2ad75
feat(macos): sync gateway config
2026-01-03 22:17:04 +01:00
Peter Steinberger
2dc10ce337
docs: expand peekaboo skill docs
2026-01-03 22:14:21 +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
Peter Steinberger
03c1599544
docs(templates): add platform formatting tips (Discord embeds, tables)
2026-01-03 20:01:17 +00:00
Shadow
6464d93bbb
Discord: add forwarded message handling
2026-01-03 13:56:09 -06:00
Peter Steinberger
424d31af1f
docs(templates): add voice storytelling tip for sag users
2026-01-03 19:55:32 +00:00
Peter Steinberger
e9d7ac8e84
feat(gateway): add config hot reload
2026-01-03 19:52:24 +00:00
Peter Steinberger
fac694fc03
docs(skills): add parallel Codex orchestration learnings
...
- coding-agent: document --yolo flag, git worktree + tmux pattern
- tmux: add section on orchestrating coding agents in parallel
Learnings from running 5 parallel Codex sessions to analyze GitHub issues
2026-01-03 19:45:18 +00:00
Shadow
3e84b9632d
Discord: handle system message types
2026-01-03 13:15:19 -06:00
Peter Steinberger
ce3fd09e14
docs(faq): add alternative providers section (OpenRouter, Z.AI)
...
- Added OpenRouter and Z.AI setup examples
- Emphasized using latest Claude 4.5 models, not deprecated 3.x
🦞
2026-01-03 19:14:05 +00:00
Peter Steinberger
641080a0b6
fix: document macOS permission requirements
2026-01-03 20:05:22 +01:00
Jake
99c3fc1128
Scripts: Make ad-hoc fallback opt-in with stronger TCC warnings
2026-01-03 20:05:22 +01:00
Jake
8c7b2aa2d3
Scripts: Fallback to ad-hoc signing in codesign-mac-app.sh
2026-01-03 20:05:22 +01:00
Peter Steinberger
55a07a0ef0
style: fix lint formatting
2026-01-03 18:51:25 +00:00
Peter Steinberger
9899ba53a3
Docs: add PR number for Discord reactions
2026-01-03 18:48:36 +00:00
Peter Steinberger
52458a5628
Discord: default reaction notifications to own
2026-01-03 18:48:36 +00:00
Shadow
7abd6713c8
Docs: clarify discord reaction notifications
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
341a224301
docs: credit Hyaxia in changelog and credits
...
Co-authored-by: Maxim Vovshin <36747317+Hyaxia@users.noreply.github.com >
2026-01-03 18:05:46 +00:00
Peter Steinberger
95cd153f33
feat: add blogwatcher skill
2026-01-03 18:00:08 +00:00
Peter Steinberger
0af89022ff
fix: avoid Swift compiler crash in onboarding wizard
2026-01-03 17:59:37 +00: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
145964c85e
feat: add github skill
2026-01-03 17:57:13 +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
822def84d2
docs(faq): add Tailscale bind conflict + model/thinking compatibility
...
- Added Tailscale serve requires bind: loopback (not lan)
- Added model + thinking mode issues section (Gemini Flash, Opus, local LLMs)
From Discord #help session learnings 🦞
2026-01-03 16:53:56 +00: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
dd6b9b510b
docs: update changelog for gateway refactor
2026-01-03 17:35:29 +01:00
Peter Steinberger
6ae51ae3de
refactor: split gateway server helpers and tests
2026-01-03 17:34:52 +01:00
Peter Steinberger
00c3e98431
docs: add tmux skill guidance
2026-01-03 17:31:26 +01:00
Peter Steinberger
dd561f58d1
docs: expand coding-agent Pi usage
2026-01-03 17:21:17 +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
abff5e3b1f
docs: thank @ratulsarna for control UI UUID fallback
2026-01-03 15:56:36 +00:00
Peter Steinberger
40ee0f0672
build: lock x86_64 relay to AVX2
2026-01-03 16:52:06 +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
0f85080d81
Merge pull request #133 from ratulsarna/fix/ui-http-uuid
...
fix(ui): robust UUID generation for HTTP Control UI
2026-01-03 16:16:43 +01:00
Peter Steinberger
72f8148080
fix: clean up embedded lint
2026-01-03 15:09:07 +00:00
Peter Steinberger
be3da5b856
fix: update protocol models and android parsing
2026-01-03 15:04:24 +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
4e4655f607
docs(faq): use correct codex login --device-auth command
2026-01-03 14:13:18 +00:00
Peter Steinberger
48731f494b
fix: add embedded run logs and typing ttl
2026-01-03 14:09:19 +00:00
Peter Steinberger
4fcd89c3d9
docs(faq): add stop/cancel task + Codex subscription auth sections
...
- Added FAQ for /stop and other abort commands
- Added FAQ explaining Codex CLI browser auth vs API key
- Browser OAuth uses ChatGPT Pro subscription, API key is pay-per-token
Co-authored-by: Clawd <clawdbot@gmail.com >
2026-01-03 14:08:24 +00:00
Peter Steinberger
a4f433a1b1
docs: update onboarding steps
2026-01-03 14:08:24 +00:00
Ratul Sarna
84a7ee491b
fix(ui): robust UUID generation on HTTP
...
Fixes #131
2026-01-03 13:43:20 +00:00
Peter Steinberger
3043dd3a0c
fix: restructure macOS connections settings
2026-01-03 14:25:03 +01:00
Jake
81f4a7cdb7
Agents: Fix Gemini schema compatibility and robust model discovery
2026-01-03 13:57:29 +01:00
Peter Steinberger
c2a74d6d2a
docs(template): add 'Write It Down' rule to AGENTS.md template
...
Mental notes don't survive sessions. Files do. Text > Brain 📝
2026-01-03 12:52:11 +00:00
Peter Steinberger
861e1b33f5
docs(skill): add PR review safety rules for coding-agent
...
- Never checkout branches in live Clawdis repo
- Clone to temp folder or use git worktree for reviews
- Added explicit examples for safe PR review workflow
2026-01-03 12:49:03 +00:00
Peter Steinberger
0647d56555
fix(build): repair tool-meta regex literal
2026-01-03 12:46:33 +00:00
Peter Steinberger
ea6aea8532
docs: warn about gmail watcher port conflict
2026-01-03 12:41:44 +00:00
Peter Steinberger
6eca2edd79
chore(swift): update Swabble package lock
2026-01-03 13:38:18 +01:00
Peter Steinberger
d31dfbc565
chore(canvas): refresh a2ui bundle hash
2026-01-03 13:38:12 +01:00
Peter Steinberger
1e0f776824
test(gateway): add multi-instance e2e suite
2026-01-03 13:37:46 +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
f11b352089
fix(macos): expand onboarding window height
2026-01-03 13:34:30 +01: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
bf4ad295af
docs(faq): add media/vision troubleshooting section
...
- Added FAQ entry for images/media not being understood
- Covers vision-capable models checklist
- Debugging steps for media pipeline
- Link to summarize.sh for exotic files
Co-authored-by: Clawd <clawdbot@gmail.com >
2026-01-03 11:43:40 +00: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
daa1460502
docs(discord): document sendMessage mediaUrl and to format
...
- Add example for sendMessage with media attachment (file:// and https://)
- Clarify that sendMessage uses 'to: channel:<id>' not 'channelId'
- Document replyTo parameter for replying to specific messages
- Add mediaUrl to inputs section
2026-01-03 11:05:09 +00:00
Peter Steinberger
f47c7ac369
feat: support configurable gateway port
2026-01-03 12:00:17 +01:00
Peter Steinberger
7199813969
docs: document gateway port configuration
2026-01-03 11:46:58 +01:00
Peter Steinberger
87d5fa516d
docs(skills): correct bear-notes instructions
...
Co-authored-by: Tyler Wince <tylerwince@users.noreply.github.com >
2026-01-03 11:34:31 +01:00
Claude
10340d2a3f
feat(skills): add bear-notes skill using grizzly CLI
2026-01-03 11:29:14 +01:00
Peter Steinberger
508c4d362f
docs: update changelog for gog skill
2026-01-03 11:20:17 +01:00
Mariano Belinky
f73b008251
docs: add Sheets/Docs examples to gog skill
2026-01-03 11:20:17 +01:00
Peter Steinberger
c583e64bb7
chore: update changelog
2026-01-03 11:17:00 +01:00
Peter Steinberger
9df63b008d
docs: move telegram chunking fix to beta6
2026-01-03 11:15:57 +01:00
Peter Steinberger
3daecc092c
docs: add changelog entry for telegram block replies
2026-01-03 11:12:15 +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
Peter Steinberger
45c555a4bd
fix: use x86_64 bun for relay builds
2026-01-03 11:06:49 +01:00
Peter Steinberger
5986a83e80
fix: skip duplicate arch merge for Sparkle
2026-01-03 11:06:49 +01:00
Peter Steinberger
732de4acf0
fix: make Sparkle builds numeric + universal
2026-01-03 11:06:48 +01:00
Shadow
7400c0946e
Discord: update UIs to use the new config
2026-01-03 01:02:22 -06:00
Peter Steinberger
14ee2b2c11
FAQ: Add common questions from Discord (Jan 3)
...
- Linux/VPS installation without Homebrew
- Minimum system requirements (runs on 1GB RAM!)
- Enterprise OAuth status (not supported yet)
- Discord DM allowlist config
- Model switching with /model
- Message queue modes with /queue
2026-01-03 06:09:51 +00:00
Peter Steinberger
c3e1b8cfd9
chore: update protocol swift models
2026-01-03 06:44:21 +01:00
Peter Steinberger
67a67df35a
fix: avoid unsafe string coercion in tui
2026-01-03 06:44:17 +01:00
Peter Steinberger
0f0578b268
docs: check off tui gate
2026-01-03 06:37:44 +01:00
Peter Steinberger
662208949f
fix: align sessions.patch and tui typing
2026-01-03 06:37:40 +01:00
Peter Steinberger
e41821342b
docs: refresh tui guide
2026-01-03 06:28:36 +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
b86619bcd0
docs: fix appcast to only ship beta5
2026-01-03 06:12:01 +01:00
Peter Steinberger
31b5b45581
docs: refresh appcast for notarized beta5
2026-01-03 06:04:20 +01:00
Peter Steinberger
33cdb16b9e
docs: update appcast for 2.0.0-beta5
2026-01-03 05:55:31 +01:00
Peter Steinberger
53fd7a4473
chore: fix lint ordering
2026-01-03 05:38:29 +01:00
Peter Steinberger
10d56d31e9
docs: date 2.0.0-beta5 changelog
2026-01-03 05:37:04 +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
Peter Steinberger
b417fe5727
fix: show rich session names in chat UIs
2026-01-03 05:07:13 +01:00
Peter Steinberger
fabad7aa7a
docs: update changelog for antigravity oauth
2026-01-03 05:01:42 +01:00
Peter Steinberger
3c54da952a
chore: refresh pi-ai patch hash
2026-01-03 05:01:42 +01:00
Peter Steinberger
2ef2646b31
chore: note lossy google schema scrub
2026-01-03 05:01:42 +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
5eff541da8
docs: prefer spogo or spotify_player
2026-01-03 04:47:34 +01:00
Peter Steinberger
598a27cc96
docs: update changelog for tui
2026-01-03 04:47:34 +01:00
Peter Steinberger
08ce608ae7
feat: add gateway TUI
2026-01-03 04:47:34 +01:00
Peter Steinberger
928631309e
docs: note queue tests
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
f7eabcb2d9
docs: note new queue modes
2026-01-03 04:27:22 +01: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
Peter Steinberger
b8fd22bfd8
docs: update changelog for discord actions
2026-01-03 03:07:13 +01:00
Shadow
98a1deb129
UI: add discord action toggles
2026-01-03 03:07:13 +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
b28e4e95c2
docs: note gmail watcher auto-start
2026-01-03 03:04:15 +01: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
3ec5ce8349
docs: note onboarding scroll gutter
2026-01-03 02:55:43 +01:00
Peter Steinberger
c5d70019bb
fix: respect onboarding scroll indicator preference
2026-01-03 02:55:43 +01:00
Shadow
a35fb3a9b4
macOS: add onboarding scroll gutter
2026-01-03 02:55:43 +01:00
Peter Steinberger
79403f9083
docs: update apple notes/reminders skill setup
2026-01-03 02:41:12 +01:00
Claude
7a44c19362
feat(skills): add Apple Notes and Reminders skills via memo CLI
2026-01-03 02:41:12 +01:00
Peter Steinberger
11fc10ea47
docs: thank contributor for telegram group gating
2026-01-03 02:34:48 +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
Peter Steinberger
f85951bc65
docs: add changelog entry for gog calendar fix
2026-01-03 02:32:50 +01:00
Jared Verdi
12e27f9e5e
Gateway: ack skipped hook transforms with 204
2026-01-03 02:32:50 +01:00
Jay Hickey
7e9be3c28c
Update gog Calendar command date format to RFC3339
...
I am seeing instances where Clawdis is not including timezone in the gog calendar range requests. This results in a 400 bad request from the Google API, e.g.
```
gog calendar events primary --from 2026-01-02T00:00:00 --to 2026-01-03T23:59:59 --account <email>
Google API error (400 badRequest): Bad Request
```
While this is a valid ISO 8601 format, Google Calendar API requires a stricter RFC 3339 format like the following:
```
gog calendar events primary --from 2026-01-02T00:00:00Z --to 2026-01-03T23:59:59Z --account <email>
<calendar events listed successfully>
```
2026-01-03 02:30:32 +01:00
Peter Steinberger
3368fcf31e
fix: avoid duplicate replies with block streaming
2026-01-03 02:16:01 +01:00
Peter Steinberger
32877afe55
docs: note self-chat config docs update
2026-01-03 02:05:37 +01:00
rafaelreis-r
efe7eca726
docs: clarify routing.allowFrom and self-chat mode for group mentions
...
- Add new section explaining self-chat mode for group control
- Document routing.allowFrom as the key setting for controlling metadata mentions
- Clarify difference between whatsapp.allowFrom (DM allowlist) and routing.allowFrom (self-chat mode)
- Explain metadata mentions vs text patterns in routing.groupChat
- Add example config for responding only to specific text triggers
When routing.allowFrom contains the bot's own number, WhatsApp native
@-mentions are ignored in groups, and only mentionPatterns trigger responses.
This prevents unwanted responses when users tap-to-mention the bot owner.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-03 02:05:37 +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
75a9cd83a0
fix(mac): resolve camera type deprecation
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
ea7d967625
Update Discord invite to vanity URL discord.gg/clawd 🦞
...
Thanks camerondare for the boosts! Level 3 unlocked.
2026-01-03 00:47:22 +00:00
Peter Steinberger
5dfb2b1128
coding-agent: add temp space pattern, never start in ~/clawd
...
Learnings from tonight:
- Codex reads AGENTS.md/SOUL.md and gets ideas about org hierarchy
- Use mktemp -d for scratch/chat sessions
- Never start in ~/clawd or agent home dirs
- Keep agents in their 'little box' 📦 🦞
2026-01-03 00:35:51 +00:00
Peter Steinberger
cbc599a5b8
coding-agent: add batch PR review pattern
...
Tonight's learnings:
- Parallel Codex army for batch PR reviews
- Fetch PR refs: git fetch origin '+refs/pull/*/head:refs/remotes/origin/pr/*'
- Use git diff origin/main...origin/pr/XX (don't checkout)
- Post results with gh pr comment
- Successfully reviewed 13 PRs in parallel! 🦞
2026-01-03 00:24:34 +00:00
Peter Steinberger
1354d0836f
coding-agent: comprehensive update from Jan 2 learnings
...
- workdir 'little box' pattern (don't read unrelated files)
- background mode replaces tmux
- --full-auto for building, vanilla for reviewing
- parallel Codex processes supported
- PR review tips (fetch refs, use git diff, don't checkout)
- patience rules (don't kill slow sessions!)
2026-01-03 00:11:21 +00:00
Peter Steinberger
b313250638
coding-agent: switch to native background mode, drop tmux requirement
...
- Use bash background:true instead of tmux
- Full programmatic control: log/poll/write/kill
- Simpler, no shell escaping issues
- workdir still critical for 'little box' pattern
2026-01-03 00:00:37 +00:00
Peter Steinberger
e37c147ea9
coding-agent: unified workdir+tmux pattern for all tools
2026-01-02 23:58:33 +00:00
Peter Steinberger
feb4f9028d
coding-agent: choose reasoning effort based on task complexity
2026-01-02 23:57:46 +00:00
Peter Steinberger
4804ce5678
coding-agent: simplify to gpt-5.2-codex only, remove old models
2026-01-02 23:57:24 +00:00
Peter Steinberger
001a342f20
coding-agent: workdir pattern + patience rules
...
- Use bash workdir param so Codex wakes up in a 'little box'
- Prevents reading unrelated files (like my soul.md lol)
- Added rule: NEVER offer to build it yourself when user asks for Codex
- gpt-5.2-codex requires medium reasoning effort
2026-01-02 23:56:10 +00: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
9dd613edf7
fix(mac): harden remote tunnel recovery
2026-01-03 00:02:27 +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
Shadow
281dc10b2f
Changelog: mention Discord reply context
2026-01-02 15:41:45 -06: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
Peter Steinberger
e93102b276
chore: bump peekaboo submodule
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
f4a1190bdd
docs: add CONTRIBUTING.md with maintainers and guidelines
...
- List maintainers with GitHub/X links
- Link to Discord and GitHub Discussions
- AI/vibe-coded PRs welcome with transparency guidelines
- Link from README
Co-authored-by: Clawd <clawdbot@gmail.com >
2026-01-02 20:31:41 +00:00
Peter Steinberger
118a6d7421
fix: align discord config ui
2026-01-02 21:15:59 +01:00
Peter Steinberger
4541bb2716
Merge pull request #108 from thewilloftheshadow/shadow/ui-connection-update
...
UI: Update connections UIs
2026-01-02 21:04:45 +01:00
Peter Steinberger
505c4262c6
docs: note optional docker setup
2026-01-02 20:59:58 +01:00
Peter Steinberger
3104b088e4
chore(canvas): update a2ui bundle hash
2026-01-02 19:58:46 +00:00
Peter Steinberger
f12f814816
docs(whatsapp): add number guidance
2026-01-02 19:58:44 +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
675420013d
fix(macos): resolve gateway launch args
2026-01-02 19:58:38 +00:00
Peter Steinberger
eaa69fb6b2
test: silence docker onboarding noise
2026-01-02 20:46:26 +01:00
Peter Steinberger
e0795cf18c
test: annotate onboarding docker e2e
2026-01-02 20:41:47 +01:00
Peter Steinberger
8ed878e73c
test: stabilize docker onboarding e2e
2026-01-02 20:40:33 +01:00
Peter Steinberger
08b95411df
chore: add goplaces skill
2026-01-02 20:33:06 +01:00
Peter Steinberger
460fafff7f
docs: thank @dan-dr for docker setup
2026-01-02 20:24:44 +01:00
Peter Steinberger
7b4fa9e1a1
test: cover camera list invoke
2026-01-02 20:24:41 +01:00
Peter Steinberger
7e4ebb22a0
Merge pull request #107 from dan-dr/main
...
Add Docker setup script
2026-01-02 20:24:21 +01:00
Peter Steinberger
8b47315845
fix(macos): improve session preview loading
2026-01-02 19:55:19 +01:00
Shadow
96a5e01878
macOS: swiftformat connections settings
2026-01-02 12:30:59 -06:00
Shadow
5e36390a27
macOS: fix swiftlint param count
2026-01-02 12:25:47 -06:00
Shadow
729a545173
Update connections UIs
2026-01-02 12:06:05 -06:00
Dan
488f5e2dac
Merge branch 'steipete:main' into main
2026-01-02 19:53:16 +02:00
Peter Steinberger
49e89cf3f1
fix: satisfy swiftformat for ios build
2026-01-02 18:48:05 +01:00
Peter Steinberger
43f6b9ef32
fix: resolve camera tool handling
2026-01-02 17:44:25 +00:00
Peter Steinberger
8e48cffe3b
fix(macos): decode session preview payload
2026-01-02 18:32:03 +01:00
Peter Steinberger
3ed01adabc
feat(macos): add session previews in menu
2026-01-02 18:29:47 +01:00
Dan
4239de8060
Merge branch 'steipete:main' into main
2026-01-02 19:26:14 +02: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
2b34bf08da
fix: resolve mac camera continuation isolation
2026-01-02 18:02:24 +01:00
Dan
b92f70c52b
Merge branch 'steipete:main' into main
2026-01-02 19:00:21 +02:00
Peter Steinberger
34d2e1e2e8
fix: wait for camera exposure to settle
2026-01-02 17:57:34 +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
1d12a844c2
docs: add WhatsApp disconnect workaround to FAQ
...
When using macOS app with WhatsApp issues:
1. Run pnpm gateway:watch (Node instead of bun)
2. Enable 'External gateway' in app debug settings
Verified gateway:watch command exists in package.json
2026-01-02 16:34:27 +00:00
Peter Steinberger
2d16450869
feat: add weather skill (wttr.in + Open-Meteo fallback)
...
No API key required. Two services:
- wttr.in: human-readable, emoji, ASCII art, PNG
- Open-Meteo: JSON API fallback for programmatic use
🌤️ 🦞
2026-01-02 16:33:31 +00:00
Peter Steinberger
2a6248dad6
fix: add camera entitlement to macOS signing
2026-01-02 17:31:59 +01:00
Peter Steinberger
8b27c03472
docs(skills/local-places): add emoji and tagline
...
📍 Find places, Go fast
🦞
2026-01-02 16:22:26 +00:00
Peter Steinberger
baf3bea574
docs(changelog): note macOS config actor fix
2026-01-02 17:16:49 +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
a4f12babb7
test(macos): cover gateway password whitespace
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
0de6e38ce9
fix(macos): keep config writes on main actor
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
8d925226cb
docs: expand FAQ with Docker, OAuth, bun vs Node, debugging
...
- Docker/container setup (volumes, pnpm persistence, startup script)
- OAuth vs API key billing differences
- OAuth callback workarounds for headless/containers
- Terminal onboarding vs macOS app (terminal more stable)
- bun binary vs Node runtime (Node more stable for WhatsApp)
- gateway:watch for debugging
- Tailscale link and setup clarification
Based on community questions from Discord #help
2026-01-02 16:04:02 +00:00
Peter Steinberger
f2eb2004aa
docs: thank @jeffersonwarrior for gateway auth
2026-01-02 16:51:48 +01:00
Peter Steinberger
bf37015c23
Merge pull request #85 from jeffersonwarrior/main
...
feat: add gateway password auth support and fix Swift 6.2 concurrency
2026-01-02 16:50:57 +01:00
Peter Steinberger
f489b6e7a5
chore: merge origin/main
2026-01-02 16:50:29 +01:00
Peter Steinberger
921e5be8e6
fix(skills/local-places): copy files instead of submodule
...
Submodules are pain. Just copy the Python code directly.
🦞
2026-01-02 15:48:24 +00:00
Peter Steinberger
a8bc974a2e
fix: harden gateway password auth
2026-01-02 16:47:52 +01:00
Peter Steinberger
100a022ab7
feat(skills/local-places): add server as submodule
...
- Links to Hyaxia/local_places for easy upstream updates
- Updated SKILL.md with {baseDir}/server path
🦞
2026-01-02 15:47:42 +00:00
Peter Steinberger
6b7484a885
feat(skills): add local-places skill for Google Places search
...
- Wraps Hyaxia/local_places FastAPI server
- Two-step flow: resolve location → search places
- Supports filters: type, rating, price, open_now
🦞
2026-01-02 15:46:08 +00:00
Peter Steinberger
8de40e0c10
feat(macos): add Camera permission to onboarding flow
...
- Add 'camera' case to Capability enum
- Add UI strings (title, subtitle, icon) in PermissionsSettings
- Add ensureCamera() and camera status check in PermissionManager
- Add CameraPermissionHelper for opening System Settings
🦞 Clawd's first code contribution!
2026-01-02 15:27:54 +00:00
Peter Steinberger
9b3aef3567
fix: show skill descriptions in onboarding list
2026-01-02 16:25:28 +01:00
Peter Steinberger
25e52e19dc
fix(macos): return node name
2026-01-02 15:28:34 +01:00
Peter Steinberger
68806902ff
fix(macos): show gateway in devices list
2026-01-02 15:27:21 +01:00
Peter Steinberger
ebf8649940
feat: add songsee skill
2026-01-02 15:22:23 +01:00
Peter Steinberger
c93d02891a
test: cover control ui token url
2026-01-02 15:13:05 +01:00
Peter Steinberger
87be5c737c
fix(macos): suppress cancelled node refresh
2026-01-02 15:12:57 +01:00
Peter Steinberger
ad9d6f616d
fix: improve onboarding auth UX
2026-01-02 15:03:38 +01:00
Peter Steinberger
f57f892409
fix(macos): clarify gateway error state
2026-01-02 13:48:19 +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
17e17f85ae
docs: note gateway auto-migrate
2026-01-02 13:10:09 +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
ddyo
8d4c6d41ab
Docker: add root-level setup
2026-01-02 13:53:06 +02:00
Peter Steinberger
58d32d4542
docs: expand FAQ with skills, Tailscale, troubleshooting
...
- How to add/reload skills (/reset)
- Tailscale for multi-machine setups
- Using Codex to debug
- Handling supervised processes on Linux
- Clean uninstall steps
2026-01-02 11:50:09 +00:00
Peter Steinberger
6bad75827a
docs: clarify Signal setup and env-token gating
2026-01-02 11:41:08 +00: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
a53cdbf1b4
docs: clarify Windows is untested in FAQ
2026-01-02 11:30:27 +00:00
Peter Steinberger
21a64a9957
docs: link FAQ and add platforms note
2026-01-02 11:24:41 +00:00
Peter Steinberger
d656db4d04
fix: widen discord channel type check
2026-01-02 12:23:35 +01:00
Peter Steinberger
506b66a852
docs: add FAQ with common questions from Discord
...
Covers:
- Installation & setup (data locations, unauthorized errors, fresh start, doctor)
- Migration & deployment (new machine, VPS, Docker)
- Multi-instance & contexts (one Clawd philosophy, groups for separation)
- Context & memory (200k tokens, autocompaction, workspace location)
- Platforms (supported platforms, multi-platform, WhatsApp numbers)
- Troubleshooting (build errors, WhatsApp logout, gateway issues)
- Chat commands reference
Based on community questions from #help channel.
🦞
2026-01-02 11:22:06 +00:00
Peter Steinberger
95f03d63ad
style(ui): refresh dashboard theme
2026-01-02 11:22:06 +00: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
fa16304e4f
docs: note discord ignore-list removal
2026-01-02 11:54:30 +01:00
Peter Steinberger
eda74d3a55
test: cover every schedule anchor boundary
2026-01-02 11:33:49 +01:00
Peter Steinberger
25762c0ac6
docs(discord): note from label includes tag/id
2026-01-02 11:32:59 +01:00
Peter Steinberger
2d7289bcad
docs: update changelog for cron fix
2026-01-02 11:29:35 +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
94206cf10f
Merge pull request #92 from thewilloftheshadow/shadow/discord-id
...
Discord: pass user id to clawd so it can ping users
2026-01-02 11:27:37 +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
71b0dcc922
Merge pull request #100 from steipete/feat/trello-skill
...
feat(skills): add Trello skill for board/list/card management
2026-01-02 10:47:45 +01:00
Peter Steinberger
1bf7d2f3bd
docs: update trello skill requirements
2026-01-02 10:47:31 +01:00
Peter Steinberger
87127fd133
fix: refine web chat session selector
2026-01-02 10:40:24 +01:00
Peter Steinberger
e85c15d178
docs: note mac app rebuilds need local
2026-01-02 10:38:18 +01:00
Peter Steinberger
0f56dce748
feat: add discord dm/guild allowlists
2026-01-02 10:32:21 +01:00
Peter Steinberger
d2e2077ada
fix: add top padding before first chat message
2026-01-02 10:23:40 +01:00
Peter Steinberger
9adbf47773
refactor: normalize group session keys
2026-01-02 10:14:58 +01:00
Peter Steinberger
e5ee041d4e
feat(skills): add Trello skill for board/list/card management
2026-01-02 08:37:15 +00: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
35582cfe8a
docs: fix broken clawd.md link in index
2026-01-02 02:45:01 +00: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
336048441c
docs: add imessage rpc and groups docs
2026-01-02 01:19:40 +01:00
Peter Steinberger
cbac34347b
feat: add imessage rpc adapter
2026-01-02 01:19:40 +01:00
Peter Steinberger
3ee27a00c7
docs(changelog): note log prefix cleanup
2026-01-02 00:15:03 +00: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
9180cbe821
fix: keep chat scrolled to bottom on session switch
2026-01-02 00:21:48 +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
8a2168ecf6
style: fix swiftlint warnings
2026-01-02 00:17:49 +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
7c0379ce05
feat: add recent session switchers
2026-01-01 23:50:26 +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
6df9b3f38c
docs: update changelog
2026-01-01 23:30:02 +01: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
93b7e3431b
docs: update changelog
2026-01-01 23:22:52 +01:00
Peter Steinberger
dd02cc0747
docs: update changelog
2026-01-01 23:19:30 +01:00
Peter Steinberger
867883453e
fix(cli): allow skipping skill dependency installs
2026-01-01 23:19:26 +01:00
Peter Steinberger
a68784c319
docs: update changelog
2026-01-01 23:16:42 +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
279a191b86
fix(macos): colorize provider status subtitles
2026-01-01 23:16:22 +01:00
Peter Steinberger
f0da42917b
feat(macos): verify Claude OAuth in onboarding
2026-01-01 23:16:15 +01:00
Peter Steinberger
6e87fd2d4c
docs: update changelog
2026-01-01 22:55:25 +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
b858fdd755
feat(macos): show skills in onboarding
2026-01-01 22:55:10 +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
1cf455e91c
fix: use brew installer for imsg skill
2026-01-01 21:41:39 +01:00
Peter Steinberger
952c8c2d64
fix: improve canvas debug status in remote mode
2026-01-01 20:41:13 +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
9ad6863567
docs: trim changelog
2026-01-01 21:31:13 +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
e0043906be
docs: add Discord badge
2026-01-01 21:22:00 +01:00
Peter Steinberger
eda9fb5522
feat(skills): add things-mac
2026-01-01 21:12:37 +01:00
Peter Steinberger
8a775144bf
docs: update changelog
2026-01-01 21:09:36 +01:00
Peter Steinberger
9b65534561
test: harden wizard e2e flow
2026-01-01 21:09:32 +01:00
Peter Steinberger
f6c0618596
fix: improve web chat scroll and text
2026-01-01 21:09:28 +01:00
Peter Steinberger
15fd030fa4
docs: refresh onboarding wizard docs
2026-01-01 21:09:24 +01:00
Peter Steinberger
693be03dcc
test: cover remote config routing
2026-01-01 20:29:53 +01:00
Peter Steinberger
6e3cb34024
chore: pin ElevenLabsKit + wizard note
2026-01-01 20:19:00 +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
850cbfe369
fix: route macOS remote config via gateway
2026-01-01 18:58:41 +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
c454f7ac0d
fix: detect bun relay assets
2026-01-01 18:30:16 +01:00
Peter Steinberger
b5b47d7273
docs: update changelog
2026-01-01 17:24:42 +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
Peter Steinberger
4e00edf8a7
docs: update changelog for macOS rpath fix
2026-01-01 17:44:53 +01:00
Petter Blomberg
02d5c00873
macOS: move rpath configuration to build step for reliability
2026-01-01 17:44:39 +01:00
Petter Blomberg
17009d28cf
build: fix hardcoded dependency path for ElevenLabsKit
2026-01-01 17:43:27 +01:00
Peter Steinberger
325a6a4e02
docs: update changelog for chat duplicate fix
2026-01-01 17:42:30 +01:00
Marc Beaupre
b51b24955c
fix(chat): clear input immediately after send to prevent duplicate messages
...
Two issues were causing the input field to retain text after sending:
1. ChatComposer's NSViewRepresentable was skipping all updates while the
text view was first responder. Now it allows clearing (empty binding)
even during editing, only skipping other updates to avoid cursor jumps.
2. ChatViewModel cleared input after awaiting the network response, leaving
text visible during the round trip. Now clears immediately after capturing
the message content, before the async send.
Together these prevent users from accidentally re-sending messages when
the input appeared unchanged after pressing Enter.
2026-01-01 17:42:05 +01:00
Peter Steinberger
a954aaa507
docs: thank contributor for macOS device resource fix
2026-01-01 17:39:54 +01:00
Petter Blomberg
ad475239a5
fix(macos): prioritize main bundle for device resources to prevent crash
2026-01-01 17:39:33 +01:00
Peter Steinberger
5e280674f9
docs: require Xcode 26.2+
2026-01-01 17:38:16 +01:00
Petter Blomberg
6cdfd143b0
docs: add macOS developer setup and troubleshooting guides
2026-01-01 17:37:19 +01: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
2401abe17e
docs: update changelog for codesign fix
2026-01-01 17:30:22 +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
William Stock
7366b55b14
docs: Add manual OAuth setup for remote/headless deployments
...
Expand "Remote mode note" section with:
- Exact oauth.json format required (access, refresh, expires)
- Note that auto-import doesn't work with Claude Code credentials
- jq script to convert Claude Code credentials to Clawdis format
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-01 17:21:27 +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
5f990fb3a2
docs: note browser resiliency and reset
2026-01-01 16:15:17 +00:00
Peter Steinberger
538c1eb660
fix(browser): harden CDP readiness
2026-01-01 16:15:12 +00:00
Peter Steinberger
9f704d7aa7
docs: note macos app logging menu icon
2026-01-01 17:12:49 +01:00
Peter Steinberger
a5777300d8
fix(macos): add icon to app logging menu
2026-01-01 16:48:17 +01:00
Peter Steinberger
57e1362344
docs(signal): explain bot-number setup
2026-01-01 15:37:45 +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
Petter Blomberg
fe5e58af91
scripts: fix ad-hoc signing crashes and bash unbound variable error
2026-01-01 15:29:01 +01:00
Peter Steinberger
0a4c2f91f5
fix: add bottom padding to macos web chat
2026-01-01 13:20:27 +01:00
Peter Steinberger
5b33a7dcbe
fix: polish macos web chat composer
2026-01-01 12:49:05 +01:00
Peter Steinberger
c7e2b1230c
fix: make composer pill full-width
2026-01-01 12:18:18 +01:00
Peter Steinberger
bdf6a23de9
fix: polish web chat empty/error state
2026-01-01 11:40:11 +01:00
Peter Steinberger
1a539b9830
fix(macos): restore swift test build
2026-01-01 11:05:14 +01:00
Peter Steinberger
3addd3420b
fix: tidy web chat composer layout
2026-01-01 11:05:14 +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
20bc323963
docs: note nix support
2026-01-01 09:17:24 +01:00
Peter Steinberger
bcead5f0f4
fix: honor nix config overrides in mac app
2026-01-01 09:17:21 +01:00
Peter Steinberger
cf3049ae34
Merge pull request #40 from joshp123/upstream-preview-nix-2025-12-20
...
Nix mode support + macOS Info.plist template
2026-01-01 09:15:41 +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
Peter Steinberger
14e9077584
chore: add bench-model script
2026-01-01 08:59:31 +01:00
Peter Steinberger
43cf526b5f
docs: thank contributor for PR #64
2026-01-01 08:59:24 +01:00
Peter Steinberger
2d5c401d11
fix: prefer module bundle for device models
2026-01-01 08:58:54 +01:00
Peter Steinberger
78cf68549f
Merge pull request #64 from mbelinky/fix-instances-crash
...
Fix Instances crash by bundling device model resources
2026-01-01 08:58:35 +01:00
Peter Steinberger
dececccd8e
docs: thank contributor for PR #65
2026-01-01 08:55:51 +01:00
Mariano Belinky
941ad27551
Bundle Control UI in Mac app
2026-01-01 08:55:09 +01:00
Peter Steinberger
24e95ab38e
docs: update changelog for PR #66
2026-01-01 08:37:49 +01:00
Mariano Belinky
c4de0b8255
Use user home for pnpm path
2026-01-01 08:35:54 +01:00
Peter Steinberger
7baaca4a76
docs: add model latency bench notes
2025-12-31 22:39:42 +01:00
Mariano Belinky
ea248f6743
Fix device model resources for Instances
2025-12-31 16:45:35 +01:00
Peter Steinberger
f03605d8ae
test: add minimax live test
2025-12-31 16:31:23 +01:00
Peter Steinberger
0babf08926
chore: add mac app logging coverage
2025-12-31 16:28:51 +01:00
Peter Steinberger
6517b05abe
feat: add swift-log app logging controls
2025-12-31 16:03:18 +01:00
Peter Steinberger
fa91b5fd03
docs: update changelog for Android chat bubble
2025-12-31 12:50:34 +01:00
Manuel Jiménez Torres
f831ccfc63
fix(android): wrong text color in user chat bubbles
2025-12-31 12:48:59 +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
4bdc25d072
docs: link Anthropic OAuth setup
2025-12-31 11:35:42 +01:00
Peter Steinberger
2f55abace2
fix: add brew installer for ordercli skill
2025-12-31 04:52:40 +01:00
Peter Steinberger
3213e5df2d
feat: add gifgrep skill
2025-12-31 04:52:37 +01:00
Peter Steinberger
7e40147aa3
fix: gate web chat/talk on mobile nodes
2025-12-30 22:05:17 +01:00
Peter Steinberger
a2a26b26fb
fix: satisfy swiftformat in chat view
2025-12-30 20:41:12 +01:00
Peter Steinberger
b3cf07d6cb
feat: add ui theme toggle
2025-12-30 20:25:58 +01:00
Peter Steinberger
ed76cd7574
fix: restore talk orb hit testing
2025-12-30 20:25:52 +01:00
Peter Steinberger
01b8a71ee6
docs: clarify browser wait guidance
2025-12-30 19:22:38 +00:00
Peter Steinberger
cc86bbf27d
feat: add food-order skill
2025-12-30 15:43:13 +01:00
Peter Steinberger
42cbb11de8
build: update a2ui bundle
2025-12-30 14:43:34 +01:00
Peter Steinberger
52303e8eda
docs: update changelog for status pill
2025-12-30 14:39:33 +01:00
Peter Steinberger
cf903be4a7
fix: avoid duplicate gateway reconnecting pill
2025-12-30 14:37:59 +01:00
Peter Steinberger
6306786645
fix: allow mp3 fallback result
2025-12-30 14:35:53 +01:00
Peter Steinberger
d7b267843e
fix: fallback mp3 when pcm blocked
2025-12-30 14:32:47 +01:00
Peter Steinberger
3aefe375c1
chore: update deps and add control ui routing tests
2025-12-30 14:30:46 +01:00
Peter Steinberger
3d6cc435ef
fix: hop audio to main actor
2025-12-30 14:22:03 +01:00
Peter Steinberger
973bd3a427
fix: improve talk overlay input + drag
2025-12-30 14:18:51 +01:00
Peter Steinberger
7d1ec51df5
fix: modernize chat scroll position
2025-12-30 13:52:12 +01:00
Peter Steinberger
9fb74399c8
refactor: inject audio players
2025-12-30 13:46:14 +01:00
Peter Steinberger
bc0a6fffd1
fix: tighten macOS menu device rows
2025-12-30 13:31:11 +01:00
Peter Steinberger
fa85dd6527
docs: note macOS menu layout
2025-12-30 12:57:10 +01:00
Peter Steinberger
73d595eecc
chore: sync local changes
2025-12-30 12:53:17 +01:00
Peter Steinberger
3bf8b9ccf4
fix: default android talk pcm_24000
2025-12-30 12:52:56 +01:00
Peter Steinberger
83262a67b1
refactor: extract elevenlabs kit
2025-12-30 12:48:09 +01:00
Peter Steinberger
66952a682d
test: add pcm streaming smoke
2025-12-30 12:27:06 +01:00
Peter Steinberger
9df22c0093
fix: address talk streaming build
2025-12-30 12:20:32 +01:00
Peter Steinberger
27adfb76fa
fix: stream elevenlabs tts playback
2025-12-30 12:17:40 +01:00
Peter Steinberger
9c532eac07
feat(talk): pause + drag overlay orb
2025-12-30 11:37:52 +01:00
Peter Steinberger
2814815312
feat: add talk voice alias map
2025-12-30 11:35:29 +01:00
Peter Steinberger
ab27586674
test: cover external chat completion
2025-12-30 11:23:45 +01:00
Peter Steinberger
2749c5cac3
fix: clear external streaming bubbles
2025-12-30 11:21:57 +01:00
Peter Steinberger
715cf311df
fix(ui): move mac talk orb to corner
2025-12-30 11:20:14 +01:00
Peter Steinberger
312443235d
fix(ios): unblock device builds
2025-12-30 11:16:15 +01:00
Peter Steinberger
0d95d63258
fix(macos): await-safe session key selection
2025-12-30 11:07:34 +01:00
Peter Steinberger
f86772f26c
fix(talk): harden TTS + add system fallback
2025-12-30 07:40:02 +01:00
Peter Steinberger
a7617e4d79
fix(ui): refine talk overlays
2025-12-30 06:47:35 +01:00
Peter Steinberger
7612a83fa2
fix(talk): align sessions and chat UI
2025-12-30 06:47:19 +01:00
Peter Steinberger
afbd18e8df
fix(talk): harden playback, interrupts, and timeouts
2025-12-30 06:05:43 +01:00
Peter Steinberger
be2bc61d38
fix(talk): hard-timeout ElevenLabs synthesis
2025-12-30 05:46:47 +01:00
Peter Steinberger
dcee8beb99
style: biome format gateway server tests
2025-12-30 05:34:53 +01:00
Peter Steinberger
fb8f72d5a9
feat(ui): add centered talk orb
2025-12-30 05:27:29 +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
05efc3eace
fix: avoid iOS talk mode audio tap crash
2025-12-30 04:52:57 +01:00
Peter Steinberger
24f8ff7548
chore(protocol): regenerate Swift gateway models
2025-12-30 04:42:08 +01:00
Peter Steinberger
c0c6782a17
fix(android): stabilize BridgeSession shutdown
2025-12-30 04:42:02 +01:00
Peter Steinberger
d2ac672f47
feat: add ui.seamColor accent
2025-12-30 04:14:36 +01:00
Peter Steinberger
e3d8d5f300
fix(macos): prevent Talk Mode audio hang
2025-12-30 04:14:16 +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
5c7c1af44e
fix: android talk timestamp parsing
2025-12-30 02:05:14 +01:00
Peter Steinberger
e119a82334
feat: talk mode key distribution and tts polling
2025-12-30 01:57:58 +01:00
Peter Steinberger
02db68aa67
fix(macos): hide Restart Gateway when remote
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
7aabe73521
chore: sync pending changes
2025-12-30 00:59:30 +01:00
Peter Steinberger
37f85bb2d1
fix: expand talk overlay bounds
2025-12-30 00:58:58 +01:00
Peter Steinberger
39fccc3699
fix: talk overlay + elevenlabs defaults
2025-12-30 00:51:17 +01:00
Peter Steinberger
53eccc1c1e
fix: wire talk menu + mac build
2025-12-30 00:17:10 +01:00
Peter Steinberger
c56292a6ec
feat: move talk mode to overlay button
2025-12-30 00:01:21 +01:00
Peter Steinberger
857cd6a28a
fix: align ios lint and android build
2025-12-29 23:45:58 +01:00
Peter Steinberger
303954ae8c
feat: extend status activity indicators
2025-12-29 23:42:22 +01:00
Peter Steinberger
3c338d1858
fix: adjust android talk parser for kotlin json
2025-12-29 23:26:38 +01:00
Peter Steinberger
20d7882033
feat: add talk mode across nodes
2025-12-29 23:21:05 +01:00
Peter Steinberger
6927b0fb8d
fix: align camera payload caps
2025-12-29 23:20:55 +01:00
Peter Steinberger
6e83f95c83
fix: clamp tool images to 5MB
2025-12-29 22:13:39 +00:00
Peter Steinberger
8f0c8a6561
fix: cap camera snap payload size
2025-12-29 23:12:20 +01:00
Peter Steinberger
a61b7056d5
feat: surface camera activity in status pill
2025-12-29 23:12:03 +01:00
Peter Steinberger
f41ade9417
feat(skills): add obsidian skill
2025-12-29 22:51:42 +01:00
Peter Steinberger
b0396e196f
fix: refresh bridge tokens and enrich node settings
2025-12-29 22:11:12 +01:00
Peter Steinberger
cf42fabfd8
test: add ios swift testing + android kotest
2025-12-29 21:10:44 +01:00
Peter Steinberger
52263bd5a3
fix: avoid cli gateway close race
2025-12-29 20:45:50 +01:00
Peter Steinberger
24151a2028
fix: mark screen recorder sendable
2025-12-29 20:28:06 +01:00
Peter Steinberger
c11e2d9e5e
fix: avoid self capture in ReplayKit start
2025-12-29 20:26:49 +01:00
Peter Steinberger
a8c9b2810b
fix: align ReplayKit stopCapture call
2025-12-29 20:25:44 +01:00
Peter Steinberger
7a849ab7d1
fix: isolate ReplayKit capture state
2025-12-29 20:24:34 +01:00
Peter Steinberger
c14d738d37
fix: avoid screen recorder data races
2025-12-29 20:22:26 +01:00
Peter Steinberger
65478a6ff3
fix: avoid main-actor stopCapture error
2025-12-29 20:20:14 +01:00
Peter Steinberger
41be9232fe
fix: prevent iOS screen capture crash
2025-12-29 20:10:36 +01:00
Peter Steinberger
653932e50d
fix: show connected nodes only
2025-12-29 18:35:52 +01:00
Peter Steinberger
09ef991e1a
chore: harden restart script
2025-12-29 18:09:27 +01:00
Josh Palmer
0f7029583c
macOS: load device models from bundle resources
2025-12-29 17:49:13 +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
1d8b47785c
feat(macos): add current TeamID to Peekaboo allowlist
...
Problem: The bridge only accepts the upstream TeamID, so packaged builds signed locally (Nix/CI) can’t use the bridge even though they are the same app.
Fix: Include the running app’s TeamID (from its code signature) in the allowlist.
Safety: TeamID gating remains; this just adds the app’s own TeamID to preserve permissions/automation in reproducible installs.
2025-12-29 17:49:13 +01:00
Josh Palmer
ced271bec1
chore(macos): harden mktemp templates in codesign
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
aa2700ffa7
chore: set ios signing team for device builds
2025-12-29 17:38:21 +01:00
Peter Steinberger
510e2a1d17
fix: menu devices list
2025-12-29 17:31:23 +01:00
Peter Steinberger
ebfe55f909
fix: enable canvas webview scrolling on mobile nodes
2025-12-29 17:13:31 +01:00
Peter Steinberger
26fa9dea97
chore: bump version to 2.0.0-beta5
2025-12-28 14:38:48 +00: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
2b5f3f1361
docs: clarify watchdog reconnect note
2025-12-28 12:05:06 +00:00
Peter Steinberger
eb158545fc
fix: force web reconnect on stalled close
2025-12-28 12:04:20 +00:00
Peter Steinberger
cade7b1132
docs: clarify gateway readiness in changelog
2025-12-28 10:30:40 +00:00
Peter Steinberger
d529736597
fix(macos): fully stop Voice Wake runtime when disabled
2025-12-28 10:17:30 +00:00
Peter Steinberger
8dfc031c4d
fix: start gateway before control channel
2025-12-28 09:24:43 +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
a61c27c4d0
fix: correct beta3 appcast URL
2025-12-27 20:00:08 +01:00
Peter Steinberger
e5cae2a2e4
chore: release 2.0.0-beta4
2025-12-27 19:43:43 +01:00
Peter Steinberger
7f961237f9
chore: harden release checks
2025-12-27 19:35:39 +01:00
Peter Steinberger
69a6538567
docs: note notarytool profile
2025-12-27 19:24:24 +01:00
Peter Steinberger
5b3c18ab84
chore: release 2.0.0-beta3
2025-12-27 19:02:35 +01:00
Peter Steinberger
907371453d
fix(macos): soften light mode usage bar track
2025-12-27 14:05:36 +01:00
Peter Steinberger
81abffd145
fix(macos): boost light mode usage bar contrast
2025-12-27 14:03:45 +01:00
Peter Steinberger
44ef8fe5c8
fix(macos): refresh sessions on menu open
2025-12-27 13:49:03 +01: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
7ce0140c81
docs: update changelog
2025-12-27 03:21:25 +01:00
Peter Steinberger
12b3034921
chore(canvas): update a2ui bundle hash
2025-12-27 03:21:20 +01:00
Peter Steinberger
ec482ac867
fix(macos): tighten chat window chrome
2025-12-27 03:21:14 +01:00
Peter Steinberger
ae52fb7a01
fix(macos): relax chat window min size
2025-12-27 02:55:24 +01:00
Peter Steinberger
e8ff08e121
fix(macos): round chat window chrome
2025-12-27 02:51:59 +01:00
Peter Steinberger
cc8e104cd6
fix(macos): enforce chat window default size
2025-12-27 02:43:50 +01:00
Peter Steinberger
5919a277bb
fix(macos): stabilize menu width tracking
2025-12-27 02:43:50 +01:00
Peter Steinberger
96911d7790
fix: enqueue system event on model switch
2025-12-27 01:17:12 +00:00
Peter Steinberger
acd3f7dba7
fix(macos): lock menu width on hover
2025-12-27 01:50:25 +01:00
Peter Steinberger
8aff3979db
docs: add local lmstudio setup
2025-12-27 00:48:19 +00:00
Peter Steinberger
eafcd862be
chore: update protocol models
2025-12-27 01:45:58 +01: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
67b9a675f5
fix(macos): allow http loads in canvas webview
2025-12-27 00:20:58 +01:00
Peter Steinberger
fae11e5a55
fix(gateway): advertise reachable canvas host
2025-12-27 00:07:19 +01:00
Peter Steinberger
4daf75a469
fix(macos): enforce node bridge timeouts
2025-12-27 00:02:41 +01:00
Peter Steinberger
d0293649cd
fix(macos): refresh menu sessions without resizing
2025-12-26 22:48:58 +01:00
Peter Steinberger
353366ac54
fix(macos): expand highlighted menu rows to full width
2025-12-26 22:41:29 +01:00
Peter Steinberger
1a8ffebb00
fix(macos): stabilize menu row width
2025-12-26 22:34:18 +01:00
Peter Steinberger
5ffbddcc57
feat(mac): add allow camera toggle
2025-12-26 21:33:22 +00:00
Peter Steinberger
5fbcbe7e52
feat(mac): add discord connections UI
2025-12-26 21:33:22 +00:00
Peter Steinberger
7daa93cf5a
fix(macos): expand menu hover highlight width
2025-12-26 22:30:29 +01:00
Peter Steinberger
9e32f29d19
test: organize heartbeat test imports
2025-12-26 21:29:49 +00:00
Peter Steinberger
1f25e38c2d
fix(macos): keep menu width stable while open
2025-12-26 22:27:24 +01:00
Peter Steinberger
c10a386d17
fix(macos): detect and reset stale SSH tunnels
2025-12-26 22:12:33 +01:00
Peter Steinberger
a13db82d28
fix(nodes): improve version reporting
2025-12-26 21:45:00 +01:00
Peter Steinberger
ec392dc870
feat(mac): add node ssh and compact versions
2025-12-26 20:42:49 +00:00
Peter Steinberger
90d00fb095
fix(mac): reorder menu toggles
2025-12-26 20:42:45 +00:00
Peter Steinberger
e336b7f27e
fix: use final heartbeat payload
2025-12-26 20:39:20 +00:00
Peter Steinberger
7f4c992dd7
fix(mac): move action group below toggles
2025-12-26 20:31:37 +00:00
Peter Steinberger
ba1626a5b9
fix(ios): accept truthy A2UI ready check
2025-12-26 21:17:37 +01:00
Peter Steinberger
ab73c40bfe
fix(mac): refine node submenu copy behavior
2025-12-26 20:05:23 +00:00
Peter Steinberger
4016bc2416
fix(a2ui): center empty canvas text
2025-12-26 20:43:45 +01:00
Peter Steinberger
9302daadc1
fix(mac): align node details
2025-12-26 19:32:48 +00:00
Peter Steinberger
de7429e148
fix(mac): show node versions in menu
2025-12-26 19:25:28 +00:00
Peter Steinberger
5892bd45d8
fix(mac): tweak menu icons
2025-12-26 19:23:53 +00:00
Peter Steinberger
9317eccfc8
fix(mac): regroup menubar sections
2025-12-26 19:18:12 +00:00
Peter Steinberger
1236c4dafb
refactor: make browser actions ref-only
2025-12-26 19:02:27 +00:00
Peter Steinberger
f50f18f65a
feat(mac): refine menubar nodes layout
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
f4d41ef254
chore(ios): auto team id fallback
2025-12-26 18:19:48 +01:00
Peter Steinberger
b9d80aa535
chore(ios): add team id helper
2025-12-26 18:16:13 +01:00
Peter Steinberger
2f8213ca9a
fix(a2ui): skip bundle when inputs unchanged
2025-12-26 18:11:00 +01:00
Peter Steinberger
541b8cbb6c
fix(ios): silence device build warnings
2025-12-26 18:09:44 +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
15dbac8193
docs: update beta3 changelog
2025-12-26 17:21:29 +01:00
Peter Steinberger
2119854246
build: skip a2ui bundling in build
2025-12-26 16:00:35 +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
Peter Steinberger
e9f1851c5d
chore: ignore bun build artifacts
2025-12-26 13:20:30 +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
54de5ad3fa
test: isolate vitest home
2025-12-26 11:45:16 +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
4611e799b7
docs: note inbox listener cleanup
2025-12-26 09:37:38 +00: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
8059e83c49
chore: bump pi-mono deps
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
meaningfool
ea6dc7c710
fix: correctly define pnpm workspace and clean up vite build scripts
...
This change adds the missing 'packages' definition to pnpm-workspace.yaml, allowing pnpm to correctly install dependencies for the 'ui' sub-package. This resolves the 'vite: command not found' error during 'ui:build'. It also reverts the temporary 'pnpm dlx' workarounds in ui/package.json.
2025-12-26 09:13:17 +01:00
Peter Steinberger
cd81348ca5
chore: fix env spread lint
2025-12-26 02:02:49 +00:00
Peter Steinberger
ad91a09b07
ci: avoid macos runner queue
2025-12-26 02:02:49 +00:00
Peter Steinberger
040f73a3f4
docs: clarify heartbeat defaults
2025-12-26 03:02:11 +01: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
72267e97ca
docs: note hour durations
2025-12-26 01:36:08 +01: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
97539db36d
ci: skip ios job
2025-12-26 00:04:46 +00:00
Peter Steinberger
655fa5b8e0
style: fix pi embedded runner lint
2025-12-25 23:58:37 +00:00
Peter Steinberger
9fbd3cc16f
ci: ignore ios failures
2025-12-25 23:55:55 +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
9fa9199747
docs: note multi-agent session rule
2025-12-25 23:50:46 +01:00
Peter Steinberger
1cd167a59a
ci: run on node 24
2025-12-25 23:05:09 +01:00
Peter Steinberger
2868dc975c
chore: require node >=22.12 and fix swiftformat lint
2025-12-25 23:02:31 +01:00
meaningfool
214ab16eb2
fix: correctly define pnpm workspace and clean up vite build scripts
...
This change adds the missing 'packages' definition to pnpm-workspace.yaml, allowing pnpm to correctly install dependencies for the 'ui' sub-package. This resolves the 'vite: command not found' error during 'ui:build'. It also reverts the temporary 'pnpm dlx' workarounds in ui/package.json.
2025-12-25 22:52:22 +01:00
Peter Steinberger
1c88d9575e
fix(webchat): refresh bubbles on theme change
2025-12-25 22:35:46 +01:00
Peter Steinberger
1e4e02ddd3
docs: update beta3 changelog
2025-12-25 21:15:45 +00: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
c9c7354009
chore: add gateway:watch
2025-12-25 18:44:23 +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
b549307ccf
docs: add Sparkle HTML release notes
2025-12-25 04:27:20 +01:00
Peter Steinberger
57090d4f8d
fix: align chat scroll anchor
2025-12-25 04:10:47 +01: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
2442186a31
fix: silence view warnings
2025-12-25 03:23:31 +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
dc93350e0a
docs: add background bash changelog
2025-12-25 00:54:08 +00:00
Peter Steinberger
3c6432da1f
feat: add background bash sessions
2025-12-25 00:25:11 +00:00
Peter Steinberger
4eecb6841a
docs: add gmail hook quickstart
2025-12-24 22:59:09 +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
3bb5baa6d2
fix: default tailscale serve in settings
2025-12-24 22:09:23 +00:00
Peter Steinberger
59443d7ec6
style: format reply changes
2025-12-24 23:06:20 +01:00
Peter Steinberger
c1d170e13d
docs: note tailscale gmail path behavior
2025-12-24 21:56:21 +00: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
1b69c94f76
docs: clarify reply threading change
2025-12-24 22:37:32 +01: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
8f934bf817
docs: update file size guidance
2025-12-24 22:19:10 +01:00
Peter Steinberger
88be2701f4
refactor: split utilities
2025-12-24 22:16:06 +01:00
Peter Steinberger
8ee62f0ac8
style: format locator selector
2025-12-24 21:49:31 +01:00
Peter Steinberger
4d4308af78
fix: resolve coverage profile symbol at runtime
2025-12-24 21:43:46 +01:00
Peter Steinberger
f7c5eff35e
docs: link webhook docs
2025-12-24 20:07:24 +00:00
Peter Steinberger
3bc1644f34
refactor: split canvas window
2025-12-24 21:04:52 +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
337390b590
fix: allow overlay present access
2025-12-24 20:24:37 +01:00
Peter Steinberger
836d950e05
fix: restore voice wake overlay build
2025-12-24 20:17:01 +01:00
Peter Steinberger
ad096f77fc
refactor: split voice wake overlay
2025-12-24 20:09:56 +01:00
Peter Steinberger
3774494f7e
test: add ios coverage tests
2025-12-24 20:00:51 +01:00
Peter Steinberger
14fae5af9e
test: add ios coverage hooks
2025-12-24 20:00:45 +01:00
Peter Steinberger
65b48561a9
refactor: split critter status label
2025-12-24 19:56:24 +01:00
Peter Steinberger
842dc14c18
style: format port guardian
2025-12-24 19:41:32 +01:00
Peter Steinberger
af1afa7ba6
style: format cron settings
2025-12-24 19:40:11 +01:00
Peter Steinberger
8c4c5e524b
refactor: split cron settings
2025-12-24 19:36:10 +01:00
Peter Steinberger
204bd7d2c4
test: add mac coverage helpers
2025-12-24 19:29:44 +01:00
Peter Steinberger
f44014ff00
refactor: split onboarding view
2025-12-24 19:29:27 +01:00
Peter Steinberger
01719b02e2
test: cover bridge settings discovery
2025-12-24 18:07:41 +01:00
Peter Steinberger
4ba86bbe00
test: cover bridge hello defaults
2025-12-24 18:07:38 +01:00
Peter Steinberger
b85503b3b2
fix: guard hook payload strings
2025-12-24 17:49:52 +01:00
Peter Steinberger
131a9aa1ac
style: format macos sources
2025-12-24 17:47:35 +01:00
Peter Steinberger
bd223606b1
style: format gateway server
2025-12-24 17:45:39 +01:00
Peter Steinberger
f4fb80e523
test: expand overlay coverage
2025-12-24 17:43:30 +01:00
Peter Steinberger
49e466dd40
test: expand menu and node coverage
2025-12-24 17:43:30 +01:00
Peter Steinberger
deec315f6a
test: expand settings coverage
2025-12-24 17:43:30 +01:00
Peter Steinberger
7fafe54e16
test: expand onboarding coverage
2025-12-24 17:43:30 +01:00
Peter Steinberger
bdcbc829a0
test: add coverage flush helper
2025-12-24 17:43:30 +01:00
Peter Steinberger
4a64e86ecb
chore: update changelog
2025-12-24 14:39:26 +00: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
aa62ac4042
fix: use recognition update segments
2025-12-24 15:27:06 +01:00
Peter Steinberger
e8f24910bd
style: swiftformat chat ui
2025-12-24 15:10:31 +01:00
Peter Steinberger
8d34e54dc5
fix: address swiftlint warnings
2025-12-24 15:10:22 +01:00
Peter Steinberger
c5ede3f167
build: align Commander dependency
2025-12-24 14:44:56 +01:00
Peter Steinberger
1cd108e891
fix: clear wake word match warning
2025-12-24 14:44:50 +01:00
Peter Steinberger
8878fd3028
ui: merge tool call results
2025-12-24 14:38:43 +01:00
Peter Steinberger
a22d4e7962
fix: import AnyCodable for tool cards
2025-12-24 14:35:06 +01:00
Peter Steinberger
25d2d7389f
ui: render tool call cards
2025-12-24 14:29:40 +01:00
Peter Steinberger
816b784399
ui: constrain typing indicator width
2025-12-24 14:10:32 +01:00
Peter Steinberger
c250f092bb
test: cover overlay level throttling
2025-12-24 13:54:03 +01:00
Peter Steinberger
b9c2bdf641
docs: update changelog
2025-12-24 13:52:41 +01:00
Peter Steinberger
5ba90db049
perf: throttle voice overlay updates
2025-12-24 13:51:41 +01:00
Peter Steinberger
88d20c5419
perf: gate idle pulse animations
2025-12-24 13:51:40 +01:00
Peter Steinberger
e158bee95f
perf: reduce chat animation churn
2025-12-24 13:51:40 +01: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
96da2efb13
style: swiftformat gateway process manager
2025-12-24 00:33:40 +00:00
Peter Steinberger
267cdf20e1
style: fix biome lint
2025-12-24 00:33:35 +00:00
Peter Steinberger
20c7df35c4
docs: note config refactor
2025-12-24 00:24:05 +00:00
Peter Steinberger
0f06e9926b
docs: update routing/messages/session config
2025-12-24 00:22:57 +00:00
Peter Steinberger
93af424ce5
refactor: move inbound config
2025-12-24 00:22:52 +00:00
Peter Steinberger
5e07400cd1
refactor: update macOS config paths
2025-12-23 23:45:27 +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
25e6339e2e
chore: bump pi-mono deps
2025-12-23 14:07:54 +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
facfd64787
fix: avoid spawning duplicate gateway when external listener exists
2025-12-23 12:43:51 +00:00
Peter Steinberger
760a83d256
docs: add offline memory system proposal
2025-12-23 13:36:59 +01:00
Peter Steinberger
bbff19698b
chore: flatten provider console subsystems
2025-12-23 11:27:14 +00:00
Peter Steinberger
6f38cb162c
chore: bump internal version to beta3
2025-12-23 04:28:09 +01:00
Peter Steinberger
af82224f82
fix: relax Sparkle delegate isolation
2025-12-23 03:36:56 +01:00
Peter Steinberger
a938e9473b
fix: isolate Sparkle delegate conformance
2025-12-23 03:28:39 +01:00
Peter Steinberger
3e88553d52
fix: isolate updater factory on main actor
2025-12-23 03:16:47 +01: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
fc4a395c88
chore: update gateway protocol models
2025-12-23 03:05:04 +01:00
Peter Steinberger
de1813ab32
docs: add beta3 changelog
2025-12-23 03:02:30 +01:00
Peter Steinberger
89ace66972
style: format macOS sources
2025-12-23 03:02:09 +01:00
Peter Steinberger
63f1857bda
docs: add WhatsApp integration guide
2025-12-23 03:00:27 +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
6fad79f581
docs: document custom model providers
2025-12-23 02:48:57 +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
Tu Nombre Real
8431874b15
fix(macOS): remove redundant kickstart -k causing gateway restart loop
...
The launchd bootstrap already starts the gateway job. The subsequent
kickstart -k was killing it immediately after startup, and combined
with KeepAlive=true, this caused a port-conflict restart loop where
launchd would try to restart while the old instance was still
shutting down.
Symptoms: 'Bootstrap failed: 5: Input/output error' and repeated
'Gateway failed to start: another gateway instance is already
listening' messages in the log.
2025-12-23 01:57:54 +01:00
Peter Steinberger
54d2ccda99
feat(mac): surface update-ready state
2025-12-23 01:42:33 +01:00
Peter Steinberger
926b6d9464
chore: format wake gate + chat theme
2025-12-23 01:41:13 +01:00
Peter Steinberger
abfb6832c3
fix(mac): default session menu checks
2025-12-23 01:36:01 +01:00
Peter Steinberger
ceeea359fc
chore: remove shared build artifacts
2025-12-23 01:32:02 +01:00
Peter Steinberger
ef35868bef
feat: share wake gate via SwabbleKit
2025-12-23 01:31:59 +01:00
Peter Steinberger
cf48d297dd
docs: explain tool exposure in pi-mono
2025-12-23 00:29:38 +00:00
Peter Steinberger
2b20e3d2b0
chore: resolve docs list from cwd
2025-12-23 00:28:55 +00:00
Peter Steinberger
918cbdcf03
refactor: lint cleanups and helpers
2025-12-23 00:28:55 +00:00
Peter Steinberger
f5837dff9c
chore: add oxlint type-aware lint
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
823195a122
style(mac): increase session row padding
2025-12-23 00:10:38 +01:00
Peter Steinberger
581583abb4
fix(mac): drop syncing menu + show state checks
2025-12-23 00:10:38 +01:00
Peter Steinberger
882fd48408
style: add visual effect host for chat
2025-12-23 00:10:38 +01:00
Peter Steinberger
91238df13f
chore: alias console subsystem names
2025-12-22 23:06:15 +00:00
Peter Steinberger
ca806897c2
Template: Add smart heartbeat logic for baby agents
...
- Added heartbeat section with proactive check guidelines
- Includes email, calendar, weather, mentions rotation
- Track checks in heartbeat-state.json
- Know when to reach out vs stay quiet
- Proactive work suggestions (memory, git, docs)
Goal: Baby agents should check in 2-4x daily, not just HEARTBEAT_OK
2025-12-22 22:55:27 +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
6205b955da
style(mac): adjust session row padding and menu options
2025-12-22 23:30:25 +01:00
Peter Steinberger
d265a04b19
style(mac): pad session rows + thicken bars
2025-12-22 23:22:36 +01:00
Peter Steinberger
afc09744b4
fix(mac): size highlighted session rows
2025-12-22 22:59:59 +01:00
Peter Steinberger
1e1d76d600
fix(mac): restore sessions bars with injected submenus
2025-12-22 22:49:37 +01:00
Peter Steinberger
0b70aa0c56
fix(mac): hide sessions header when disconnected
2025-12-22 22:09:26 +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
469c8a1a4b
fix(mac): show disconnected sessions + sleeping eyes
2025-12-22 21:13:33 +01:00
Peter Steinberger
9d47b15575
fix(mac): sessions error UI + sleeping icon
2025-12-22 21:02:45 +01:00
Peter Steinberger
a11a204b8e
chore(submodules): bump Peekaboo
2025-12-22 19:44:48 +00:00
Peter Steinberger
e3c3d108fe
refactor(logging): shorten subsystem prefixes
2025-12-22 19:42:22 +00:00
Peter Steinberger
8cadb5cf18
docs: update group chat commands
2025-12-22 20:36:34 +01:00
Peter Steinberger
f10c8f2b4c
feat: add group activation command
2025-12-22 20:36:29 +01:00
Peter Steinberger
5d2d701e1e
docs: note mac studio session log location
2025-12-22 20:26:23 +01:00
Peter Steinberger
f24d8473b1
fix(mac): restore session usage bar
2025-12-22 20:14:54 +01:00
Peter Steinberger
3412ff7003
style: add macos chat glass background
2025-12-22 19:55:17 +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
19b847b23b
style: tighten macos chat composer
2025-12-22 19:08:23 +01:00
Peter Steinberger
3b134c8fef
style: tighten chat compose spacing
2025-12-22 19:01:58 +01:00
Peter Steinberger
c872f37aae
fix: remove redundant await in CanvasManager
2025-12-22 18:53:14 +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
b06d1ed072
docs(logging): clarify console color behavior
2025-12-21 17:36:30 +00:00
Peter Steinberger
52e7a4456a
refactor(logging): streamline whatsapp console output
2025-12-21 17:36:24 +00:00
Peter Steinberger
f1202ff152
chore: fix lint + build
2025-12-21 15:58:37 +01:00
Peter Steinberger
e4db7cbd2b
chore: bump Peekaboo submodule
2025-12-21 15:57:09 +01: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
6c2f9b3150
chore: update Peekaboo submodule
2025-12-21 14:50:28 +01:00
Peter Steinberger
a808cdce13
fix(android): drop duplicate scaffold asset
2025-12-21 14:50:28 +01: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
bcd3c13e2c
feat(macos): surface canvas debug status
2025-12-21 14:21:06 +01:00
Peter Steinberger
7932e966db
feat(android): toggle debug canvas status
2025-12-21 14:21:06 +01:00
Peter Steinberger
30d84643db
feat(ios): toggle debug canvas status
2025-12-21 14:21:06 +01:00
Peter Steinberger
264c91e620
feat(canvas): gate debug status overlay
2025-12-21 14:21:06 +01:00
Peter Steinberger
db89be4106
chore: update peekaboo submodule
2025-12-21 13:10:20 +00:00
Peter Steinberger
85816a5ee2
fix(cli): hint peekaboo unauthorized
2025-12-21 13:09:48 +00:00
Peter Steinberger
5449e44381
chore: bump Peekaboo submodule
2025-12-21 14:01:28 +01:00
Peter Steinberger
20630b8744
chore: bump Peekaboo + menu cleanup
2025-12-21 13:59:41 +01:00
Peter Steinberger
3b63d1cb77
fix: auto-restart WhatsApp QR login
2025-12-21 13:36:26 +01:00
Peter Steinberger
5703b9e737
docs: clarify restart semantics
2025-12-21 12:47:18 +01:00
Peter Steinberger
02787b5674
build(mac): add notarize flow for release artifacts
2025-12-21 12:33:45 +01:00
Peter Steinberger
4021da524c
fix(chat-ui): avoid animated initial scroll
2025-12-21 12:33:41 +01:00
Peter Steinberger
5adec0eae0
fix: align canvas defaults and A2UI auto-nav
2025-12-21 12:32:36 +01:00
Peter Steinberger
3f44f0b753
ui: simplify dashboard health status
2025-12-21 12:31:56 +01:00
Peter Steinberger
2a975f751b
refactor(macos): regroup menu sections
2025-12-21 12:29:29 +01:00
Peter Steinberger
03bd049291
docs: refine header ctas for github pages
2025-12-21 12:29:29 +01:00
Peter Steinberger
6ddd36666e
feat(ui): make chat the landing view
2025-12-21 11:24:39 +00:00
Peter Steinberger
3791db006e
docs: add github/download buttons to pages header
2025-12-21 12:19:08 +01:00
Peter Steinberger
6bf8c0c17a
docs: note npm release pitfalls
2025-12-21 04:10:20 +01:00
Peter Steinberger
80e1934f4e
style: fix tailscale swiftformat
2025-12-21 03:52:28 +01:00
Peter Steinberger
7415fdb79b
chore: whitelist npm files
2025-12-21 03:48:23 +01:00
Peter Steinberger
b850b0dacf
ci: install swiftlint and swiftformat for ios
2025-12-21 03:44:18 +01:00
Peter Steinberger
04e3d0c2fe
style: swiftformat cleanup
2025-12-21 03:44:12 +01:00
Peter Steinberger
3810519671
chore: update appcast for 2.0.0-beta2
2025-12-21 03:29:03 +01:00
Peter Steinberger
a08c8ef1fa
chore: bump version to 2.0.0-beta2
2025-12-21 03:21:49 +01:00
Peter Steinberger
6496a288b8
fix: add A2UI inset vars
2025-12-21 03:21:49 +01:00
Peter Steinberger
9f72eb3374
docs: add canvas gutter guidance
2025-12-21 03:21:48 +01:00
Peter Steinberger
e71c71c6c2
fix: add canvas gutter vars for A2UI
2025-12-21 03:21:48 +01:00
Peter Steinberger
0197fb35fe
fix: clear canvas error banner on load
2025-12-21 03:21:48 +01:00
Peter Steinberger
bcc5891e03
fix(mac): allow tailscale localapi http
2025-12-21 02:17:55 +00:00
Peter Steinberger
f90ab3c4c2
fix(mac): trim onboarding checklist
2025-12-21 01:57:18 +00:00
Peter Steinberger
79280f3d93
fix(mac): tighten onboarding layout
2025-12-21 01:57:18 +00:00
Peter Steinberger
ce79d0b9a4
docs: add Peter tailnet/gateway notes
2025-12-21 02:55:32 +01:00
Peter Steinberger
a5b4a01594
fix(mac): shrink onboarding + respect existing workspace
2025-12-21 01:51:48 +00:00
Peter Steinberger
5b25eeb449
refactor(macos): remove manual identity onboarding
2025-12-21 01:39:50 +00:00
Peter Steinberger
fb259e8a50
fix(mac): shrink onboarding height
2025-12-21 01:35:27 +00: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
00cdcd4d28
fix(mac): guard onboarding workspace bootstrap
2025-12-21 01:31:31 +00:00
Peter Steinberger
4e1fe88195
Give workspace templates actual personality
...
- SOUL.md: Philosophy over bullet points, genuine vs performative help
- IDENTITY.md: Invites creativity, frames identity as discovery
- USER.md: Learning about a person, not building a dossier
- BOOTSTRAP.md: Conversational first-run, not robotic steps
- AGENTS.md: 'This folder is home' - clear, direct, practical
- TOOLS.md: Explains why separate from skills, real examples
New agents should boot with spark, not corporate drone energy. 🦞
2025-12-21 01:24:13 +00:00
Peter Steinberger
28ad475ab4
feat(mac): add tailscale settings
2025-12-21 01:16:49 +00:00
Peter Steinberger
104e265633
docs: clarify wacli usage
2025-12-21 02:14:52 +01:00
Peter Steinberger
382d237a60
build: silence mac packaging warnings
2025-12-21 02:06:12 +01:00
Peter Steinberger
de2fd659ab
fix(mac): shrink onboarding height
2025-12-21 00:57:11 +00:00
Peter Steinberger
d2fda411f3
docs: add 2.0.0-beta2 changelog
2025-12-21 01:54:27 +01:00
Peter Steinberger
e02944c323
docs: fix npmjs header image
2025-12-21 01:54:27 +01:00
Peter Steinberger
a01f4998c5
ci: split ios workflow
2025-12-21 00:49:20 +00:00
Peter Steinberger
aa198594fd
fix(mac): avoid buttonStyle ternary
2025-12-21 00:49:07 +00:00
Peter Steinberger
406a94bf76
fix: use A2UI message context
2025-12-21 01:48:21 +01:00
Peter Steinberger
fef1841fee
build: update iOS lint scripts
2025-12-21 01:48:21 +01:00
Peter Steinberger
1cb85fdea8
fix(mac): disambiguate skills install ForEach
2025-12-21 00:47:49 +00:00
Peter Steinberger
78263e81f1
fix(mac): restore skills install ForEach
2025-12-21 00:46:38 +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
fedb24caf1
fix(ui): stabilize skills action column
2025-12-21 00:37:29 +00:00
Peter Steinberger
6ff8371254
feat(ui): expand control dashboard
2025-12-21 00:34:39 +00:00
Peter Steinberger
7b6eaa819e
chore: ignore ClawdisKit .swiftpm
2025-12-21 01:10:06 +01:00
Peter Steinberger
e94aa296e2
feat: refine skills install actions
2025-12-21 01:07:35 +01: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
2b2f13ca79
fix: restore canvas action bridge
2025-12-21 01:07:35 +01:00
Peter Steinberger
78159a9435
fix(onboarding): nudge bottom padding
2025-12-20 23:52:45 +00:00
Peter Steinberger
b4af7b919e
fix(macos): simplify skills view and resize onboarding
2025-12-20 23:45:50 +00:00
Peter Steinberger
65056915d3
fix(onboarding): lift bottom bar
2025-12-20 23:36:24 +00: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
62f624b66b
fix(mac): re-ensure remote gateway tunnel
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
aae68e4f82
style(chatui): fix SwiftFormat warnings
2025-12-21 00:25:56 +01:00
Peter Steinberger
1d715d7b1b
chore(ios): link AppIntents framework
2025-12-21 00:24:24 +01:00
Peter Steinberger
1d7110ea8f
fix(onboarding): fit chat card
2025-12-20 23:15:35 +00:00
Peter Steinberger
80f70a58e3
fix(chat): refine onboarding bubbles
2025-12-20 23:15:29 +00:00
Peter Steinberger
f7aabeba04
chore(deps): update lockfile
2025-12-20 23:00:31 +00:00
Peter Steinberger
02f6cac9d6
style(chat): use integrated bubble tail
2025-12-20 23:00:21 +00: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
591120a7f7
chore(deps): update dependencies
2025-12-20 22:45:15 +00:00
Peter Steinberger
878f074494
chore(android): update kotlin compiler settings
2025-12-20 23:43:28 +01:00
Peter Steinberger
c1050da852
chore(android): update icons and platform config
2025-12-20 23:43:28 +01:00
Peter Steinberger
873daf079c
feat(web): emit provider status updates
2025-12-20 23:43:27 +01:00
Peter Steinberger
df9e4bdd63
chore(macos): tidy discovery and runtime
2025-12-20 23:43:27 +01:00
Peter Steinberger
43ba1671f1
feat(macos): add connections settings
...
# Conflicts:
# apps/macos/Sources/Clawdis/SettingsRootView.swift
2025-12-20 23:43:27 +01:00
Peter Steinberger
ce4b68d5fb
fix: pre-size menu context card
2025-12-20 23:43:27 +01:00
Peter Steinberger
8c18dd40a3
feat(macos): load models from gateway
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
dbc9b00de5
docs: improve oracle skill guidance
2025-12-20 23:41:07 +01:00
Peter Steinberger
b635e83651
chore(pi): bump deps, drop steerable transport
2025-12-20 22:38:12 +00:00
Peter Steinberger
7aeacdcc6c
style(settings): widen window
2025-12-20 22:23:15 +00:00
Peter Steinberger
16e4a0c4bd
style(onboarding): refine bubble tails
2025-12-20 22:23:06 +00:00
Peter Steinberger
d613800516
fix(onboarding): anchor bottom bar and reduce height
2025-12-20 22:16:13 +00:00
Peter Steinberger
94b89216f7
style(onboarding): add speech bubble tails
2025-12-20 22:08:01 +00:00
Peter Steinberger
153e09120a
style(onboarding): lower bottom row
2025-12-20 22:07:51 +00:00
Peter Steinberger
238c0c1b86
fix(onboarding): clearer bubbles and tighter composer
2025-12-20 22:03:24 +00:00
Peter Steinberger
98ff213708
style(onboarding): lower bottom controls
2025-12-20 22:03:13 +00:00
Peter Steinberger
8a2a07eddb
fix(macos): always show CLI installer
2025-12-20 22:00:51 +00:00
Peter Steinberger
9076d543f3
fix(onboarding): restore bubbles and spacing
2025-12-20 21:56:03 +00:00
Peter Steinberger
cd77dc9563
fix(onboarding): restore chat bubble styling
2025-12-20 21:47:43 +00:00
Peter Steinberger
9ccf80848d
style(onboarding): reduce window height
2025-12-20 21:33:56 +00:00
Peter Steinberger
78cb565dc2
docs: align canvas host port guidance
2025-12-20 22:28:35 +01:00
Peter Steinberger
6a30452b4a
fix: use bridge canvas host for nodes
2025-12-20 22:28:35 +01:00
Peter Steinberger
e53442d983
style(voicewake): widen label and clarify language
2025-12-20 21:14:46 +00:00
Peter Steinberger
bc079b29c3
fix(macos): fix skill install target access
2025-12-20 22:01:11 +01:00
Peter Steinberger
cd6addd742
chore(ci): swiftformat macos settings
2025-12-20 21:52:47 +01:00
Peter Steinberger
12d6e1cddd
feat(macos): choose skill install target
2025-12-20 21:52:42 +01:00
Peter Steinberger
28e5ebd72b
feat(macos): support gateway bind config
2025-12-20 21:52:19 +01:00
Peter Steinberger
e8106109e3
Merge remote-tracking branch 'origin/main'
2025-12-20 21:43:30 +01:00
Peter Steinberger
c71d5a8a77
docs: expand sag pronunciation rules
2025-12-20 21:43:03 +01:00
Peter Steinberger
d1d27a0bd6
style(onboarding): refine icon and bottom bar spacing
2025-12-20 20:24:18 +00:00
Peter Steinberger
ebb7428479
style(onboarding): nudge icon up
2025-12-20 20:19:18 +00:00
Peter Steinberger
3163a42f36
chore(skills): fix eightctl homepage
2025-12-20 21:18:40 +01:00
Peter Steinberger
35a25c3dc2
refactor(macos): collapse control channel status
2025-12-20 21:17:32 +01:00
Peter Steinberger
f34f374179
chore(macos): widen settings window
2025-12-20 21:17:29 +01:00
Peter Steinberger
aa330350fc
refactor(macos): simplify sessions header
2025-12-20 21:17:24 +01:00
Peter Steinberger
a2cf1f98d9
refactor(macos): move skills filter into header
2025-12-20 21:17:20 +01:00
Peter Steinberger
f84def1b60
chore(skills): add homepage metadata
2025-12-20 21:12:57 +01:00
Peter Steinberger
91d4c24078
refactor(macos): simplify skills list rows
2025-12-20 21:12:57 +01:00
Peter Steinberger
8fe0b72a04
fix: accept new ssh host keys
2025-12-20 21:06:39 +01:00
Peter Steinberger
2bcdf741f9
feat(cron): require job name
2025-12-20 19:56:49 +00:00
Peter Steinberger
9ae73e87eb
fix(onboarding): restore bottom bar padding
2025-12-20 19:50:30 +00:00
Peter Steinberger
77582ff5d4
refactor(macos): refresh skills settings layout
2025-12-20 20:49:32 +01:00
Peter Steinberger
52a2dfe08b
feat(onboarding): hide kickoff bubble and tweak typing
2025-12-20 19:46:06 +00:00
Peter Steinberger
09d2165d36
style(onboarding): lower welcome icon
2025-12-20 19:44:35 +00:00
Peter Steinberger
fb9c1f7e65
perf(dmg): shrink rw image before lzma convert
2025-12-20 19:44:26 +00:00
Peter Steinberger
abf05af474
chore(ci): format macos relay
2025-12-20 20:41:21 +01:00
Peter Steinberger
714ba2a58d
docs(macos): update bundled bun notes
2025-12-20 19:35:33 +00: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
44ffe41775
fix(macos): allow identity refresh off main actor
2025-12-20 20:32:04 +01:00
Peter Steinberger
2ca7c2629c
chore(ci): fix swiftformat lint
2025-12-20 20:32:04 +01:00
Josh Palmer
483c0e4cea
chore(ci): fix biome + swiftformat lint
2025-12-20 20:32:04 +01:00
Peter Steinberger
7d51bf0eb0
fix(macos): allow identity refresh off MainActor
2025-12-20 19:19:57 +00:00
Peter Steinberger
ab4457e2a3
fix(browser): allow control server without playwright
2025-12-20 19:16:56 +00:00
Peter Steinberger
1eb6d617f5
build(macos): bundle playwright in embedded gateway
2025-12-20 19:16:52 +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
750408d0a2
chore(deps): add chromium-bidi and long
2025-12-20 19:16:41 +00:00
Peter Steinberger
a44a313f77
test: cover ssh autofill helpers
2025-12-20 19:53:15 +01:00
Peter Steinberger
d159602928
refactor: centralize gateway parsing
2025-12-20 19:53:08 +01: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
c38aeb1081
fix: resolve bonjour txt for ssh autofill
2025-12-20 19:28:40 +01:00
Peter Steinberger
35e0894655
fix: merge bonjour txt records for ssh autofill
2025-12-20 19:27:36 +01:00
Peter Steinberger
943f0d475f
fix: move host lookup off main thread
2025-12-20 19:26:04 +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
1356498ee1
docs: add ordercli skill
2025-12-20 18:50:51 +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
cdb2a0736a
docs(onboarding): add soul creation step
2025-12-20 17:38:54 +00:00
Peter Steinberger
cfd3efb6e7
docs(templates): update workspace template guidance
2025-12-20 17:35:52 +00: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
b13723d3d7
style: satisfy swiftformat in chat composer
2025-12-20 18:18:30 +01:00
Peter Steinberger
03a4e0c837
docs: update summarize installer spec
2025-12-20 18:01:09 +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
f3c4d1a181
docs(onboarding): document chat kickoff
2025-12-20 16:52:11 +00:00
Peter Steinberger
4e491757ef
feat(web): add whatsapp QR login tool
2025-12-20 16:52:11 +00:00
Peter Steinberger
5936ed7941
feat(chat): restyle onboarding chat UI
2025-12-20 16:52:11 +00:00
Peter Steinberger
6b56f7d643
feat(mac): add onboarding chat kickoff
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
b9eabe532e
docs: update mac skills install types
2025-12-20 17:40:09 +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
2288ec7384
fix(mac): align cli button height
2025-12-20 16:02:05 +00:00
Peter Steinberger
80b3b9e00c
docs(onboarding): refine bootstrap convo
2025-12-20 15:54:40 +00: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
e800e84a77
fix(macos): streamline onboarding ui
2025-12-20 15:20:31 +00:00
Peter Steinberger
d306fcb8a2
fix(macos): validate embedded CLI helper
2025-12-20 15:12:57 +00:00
Peter Steinberger
44339a6447
feat(agent): queue steering messages
2025-12-20 16:10:53 +01:00
Peter Steinberger
675aadc6a9
docs: document steering while streaming
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
f508fd3fa2
feat(macos): auto-enable local gateway
2025-12-20 14:47:37 +00:00
Peter Steinberger
cf96ad8ef9
fix: route voice wake to main
2025-12-20 15:33:28 +01:00
Peter Steinberger
066a2828c4
fix(macos): clarify bridge discovery labels
2025-12-20 14:27:27 +00:00
Peter Steinberger
b6c11154ae
Merge branch 'main' of https://github.com/steipete/clawdis
2025-12-20 14:22:08 +00:00
Peter Steinberger
6ca897e055
fix(telegram): normalize chat ids and improve errors
2025-12-20 14:21:49 +00:00
Peter Steinberger
23ffa1905a
style: soften hover hud status dot
2025-12-20 15:20:58 +01:00
Peter Steinberger
a88e5968ae
fix(macos): hide local bridge discovery
2025-12-20 14:19:22 +00:00
Peter Steinberger
4abaf62783
feat(macos): clarify local gateway choice
2025-12-20 14:11:57 +00:00
Peter Steinberger
9bf5b92d8f
fix: clarify remote gateway error
2025-12-20 15:05:57 +01: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
082b4fb193
docs: note imsg chats json
2025-12-20 14:17:34 +01:00
Peter Steinberger
de1f119a7d
fix: add ClawdisIPC import
2025-12-20 14:07:07 +01:00
Peter Steinberger
7ce12863b8
fix: clarify SSH test failure
2025-12-20 14:07:07 +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
6e4eef4a49
docs(skill): add clawdis nodes
2025-12-20 12:56:06 +00:00
Peter Steinberger
8feb09aa89
fix(skills): ship runnable brave/openai scripts
2025-12-20 12:54:18 +00:00
Peter Steinberger
e1a3bab7e5
feat(skills): add media/transcription helpers
2025-12-20 12:53:09 +00:00
Peter Steinberger
e0cd5650c5
style: biome formatting
2025-12-20 12:52:14 +00:00
Peter Steinberger
80c09f0845
docs(skill): add clawdis notify
2025-12-20 12:51:20 +00:00
Peter Steinberger
1f831c6037
docs(skill): update canvas A2UI guidance
2025-12-20 12:48:08 +00:00
Peter Steinberger
cc0075e988
feat: add skills settings and gateway skills management
2025-12-20 13:33:42 +01:00
Peter Steinberger
4b44a75bc1
docs: add summarize skill
2025-12-20 13:33:16 +01:00
Peter Steinberger
f46beec20d
docs: add clawdis cron skill
2025-12-20 13:33:16 +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
5ef2666127
docs(canvas): update A2UI hosting
2025-12-20 12:17:39 +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
ca8e556619
docs: align brave-search skill
2025-12-20 13:00:03 +01:00
Peter Steinberger
8900c84155
docs: finalize skill install hints
2025-12-20 13:00:03 +01:00
Peter Steinberger
002d927874
docs: expand skill install hints
2025-12-20 13:00:03 +01:00
Peter Steinberger
cef5bf2768
docs: add skill install hints
2025-12-20 13:00:03 +01:00
Peter Steinberger
529543b36d
build: refresh a2ui bundle
2025-12-20 13:00:03 +01:00
Peter Steinberger
636e4d38d5
style: tidy macos swift formatting
2025-12-20 13:00:03 +01:00
Peter Steinberger
2d8e11b78b
docs: refine skills
2025-12-20 13:00:03 +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
a02adcc2ef
docs: link docs section
2025-12-20 12:27:25 +01:00
Peter Steinberger
d1850aaada
feat: add managed skills gating
2025-12-20 12:22:38 +01:00
Peter Steinberger
cf21a15e06
chore: remove dist from repo
2025-12-20 12:22:38 +01:00
Peter Steinberger
13124542cf
fix(a2ui): improve modal styling
2025-12-20 11:12:11 +00:00
Peter Steinberger
cd5809d11f
fix(a2ui): stabilize canvas host
2025-12-20 10:58:13 +00:00
Peter Steinberger
28938ddb32
chore: update a2ui bundle
2025-12-20 11:32:20 +01:00
Peter Steinberger
3c551fd36f
docs(browser): update hook timeouts
2025-12-20 09:47:21 +00: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
9b8a4d0c76
docs(browser): simplify control contract
2025-12-20 03:27:17 +00:00
Peter Steinberger
235f3ce0ba
refactor(browser): simplify control API
2025-12-20 03:27:12 +00:00
Peter Steinberger
06806a1ea1
fix(mac): probe loopback bridge
2025-12-20 03:05:06 +00:00
Peter Steinberger
b1a85d89d2
docs(browser): update browser tool surface
2025-12-20 02:53:26 +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
1a51257b71
fix(mac): use gateway main session for WebChat
2025-12-20 01:27:51 +00:00
Peter Steinberger
4e74ba996d
feat(macos): add unconfigured gateway mode
2025-12-20 02:21:10 +01:00
Peter Steinberger
80a87e5f9e
refactor(mac): remove clawdis-mac browser cli
2025-12-20 01:06:27 +00:00
Peter Steinberger
a526d3c1f2
feat(browser): add native action commands
2025-12-20 00:53:56 +00:00
Peter Steinberger
d67bec0740
style: polish logging and lint hints
2025-12-20 01:48:29 +01:00
Peter Steinberger
b2e11c504b
fix: tighten iOS main-actor handling
2025-12-20 01:48:29 +01:00
Peter Steinberger
1b38ee8b46
fix: harden device model decoding
2025-12-20 01:48:29 +01:00
Peter Steinberger
afa4a234f9
fix: remove WhatsApp batching delay
2025-12-20 01:48:29 +01:00
Peter Steinberger
46b9006de2
docs(browser): add MCP tool spec
2025-12-19 23:57:35 +00: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
0ac7a93c28
fix: decode bonjour escaped utf8
2025-12-19 23:21:07 +01:00
Peter Steinberger
bc2a66da32
refactor: unify gateway discovery on bridge
2025-12-19 23:12:52 +01:00
Peter Steinberger
bcced90f11
style: lighten DMG background for label contrast
2025-12-19 22:51:54 +01:00
Peter Steinberger
eb076165d2
style: refine DMG arrow
2025-12-19 22:44:56 +01:00
Peter Steinberger
9248919b05
docs: note DMG background sizing
2025-12-19 22:39:30 +01:00
Peter Steinberger
5472589ddd
fix: align DMG background and icon layout
2025-12-19 22:38:36 +01:00
Peter Steinberger
19f5183176
docs(mac): document dmg packaging
2025-12-19 22:22:14 +01:00
Peter Steinberger
beb6e25ef0
build(macos): add dmg+zip packaging
2025-12-19 22:22:09 +01:00
Peter Steinberger
0ad49c25aa
style(macos): add dmg background
2025-12-19 22:22:03 +01:00
Peter Steinberger
d46823333d
docs(mac): add bun gateway packaging notes
2025-12-19 22:13:13 +01:00
Peter Steinberger
836f645621
perf(macos): compile embedded gateway with bytecode
2025-12-19 22:11:41 +01:00
Peter Steinberger
96be450cbb
fix: handle screen record microphone output
2025-12-19 22:09:38 +01:00
Peter Steinberger
56cb415509
fix: restore mac app build
2025-12-19 22:08:17 +01:00
Peter Steinberger
2ef2136c2c
fix(macos): sign bun gateway with jit entitlements
2025-12-19 19:24:49 +01:00
Peter Steinberger
0b16b4481a
chore: ignore bun build artifacts
2025-12-19 19:21:27 +01:00
Peter Steinberger
0b18f1b948
docs: update bundled gateway flow
2025-12-19 19:21:27 +01:00
Peter Steinberger
a4d4a30a6b
feat(macos): run bundled gateway via launchd
2025-12-19 19:21:27 +01:00
Peter Steinberger
98bbc73925
build(macos): bundle bun gateway
2025-12-19 19:21:26 +01:00
Peter Steinberger
bb7f4abd4b
feat(gateway): support bun-compiled embedded gateway
2025-12-19 19:21:26 +01:00
Peter Steinberger
bd63b5a231
fix: show Dock icon during onboarding
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
6cbfa01176
docs: document WhatsApp and Telegram config
2025-12-19 19:03:17 +01:00
Peter Steinberger
f929e1b105
fix: surface gateway failure details
2025-12-19 18:48:30 +01:00
Peter Steinberger
77104395ce
docs: overhaul README architecture
2025-12-19 18:41:17 +01:00
Peter Steinberger
c0d5853c63
fix(deps): include playwright-core in dependencies
2025-12-19 18:38:37 +01:00
Peter Steinberger
5bbf5105f1
chore: update appcast for 2.0.0-beta1
2025-12-19 18:24:36 +01:00
Peter Steinberger
5b193d014e
ci: lower iOS coverage gate
2025-12-19 18:23:03 +01:00
Peter Steinberger
fc7a63a4de
perf: throttle gateway environment checks
2025-12-19 18:21:55 +01:00
Peter Steinberger
aec1869d32
fix(ios): make parseA2UIActionBody nonisolated
2025-12-19 18:10:10 +01:00
Peter Steinberger
377169959d
chore: prep 2.0.0-beta1 release
2025-12-19 18:02:30 +01:00
Peter Steinberger
ba497ce57d
chore: log gateway env timings
2025-12-19 17:54:23 +01:00
Peter Steinberger
5e7d12fefa
perf: move gateway env checks off main
2025-12-19 17:54:18 +01:00
Peter Steinberger
a019d3cd83
chore(protocol): regenerate schema
2025-12-19 17:52:50 +01:00
Peter Steinberger
8c6a592523
style(macos): swiftformat sources
2025-12-19 17:52:26 +01:00
Peter Steinberger
47a1774dc0
Mac: add summarize tool
2025-12-19 17:47:04 +01:00
Peter Steinberger
2bc0c57f18
build(canvas): refresh a2ui bundle
2025-12-19 17:47:04 +01:00
Peter Steinberger
f0705a928a
fix(macos): allow fractional timeout
2025-12-19 17:47:04 +01:00
Peter Steinberger
22f9322905
fix(ios): refine canvas and screen handling
2025-12-19 17:47:04 +01:00
Peter Steinberger
6795e78edf
fix(macos): reduce node pairing polling
2025-12-19 13:58:33 +00:00
Peter Steinberger
31620fea3a
fix(control-ui): wrap long message lines
2025-12-19 09:54:43 +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
00fc731d64
feat(macos): add menu link to dashboard
2025-12-19 04:28:32 +00:00
Peter Steinberger
d80d112e09
fix(onboarding): default identity to Clawd
2025-12-19 03:12:10 +00:00
Peter Steinberger
65d723d53c
test: add canvas.present IPC coverage
2025-12-19 03:53:55 +01:00
Peter Steinberger
fb3fae43c0
feat(agent): load workspace skills
2025-12-19 03:53:55 +01:00
Peter Steinberger
41108f497b
fix(onboarding): load saved identity defaults
2025-12-19 02:40:11 +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
b8012a2281
fix(canvas): load A2UI resources across platforms
2025-12-19 01:53:55 +00:00
Peter Steinberger
95ea67de28
feat: add mac node screen recording and ssh tunnel
2025-12-19 02:33:43 +01:00
Peter Steinberger
1fbd84da39
feat(nodes): add mac node mode + permission UX
2025-12-19 01:48:19 +01:00
Peter Steinberger
beb5b1ad58
docs(agents): require consent for worktrees
2025-12-19 01:18:32 +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
8f0b5d2d97
iOS: fix camera clip clamp regression test
2025-12-19 00:53:06 +01:00
Peter Steinberger
0e3e4f269d
iOS: allow Tailnet/MagicDNS canvas actions
2025-12-19 00:52:52 +01:00
Peter Steinberger
d6c5ee86c5
Docs: add nodes overview
2025-12-19 00:29:42 +01:00
Peter Steinberger
3772a29557
macOS: add screen record + safer camera defaults
2025-12-19 00:29:38 +01:00
Peter Steinberger
7831e0040e
feat(macos): delay hover HUD
2025-12-19 00:25:46 +01:00
Peter Steinberger
3780f3152c
macOS: auto-fill Anthropic OAuth from clipboard
2025-12-18 23:15:08 +00:00
Peter Steinberger
3146f8bdbc
CanvasA2UI: refresh bundled renderer
2025-12-18 23:08:07 +00:00
Peter Steinberger
256080e2a2
Canvas host: fix action bridge invocation
2025-12-19 00:04:45 +01:00
Peter Steinberger
47510e2912
feat(macos): hover HUD for activity
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
f237222bc9
Docs: update canvas host defaults and snapshot formats
2025-12-18 23:32:48 +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
06f71d883c
Android: JPEG canvas snapshots + camera permission prompts
2025-12-18 23:32:07 +01:00
Peter Steinberger
9ace6af3df
iOS: allow A2UI actions from local canvas host
2025-12-18 23:31:49 +01:00
Peter Steinberger
9062f60e3d
ClawdisKit: accept jpg for canvas.snapshot
2025-12-18 23:31:34 +01:00
Peter Steinberger
2307756892
iOS: allow HTTP loads in WKWebView
2025-12-18 19:59:43 +01:00
Peter Steinberger
7008493f03
Gateway: raise client maxPayload
2025-12-18 19:48:29 +01:00
Peter Steinberger
b5a89e8907
iOS: support jpeg canvas snapshots
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
801e44f4eb
feat(node): show camera capture HUD
2025-12-18 14:49:07 +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
0b8e8144af
ci: relax iOS coverage gate
2025-12-18 14:26:13 +01: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
16e2193911
fix(ios): restore ScreenController.mode
2025-12-18 13:56:40 +01:00
Peter Steinberger
bb5d26ba9e
Gateway: improve verbose ws logs
2025-12-18 12:47:41 +00:00
Peter Steinberger
59f9073e21
ci: retry swiftpm build/test
2025-12-18 13:37:58 +01:00
Peter Steinberger
982f85bf90
chore(naming): remove remaining iris references
2025-12-18 13:30:22 +01:00
Peter Steinberger
acdf70e928
ci: retry submodule checkout
2025-12-18 13:26:09 +01:00
Peter Steinberger
d182f7e4b2
chore(naming): remove Iris codename
2025-12-18 13:18:33 +01:00
Peter Steinberger
790079c3b6
feat(canvas): remove setMode; host A2UI in scaffold
2025-12-18 13:18:24 +01:00
Peter Steinberger
dda6d7f9e1
ci: fix swiftformat
2025-12-18 12:50:59 +01:00
Peter Steinberger
256f0fc765
Docs: add canvas host usage
2025-12-18 11:39:30 +01:00
Peter Steinberger
e1f320276e
Android: hide Disconnect without remote
2025-12-18 11:39:23 +01:00
Peter Steinberger
c61bd6c84d
A2UI: share web UI and action bridge
2025-12-18 11:38:32 +01:00
Peter Steinberger
8a343aedf2
Docs: document canvasHost
2025-12-18 11:36:46 +01:00
Peter Steinberger
cd729e83b6
Gateway: optional canvas host
2025-12-18 11:35:21 +01:00
Peter Steinberger
cfb36525ab
Android: add canvas.a2ui push/reset
2025-12-18 10:44:50 +01:00
Peter Steinberger
6f58a9d643
iOS: support canvas.a2ui push/reset
2025-12-18 10:44:32 +01:00
Peter Steinberger
0913329b03
A2UI: share bundle via ClawdisKit
2025-12-18 10:44:06 +01:00
Peter Steinberger
402b04a68c
ci: raise iOS coverage
2025-12-18 10:34:09 +01:00
Peter Steinberger
4a68b4add4
fix(android): show backdrop behind WebView
2025-12-18 09:46:32 +01:00
Peter Steinberger
a74c4db948
Tests: show unpaired nodes in nodes status
2025-12-18 08:38:33 +00:00
Peter Steinberger
0fc5ccb76c
Tests: cover node.describe for connected unpaired nodes
2025-12-18 08:38:33 +00:00
Peter Steinberger
98a745b3df
macOS: hide node pairing alert host window
2025-12-18 09:37:17 +01:00
Peter Steinberger
24009ed00f
macOS: move instance update info to third row
2025-12-18 09:36:07 +01:00
Peter Steinberger
fceab511b3
Android: run canvas WebView loads on main
2025-12-18 08:31:56 +00:00
Peter Steinberger
c6421136f9
Docs: use canvas.* invoke namespace
2025-12-18 08:20:40 +00:00
Peter Steinberger
2f8b75d86e
macOS: add leading device icons in Instances
2025-12-18 09:15:50 +01:00
Peter Steinberger
97ec5d52c3
fix(android): allow cleartext for tailnet web
2025-12-18 09:12:06 +01:00
Peter Steinberger
89fcb40557
submodules: bump Peekaboo
2025-12-18 09:06:39 +01:00
Peter Steinberger
5c705ab675
ci: fix swiftformat and bun CI
2025-12-18 08:55:47 +01:00
Peter Steinberger
2f21b94a76
iOS: fix BridgeClient SwiftFormat indent
2025-12-18 08:40:59 +01:00
Peter Steinberger
6f1ae147da
ui: improve idle background blend mode fallback
2025-12-18 08:32:06 +01:00
Peter Steinberger
f2d503ad04
Android: drop screen.* invoke aliases
2025-12-18 02:17:35 +00:00
Peter Steinberger
57ee34839d
CLI/docs: expose node metadata and commands
2025-12-18 02:06:36 +00:00
Peter Steinberger
82d8526732
macOS: add clawdis-mac node describe and verbose list
2025-12-18 02:06:36 +00:00
Peter Steinberger
742027a447
Gateway: list/describe node capabilities and commands
2025-12-18 02:06:35 +00:00
Peter Steinberger
efed2ae30f
Nodes: advertise canvas invoke commands
2025-12-18 02:06:35 +00:00
Peter Steinberger
54830e8401
Bridge: persist advertised invoke commands
2025-12-18 02:05:40 +00:00
Peter Steinberger
ce1a8d70d9
Android: hide connected bridge from discovery list
2025-12-18 02:37:37 +01:00
Peter Steinberger
cd719a8c85
Android: centralize canvas protocol strings
2025-12-18 02:32:34 +01:00
Peter Steinberger
3df53836ca
fix(ui): harden idle background animation
2025-12-18 02:27:11 +01:00
Peter Steinberger
7bb058215d
Tests: loosen chat.abort mismatch timeout
2025-12-18 01:20:20 +00:00
Peter Steinberger
272015c701
Docs: document canvas.* node.invoke commands
2025-12-18 01:20:20 +00:00
Peter Steinberger
21a27e3b65
Nodes: handle canvas.* commands on iOS/Android
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
ea53f1bec7
Android: test bridge auto-reconnect
2025-12-18 02:18:19 +01:00
Peter Steinberger
33bf5cf42a
iOS: centralize canvas commands and capabilities
2025-12-18 02:16:31 +01:00
Peter Steinberger
c976799f8c
CLI/docs: mention canvas.* alias
2025-12-18 01:10:40 +00:00
Peter Steinberger
f973b9e0e5
Gateway: alias canvas.* for node.invoke
2025-12-18 01:10:40 +00:00
Peter Steinberger
60321352aa
Android: add Voice Wake (foreground/always)
2025-12-18 02:08:57 +01:00
Peter Steinberger
6d60224c93
fix(android): improve webview compatibility
2025-12-18 02:08:53 +01:00
Peter Steinberger
2b2434d239
fix(android): decode UTF-8 TXT records
2025-12-18 01:58:16 +01:00
Peter Steinberger
f8bea661fc
iOS: alias canvas.* invoke commands
2025-12-18 01:57:31 +01:00
Peter Steinberger
86225d0eb6
fix(android): improve wide-area bridge discovery
2025-12-18 01:40:08 +01:00
Peter Steinberger
3351c972e7
refactor(android): drop legacy theme fallback
2025-12-18 01:39:57 +01:00
Peter Steinberger
460e170f7a
CLI: add nodes status
2025-12-18 00:37:54 +00:00
Peter Steinberger
1a2d39bdf9
Docs: document nodes status
2025-12-18 00:37:54 +00:00
Peter Steinberger
99325040f8
gateway: persist and surface node capabilities
2025-12-18 01:36:38 +01:00
Peter Steinberger
568fcbda54
iOS: allow settings light mode
2025-12-18 01:29:45 +01:00
Peter Steinberger
f4b186a9d3
ui(nodes): unify idle background animation
2025-12-18 01:22:26 +01:00
Peter Steinberger
d862ae17eb
clawdis-mac: fetch node list via gateway
2025-12-18 00:16:36 +00:00
Peter Steinberger
9f73131621
Gateway: include node caps + hardware in node.list
2025-12-18 00:16:36 +00:00
Peter Steinberger
99310a5bbb
style(android): respect system theme and clamp overlays
2025-12-18 01:15:50 +01:00
Peter Steinberger
1673bf2d44
fix(android): use system DNS for wide-area discovery
2025-12-18 01:04:13 +01:00
Peter Steinberger
4c656ea22f
Android: reorder settings sections
2025-12-18 01:00:50 +01:00
Peter Steinberger
7707e3d887
iOS: reorder settings sections
2025-12-18 01:00:36 +01:00
Peter Steinberger
ba204d0330
fix(android): show idle background under WebView
2025-12-18 00:53:31 +01:00
Peter Steinberger
cbb327227a
macOS: unify device + OS chip
2025-12-18 00:43:58 +01:00
Peter Steinberger
14fa2f47f5
style(android): improve idle background
2025-12-18 00:41:21 +01:00
Peter Steinberger
579da8cc9b
style(android): use tonal surfaces for overlays
2025-12-18 00:34:11 +01:00
Peter Steinberger
5693d7d733
macOS: remove Instances row duplication
2025-12-18 00:28:45 +01:00
Peter Steinberger
07c8fdffd1
macOS: compact Instances row
2025-12-18 00:24:10 +01:00
Peter Steinberger
d3f4db649f
style(ios): use Offline bridge status
2025-12-18 00:20:37 +01:00
Peter Steinberger
abbe237cc0
style(android): use Offline bridge status
2025-12-18 00:20:28 +01:00
Peter Steinberger
ac4a65ddfd
refactor(android): unify chat status label
2025-12-18 00:20:19 +01:00
Peter Steinberger
693215723a
Android: enable immersive fullscreen
2025-12-18 00:07:58 +01:00
Peter Steinberger
5f0e474be1
Android: polish settings UI
2025-12-18 00:07:52 +01:00
Peter Steinberger
0e201c4c18
style(android): make chat more Material
2025-12-17 23:57:14 +01:00
Peter Steinberger
d12ca22b19
feat(android): chat parity + wide-area discovery
2025-12-17 23:49:29 +01:00
Peter Steinberger
c7b80c28a1
macOS: remove stale WebChat exclude
2025-12-17 23:31:46 +01: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
3ed33c5856
chore(webchat): remove legacy bundled web assets
2025-12-17 23:27:27 +01:00
Peter Steinberger
b3e466ccb6
nodes: better default display names
2025-12-17 23:15:15 +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
ca85d217ec
ChatUI: swiftformat fixes
2025-12-17 23:01:31 +01:00
Peter Steinberger
6652b1f4f3
ui(chat): reduce padding
2025-12-17 23:01:31 +01:00
Peter Steinberger
9fe04f5659
ui(chat): align status pill with send
2025-12-17 23:01:31 +01:00
Peter Steinberger
5b9e51bfaa
ui(chat): tighten padding + keep status in composer
2025-12-17 23:01:31 +01:00
Peter Steinberger
cdea744725
ui(chat): move connection pill into composer
2025-12-17 23:01:30 +01:00
Peter Steinberger
44365f2e27
test(chat): harden abort/stream + hide session switching
2025-12-17 23:01:30 +01:00
Peter Steinberger
888dbd7d11
macOS: load device model names from dataset
2025-12-17 22:55:50 +01:00
Peter Steinberger
76ddfc4a9e
fix(android): canvas idle background + tailscale DNS
2025-12-17 22:27:16 +01:00
Peter Steinberger
7950a646c3
macOS: show friendly device names in Instances
2025-12-17 22:23:57 +01:00
Peter Steinberger
09819f8b2e
fix(agents): fix AgentTool schema typing
2025-12-17 22:12:19 +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
fe6bf6966b
style(android): format bridge hello
2025-12-17 22:04:51 +01:00
Peter Steinberger
e0276ed4b4
fix(gateway): harden request handling
2025-12-17 22:04:22 +01:00
Peter Steinberger
fce487669b
feat(android): iOS canvas background
2025-12-17 22:03:11 +01:00
Peter Steinberger
e6ba373d08
feat(android): add status pill overlay
2025-12-17 22:00:12 +01:00
Peter Steinberger
d4b3d504e4
fix(android): dedupe hello fields
2025-12-17 21:53:38 +01:00
Peter Steinberger
2b2376d4c0
style(swift): fix lint
2025-12-17 21:51:36 +01:00
Peter Steinberger
51bdf01e2e
Presence: add device identity fields
2025-12-17 21:51:36 +01:00
Peter Steinberger
9d29fbbf80
Docs/tests: node list hardware fields
2025-12-17 20:11:13 +00:00
Peter Steinberger
a40fc50e5e
clawdis-mac: show hardware model in node list
2025-12-17 20:11:05 +00:00
Peter Steinberger
df4e4534f4
Android: advertise device model to bridge
2025-12-17 20:10:58 +00:00
Peter Steinberger
fca6e466b1
macOS: include node hardware identifiers
2025-12-17 20:10:50 +00:00
Peter Steinberger
0321174519
Tests: cover clawdis-mac node list
2025-12-17 20:03:56 +00:00
Peter Steinberger
c452f8c430
clawdis-mac: enrich node list output
2025-12-17 20:03:56 +00:00
Peter Steinberger
079c1d8786
Bridge: advertise node capabilities
2025-12-17 20:03:56 +00:00
Peter Steinberger
0677567cdd
macOS: fix InstanceInfo device fields
2025-12-17 20:03:56 +00:00
Peter Steinberger
7fe7c30b17
Mobile: prevent sleep setting
2025-12-17 21:01:47 +01:00
Peter Steinberger
cc1d8060c4
fix(android): bonjour discovery parity
2025-12-17 20:57:04 +01:00
Peter Steinberger
428a82e734
feat(chat): Swift chat parity (abort/sessions/stream)
2025-12-17 20:51:27 +01:00
Peter Steinberger
cc235fc312
Docs: require permission to switch branches
2025-12-17 20:43:04 +01:00
Peter Steinberger
249f97d1ed
tools: add blucli
2025-12-17 20:39:34 +01:00
Peter Steinberger
3e9310d6cd
Agents: fix pi-tools typing
2025-12-17 20:38:52 +01:00
Peter Steinberger
9051c5891e
Canvas: click progress + context-rich actions
2025-12-17 20:34:54 +01:00
Peter Steinberger
56d94e6974
Node pairing: avoid blocking main actor
2025-12-17 20:34:53 +01:00
Peter Steinberger
e6a96bea47
fix(macos): improve canvas A2UI forwarding
2025-12-17 20:31:21 +01:00
Peter Steinberger
cf82e37c36
Menu: reopen canvas without reload
2025-12-17 20:31:21 +01:00
Peter Steinberger
4fb3e0500a
Canvas: fix A2UI click actions
2025-12-17 20:31:21 +01:00
Peter Steinberger
9c7d51429e
macOS: auto-start gateway for Canvas actions
2025-12-17 20:31:21 +01:00
Peter Steinberger
c1985443fd
macOS: fix gateway strict-concurrency issues
2025-12-17 20:31:21 +01:00
Peter Steinberger
17a27fd312
macOS: fold agent control into GatewayConnection
2025-12-17 20:31:21 +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
e9bfe34850
chore(canvas): rebuild CanvasA2UI bundle
2025-12-17 19:15:19 +00:00
Peter Steinberger
1a4540d386
feat(macos): show Anthropic auth mode + OAuth connect
2025-12-17 19:15:19 +00:00
Peter Steinberger
a0c4b1e061
test(web): avoid ENOTEMPTY cleanup race
2025-12-17 19:15:19 +00:00
Peter Steinberger
e275ba8d2e
chore(a2ui): ignore lit dist build output
2025-12-17 19:15:19 +00:00
Peter Steinberger
db7eeee07b
fix(macos): sync node pairing approvals
2025-12-17 19:15:19 +00:00
Peter Steinberger
84d5f24f5f
chore(pi): add TODO for mime workaround
2025-12-17 19:15:19 +00:00
Peter Steinberger
42948b70e3
fix(pi): harden image read mime
2025-12-17 19:15:19 +00:00
Peter Steinberger
28d3bd03b2
chore(peekaboo): bump submodule
2025-12-17 19:15:19 +00:00
Peter Steinberger
6148f862b9
CLI: bootstrap invalid wide-area DNS zone
2025-12-17 18:02:25 +01:00
Peter Steinberger
0a32610b37
iOS: satisfy SwiftFormat in bridge discovery
2025-12-17 18:01:01 +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
2ce24fdbf8
Nodes: auto-discover clawdis.internal
2025-12-17 17:01:30 +01:00
Peter Steinberger
e9ae10e569
Gateway: wide-area Bonjour via clawdis.internal
2025-12-17 17:01:10 +01:00
Peter Steinberger
a1940418fb
GatewayConnection: validate agent message
2025-12-17 16:09:22 +01:00
Peter Steinberger
6fdc62c008
macOS: fold AgentRPC into GatewayConnection
2025-12-17 16:07:37 +01:00
Peter Steinberger
5e5cb7a292
Canvas: forward A2UI actions
2025-12-17 15:41:04 +01:00
Peter Steinberger
f5ab3e41c5
Android: fix unicast discovery address resolution
2025-12-17 15:32:07 +01:00
Peter Steinberger
036bdde764
Android: add unicast discovery domain + app icon
2025-12-17 15:29:45 +01:00
Peter Steinberger
691bf85d7e
Canvas: shrink close button
2025-12-17 14:52:32 +01:00
Peter Steinberger
4482965d80
Canvas: add vibrancy close pill
2025-12-17 14:50:29 +01:00
Peter Steinberger
fdca8fb592
Canvas: fix A2UI push rendering
2025-12-17 14:36:42 +01:00
Peter Steinberger
c7c32210e6
Docs: secure wide-area Bonjour over Tailscale
2025-12-17 14:27:49 +01:00
Peter Steinberger
316a04f606
iOS: allow unicast DNS-SD discovery domain
2025-12-17 14:14:17 +01:00
Peter Steinberger
c4da2afb22
Build: add wireit
2025-12-17 13:20:36 +01:00
Peter Steinberger
9eaa45a291
Canvas: fix A2UI v0.8 rendering
2025-12-17 13:20:27 +01:00
Peter Steinberger
81a9439eb2
feat(macos): add menu Canvas open/close
2025-12-17 11:53:57 +01:00
Peter Steinberger
be9b550209
chore: bump Peekaboo submodule
2025-12-17 11:37:30 +01:00
Peter Steinberger
6653813cb9
fix(macos): avoid treating '/' as file target
2025-12-17 11:36:51 +01:00
Peter Steinberger
cf1278295d
macOS: update config settings copy
2025-12-17 11:36:21 +01:00
Peter Steinberger
cdb5ddb2da
feat(macos): add Canvas A2UI renderer
2025-12-17 11:35:06 +01:00
Peter Steinberger
1cdebb68a0
docs: document embedded agent runtime
2025-12-17 11:29:12 +01:00
Peter Steinberger
fece42ce0a
feat: embed pi agent runtime
2025-12-17 11:29:04 +01:00
Peter Steinberger
c5867b2876
Canvas: simplify show + report status
2025-12-17 10:37:35 +01:00
Peter Steinberger
43e257e7de
chore: drop agent-scripts AGENTS pointer
2025-12-17 10:08:07 +01:00
Peter Steinberger
9dcdeb15ec
fix(macos): anchor canvas panel to active screen
2025-12-17 09:28:53 +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
49a9f74753
fix(chat-ui): improve typing dots and composer
2025-12-16 20:13:23 +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
66a0813e44
test(macos): guard FileHandle read APIs
2025-12-16 10:41:47 +01:00
Peter Steinberger
64d6d25d65
fix(macos): use safe FileHandle reads
2025-12-16 10:41:47 +01:00
Peter Steinberger
b443c20cef
docs(changelog): note macOS voice audio fix
2025-12-16 09:35:02 +00:00
Tu Nombre Real
5e8c8367f3
fix(macos): lazy-init AVAudioEngine to prevent Bluetooth audio ducking
...
Creating AVAudioEngine at singleton init time causes macOS to switch
Bluetooth headphones from A2DP (high quality) to HFP (headset) profile,
resulting in degraded audio quality even when Voice Wake is disabled.
This change makes audioEngine optional and only creates it when voice
recognition actually starts, preventing the profile switch for users
who don't use Voice Wake.
Fixes #30
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2025-12-16 09:35:02 +00:00
Peter Steinberger
2b0f846f1b
chore(auto-reply): satisfy biome
2025-12-16 10:30:57 +01:00
Peter Steinberger
e7713a28ae
fix(auto-reply): parse agent_end and avoid rpc JSON leaks
2025-12-16 10:28:57 +01:00
Peter Steinberger
7948d071e0
ui(macos): remove Claude auth skip button
2025-12-14 19:23:49 +00:00
Peter Steinberger
fb23717102
ui(macos): polish onboarding wording
2025-12-14 19:22:31 +00:00
Peter Steinberger
3d959c46d0
fix(macos): hide skipped onboarding panes
2025-12-14 19:14:05 +00:00
Peter Steinberger
4cdd61eb78
ui(macos): recommend Opus on Claude step
2025-12-14 19:13:55 +00:00
Peter Steinberger
6d08d84011
ui(macos): tweak Claude sign-in copy
2025-12-14 19:12:52 +00:00
Peter Steinberger
f6cafd1a15
fix(macos): clarify OAuth detection
2025-12-14 19:10:48 +00:00
Peter Steinberger
5792887883
docs(macos): critter-first onboarding copy
2025-12-14 06:26:51 +00:00
Peter Steinberger
e82ee731bf
test(ios): bump app coverage
2025-12-14 06:09:28 +00:00
Peter Steinberger
5e09aae4ca
test(ios): cover RootCanvas bridge states
2025-12-14 05:51:48 +00:00
Peter Steinberger
740f7b0fb6
test(ios): exercise ScreenController eval
2025-12-14 05:51:12 +00:00
Peter Steinberger
7510a6f66a
test(ios): cover ScreenController webview setup
2025-12-14 05:42:39 +00:00
Peter Steinberger
1ff7d458a5
fix(android): avoid non-exhaustive sheet switch
2025-12-14 05:42:39 +00:00
Peter Steinberger
c3528fb201
test(web): stabilize group heartbeat test
2025-12-14 05:36:01 +00:00
Peter Steinberger
3f5dff35f8
Merge remote-tracking branch 'origin/main'
2025-12-14 05:32:24 +00:00
Peter Steinberger
08bfe2b263
Merge remote-tracking branch 'origin/main'
2025-12-14 05:31:06 +00:00
Peter Steinberger
42645a7e0a
test(macos): cover control/camera disabled paths
2025-12-14 05:30:39 +00:00
Peter Steinberger
7d4c8ef6b2
fix(camera): harden capture pipeline
2025-12-14 05:30:34 +00:00
Peter Steinberger
a1d7b8db6f
refactor(macos): tidy gateway discovery naming
2025-12-14 05:30:07 +00:00
Peter Steinberger
4a3a4558e2
fix(android): respect insets and enable settings scroll
2025-12-14 05:30:07 +00:00
Peter Steinberger
1b83fc85cd
fix(ios): update observation env in smoke tests
2025-12-14 05:27:19 +00:00
Peter Steinberger
c1a10b6056
chore: gitignore .worktrees
2025-12-14 05:21:21 +00:00
Peter Steinberger
841a9b4c8a
fix(macos): fix oauth base64 helper visibility
2025-12-14 05:19:49 +00:00
Peter Steinberger
f3db02018f
fix(chat-ui): reflect gateway connection
2025-12-14 05:19:01 +00:00
Peter Steinberger
4cbaee59cd
style(ios): swiftformat
2025-12-14 05:17:59 +00:00
Peter Steinberger
0d10aa4098
ui(ios): animate idle background
2025-12-14 05:17:59 +00:00
Peter Steinberger
f3f8aa5397
fix(ios): use Observation environment in settings
2025-12-14 05:17:59 +00:00
Peter Steinberger
4970af6bb9
fix(macos): satisfy swiftformat
2025-12-14 05:16:03 +00:00
Peter Steinberger
a48aebc78c
iOS: Fix canvas touch events and auto-hide status bubble
...
- Disable scroll on WKWebView to allow touch events to reach canvas
- Add WKNavigationDelegate to intercept clawdis:// deep links from canvas
- Wire up onDeepLink callback to handle taps on canvas buttons
- Auto-hide status bubble after 3 seconds
2025-12-14 05:14:26 +00:00
Peter Steinberger
26bbddde8f
style(macos): swiftformat
2025-12-14 05:09:48 +00:00
Peter Steinberger
b48a556de5
refactor(observation): migrate SwiftUI state
2025-12-14 05:06:34 +00:00
Peter Steinberger
aab5c490dc
refactor(chat-ui): compact layout
2025-12-14 05:06:34 +00:00
Peter Steinberger
d54cc49d66
feat(android): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
0cef22ef83
feat(ios): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
7b2f712e20
feat(macos): sync wake words via gateway
2025-12-14 05:06:27 +00:00
Peter Steinberger
1a92127dfa
feat(voicewake): add gateway-owned wake words sync
2025-12-14 05:06:27 +00:00
Peter Steinberger
26a05292b9
fix(macos): live-check Pi oauth.json
2025-12-14 04:48:03 +00:00
Peter Steinberger
caaa79bb76
style(ios): swiftformat
2025-12-14 04:47:15 +00:00
Peter Steinberger
b80c0d85e0
style(macos): swiftformat
2025-12-14 04:42:04 +00:00
Peter Steinberger
0641281cfe
chore(protocol): sync generated artifacts
2025-12-14 04:42:04 +00:00
Peter Steinberger
f414853d70
fix(config): tolerate session store races
2025-12-14 04:42:04 +00:00
Peter Steinberger
7c677c5057
test: cover identity defaults and pi flags
2025-12-14 04:40:01 +00:00
Peter Steinberger
969c7d1c8e
docs(agents): prefer Observation framework
2025-12-14 04:36:07 +00:00
Peter Steinberger
b202480a66
docs(bonjour): document gateway and iOS discovery logging
2025-12-14 04:36:00 +00:00
Peter Steinberger
9e80764c2b
feat(ios): add discovery debug logs
2025-12-14 04:36:00 +00:00
Peter Steinberger
f5a5320f8f
test(bonjour): cover watchdog and failure modes
2025-12-14 04:36:00 +00:00
Peter Steinberger
7389fc0e25
fix(bonjour): log advertise failures and watchdog
2025-12-14 04:36:00 +00:00
Peter Steinberger
ce915d3438
fix(android): safe area + settings scroll
2025-12-14 04:35:06 +00:00
Peter Steinberger
3ef910d23e
test(macos): boost Clawdis coverage to 40%
2025-12-14 04:31:04 +00:00
Peter Steinberger
845b26a73b
fix(camera): retain capture delegates
2025-12-14 04:31:04 +00:00
Peter Steinberger
e0545e2f94
fix(chat): improve history + polish SwiftUI panel
2025-12-14 04:31:04 +00:00
Peter Steinberger
01341d983c
fix(macos): sane chat window placement
2025-12-14 04:31:04 +00:00
Peter Steinberger
0d68e10dd7
chore(tools): match repo emojis
2025-12-14 04:31:04 +00:00
Peter Steinberger
e6a60c0dc5
chore(tools): add emoji tool names
2025-12-14 04:31:04 +00:00
Peter Steinberger
7dbd5acbb1
fix(webchat): reconnect gateway ws
2025-12-14 04:31:04 +00:00
Peter Steinberger
7a87f3cfb8
fix(macos): suggest critter emojis only
2025-12-14 04:29:07 +00:00
Peter Steinberger
b817225fb8
feat(agent): enforce provider/model and identity defaults
2025-12-14 04:22:38 +00:00
Peter Steinberger
a097c848bb
feat(macos): onboard Claude OAuth + identity
2025-12-14 04:22:38 +00:00
Peter Steinberger
a47d3e3e35
ui(macos): skip whatsapp onboarding in remote mode
2025-12-14 04:20:16 +00:00
Peter Steinberger
4d4bcaab1e
ci: fix iOS simulator selection indentation
2025-12-14 04:13:07 +00:00
Peter Steinberger
265a3dff27
ci: create iOS simulator when missing
2025-12-14 04:10:06 +00:00
Peter Steinberger
97fe3972c8
chore(macos): silence onboarding type length lint
2025-12-14 04:09:20 +00:00
Peter Steinberger
7c91ce2fa7
refactor(macos): simplify bridge frame handling
2025-12-14 04:09:20 +00:00
Peter Steinberger
951993db17
ui(macos): always enable deep links
2025-12-14 04:06:34 +00:00
Peter Steinberger
357a1a982b
style: satisfy formatters
2025-12-14 04:03:32 +00:00
Peter Steinberger
f6f69b408f
ui(macos): remove duplicate canvas toggle
2025-12-14 04:00:57 +00:00
Peter Steinberger
98399b85e3
docs: add onboarding spec
2025-12-14 03:59:56 +00:00
Peter Steinberger
38a773f245
test(web): make heartbeat call selection deterministic
2025-12-14 03:59:40 +00:00
Peter Steinberger
e9e2e5026c
ui(macos): fix security notice wrapping
2025-12-14 03:57:32 +00:00
Peter Steinberger
8649de6199
ui(macos): make master discovery selectable
2025-12-14 03:53:45 +00:00
Peter Steinberger
3885a2a20f
ci: fix yaml indentation for python blocks
2025-12-14 03:51:13 +00:00
Peter Steinberger
dde9fddae4
style(swift): fix lint and formatting warnings
2025-12-14 03:49:34 +00:00
Peter Steinberger
3a08e6df9d
ui(macos): skip local onboarding steps in remote mode
2025-12-14 03:49:17 +00:00
Peter Steinberger
f427bec31c
ci: fix python heredoc indentation
2025-12-14 03:46:03 +00:00
Peter Steinberger
67e0739bec
ui(macos): lower onboarding welcome content
2025-12-14 03:45:27 +00:00
Peter Steinberger
c7022cc139
ci: pick iOS simulator via simctl json
2025-12-14 03:39:33 +00:00
Peter Steinberger
65a0de8979
ci: raise iOS coverage gate to 50%
2025-12-14 03:39:33 +00:00
Peter Steinberger
d0134722af
test(ios): cover bridge client + more views
2025-12-14 03:39:33 +00:00
Peter Steinberger
efc7181aa0
fix(macos): hide session store path in remote mode
2025-12-14 03:38:47 +00:00
Peter Steinberger
3729d269d0
feat(macos): move camera setting to General
2025-12-14 03:33:24 +00:00
Peter Steinberger
7dd8a7f2e3
ci: add Android build job
2025-12-14 03:31:00 +00:00
Peter Steinberger
56bbcfc3ee
ci: enforce 40% iOS coverage
2025-12-14 03:29:08 +00:00
Peter Steinberger
eec6212cdf
test(ios): add smoke coverage tests
2025-12-14 03:29:08 +00:00
Peter Steinberger
a5b3b8743a
docs: recommend git repo for workspace backups
2025-12-14 03:19:02 +00:00
Peter Steinberger
4dd9072a2b
chore(ios): gitignore provisioning profiles
2025-12-14 03:16:50 +00:00
Peter Steinberger
073285409b
feat: bootstrap agent workspace and AGENTS.md
2025-12-14 03:14:58 +00:00
Peter Steinberger
41da61dd6a
fix(android): make settings sheet scrollable
2025-12-14 03:13:36 +00:00
Peter Steinberger
35e8dae939
fix(android): inset top buttons for status bar
2025-12-14 03:10:46 +00:00
Peter Steinberger
05e77b69c4
ci: emit swift + iOS coverage
2025-12-14 03:07:43 +00:00
Peter Steinberger
745eefe0be
test(macos): cover settings + activity models
2025-12-14 03:06:12 +00:00
Peter Steinberger
d7165b4720
feat(ios): add always-on status overlay
2025-12-14 03:00:55 +00:00
Peter Steinberger
7b1163f75c
fix(ios): satisfy Sendable in bridge timeout
2025-12-14 03:00:55 +00:00
Peter Steinberger
507f5623f4
fix: expand reply cwd (~) and document AGENTS
2025-12-14 03:00:18 +00:00
Peter Steinberger
5ace7c9c66
test(macos): add settings view smoke coverage
2025-12-14 02:55:31 +00:00
Peter Steinberger
3b35b762cb
fix(macos): avoid health polling in tests
2025-12-14 02:55:31 +00:00
Peter Steinberger
dbd3865e3b
test(ios): cover settings host/port parsing
2025-12-14 02:47:07 +00:00
Peter Steinberger
6bf1e6fa06
test(ios): cover voice trigger + camera clamps
2025-12-14 02:47:06 +00:00
Peter Steinberger
1c0170554e
fix(ios): timeout bridge connect
2025-12-14 02:41:51 +00:00
Peter Steinberger
1d79254053
ci: run iOS xcodebuild tests
2025-12-14 02:37:47 +00:00
Peter Steinberger
974ab5a8dd
test(ios): add bridge session + keychain suites
2025-12-14 02:37:47 +00:00
Peter Steinberger
eaebf4b896
chore(android): update toolchain and deps
2025-12-14 02:37:47 +00:00
Peter Steinberger
cf747e1b82
chore(deps): bump pnpm dependencies
2025-12-14 02:37:47 +00:00
Peter Steinberger
455fe15bd1
Merge remote-tracking branch 'origin/main'
2025-12-14 02:37:13 +00:00
Peter Steinberger
c4d0eb9350
fix(ios): make fastlane beta lane work
2025-12-14 02:35:59 +00:00
Peter Steinberger
10d95348b1
fix(ios): make fastlane beta lane work
2025-12-14 02:35:35 +00:00
Peter Steinberger
f86b1cf6a1
fix(camera): modernize mp4 export
2025-12-14 02:34:22 +00:00
Peter Steinberger
259e9cfccf
chore(mac): bump Peekaboo submodule
2025-12-14 02:31:31 +00:00
Peter Steinberger
7318b20f55
chore(fastlane): support p8 key path
2025-12-14 02:20:25 +00:00
Peter Steinberger
322a36f365
chore(fastlane): support p8 key path
2025-12-14 02:19:51 +00:00
Peter Steinberger
b8b20eac6d
fix(ios): make connection badge visible
2025-12-14 02:19:20 +00:00
Peter Steinberger
1fb123d701
Merge remote-tracking branch 'origin/main' into tmp/ios-statusicon
2025-12-14 02:18:09 +00:00
Peter Steinberger
138f4bd850
fix(ios): show connection status badge
2025-12-14 02:17:54 +00:00
Peter Steinberger
20abf31093
test(ios): share scheme and add deep link tests
2025-12-14 02:17:44 +00:00
Peter Steinberger
4abc551f9e
chore(android): bump AGP to 8.6.1
2025-12-14 02:16:46 +00:00
Peter Steinberger
67707763f7
docs(android): expand node README
2025-12-14 02:14:52 +00:00
Peter Steinberger
df8915cf5c
test(android): add bridge unit tests
2025-12-14 02:14:05 +00:00
Peter Steinberger
a1d16c61ec
feat(ios): add fastlane setup
2025-12-14 02:10:31 +00:00
Peter Steinberger
64b5eb8279
test(ios): add unit test target
2025-12-14 02:05:50 +00:00
Peter Steinberger
c66122c255
fix(ios): set CFBundleIconName
2025-12-14 02:05:44 +00:00
Peter Steinberger
b792175ec5
feat(android): keep node connected via foreground service
2025-12-14 02:01:56 +00:00
Peter Steinberger
b944bee121
chore(mac): sync vendored Peekaboo
2025-12-14 02:00:55 +00:00
Peter Steinberger
88ff2f79d5
test(macos): cover camera snap defaults
2025-12-14 02:00:48 +00:00
Peter Steinberger
c3fa1fb736
feat(camera): share jpeg transcoder + default maxWidth
2025-12-14 02:00:48 +00:00
Peter Steinberger
e9eb9edc23
fix(ios): remove white border from app icon
2025-12-14 01:58:35 +00:00
Peter Steinberger
e8018d8008
feat(macos): add OpenAI Whisper tool
2025-12-14 01:57:12 +00:00
Peter Steinberger
694a10f604
fix(web): use heartbeat inbound msg for delivery
2025-12-14 01:55:40 +00:00
Peter Steinberger
b2378c01ea
feat(android): add Compose node app (bridge+canvas+chat+camera)
2025-12-14 01:55:40 +00:00
Peter Steinberger
e2451484d9
feat(ios): unify manual bridge config and auto-reconnect
2025-12-14 01:55:40 +00:00
Peter Steinberger
dccdc950bf
feat(gateway): add bridge RPC chat history and push
2025-12-14 01:55:40 +00:00
Peter Steinberger
dd7be2bfd8
feat(macos): refresh tools roster
2025-12-14 01:54:10 +00:00
Peter Steinberger
66b05163e3
fix(ios): ensure app icon asset catalog
2025-12-14 01:50:51 +00:00
Peter Steinberger
7789bf6907
chore(mac): sync vendored Peekaboo
2025-12-14 01:47:05 +00:00
Peter Steinberger
8b6abe0151
fix(web): heartbeat fallback after group inbound
2025-12-14 01:26:40 +00:00
Peter Steinberger
25eb40ab31
chore(macos): swiftformat
2025-12-14 01:11:22 +00:00
Peter Steinberger
0336c1fa37
fix(ios): use mac icon + avoid voice wake crash
2025-12-14 01:09:40 +00:00
Peter Steinberger
09541de076
fix(mac): move menu separator below context card
2025-12-14 00:57:34 +00:00
Peter Steinberger
2583fb66cc
fix(webchat): stream assistant events and correlate runId
2025-12-14 00:56:06 +00:00
Peter Steinberger
037ea92679
docs(site): update docs nav
2025-12-14 00:55:38 +00:00
Peter Steinberger
38f65e7053
Merge remote-tracking branch 'origin/main'
2025-12-14 00:55:14 +00:00
Peter Steinberger
ebbc416d4b
test(cli): cover camera flags
2025-12-14 00:54:49 +00:00
Peter Steinberger
13c4f8da2b
Merge remote-tracking branch 'origin/main'
2025-12-14 00:52:57 +00:00
Peter Steinberger
099b8c9fa5
Merge origin/main
2025-12-14 00:52:40 +00:00
Peter Steinberger
1638d32e1c
docs: sync telegram + remote summaries
2025-12-14 00:52:37 +00:00
Peter Steinberger
13e1c93c74
docs(site): fix Clawd setup link
2025-12-14 00:52:14 +00:00
Peter Steinberger
affbd48a3f
docs(site): refresh footer + agent blurb
2025-12-14 00:50:57 +00:00
Peter Steinberger
00f83ca7af
docs(index): update architecture + quickstart
2025-12-14 00:50:41 +00:00
Peter Steinberger
441bd25f90
docs(clawd): update install + session store path
2025-12-14 00:50:26 +00:00
Peter Steinberger
128df57005
docs: refer to session store
2025-12-14 00:50:12 +00:00
Peter Steinberger
a80cd26341
docs: clarify legacy control + sessions path
2025-12-14 00:49:54 +00:00
Peter Steinberger
700212608a
docs(remote): clarify ssh tunneling
2025-12-14 00:49:34 +00:00
Peter Steinberger
8fb064ed70
docs(telegram): clarify polling + webhook config
2025-12-14 00:49:18 +00:00
Peter Steinberger
a92eb1f33d
feat(camera): add snap/clip capture
2025-12-14 00:48:58 +00:00
Peter Steinberger
2454e67e09
feat(ios): reconnect to last discovered gateway
2025-12-14 00:48:16 +00:00
Peter Steinberger
862a490038
feat(ios): pulse settings indicator
2025-12-14 00:48:09 +00:00
Peter Steinberger
ffc57d5f20
Merge remote-tracking branch 'origin/main'
2025-12-14 00:43:22 +00:00
Peter Steinberger
e96654ced1
docs(site): note fn+F2 on mac
2025-12-14 00:42:53 +00:00
Peter Steinberger
dd763b45e1
chore(ci): sync protocol + swiftformat
2025-12-14 00:36:30 +00:00
Peter Steinberger
2710841801
docs(readme): reflect gateway + companion apps
2025-12-14 00:34:26 +00:00
Peter Steinberger
a9e1eabcbd
docs(changelog): add 2.0.0-beta1 entry
2025-12-14 00:34:22 +00:00
Peter Steinberger
30a2e47390
chore(mac): bump Peekaboo submodule
2025-12-14 00:32:52 +00:00
Peter Steinberger
f7076c38ea
feat(ios): reconnect to last bridge
2025-12-14 00:27:26 +00:00
Peter Steinberger
e6d522493b
feat(chat): share SwiftUI chat across macOS+iOS
2025-12-14 00:17:07 +00:00
Peter Steinberger
c286573f5c
docs(ios): update Iris connect runbook
2025-12-14 00:08:00 +00:00
Peter Steinberger
aef18b7359
fix(gateway): resolve iOS node invokes
2025-12-14 00:00:05 +00:00
Peter Steinberger
17e183f5cf
chore(protocol): regen swift models
2025-12-13 23:51:18 +00:00
Peter Steinberger
a53d8ed4e4
feat(instances): show OS version
2025-12-13 23:51:18 +00:00
Peter Steinberger
755e329b01
docs(readme): describe macOS + iOS companion apps
2025-12-13 23:50:23 +00:00
Peter Steinberger
765c466d6d
docs(ios): add Iris connection runbook
2025-12-13 23:49:38 +00:00
Peter Steinberger
cf3becfb2e
refactor(macos)!: remove clawdis-mac ui; host PeekabooBridge
2025-12-13 23:49:29 +00:00
Peter Steinberger
b508f642b2
iOS: configurable voice wake words
2025-12-13 23:49:22 +00:00
Peter Steinberger
3fcee21ff7
feat(gateway): add node.invoke for iOS canvas
2025-12-13 23:45:16 +00:00
Peter Steinberger
b01cb41950
iOS: copy bridge URL/host/port
2025-12-13 23:40:12 +00:00
Peter Steinberger
7642cbb5b7
iOS: show local IP in settings
2025-12-13 23:37:02 +00:00
Peter Steinberger
7a6334d920
iOS: copy + clean bridge address
2025-12-13 23:32:57 +00:00
Peter Steinberger
d96bc38bea
style(macos): mark Reject destructive
2025-12-13 23:32:57 +00:00
Peter Steinberger
a31a569d52
chore(peekaboo): update submodule
2025-12-13 23:22:24 +00:00
Peter Steinberger
0d3aacd316
chore: bump Peekaboo submodule
2025-12-13 23:02:04 +00:00
Peter Steinberger
ece8a3e701
fix(macos): clamp web chat to visible frame
2025-12-13 22:38:10 +00:00
Peter Steinberger
ceb3980b93
iOS: disable VoiceWake on Simulator
2025-12-13 20:52:31 +00:00
Peter Steinberger
01eba1b8d9
chore: bump Peekaboo submodule
2025-12-13 20:46:20 +00:00
Peter Steinberger
cf28ea0d1c
test: raise vitest coverage
2025-12-13 20:37:56 +00:00
Peter Steinberger
41dd3b11b7
fix: harden pi package resolution
2025-12-13 20:37:46 +00:00
Peter Steinberger
5a1687484c
fix(ci): stabilize runners
2025-12-13 20:04:33 +00:00
Peter Steinberger
6143338116
chore(swift): run swiftformat and clear swiftlint
2025-12-13 19:53:17 +00:00
Peter Steinberger
39c232548c
fix(macos): restore control + webchat build
2025-12-13 19:38:35 +00:00
Peter Steinberger
e2a93e17f9
refactor: apply stashed bridge + CLI changes
2025-12-13 19:30:46 +00:00
Peter Steinberger
0b990443de
style(macos): tidy settings and CLI
2025-12-13 19:23:41 +00:00
Peter Steinberger
02fe19effa
chore(macos): expose remote test helper
2025-12-13 19:22:57 +00:00
Peter Steinberger
920cc9ac38
fix(ios): avoid actor-isolated access from audio tap
2025-12-13 19:14:36 +00:00
Peter Steinberger
ba22890205
feat(browser): add ai snapshot refs + click
2025-12-13 18:48:55 +00:00
Peter Steinberger
a59cfa7670
chore(deps): add playwright-core
2025-12-13 18:48:49 +00:00
Peter Steinberger
7cdd7c5333
fix(browser): apply clawd theme color
2025-12-13 18:41:31 +00:00
Peter Steinberger
e3379b960e
chore(peekaboo): update bridge host TeamID check
2025-12-13 18:35:26 +00:00
Peter Steinberger
7b675864a8
feat(browser): add DOM inspection commands
2025-12-13 18:33:04 +00:00
Peter Steinberger
3b853b329f
fix(bridge): prefer bonjour TXT displayName
2025-12-13 18:31:06 +00:00
Peter Steinberger
537c515dde
fix(macos): show full browser tab ids
2025-12-13 18:17:01 +00:00
Peter Steinberger
238afbc2f8
fix(browser): accept targetId prefixes
2025-12-13 18:17:01 +00:00
Peter Steinberger
2a71c20ee4
fix(mac): place debug menu under Settings
2025-12-13 18:11:00 +00:00
Peter Steinberger
40c66b1741
chore(webchat): refresh bundled assets
2025-12-13 18:10:29 +00:00
Peter Steinberger
94ad808028
fix(mac): clarify attach-only gateway errors
2025-12-13 18:10:29 +00:00
Peter Steinberger
0c8b5ed59a
test(mac): cover codesign + node manager paths
2025-12-13 18:10:29 +00:00
Peter Steinberger
56fe23549c
feat(browser): clamp screenshots under 5MB
2025-12-13 18:10:29 +00:00
Peter Steinberger
867d7e5d25
chore(peekaboo): bump submodule
2025-12-13 18:09:45 +00:00
Peter Steinberger
a0cd761c96
fix(mac): flatten config sections + use checkboxes
2025-12-13 18:06:32 +00:00
Peter Steinberger
7c3502f031
fix(ios): improve bridge discovery and pairing UX
2025-12-13 17:58:03 +00:00
Peter Steinberger
61ab07ced3
fix(mac): flatten debug sections + use checkboxes
2025-12-13 17:57:45 +00:00
Peter Steinberger
281c6d6069
chore(deps): update JS deps
2025-12-13 17:52:23 +00:00
Peter Steinberger
82634dfe3b
fix(mac): add divider below context
2025-12-13 17:51:25 +00:00
Peter Steinberger
9be3394bac
fix(cli): improve browser control errors
2025-12-13 17:37:37 +00:00
Peter Steinberger
4228ee326c
fix(browser): open tabs via CDP websocket
2025-12-13 17:37:37 +00:00
Peter Steinberger
fa1110e4d3
refactor(mac): reorganize debug settings
2025-12-13 17:36:35 +00:00
Peter Steinberger
050c47d3a7
fix(macos): encode gateway params without AnyHashable
2025-12-13 17:31:11 +00:00
Peter Steinberger
161895ed1a
fix(mac): show clawd browser path in config
2025-12-13 17:23:41 +00:00
Peter Steinberger
aeffdc3632
fix(mac): show link cursor in About
2025-12-13 17:18:22 +00:00
Peter Steinberger
ecf0da1796
docs(mac): document clawdis ui passthrough
2025-12-13 17:17:42 +00:00
Peter Steinberger
990fafa988
fix(mac): use pointing hand cursor on tool links
2025-12-13 17:15:31 +00:00
Peter Steinberger
ceb0a8b3e3
fix(macos): surface gateway sessions load errors
2025-12-13 17:15:00 +00:00
Peter Steinberger
3b283f3167
fix(cli): improve ui arg passthrough
2025-12-13 17:12:51 +00:00
Peter Steinberger
2b29d08064
chore(peekaboo): bump submodule
2025-12-13 17:11:14 +00:00
Peter Steinberger
86ed3de1c1
feat(browser): add clawdis-mac browser controls
2025-12-13 17:05:58 +00:00
Peter Steinberger
acf035d848
fix(mac): align config tab padding
2025-12-13 17:00:44 +00:00
Peter Steinberger
cab71c9711
fix(mac): polish config + cron layouts
2025-12-13 16:59:25 +00:00
Peter Steinberger
c17440f5b4
feat(mac): host PeekabooBridge for ui
2025-12-13 16:56:22 +00:00
Peter Steinberger
fd566bda14
chore(submodule): add Peekaboo
2025-12-13 16:56:22 +00:00
Peter Steinberger
e47dccbe87
chore(webchat): refresh webchat bundle
2025-12-13 16:48:53 +00:00
Peter Steinberger
2a172f9779
fix(mac): expand config settings width
2025-12-13 16:48:36 +00:00
Peter Steinberger
ce630a6381
feat(webchat): polish SwiftUI chat
2025-12-13 16:45:35 +00:00
Peter Steinberger
a882798143
fix(mac): hide empty MCP servers section
2025-12-13 16:44:43 +00:00
Peter Steinberger
44f9327087
test(gateway): extend sessions RPC coverage
2025-12-13 16:36:09 +00:00
Peter Steinberger
e654676148
docs(session): note gateway session source of truth
2025-12-13 16:33:22 +00:00
Peter Steinberger
840e266b5d
feat(macos): load sessions via gateway
2025-12-13 16:33:14 +00:00
Peter Steinberger
7d89fa2591
feat(gateway): add sessions list/patch RPC
2025-12-13 16:32:42 +00:00
Peter Steinberger
5f67c023a2
docs(clawdis-mac): improve help for browser control
2025-12-13 16:26:48 +00:00
Peter Steinberger
af3e5b299c
feat(clawdis-mac): add browser subcommand
2025-12-13 16:26:48 +00:00
Peter Steinberger
b3b4013637
feat(mac): restructure config settings grid
2025-12-13 16:26:48 +00:00
Peter Steinberger
9ad341d668
feat(mac): add browser control menu toggle
2025-12-13 16:26:48 +00:00
Peter Steinberger
d7a8d9a1c7
fix(browser): default control url uses 18791
2025-12-13 16:26:48 +00:00
Peter Steinberger
2d36ae6326
fix(browser): derive cdp port from control url
2025-12-13 16:26:48 +00:00
Peter Steinberger
208ba02a4a
feat(browser): add clawd browser control
2025-12-13 16:26:48 +00:00
Peter Steinberger
4cdb21c5cd
docs: pixel lobster terminal theme
2025-12-13 16:23:15 +00:00
Peter Steinberger
5d6cc8125b
test(telegram): cover inbound media download
2025-12-13 16:18:48 +00:00
Peter Steinberger
237933069e
fix(telegram): download inbound media via file_path
2025-12-13 16:18:44 +00:00
Peter Steinberger
99660db73f
fix(macos): prevent menubar menu width jump
2025-12-13 15:50:57 +00:00
Peter Steinberger
68fa676cbf
chore(webchat): refresh bundled webchat
2025-12-13 14:19:42 +00:00
Peter Steinberger
8794f002d5
Merge remote-tracking branch 'origin/main'
2025-12-13 14:15:48 +00:00
Peter Steinberger
d52ef185b1
fix(macos): make status lines non-selectable
2025-12-13 13:59:53 +00:00
Peter Steinberger
3ca77c46c7
fix(ui): improve light-mode green for context bar
2025-12-13 13:55:16 +00:00
Peter Steinberger
89d5d807ee
docs: pi-only terminology
2025-12-13 13:26:44 +00:00
Peter Steinberger
9e3427a37e
docs(readme): pi-only wording
2025-12-13 13:26:44 +00:00
Peter Steinberger
7ce25ecfca
docs(site): refresh clawdis.ai for Pi
2025-12-13 13:26:44 +00:00
Peter Steinberger
1ca77bee26
chore(ios): rename app to Clawdis
2025-12-13 13:11:31 +00:00
Peter Steinberger
5dbc7cc68d
feat(onboarding): highlight voice wake, panel, and tools
2025-12-13 13:04:41 +00:00
Peter Steinberger
0d45c78917
fix(onboarding): drop finish footer line
2025-12-13 13:02:03 +00:00
Peter Steinberger
31fb4f7c8b
fix(macos): install gateway via npm
2025-12-13 13:00:59 +00:00
Peter Steinberger
e9acb6fad5
fix(ui): align SSH target discovery row
2025-12-13 12:58:00 +00:00
Peter Steinberger
ab402e1178
docs(onboarding): explain primary gateway and remotes
2025-12-13 12:55:09 +00:00
Peter Steinberger
293701f520
fix(onboarding): tighten welcome copy and raise nav
2025-12-13 12:50:30 +00:00
Peter Steinberger
7b38ba0e65
refactor(cron): drop auto-migration
2025-12-13 12:45:02 +00:00
Peter Steinberger
5d8ee8fc28
docs(cron): update store + run log paths
2025-12-13 12:38:12 +00:00
Peter Steinberger
3e2e4be680
refactor(cron): move store into ~/.clawdis/cron
2025-12-13 12:38:08 +00:00
Peter Steinberger
3863fe6412
fix(ios): stabilize voice wake + bridge UI
2025-12-13 12:29:39 +00:00
Peter Steinberger
2b71ea21ad
fix(gateway): advertise bonjour hostname
2025-12-13 12:29:39 +00:00
Peter Steinberger
36f21c5a4f
feat!(mac): move screenshot to ui
2025-12-13 12:29:39 +00:00
Peter Steinberger
cf90bd9c86
feat(macos): manage cron jobs
2025-12-13 12:09:27 +00:00
Peter Steinberger
5f159c43c5
feat(cli): expand cron commands
2025-12-13 12:09:20 +00:00
Peter Steinberger
c02613e15f
feat(cron): post isolated summaries
2025-12-13 12:09:15 +00:00
Peter Steinberger
32cd1175fb
refactor(cron): simplify main-summary prefix config
2025-12-13 11:43:18 +00:00
Peter Steinberger
0152e053e1
feat!(mac): add ui screens + text clawdis-mac
2025-12-13 11:42:42 +00:00
Peter Steinberger
8d1e73edc7
feat(cron): always post isolated summaries to main
2025-12-13 11:33:46 +00:00
Peter Steinberger
a5f51eadf1
macOS: add onboarding security notice
2025-12-13 11:23:46 +00:00
Peter Steinberger
4ac21a4f63
docs(onboarding): explain WhatsApp + Telegram setup
2025-12-13 11:19:54 +00:00
Peter Steinberger
91fdf2aa25
macOS: align context padding
2025-12-13 11:16:33 +00:00
Peter Steinberger
44614d4a7d
Merge remote-tracking branch 'origin/main'
2025-12-13 11:14:56 +00:00
Peter Steinberger
0e9f617667
macOS: align sessions list with header
2025-12-13 11:14:50 +00:00
Peter Steinberger
7e7e348a14
fix(bonjour): normalize hostnames for beacons
2025-12-13 11:14:05 +00:00
Peter Steinberger
cc3d0d1ef7
Merge remote-tracking branch 'origin/main'
2025-12-13 11:11:32 +00:00
Peter Steinberger
5b608718bb
test(clawdiskit): cover BonjourEscapes decoding
2025-12-13 11:10:30 +00:00
Peter Steinberger
3a6ab81549
fix(ui): increase onboarding horizontal padding
2025-12-13 11:10:22 +00:00
Peter Steinberger
c48681b2f0
Merge remote-tracking branch 'origin/main'
2025-12-13 11:04:31 +00:00
Peter Steinberger
86d786cbc0
macOS: increase context card row spacing
2025-12-13 11:04:11 +00:00
Peter Steinberger
ec653b7b80
chore: share bonjour escapes + refresh webchat bundle
2025-12-13 10:59:48 +00:00
Peter Steinberger
cbc34e1c8a
fix(ui): show bonjour masters inline
2025-12-13 10:48:25 +00:00
Peter Steinberger
1f37d94f9e
feat(discovery): bonjour beacons + bridge presence
2025-12-13 04:28:43 +00:00
Peter Steinberger
3ee0e041fa
Merge remote-tracking branch 'origin/main'
2025-12-13 04:01:20 +00:00
Peter Steinberger
4074f4fffa
macOS: adjust context card padding
2025-12-13 04:00:48 +00:00
Peter Steinberger
7286fd6e3f
feat(macos): add master discovery to onboarding
2025-12-13 04:00:25 +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
36ff508fec
macOS: stabilize context menu card layout
2025-12-13 03:52:09 +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
163080b609
test(cron): cover disabled scheduler
2025-12-13 03:43:55 +00:00
Peter Steinberger
4938fbffa8
feat(macos): show cron scheduler status
2025-12-13 03:43:51 +00:00
Peter Steinberger
d5db20c296
feat(cli): add cron status + warn when disabled
2025-12-13 03:43:47 +00:00
Peter Steinberger
415cb857d9
feat(cron): add scheduler status endpoint
2025-12-13 03:43:40 +00:00
Peter Steinberger
a641250da6
macOS: prewarm context menu card
2025-12-13 03:42:36 +00:00
Peter Steinberger
4d674a3f17
macOS: compact context menu context rows
2025-12-13 03:30:50 +00:00
Peter Steinberger
12d9a13af0
fix(mac): preserve SwiftUI menu delegate
2025-12-13 03:11:06 +00:00
Peter Steinberger
164841f299
refactor(mac): inject context card as NSMenuItem view
2025-12-13 03:03:08 +00:00
Peter Steinberger
778361686c
macOS: widen settings window
2025-12-13 03:00:35 +00:00
Peter Steinberger
29907a4c3f
docs(mac): drop screenshot alias plan
2025-12-13 02:51:48 +00:00
Peter Steinberger
81f38342bf
Merge remote-tracking branch 'origin/main'
2025-12-13 02:50:57 +00:00
Peter Steinberger
36b93c8dc7
security(macos): require TeamID for control socket
2025-12-13 02:50:20 +00:00
Peter Steinberger
e95fdbbc37
fix(ios): prettify bonjour endpoint labels
2025-12-13 02:48:06 +00:00
Peter Steinberger
3001f115b6
fix(mac): keep context row labels together
2025-12-13 02:47:39 +00:00
Peter Steinberger
21649d81d2
fix(presence): report bridged iOS nodes
2025-12-13 02:35:35 +00:00
Peter Steinberger
5118ba3dd2
macOS: add Cron settings tab
2025-12-13 02:34:38 +00:00
Peter Steinberger
f9409cbe43
Cron: add scheduler, wakeups, and run history
2025-12-13 02:34:38 +00:00
Peter Steinberger
572d17f46b
feat(mac): tighten context session row
2025-12-13 02:34:37 +00:00
Peter Steinberger
f466f1bf46
feat(mac): compact context session rows
2025-12-13 02:34:37 +00:00
Peter Steinberger
594315d90b
ui(ios): glassy settings button
2025-12-13 02:19:34 +00:00
Peter Steinberger
f84895f1f1
fix(ios): make canvas full-bleed
2025-12-13 02:15:03 +00:00
Peter Steinberger
952810f76c
docs(agents): forbid git stash without consent
2025-12-13 02:08:18 +00:00
Peter Steinberger
73ccbedcdb
ui(ios): clean up connected bridge list
2025-12-13 02:02:38 +00:00
Peter Steinberger
7ef83311bb
feat(bridge): show node ip in pairing
2025-12-13 01:57:40 +00:00
Peter Steinberger
416c376077
feat(ios): add close button and ready canvas
2025-12-13 01:49:04 +00:00
Peter Steinberger
ef83a07066
fix(macos): harden remote ssh tunnel
2025-12-13 01:43:23 +00:00
Peter Steinberger
ae0c1573fd
refactor(swift): rename ClawdisNodeKit to ClawdisKit
2025-12-13 01:33:30 +00:00
Peter Steinberger
378e5acd23
feat(deeplink): forward agent links via bridge
2025-12-13 01:19:36 +00:00
Peter Steinberger
a56daa6c06
feat(macos): add Allow Canvas toggle to settings
2025-12-13 01:19:36 +00:00
Peter Steinberger
84399e62ae
fix(mac): render context sessions card with labels
2025-12-13 01:18:42 +00:00
Peter Steinberger
387615e99f
feat(mac): show session labels under context bars
2025-12-13 01:10:17 +00:00
Peter Steinberger
f98ab2d037
fix(macos): prevent control socket hangs
2025-12-13 01:02:47 +00:00
Peter Steinberger
19ce08b4d0
fix(mac): avoid collapsed context pills in menu
2025-12-13 00:51:05 +00:00
Peter Steinberger
8cc2dc715c
refactor(ios): minimal full-screen canvas
2025-12-13 00:50:20 +00:00
Peter Steinberger
ca20a2dc06
Merge remote-tracking branch 'origin/main'
2025-12-13 00:48:01 +00:00
Peter Steinberger
f9b1a96c89
chore(macos): move Permissions tab after Tools
2025-12-13 00:47:08 +00:00
Peter Steinberger
854f07d735
feat(mac): compact context sessions in menu
2025-12-13 00:39:25 +00:00
Peter Steinberger
7f4f01009b
refactor(ios): remove manual URL controls
2025-12-13 00:31:52 +00:00
Peter Steinberger
117b01acbd
fix(ios): avoid MainActor isolation in audio tap
2025-12-13 00:27:15 +00:00
Peter Steinberger
2b38ddf78d
fix(ios): avoid actor isolation in audio tap
2025-12-13 00:27:15 +00:00
Peter Steinberger
5e51107711
fix(mac): size context bar to menu
2025-12-13 00:23:00 +00:00
Peter Steinberger
3bb33bdeed
fix(mac): render context bar as image
2025-12-13 00:19:29 +00:00
Peter Steinberger
9b9fa009d1
fix(mac): render context bar reliably
2025-12-13 00:13:33 +00:00
Peter Steinberger
072ad8d371
fix(mac): show cached context usage
2025-12-12 23:44:55 +00:00
Peter Steinberger
8846ffec64
fix: expose heartbeat controls and harden mac CLI
2025-12-12 23:34:26 +00:00
Peter Steinberger
3b72ed6e1a
feat(macos): add clawdis://agent deep link
2025-12-12 23:33:38 +00:00
Peter Steinberger
35b7c0f558
feat(mac): show context usage bars
2025-12-12 23:33:15 +00:00
Peter Steinberger
d5d80f4247
feat(gateway)!: switch handshake to req:connect (protocol v2)
2025-12-12 23:29:57 +00:00
Peter Steinberger
e915ed182d
fix(macos): clarify presence update source label
2025-12-12 23:27:08 +00:00
Peter Steinberger
c3aed2543e
fix(status): account cached prompt tokens
2025-12-12 23:22:24 +00:00
Peter Steinberger
e502ad13f9
fix(node): prevent iOS VoiceWake crash
2025-12-12 23:07:30 +00:00
Peter Steinberger
952d924581
fix(mac): recover control tunnel after restart
...
# Conflicts:
# apps/macos/Sources/Clawdis/GatewayConnection.swift
2025-12-12 23:07:30 +00:00
Peter Steinberger
0484aba892
test(web): retry session tmp cleanup
2025-12-12 22:55:39 +00:00
Peter Steinberger
03c84d0f11
fix(mac): make Canvas file watcher reliable
2025-12-12 22:50:25 +00:00
Peter Steinberger
086f98471e
docs: finalize gateway refactor notes
2025-12-12 22:27:18 +00:00
Peter Steinberger
cc4f0d8acc
test(macos): cover gateway endpoint store
2025-12-12 22:27:18 +00:00
Peter Steinberger
c7bd4b5c1d
refactor(macos): extract gateway payload decoding
2025-12-12 22:27:18 +00:00
Peter Steinberger
14e3b34a8e
refactor(macos): centralize gateway endpoint resolution
2025-12-12 22:27:18 +00:00
Peter Steinberger
6354dddff2
fix(macos): avoid ptt audio teardown race
2025-12-12 22:24:24 +00:00
Peter Steinberger
c50c3699d9
fix(macos): keep voice wake overlay on top
2025-12-12 22:09:14 +00:00
Peter Steinberger
6a7f955818
refactor(macos): replace gateway NotificationCenter with event bus
2025-12-12 22:06:40 +00:00
Peter Steinberger
9cf457be0a
fix(bridge): use default Bonjour domain
2025-12-12 21:59:04 +00:00
Peter Steinberger
e31383a8f1
fix(ios): harden voice wake callbacks
2025-12-12 21:59:04 +00:00
Peter Steinberger
13b8dc61ba
fix(mac): timeout ClawdisCLI socket calls
2025-12-12 21:57:33 +00:00
Peter Steinberger
61085f6141
fix(macos): avoid external open for about:blank
2025-12-12 21:56:54 +00:00
Peter Steinberger
d8cb1daa78
test(macos): cover gateway connection reuse
2025-12-12 21:42:16 +00:00
Peter Steinberger
de2e341947
fix(mac): avoid double-trigger voice wake
2025-12-12 21:37:59 +00:00
Peter Steinberger
e944a0239d
fix(macos): share gateway websocket connection
2025-12-12 21:35:00 +00:00
Peter Steinberger
ce8db12b22
fix(mac): keep voice overlay above canvas
2025-12-12 21:26:04 +00:00
Peter Steinberger
1d41129b6c
feat(ios): add settings UI
2025-12-12 21:19:39 +00:00
Peter Steinberger
6d6c3ad2c4
feat(ios): add ClawdisNode app scaffold
2025-12-12 21:19:39 +00:00
Peter Steinberger
0b532579d8
feat(bridge): add Bonjour node bridge
2025-12-12 21:19:39 +00:00
Peter Steinberger
b9007dc721
feat(mac): add rolling diagnostics log
2025-12-12 21:19:39 +00:00
Peter Steinberger
211efffa10
fix(gateway): treat webchat last as whatsapp
2025-12-12 21:05:39 +00:00
Peter Steinberger
e3b50b7d12
fix(macos): show tool-use badge glyph
2025-12-12 21:02:38 +00:00
Peter Steinberger
aae49f1d68
fix(gateway): don"t let webchat clobber last route
2025-12-12 21:00:33 +00:00
Peter Steinberger
6b4141247e
feat(macos): enlarge tool-use badge
2025-12-12 20:45:51 +00:00
Peter Steinberger
327f6e7e25
fix(mac): persist Canvas frame across reopen
2025-12-12 20:33:40 +00:00
Peter Steinberger
296c0a6b70
feat(mac): allow Canvas placement and resizing
2025-12-12 20:28:19 +00:00
Peter Steinberger
356b6e0483
fix(mac): keep voice wake listening
2025-12-12 20:13:41 +00:00
Peter Steinberger
08a473fb35
fix(mac): keep Canvas below Voice Wake overlay
2025-12-12 20:10:29 +00:00
Peter Steinberger
893eef846d
fix(mac): add draggable/closable Canvas hover chrome
2025-12-12 20:08:15 +00:00
Peter Steinberger
4ecd35c275
fix(mac): render Canvas HTML correctly
2025-12-12 20:01:12 +00:00
Peter Steinberger
27a7d9f9d1
feat(mac): add agent-controlled Canvas panel
2025-12-12 19:54:01 +00:00
Peter Steinberger
c0abab226d
Merge remote-tracking branch 'origin/main'
2025-12-12 19:28:10 +00:00
Peter Steinberger
f1320b79ce
feat(mac): add overlay notification delivery
2025-12-12 19:27:38 +00:00
Peter Steinberger
bf41197b97
fix(mac): open settings for microphone permission
2025-12-12 19:25:21 +00:00
Peter Steinberger
3f7fcad9ac
fix(mac): ignore cancelled webchat navigations
2025-12-12 19:20:47 +00:00
Peter Steinberger
e2ad0ed9f7
fix(mac): disable restricted time-sensitive entitlement
2025-12-12 19:20:47 +00:00
Peter Steinberger
d2158966db
fix(mac): treat timeSensitive as best-effort
2025-12-12 18:58:07 +00:00
Peter Steinberger
8086c66ab8
fix(mac): keep remote control tunnel alive
2025-12-12 18:44:44 +00:00
Peter Steinberger
7d37195c1a
fix(mac): serve webchat locally in remote mode
2025-12-12 18:41:38 +00:00
Peter Steinberger
241cf10bdb
refactor(mac): embed work badge in status icon
2025-12-12 18:40:33 +00:00
Peter Steinberger
337ae05ed8
build(mac): enable time-sensitive notifications
2025-12-12 18:40:09 +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
c86cb4e9a5
macOS: add --priority flag for time-sensitive notifications
...
Add NotificationPriority enum with passive/active/timeSensitive levels
that map to UNNotificationInterruptionLevel. timeSensitive breaks
through Focus modes for urgent notifications.
Usage: clawdis-mac notify --title X --body Y --priority timeSensitive
2025-12-12 18:27:12 +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
37eaa49e4c
fix(mac): allow typing in web chat panel
2025-12-12 18:07:27 +00:00
Peter Steinberger
e64ca7c583
fix(agent): send tau rpc prompt as string
2025-12-12 18:04:13 +00:00
Peter Steinberger
62a7a07127
fix(gateway): ack agent requests immediately
2025-12-12 18:00:49 +00:00
Peter Steinberger
bc618ec290
refactor(auto-reply): remove pi json fallback
2025-12-12 17:43:11 +00:00
Peter Steinberger
0780859a4d
fix(auto-reply): prefer Pi RPC by default
2025-12-12 17:30:34 +00:00
Peter Steinberger
79818f73c0
fix(mac): harden gateway frame decoding
2025-12-12 17:30:21 +00:00
Peter Steinberger
957d7fbe2a
test(voice): cover gateway last-channel whatsapp
2025-12-12 17:29:04 +00:00
Peter Steinberger
6e9d3092a7
fix(voice): persist WhatsApp last route
2025-12-12 17:28:07 +00:00
Peter Steinberger
7dab927260
fix(presence): hide cli sessions; use numeric mac build
2025-12-12 17:27:11 +00:00
Peter Steinberger
c417517f43
fix(mac): reflect agent activity in menu icon
2025-12-12 17:20:06 +00:00
Peter Steinberger
fd0314a6bd
fix(mac): avoid static UserDefaults in InstanceIdentity
2025-12-12 16:59:51 +00:00
Peter Steinberger
6a05d60f41
fix(presence): dedupe instances via stable instanceId
2025-12-12 16:57:25 +00:00
Peter Steinberger
cd84c5ad08
fix(macos): prevent gateway request double-resume
2025-12-12 16:52:36 +00:00
Peter Steinberger
b0187d7f28
Merge remote-tracking branch 'origin/main'
2025-12-12 16:47:24 +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
ea76425f86
docs(readme): describe voice wake reply routing
2025-12-12 16:42:09 +00:00
Peter Steinberger
88936b6216
fix(macos): fix clawdis-mac --version
2025-12-12 16:40:50 +00:00
Peter Steinberger
e6edcd9a7f
Merge remote-tracking branch 'origin/main'
2025-12-12 16:39:27 +00:00
Peter Steinberger
af78762421
style(mac): hud glass voice overlay
2025-12-12 16:39:11 +00:00
Peter Steinberger
bf159bd316
fix(mac): prevent crash decoding GatewayFrame
2025-12-12 16:37:59 +00:00
Peter Steinberger
9eda40234f
test: cover main last-channel routing
2025-12-12 16:35:47 +00:00
Peter Steinberger
00336f554f
docs: clarify voice wake last-channel routing
2025-12-12 16:26:19 +00:00
Peter Steinberger
a524b9ae9b
feat(voicewake): route replies to last channel
2025-12-12 16:22:30 +00:00
Peter Steinberger
3f1bcac077
Merge remote-tracking branch 'origin/main'
2025-12-12 16:10:02 +00:00
Peter Steinberger
679ced7840
mac: remove voice wake forward pref
2025-12-12 16:09:31 +00:00
Peter Steinberger
7422f54212
mac: add gog CLI, remove Gmail/Calendar MCPs
...
- Add gog (unified Google CLI for Gmail, Calendar, Drive, Contacts)
- Remove Gmail MCP and Google Calendar MCP entries (replaced by gog)
- gog installs via brew: steipete/tap/gog
2025-12-12 15:48:36 +00:00
Peter Steinberger
b0384d0335
fix(mac): cache webchat panel
2025-12-12 15:33:41 +00:00
Peter Steinberger
6b64039fcb
fix(mac): keep webchat boot dots
2025-12-12 15:01:20 +00:00
Peter Steinberger
19e7c708ce
test(mac): cover concurrent gateway connect
2025-12-12 14:29:09 +00:00
Peter Steinberger
c8ca5803fc
fix(mac): webchat ws connect
2025-12-12 14:18:53 +00:00
Peter Steinberger
5f48abb451
fix(mac): serialize gateway connect
2025-12-12 14:14:33 +00:00
Peter Steinberger
491fd6b74d
mac: lock control socket to team-signed peers
2025-12-12 01:22:24 +00:00
Peter Steinberger
f1ff24d634
web: default to self-only without config
2025-12-12 01:22:03 +00:00
Peter Steinberger
0242383ec3
test(gateway): cover port lock guard
2025-12-11 18:53:40 +00:00
Peter Steinberger
768887fc0f
style(pi): wrap mode arg lookup
2025-12-11 18:53:34 +00:00
Peter Steinberger
958c13e02d
mac: replace xpc with unix socket control channel
2025-12-11 16:31:15 +01: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
e9fd73141d
health: gateway-only status and stable reconnect
2025-12-10 16:47:38 +00:00
Peter Steinberger
6c005b3d35
fix(session): ignore agent meta session id
2025-12-10 16:38:22 +00:00
Peter Steinberger
2967bc5988
health: stop direct baileys probes
2025-12-10 16:35:42 +00:00
Peter Steinberger
55772eec5a
gateway: force ws-only clients
2025-12-10 16:27:54 +00:00
Peter Steinberger
c2adda1cfe
chore: drop rpc->json fallback
2025-12-10 15:58:45 +00:00
Peter Steinberger
51d77aea2e
fix(auto-reply): acknowledge reset triggers
2025-12-10 15:55:20 +00:00
Peter Steinberger
8f456ea73b
fix(agent): send structured prompt to tau rpc
2025-12-10 15:52:39 +00:00
Peter Steinberger
6459582952
gateway: add webchat handshake logging
2025-12-10 15:32:34 +00:00
Peter Steinberger
3796882d22
webchat: improve logging and static serving
2025-12-10 15:32:29 +00:00
Peter Steinberger
4db69c8eac
fix(auto-reply): fall back to json when rpc prompt empty
2025-12-10 14:58:03 +00:00
Peter Steinberger
f6a86e5527
telegram: fix verbose log ordering
2025-12-10 14:33:09 +00:00
Peter Steinberger
063b35f1dc
mac: surface gateway auth failures
2025-12-10 14:32:54 +00:00
Peter Steinberger
b61147aed0
fix(auto-reply): guard empty rpc prompt
2025-12-10 14:26:03 +00:00
Peter Steinberger
fd3516bc82
fix(pi): skip -p when running rpc
2025-12-10 14:21:38 +00:00
Peter Steinberger
5e4a91f996
Auto-reply: reject empty inbound messages
2025-12-10 13:51:06 +00:00
Peter Steinberger
df4331da04
gateway: dedupe system-event presence
2025-12-10 11:48:17 +00:00
Peter Steinberger
fe3a983d35
mac: include instance id in presence beacons
2025-12-10 11:48:13 +00:00
Peter Steinberger
53c349cb86
RPC: auto-cancel hook UI prompts
2025-12-10 11:46:28 +00:00
Peter Steinberger
8f37f15a33
RPC: handle tau auto-compaction retries
2025-12-10 11:40:32 +00:00
Peter Steinberger
81385cf820
pi: parse turn_end streams
2025-12-10 11:31:28 +00:00
Peter Steinberger
cce65e19e1
mac: add attach-only gateway toggle
2025-12-10 11:31:28 +00:00
Peter Steinberger
c4b02645f5
fix: persist usage from rpc
2025-12-10 11:31:28 +00:00
Peter Steinberger
49e70746f0
webchat: show real ws errors
2025-12-10 11:31:28 +00:00
Peter Steinberger
00ace3bb63
test: add semver and gateway helpers coverage
2025-12-10 11:31:28 +00:00
Peter Steinberger
efde37eb36
test: add gateway/runtime utility coverage
2025-12-10 11:31:28 +00:00
Peter Steinberger
84499ab969
mac: drop yarn fallback
2025-12-10 03:49:25 +01:00
Peter Steinberger
5d26bb2566
gateway: include last input in presence events
2025-12-10 03:48:53 +01:00
Peter Steinberger
657450c40c
fix(voice): unify overlay send flow
2025-12-10 02:52:42 +01:00
Peter Steinberger
cf2b659491
mac: simplify package manager picker
2025-12-10 02:49:39 +01:00
Peter Steinberger
e9679ce993
chore(mac): align remote ssh controls
2025-12-10 02:48:46 +01:00
Peter Steinberger
68c5d61d60
mac: move debug toggles to footer
2025-12-10 02:48:19 +01:00
Peter Steinberger
c4f0236ec0
mac: inline gateway status row
2025-12-10 02:46:59 +01:00
Peter Steinberger
1839c144fa
mac: remove divider above active toggle
2025-12-10 02:44:56 +01:00
Peter Steinberger
d077936a21
mac: align web chat UI with web
2025-12-10 02:18:50 +01:00
Peter Steinberger
6c1638890c
chore(test): document force run and relax coverage scope
2025-12-10 01:06:44 +00:00
Peter Steinberger
7f0f789953
webchat: add centered boot loader
2025-12-10 01:04:34 +00:00
Peter Steinberger
83a2a7a1c2
mac: add swiftui web chat option
2025-12-10 02:03:59 +01:00
Peter Steinberger
70fb4d452e
mac: tidy menu and gateway support
2025-12-10 01:00:53 +00:00
Peter Steinberger
5ed1d4e178
test: drop obsolete reply session placeholder
2025-12-10 01:00:44 +00:00
Peter Steinberger
35834d3dba
webchat: handle bind errors gracefully
2025-12-10 01:00:34 +00:00
Peter Steinberger
260d9b9770
test: add test:force helper
2025-12-10 01:00:29 +00: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
f1fd25e95e
chore: update dependencies
2025-12-10 00:48:50 +00:00
Peter Steinberger
426503e062
infra: use flock gateway lock
2025-12-10 00:46:50 +00:00
Peter Steinberger
b1834b7cf8
mac: avoid spawning local gateway in remote mode
2025-12-10 01:44:03 +01:00
Peter Steinberger
27f9cd591d
mac: route remote mode through SSH
2025-12-10 01:43:59 +01:00
Peter Steinberger
5bbc7c8ba2
mac: silence proc_pidpath warning
2025-12-10 01:43:34 +01:00
Peter Steinberger
08f8f58971
mac: add browser webchat debug entry
2025-12-10 01:33:15 +01:00
Peter Steinberger
7871e705bf
mac: show full command and kill controls for ports
2025-12-10 01:24:05 +01:00
Peter Steinberger
1820308ba2
fix: expand gateway attach log
2025-12-10 00:19:18 +00:00
Peter Steinberger
a07229846f
mac: treat pnpm/bun processes as expected gateways
2025-12-10 01:10:50 +01:00
Peter Steinberger
a7e4656834
mac: drop legacy log path
2025-12-10 00:05:05 +00:00
Peter Steinberger
872d54a2dd
mac: guard ports and sweep stale tunnels
2025-12-10 01:04:37 +01:00
Peter Steinberger
496136b52c
style(webchat): add body padding class on error
2025-12-10 00:04:22 +00:00
Peter Steinberger
c4eff00ed7
mac: centralize log path lookup
2025-12-10 00:03:37 +00:00
Peter Steinberger
27d8aa0f04
style(webchat): pad error view
2025-12-10 00:02:51 +00:00
Peter Steinberger
bb057b1dad
fix: keep tools list stable
2025-12-10 00:02:18 +00:00
Peter Steinberger
3b9d84e2b1
mac: global outside-click monitor and highlight helper
2025-12-10 00:51:02 +01:00
Peter Steinberger
1a17de9d39
fix(webchat): serve root assets correctly
2025-12-09 23:50:28 +00:00
Peter Steinberger
f6ade5dc84
mac: add port diagnostics for gateway
2025-12-10 00:49:33 +01:00
Peter Steinberger
2116f19106
fix(mac): keep overlay on token mismatch
2025-12-10 00:48:15 +01:00
Peter Steinberger
b73a7e07d2
mac: open latest log file
2025-12-09 23:45:50 +00:00
Peter Steinberger
14d3a624d8
fix(webchat): load root path
2025-12-09 23:40:26 +00:00
Peter Steinberger
dd88345483
gateway: cache health snapshot
2025-12-09 23:39:02 +00:00
Peter Steinberger
e58d5a54b1
mac: toggle panel purely from visibility
2025-12-09 23:36:51 +01:00
Peter Steinberger
2a95a5bf8a
Add package manager selector and hide uninstalled tools
2025-12-09 22:32:20 +00:00
Peter Steinberger
0c4e67a951
mac: ensure panel toggle doesn't reopen
2025-12-09 23:32:01 +01:00
Peter Steinberger
78d41b8e41
test: cover chat attachments
2025-12-09 23:31:14 +01:00
Peter Steinberger
d5347176e1
mac: close panel on second click
2025-12-09 23:25:49 +01:00
Peter Steinberger
6d91dad8e4
mac: tie highlight to panel visibility
2025-12-09 23:20:16 +01:00
Peter Steinberger
1dd5c97ae0
feat: add ws chat attachments
2025-12-09 23:16:57 +01:00
Peter Steinberger
e80e5b0801
mac: revert webchat menu fallback
2025-12-09 23:15:35 +01:00
Peter Steinberger
052d8ba879
fix(macos): harden presence decode
2025-12-09 22:08:55 +00:00
Peter Steinberger
d08ca9585a
mac: clear status highlight via menu delegate
2025-12-09 23:02:02 +01:00
Peter Steinberger
50c33dfcdf
chore: bump pi deps for tau rpc
2025-12-09 21:53:00 +00:00
Peter Steinberger
42c3c2b804
fix: prevent stuck mac health checks
2025-12-09 21:53:00 +00:00
Peter Steinberger
f83eeac5e2
fix(mac): keep webchat panel alive
2025-12-09 21:53:00 +00:00
Peter Steinberger
d5517ede45
mac: clear highlight on panel close
2025-12-09 22:40:11 +01:00
Peter Steinberger
2339f1a01d
chore(mac): add separator before general toggles
2025-12-09 21:28:46 +00:00
Peter Steinberger
6129924eb2
chore: remove legacy rpc command
2025-12-09 21:28:39 +00:00
Peter Steinberger
fce9ded30a
feat(webchat): sync theme with system
2025-12-09 21:22:21 +00:00
Peter Steinberger
8489907cf5
feat(telegram): add typing cue
2025-12-09 21:14:10 +00:00
Peter Steinberger
84ccde268e
mac/webchat: remove panel padding
2025-12-09 21:14:10 +00:00
Peter Steinberger
c191df5434
fix: relaunch app after debug restart
2025-12-09 22:13:43 +01:00
Peter Steinberger
f49934a75b
mac: respect webchat disabled for left click
2025-12-09 22:11:10 +01:00
Peter Steinberger
be3326d0d9
chore(webchat): log url on gateway start
2025-12-09 21:10:49 +00:00
Peter Steinberger
7919019b67
fix(mac): disable smoothing and await watchdog
2025-12-09 22:09:25 +01:00
Peter Steinberger
89d856a487
fix(mac): snap critter drawing to pixels
2025-12-09 22:08:21 +01:00
Peter Steinberger
978a24ffab
fix(mac): keep ptt overlay until release
2025-12-09 22:08:17 +01:00
Peter Steinberger
bd41cf377a
feat(webchat): auto-start at root
2025-12-09 21:07:53 +00:00
Peter Steinberger
3ee3f7e30b
mac: add gateway reconnect watchdog
2025-12-09 21:07:39 +00:00
Peter Steinberger
a032614dc7
mac: make status rows disabled menu items
2025-12-09 22:02:15 +01:00
Peter Steinberger
0377d13d3d
mac: disable status rows in menu
2025-12-09 21:59:17 +01:00
Peter Steinberger
06fdfc2e14
mac icon: render 36px retina backing
2025-12-09 21:56:37 +01:00
Peter Steinberger
510552c5e6
mac: harden webchat panel
2025-12-09 21:43:54 +01:00
Peter Steinberger
6675c273fd
mac: panel highlight when webchat open
2025-12-09 21:41:24 +01:00
Peter Steinberger
9131a69983
Debug menu: add sessions icon and separator
2025-12-09 21:40:04 +01:00
Peter Steinberger
a8baf0ef45
chore(gateway): color ws direction logs
2025-12-09 20:37:01 +00:00
Peter Steinberger
5e4f32d808
chore(mac): include os version and locale in handshake
2025-12-09 20:37:01 +00:00
Peter Steinberger
5a8d18edf3
web: reuse active listener for sends
2025-12-09 20:37:01 +00:00
Peter Steinberger
f34b238713
Debug menu: session controls and thinking/verbose
2025-12-09 21:32:21 +01:00
Peter Steinberger
ad5c7d97ca
mac: left-click webchat panel
2025-12-09 21:29:21 +01:00
Peter Steinberger
c35f9c1315
docs: refresh gateway cli params
2025-12-09 20:28:10 +00:00
Peter Steinberger
e84ed61339
cli: gateway subcommands, drop ipc probes
2025-12-09 20:27:35 +00:00
Peter Steinberger
8265829105
Menu: add icons to debug submenu
2025-12-09 21:24:36 +01:00
Peter Steinberger
a76d00a08e
chore: drop gateway ipc remnants
2025-12-09 20:21:41 +00:00
Peter Steinberger
131864b940
gateway: drop ipc and simplify cli
2025-12-09 20:18:50 +00:00
Peter Steinberger
d33a3f619a
fix(mac): harden gateway lock and ip decoding
2025-12-09 20:12:54 +00:00
Peter Steinberger
1a0e57d926
Menu: add more debug utilities
2025-12-09 21:11:28 +01:00
Peter Steinberger
5e5845547e
gateway: improve conflict handling and logging
2025-12-09 20:07:24 +00:00
Peter Steinberger
0de944be28
telegram: show name and id in envelope
2025-12-09 19:56:18 +00:00
Peter Steinberger
5df438fd2a
fix: enforce gateway single instance
2025-12-09 19:40:01 +00:00
Peter Steinberger
6329f60dff
chore(mac): add divider before session toggles
2025-12-09 19:14:01 +00:00
Peter Steinberger
0bf9a87293
chore(mac): dedupe local gateway label
2025-12-09 19:13:46 +00:00
Peter Steinberger
6ae4c49c1a
fix(mac): encode gateway params with protocol AnyCodable
2025-12-09 19:10:19 +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
c41b506741
mac: fix gateway hello types
2025-12-09 19:02:53 +00:00
Peter Steinberger
848180dc08
mac: fix local path string
2025-12-09 19:02:53 +00:00
Peter Steinberger
a7d39913fd
mac: fix actor call and label warnings
2025-12-09 19:02:53 +00:00
Peter Steinberger
85ca2152e4
feat(mac): reuse running gateway
2025-12-09 19:02:53 +00:00
Peter Steinberger
b11b33b63c
test(overlay): cover token guard outcomes
2025-12-09 19:51:51 +01:00
Peter Steinberger
239f58b584
fix(overlay): dismiss on token mismatch; keep gateway log clear helper
2025-12-09 19:50:05 +01:00
Peter Steinberger
474cb48a14
fix(ptt): dismiss empty overlay immediately on key up
2025-12-09 19:48:35 +01:00
Peter Steinberger
577b0dfe1d
mac: show local gateway path when overridden
2025-12-09 18:46:31 +00:00
Peter Steinberger
2918e00d33
fix(mac): restore gateway clear log
2025-12-09 18:44:22 +00:00
Peter Steinberger
ffc930b871
surface: envelope inbound messages for agent
2025-12-09 18:43:21 +00:00
Peter Steinberger
55bffeba4a
chore: add gateway env/process manager after rename
2025-12-09 19:38:19 +01:00
Peter Steinberger
2adb14c320
fix: improve app restart and gateway logs
2025-12-09 18:37:04 +00:00
Peter Steinberger
0d4bf1c15a
fix(ptt): ignore stale recognition callbacks
2025-12-09 19:17:16 +01:00
Peter Steinberger
a3bf2bdd8c
chore: rename relay to gateway
2025-12-09 18:00:01 +00:00
Peter Steinberger
bc3a14cde2
docs: add docs:list helper and front matter
2025-12-09 17:51:05 +00:00
Peter Steinberger
b3d4e5cfdf
mac: simplify degraded labels
2025-12-09 17:45:27 +00:00
Peter Steinberger
885355ce53
settings: clarify pause toggles gateway messaging
2025-12-09 17:40:59 +00:00
Peter Steinberger
a4d5b68134
mac: honor local relay path
2025-12-09 17:40:44 +00:00
Peter Steinberger
67f2bc1385
web: log disconnect error detail in reconnect loop
2025-12-09 17:38:49 +00:00
Peter Steinberger
d8fb2f9175
chore(mac): make package/restart skip ts relay
2025-12-09 17:36:24 +00:00
Peter Steinberger
fcc8d59588
fix(mac): avoid crash decoding gateway frames
2025-12-09 17:36:16 +00:00
Peter Steinberger
1f19ca1665
chore: drop runner shim and add committer helper
2025-12-09 17:24:25 +00:00
Peter Steinberger
d04f7fc6e9
msg: retry web/telegram sends and add regression tests
2025-12-09 17:23:04 +00:00
Peter Steinberger
f9370718bc
web: show surface + host/ip chips in chat UI
2025-12-09 17:23:00 +00:00
Peter Steinberger
8d888b426f
chore: format swift/ts and fix gateway lint
2025-12-09 17:11:25 +00:00
Peter Steinberger
b6bd39660f
IPC: rename relay socket to gateway.sock
2025-12-09 17:04:58 +00:00
Peter Steinberger
959ba94eca
macOS: add settings previews
2025-12-09 18:04:11 +01:00
Peter Steinberger
d5cd1058ab
Mac: surface gateway errors in remote test
2025-12-09 18:01:15 +01:00
Peter Steinberger
80c7b04831
Menu: add debug submenu actions
2025-12-09 17:57:21 +01:00
Peter Steinberger
7017756140
UI: unify refresh buttons
2025-12-09 17:54:12 +01:00
Peter Steinberger
d9a132b649
chore: update dependencies
2025-12-09 17:43:22 +01: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
796f630a7c
Status: color provider lines
2025-12-09 16:31:38 +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
e0ea7be499
Docs: rename relay command to gateway
2025-12-09 17:24:57 +01:00
Peter Steinberger
4bf968a45a
CLI: add gateway verbose flag
2025-12-09 17:17:58 +01:00
Peter Steinberger
a86963d62d
Debug: rename restart button to Gateway
2025-12-09 16:16:14 +00:00
Peter Steinberger
e40f9c9730
Mac: launch gateway and add relay installer
2025-12-09 16:15:53 +00:00
Peter Steinberger
96be7c8990
tests: cover agent sequencing, tick watchdog, presence fingerprint
2025-12-09 17:05:47 +01:00
Peter Steinberger
3ced3f4c82
ci/docs: enforce protocol check and deprecate control api
2025-12-09 17:03:05 +01:00
Peter Steinberger
72eb240c3b
gateway: harden ws protocol and liveness
2025-12-09 17:02:58 +01:00
Peter Steinberger
20d247b3f7
Mac: type agent events end-to-end
2025-12-09 15:38:22 +01:00
Peter Steinberger
318457cb2c
chore(swabble): apply swiftformat
2025-12-09 15:36:41 +01:00
Peter Steinberger
336c9d6caa
Mac: build GatewayProtocol target and typed presence handling
2025-12-09 15:35:06 +01:00
Peter Steinberger
a7737912b0
Mac: use typed GatewayFrame + forward-compatible Swift generator
2025-12-09 15:26:31 +01:00
Peter Steinberger
f244aba03d
Protocol: legacy shim file for Xcode references
2025-12-09 15:23:51 +01:00
Peter Steinberger
b0c196cf82
Protocol: add TypeBox-driven Swift generator
2025-12-09 15:21:16 +01: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
2746efeb25
WebChat: loopback snapshot hydration
2025-12-09 14:41:55 +01:00
Peter Steinberger
b2e7fb01a9
Gateway: finalize WS control plane
2025-12-09 14:41:41 +01:00
Peter Steinberger
9ef1545d06
Coordinator: centralize voice sessions for wake and push-to-talk
2025-12-09 05:41:41 +01:00
Peter Steinberger
fc1d58b631
WebChat: fix packaged root resolution
2025-12-09 04:36:15 +00:00
Peter Steinberger
2ebad55a59
Relay: force app to run relay via system node
2025-12-09 04:36:05 +00:00
Peter Steinberger
d66a05dc41
RPC: route logs to stderr to keep stdout JSON clean
2025-12-09 04:30:22 +00:00
Peter Steinberger
998a5b080d
Update auto-reply and voice wake runtime
2025-12-09 04:15:01 +00:00
Peter Steinberger
39a0f54b0d
Runtime: drop bun support
2025-12-09 04:13:56 +00:00
Peter Steinberger
024a823c78
Runtime: delay restart inside actor; log RPC unexpected payload
2025-12-09 05:02:56 +01:00
Peter Steinberger
1bbb424322
Overlay: block new sessions while sending; delay runtime restart
2025-12-09 05:02:03 +01:00
Peter Steinberger
b04f04776b
fix(mac): make rpc parsing tolerate stray stdout
2025-12-09 05:01:50 +01:00
Peter Steinberger
f0860ec145
chore(instances): harden presence refresh and fix lint
2025-12-09 04:51:54 +01:00
Peter Steinberger
658e0c6b03
Presence: resilient local fallback
2025-12-09 04:48:21 +01:00
Peter Steinberger
49fa093767
Overlay: log token drops and immediate auto-send
2025-12-09 04:47:05 +01:00
Peter Steinberger
51aed3ca0a
chore(mac): apply swiftformat and lint fixes
2025-12-09 04:42:44 +01:00
Peter Steinberger
b9cc914729
Docs: clarify relay launch mechanism
2025-12-09 03:36:16 +00:00
Peter Steinberger
d084a37e11
feat(mac): tokenized voice overlay adoption
2025-12-09 04:35:13 +01:00
Peter Steinberger
cfd2c41c21
fix(rpc): keep stdout json-only
2025-12-09 04:34:11 +01:00
Peter Steinberger
9dee4c158d
chore(instances): log empty payloads and add local fallback
2025-12-09 04:29:34 +01:00
Peter Steinberger
6b8011228e
fix(presence): always seed self entry and log counts
2025-12-09 03:21:59 +00:00
Peter Steinberger
2cd27d0d4a
Relay: enforce single instance lock
2025-12-09 03:17:23 +00:00
Peter Steinberger
3dff09424d
VoiceWake: drop unused forward health check state
2025-12-09 03:12:37 +00:00
Peter Steinberger
8e15a6e798
Overlay: safety dismiss and logging; keep PTT final send
2025-12-09 04:04:45 +01:00
Peter Steinberger
2756e12762
VoiceWake: drop remote ssh config and harden template parsing
2025-12-09 03:04:08 +00:00
Peter Steinberger
4eb71bcd14
rpc: ensure worker is killed if it hangs on shutdown
2025-12-09 03:04:00 +00:00
Peter Steinberger
2177df51a8
feat(status): enrich session details
2025-12-09 03:00:10 +00:00
Peter Steinberger
40c8e4832a
WebChat: make tunnel restart handler hop to MainActor
2025-12-09 03:58:28 +01:00
Peter Steinberger
3377bd4ae5
PTT: wait for final transcript before send/dismiss
2025-12-09 03:57:08 +01:00
Peter Steinberger
38c4f4f76c
feat(instances): beacon on connect and relay self-entry
2025-12-09 03:57:08 +01:00
Peter Steinberger
280c7c851f
tests: cover voicewake template defaults
2025-12-09 02:52:04 +00:00
Peter Steinberger
af9ccf0c09
VoiceWake: route forwarding via agent rpc
2025-12-09 02:50:58 +00:00
Peter Steinberger
e7cdac90f5
mac: stop leaking ssh processes on quit
2025-12-09 02:50:58 +00:00
Peter Steinberger
7aefcab8b0
Health: clean degraded message; PTT hotkey monitors
2025-12-09 03:46:52 +01:00
Peter Steinberger
514b90ac69
VoiceWake: autoplay chime on selection
2025-12-09 03:42:03 +01:00
Peter Steinberger
dbcb97949f
macOS: centralize sound effect catalog/player
2025-12-09 03:42:03 +01:00
Peter Steinberger
76d559efc1
macOS: log control responses
2025-12-09 02:41:18 +00:00
Peter Steinberger
8d8584849c
RPC: fix presence imports
2025-12-09 02:39:41 +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
a8b26570e0
macOS: include mail sounds in chime picker
2025-12-09 03:28:29 +01:00
Peter Steinberger
5a74b40ae4
macOS: broaden chime sound catalog
2025-12-09 03:27:17 +01:00
Peter Steinberger
04f595cd97
Control: route health/heartbeat over RPC stdio
2025-12-09 02:26:08 +00:00
Peter Steinberger
99a3102134
Docs: voice overlay plan and fix web mocks
2025-12-09 03:25:55 +01:00
Peter Steinberger
3a42979e53
Voice wake: log overlay lifecycle and enforce PTT cooldown
2025-12-09 03:20:52 +01:00
Peter Steinberger
912a53318e
fix(voicewake): snap overlay to top-right
2025-12-09 03:18:05 +01:00
Peter Steinberger
421401ae3f
Voice wake: drop stale recognition callbacks
2025-12-09 03:08:22 +01:00
Peter Steinberger
e15475449c
fix merge; add control logging
2025-12-09 01:46:09 +00:00
Peter Steinberger
31750b5ee5
style(macos): remove quit separator and resize settings
2025-12-09 02:28:05 +01:00
Peter Steinberger
bc92f6d4a4
feat(macos): add instances tab and presence beacons
2025-12-09 02:25:45 +01:00
Peter Steinberger
1969e78d54
feat: surface system presence for the agent
2025-12-09 02:25:37 +01:00
Peter Steinberger
317f666d4c
Voice wake: send or dismiss on release
2025-12-09 02:25:06 +01:00
Peter Steinberger
3fe68a051a
fix: block partial replies on external chat surfaces
2025-12-09 01:48:12 +01:00
Peter Steinberger
5bfecc6152
fix: stop partial replies for whatsapp/telegram surfaces
2025-12-09 01:41:05 +01:00
Peter Steinberger
e44ed2681f
refactor: type tau rpc stream events
2025-12-09 01:41:05 +01:00
Peter Steinberger
27a545f79d
chore: harden rpc assistant streaming types
2025-12-09 01:41:05 +01:00
Peter Steinberger
6b10f4241d
feat(macos): surface session activity in menu bar
2025-12-09 01:41:05 +01:00
Peter Steinberger
73cc34467a
control: log incoming health requests
2025-12-09 00:38:42 +00:00
Peter Steinberger
ec1ff52dfb
control: reconnect on EOF and relax rpc text parse
2025-12-09 00:29:31 +00:00
Peter Steinberger
2761c40781
test: ensure tool events emit without verbose
2025-12-09 01:24:16 +01:00
Peter Steinberger
e981d90209
fix: always emit tool events
2025-12-09 01:22:50 +01:00
Peter Steinberger
f965e1c3ff
chore: single-source working state from agent events
2025-12-09 01:17:01 +01:00
Peter Steinberger
5b5a79b90b
chore(mac): drop duplicate job-state tracking
2025-12-09 01:06:46 +01:00
Peter Steinberger
15729e9ea0
macos: log health timeout and control requests
2025-12-09 00:00:50 +00:00
Peter Steinberger
d9eb320bba
ci: test node and bun runtimes
2025-12-09 01:00:35 +01:00
Peter Steinberger
cba016df74
chore(mac): prefer host runtime for remote relay
2025-12-09 00:59:56 +01:00
Peter Steinberger
cf36f5a23b
chore: guard host runtime and simplify packaging
2025-12-09 00:59:56 +01:00
Peter Steinberger
34d2527606
chore: tidy agent event streaming types
2025-12-09 00:59:56 +01:00
Peter Steinberger
8e8e695db9
feat(mac): add agent events debug window
2025-12-09 00:59:56 +01:00
Peter Steinberger
9928f1b3c1
macOS: extract attributed string helper
2025-12-09 00:59:56 +01:00
Peter Steinberger
36c91c3984
relay: don't crash when webchat port is busy
2025-12-08 23:49:57 +00:00
Peter Steinberger
b7b1714f32
feat: forward tool/assistant events to agent bus
2025-12-09 00:44:30 +01:00
Peter Steinberger
2d1f1640f3
chore: ignore macOS swiftpm cache
2025-12-09 00:43:45 +01:00
Peter Steinberger
371a30f08b
feat: stream tool/job events over control channel
2025-12-09 00:31:39 +01:00
Peter Steinberger
40dd23337c
feat: broadcast agent events over control channel
2025-12-09 00:28:03 +01:00
Peter Steinberger
3114dfd39b
refactor(mac): split menubar UI into smaller files
2025-12-09 00:27:53 +01:00
Peter Steinberger
04b34adec6
macos: show detailed health failure
2025-12-08 23:20:14 +00:00
Peter Steinberger
594e837440
feat: emit job-state events from rpc
2025-12-09 00:18:14 +01:00
Peter Steinberger
c77fa12bda
fix(mac): stabilize voice wake visuals
2025-12-09 00:12:43 +01:00
Peter Steinberger
5674c9f4c2
Mac: clarify runtime comments
2025-12-09 00:08:19 +01:00
Peter Steinberger
bc01488a75
fix(mac): switch push-to-talk to right option
2025-12-08 23:50:31 +01:00
Peter Steinberger
c3c6880382
macos: timeout control health probes
2025-12-08 22:45:58 +00:00
Peter Steinberger
1f2f5858c0
docs: note Mac app for relay debugging
2025-12-08 23:37:46 +01:00
Peter Steinberger
22259a322d
macos: keep remote control tunnel alive
2025-12-08 23:28:03 +01:00
Peter Steinberger
06f59f4e8a
Build: update webchat bundle
2025-12-08 23:20:10 +01:00
Peter Steinberger
2b7adeb220
VoiceWake: track listening state for PTT
2025-12-08 23:17:11 +01:00
Peter Steinberger
05bd452f76
control: drop runtime export of type-only HeartbeatEventPayload
2025-12-08 23:15:33 +01:00
Peter Steinberger
a6426d0ac5
macos: swap bubble shadow for 1px border
2025-12-08 23:14:00 +01:00
Peter Steinberger
5dd5c9c605
macos: add inset margin so overlay shadow isn't clipped
2025-12-08 22:56:49 +01:00
Peter Steinberger
0e4b28ac25
macos: fail fast when SSH tunnel exits
2025-12-08 22:53:40 +01:00
Peter Steinberger
62fecdcaa8
VoiceWake: guard trigger chime
2025-12-08 22:52:51 +01:00
Peter Steinberger
440558c44f
macos: add soft shadow behind overlay bubble
2025-12-08 22:51:04 +01:00
Peter Steinberger
fa9a92f214
macos: deepen shadow on close pill
2025-12-08 22:45:40 +01:00
Peter Steinberger
c5af11f6bd
Remove overlay bar meter
2025-12-08 22:45:40 +01:00
Peter Steinberger
ad3254deb6
macos: restore overlay close button
2025-12-08 21:40:18 +00:00
Peter Steinberger
fce04b9424
macos: stabilize close hover and unclipped button
2025-12-08 22:38:51 +01:00
Peter Steinberger
2d512c714b
VoiceWake: button meter + fix label color
2025-12-08 22:38:30 +01:00
Peter Steinberger
6298c586fd
macos: stabilize control connection wait
2025-12-08 21:37:07 +00:00
Peter Steinberger
abca8535cf
macos: blink critter when overlay dismisses empty
2025-12-08 22:34:11 +01:00
Peter Steinberger
677374de86
macos: sync ears with overlay visibility
2025-12-08 22:31:03 +01:00
Peter Steinberger
92d015333a
VoiceWake: add level meter
2025-12-08 22:28:49 +01:00
Peter Steinberger
6c91304400
macos: refine speech noise floor tracking
2025-12-08 22:24:12 +01:00
Peter Steinberger
04b5002d8f
macos: polish voice overlay and remote command handling
2025-12-08 22:23:24 +01:00
Peter Steinberger
9bde7a6daa
macos: harden control channel connect continuation
2025-12-08 22:16:05 +01:00
Peter Steinberger
33b54f3d0c
ux: float close button outside bubble, stronger shadow
2025-12-08 22:11:38 +01:00
Peter Steinberger
c5b073702c
macos: control channel diagnostics and tunnel-based testing
2025-12-08 22:04:02 +01:00
Peter Steinberger
e38bdd0d2d
control: seed events, add tests, update remote doc
2025-12-08 22:03:46 +01:00
Peter Steinberger
9c54e48194
fix: avoid auto-send task init error
2025-12-08 22:02:03 +01:00
Peter Steinberger
12e048a7fb
ux: float close button outside bubble and reduce hover flicker
2025-12-08 21:59:05 +01:00
Peter Steinberger
11400e43dc
chore: sync webchat bundle and voice wake settings
2025-12-08 21:51:08 +01:00
Peter Steinberger
293b4960f3
macos: use control channel for health and heartbeat
2025-12-08 21:50:51 +01:00
Peter Steinberger
22996854f7
relay: add control channel and heartbeat stream
2025-12-08 21:50:24 +01:00
Peter Steinberger
71e58c768c
docs: add control channel reference
2025-12-08 21:50:16 +01:00
Peter Steinberger
bb3606b64f
VoiceWake: centralize send chime and guard play
2025-12-08 21:25:30 +01:00
Peter Steinberger
7a82777fc5
ux: add hover/ edit close button and keep overlay until escape or send
2025-12-08 21:22:04 +01:00
Peter Steinberger
ec046411f1
VoiceWake: skip send chime when nothing to send
2025-12-08 20:57:41 +01:00
Peter Steinberger
ffaf968940
VoiceWake: streamline chimes, default to Glass
2025-12-08 20:50:34 +01:00
Peter Steinberger
feb70aeb6b
VoiceWake: add chimes for trigger and send
2025-12-08 20:45:05 +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
cfdcabc8b4
VoiceWake: sanitize triggers only when applying
2025-12-08 20:20:56 +01:00
Peter Steinberger
ab448988ff
RPC: stream heartbeat events to menu
2025-12-08 20:18:54 +01:00
Peter Steinberger
e3089d60ea
HeartbeatStore: fix main-actor cleanup
2025-12-08 20:17:38 +01:00
Peter Steinberger
34f892ae82
VoiceWake: keep empty trigger rows
2025-12-08 20:13:49 +01:00
Peter Steinberger
fbbf0ed41c
ux: top-align overlay content
2025-12-08 20:10:39 +01:00
Peter Steinberger
66a8780fa2
ui: strip label color attributes so text uses primary color
2025-12-08 20:00:36 +01:00
Peter Steinberger
2c610258d1
ux: use primary text color in display label
2025-12-08 19:57:29 +01:00
Peter Steinberger
f7430d74a7
ux: wrap label to overlay width, remove label background
2025-12-08 19:43:07 +01:00
Peter Steinberger
421d6db592
ux: keep vibrancy, brighten label, ensure wrapping
2025-12-08 19:36:48 +01:00
Peter Steinberger
1d385fd35a
ui: drop translucency for overlay background
2025-12-08 19:20:46 +01:00
Peter Steinberger
7cb31581d5
ux: brighten display label and wrap properly
2025-12-08 19:15:58 +01:00
Peter Steinberger
768d550ee2
ux: show vibrant label until edit, then switch to text view
2025-12-08 19:11:59 +01:00
Peter Steinberger
4fd7480557
chore: launch app in restart script instead of launch agent
2025-12-08 19:01:29 +01:00
Peter Steinberger
7c0f0a59eb
tweak: strengthen partial transcript tint
2025-12-08 18:54:02 +01:00
Peter Steinberger
93aeee1611
tweak: centralize overlay max/min heights
2025-12-08 18:52:19 +01:00
Peter Steinberger
86d9e1e816
fix: hide overlay scrollbar unless content overflows
2025-12-08 18:50:14 +01:00
Peter Steinberger
73211c900b
perf(mac): move blocking launchctl/webchat work off main
2025-12-08 18:42:13 +01:00
Peter Steinberger
a19d4c19d3
tweak: allow overlay to grow to 400px then scroll
2025-12-08 18:33:14 +01:00
Peter Steinberger
cf3b7f2c16
fix: keep overlay attributed colors and auto-resize
2025-12-08 18:28:17 +01:00
Peter Steinberger
2f21dd81b0
docs/macos: simplify sag install (auto-tap)
2025-12-08 18:19:54 +01:00
Peter Steinberger
db3b3ed9eb
fix: polish voice overlay and webchat lint
2025-12-08 17:32:34 +01:00
Peter Steinberger
9625d94aa0
fix(mac): surface webchat load failures and preflight reachability
2025-12-08 17:24:08 +01:00
Peter Steinberger
5dec7d534f
docs: document push-to-talk hotkey
2025-12-08 17:24:08 +01:00
Peter Steinberger
0317eec10d
feat(mac): add push-to-talk hotkey
2025-12-08 17:24:08 +01:00
Peter Steinberger
a34ab1d36e
Webchat: clean server build and add ws types
2025-12-08 16:21:56 +00:00
Peter Steinberger
7144a0fb9b
Webchat: push updates over WebSocket
2025-12-08 16:19:33 +00:00
Peter Steinberger
421924b73f
fix: restart webchat tunnel on main actor
2025-12-08 17:14:43 +01:00
Peter Steinberger
466236e32f
fix(mac): harden remote webchat tunnel and keep it alive
2025-12-08 17:14:43 +01:00
Peter Steinberger
636f2d659f
chore: tighten webchat types and formatting
2025-12-08 17:14:43 +01:00
Peter Steinberger
838a9c000c
fix: resize overlay on text updates and keep final tint
2025-12-08 17:14:43 +01:00
Peter Steinberger
7a7c59e91a
Webchat: poll session for messages/thinking
2025-12-08 16:14:12 +00:00
Peter Steinberger
1ac6ab4428
Agent: add thinkingOnce flag
2025-12-08 16:12:24 +00:00
Peter Steinberger
dc3c82ad40
Webchat: sync thinking level with session
2025-12-08 16:10:14 +00:00
Peter Steinberger
0f0a2dddfe
chore: use 5s silence before speech, 2s after
2025-12-08 17:06:12 +01:00
Peter Steinberger
c3f955d3f1
chore: fix lint warnings and formatting
2025-12-08 17:05:27 +01:00
Peter Steinberger
7b1832bd24
chore: extend voice capture hard stop to 120s
2025-12-08 16:58:38 +01:00
Peter Steinberger
148c9533ae
chore: use 2s silence or 5s max capture
2025-12-08 16:55:08 +01:00
Peter Steinberger
df96318662
fix(mac): run remote health with pnpm under zsh
2025-12-08 16:52:42 +01:00
Peter Steinberger
d9d0be0256
fix: finalize only after full 1s silence
2025-12-08 16:52:13 +01:00
Peter Steinberger
de70d82cea
fix(mac): surface health errors instead of pending
2025-12-08 16:50:20 +01:00
Peter Steinberger
81db44f584
feat: add outcome-based dismiss animations
2025-12-08 16:49:58 +01:00
Peter Steinberger
d733d246f0
chore: remove overlay shadow/border
2025-12-08 16:45:25 +01:00
Peter Steinberger
1c5170b759
fix: animate overlay resizing on updates
2025-12-08 16:44:44 +01:00
Peter Steinberger
367526f750
feat: show partial transcripts with subdued tint
2025-12-08 16:44:00 +01:00
Peter Steinberger
7a0830de15
feat: tint partial transcripts and stabilize delays
2025-12-08 16:41:33 +01:00
Peter Steinberger
a5fbfa3748
fix: delay logic waits for post-trigger content
2025-12-08 16:38:33 +01:00
Peter Steinberger
912a7a1781
test: cover trigger trimming for voice wake
2025-12-08 16:36:53 +01:00
Peter Steinberger
563701fed8
fix: trim overlay transcript to post-trigger
2025-12-08 16:35:03 +01:00
Peter Steinberger
414889e03b
feat: add adaptive voice wake delays
2025-12-08 16:34:06 +01:00
Peter Steinberger
8d2de036d5
feat: refine voice wake overlay animations
2025-12-08 16:34:06 +01:00
Peter Steinberger
764761cfa5
feat: add voice wake overlay
2025-12-08 16:34:06 +01:00
Peter Steinberger
90a0bb5acb
feat(cli): unify relay providers and heartbeat flag
2025-12-08 16:34:06 +01:00
Peter Steinberger
0e4379f075
Webchat: cap/ persist attachments and strip data URLs
2025-12-08 14:59:26 +00:00
Peter Steinberger
968c5dc4aa
Webchat: update bundled assets after attachment support
2025-12-08 14:48:03 +00:00
Peter Steinberger
fedb15d5d0
Webchat: inline attachments to agent RPC and fix status compile
2025-12-08 14:46:33 +00:00
Peter Steinberger
ccc6bf05e8
status: read token usage from pi session logs
2025-12-08 14:46:15 +00:00
Peter Steinberger
a40e56bcb7
Docs: webchat now served in-process, no CLI spawn
2025-12-08 14:15:03 +00:00
Peter Steinberger
52453eaeff
Webchat: run agent in-process for RPC
2025-12-08 14:14:00 +00:00
Peter Steinberger
ff3337feed
Webchat: resolve static root in packaged app
2025-12-08 14:07:20 +00:00
Peter Steinberger
cd30a99fae
feat(macos): add voice wake mic picker
2025-12-08 15:05:57 +01:00
Peter Steinberger
081460e59d
macOS webchat: use relay HTTP transport directly
2025-12-08 13:12:34 +00:00
Peter Steinberger
17a6d716ad
Webchat: auto-start server and simplify config
2025-12-08 13:12:34 +00:00
Peter Steinberger
d833de793d
Split clawdis node vs mac helper commands
2025-12-08 13:26:12 +01:00
Peter Steinberger
a6ff62c79c
SSH remote uses clawdis only
2025-12-08 13:20:55 +01: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
bce84376d3
webchat: send via http rpc endpoint and show errors
2025-12-08 12:23:45 +01:00
Peter Steinberger
be87cdddeb
webchat: surface bootstrap errors in UI
2025-12-08 12:17:39 +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
dc69d20ec9
docs: outline web chat move to relay server
2025-12-08 11:25:00 +01:00
Peter Steinberger
22ed7ea3f2
build: silence grammy type errors for mac packaging
2025-12-08 11:04:17 +01:00
Peter Steinberger
2112fa919a
webchat: fetch remote sessions via CLI and log missing history
2025-12-08 01:55:09 +01:00
Peter Steinberger
f65702a8a8
chore(ci): fix lint and swiftformat failures
2025-12-08 01:48:53 +01:00
Peter Steinberger
68d19d4717
webchat: load remote history from tau fallback and send to session
2025-12-08 01:36:00 +01:00
Peter Steinberger
a6e0ec38e7
VoiceWake: capture utterance and add prefix
2025-12-08 01:35:42 +01:00
Peter Steinberger
6415ae79be
webchat: make remote mode load history and send via rpc
2025-12-08 01:27:18 +01:00
Peter Steinberger
79b76fb5f4
ui: drop default sound picker; use cli per-notification sound
2025-12-08 00:56:36 +01:00
Peter Steinberger
42012389c4
health: surface ssh output when probe fails
2025-12-08 00:52:31 +01:00
Peter Steinberger
4b5c43f080
copy: rename menu toggle to Remote Clawdis Active when remote
2025-12-08 00:41:31 +01:00
Peter Steinberger
d16e5090a6
copy: capitalize send heartbeats menu label
2025-12-08 00:40:30 +01:00
Peter Steinberger
ddbe680a58
feat(macos): add Sparkle updates and release docs
2025-12-08 00:18:16 +01:00
Peter Steinberger
2f50b57e76
ui: remove duplicate health row in General
2025-12-08 00:17:29 +01:00
Peter Steinberger
dc291fa811
ui: move Clawdis active toggle to top
2025-12-08 00:16:25 +01:00
Peter Steinberger
a1d499ed64
copy: shorten tailscale tip
2025-12-08 00:14:58 +01:00
Peter Steinberger
629f2e0043
fix: stop voice wake tester after short post-trigger silence
2025-12-07 23:43:50 +01:00
Peter Steinberger
5d321c4dac
copy: rename recognition language label
2025-12-07 23:35:58 +01:00
Peter Steinberger
9d751e0c72
ui: place health row under remote picker and improve timeout message
2025-12-07 23:34:49 +01:00
Peter Steinberger
6f8fb561c6
ui: tidy tables, links, and hide redundant voice wake forwarder
2025-12-07 23:26:28 +01:00
Peter Steinberger
1019872832
ui: move health/cli info to Debug; add single health row in General
2025-12-07 23:22:54 +01:00
Peter Steinberger
091471293d
ui: fold remote mode label into picker
2025-12-07 23:21:00 +01:00
Peter Steinberger
d7281286ba
ui: reuse compact remote card in General and hide voice wake forwarder
2025-12-07 23:20:14 +01:00
Peter Steinberger
5cfda2803d
fix: remote test uses CLI path discovery again
2025-12-07 23:12:33 +01:00
Peter Steinberger
9ee7a14685
ui: make General tab scrollable
2025-12-07 23:06:10 +01:00
Peter Steinberger
40a6574b95
ui: align voice wake forwarding with remote mode
2025-12-07 23:04:51 +01:00
Peter Steinberger
891e1388ba
style: bump onboarding height to 840px
2025-12-07 22:58:05 +01:00
Peter Steinberger
0fba7d41a6
chore: refresh webchat bundle
2025-12-07 22:57:12 +01:00
Peter Steinberger
1595fb8739
docs: move grammY research note to docs/grammy.md
2025-12-07 22:53:58 +01:00
Peter Steinberger
ebc852b358
chore: update dependencies
2025-12-07 22:53:36 +01:00
Peter Steinberger
5f5846a08b
Telegram: enable grammY throttler and webhook tests
2025-12-07 22:52:57 +01:00
Peter Steinberger
4d3d9cca2a
Add Bun bundle docs and Telegram grammY support
2025-12-07 22:47:05 +01:00
Peter Steinberger
7b77e9f9ae
macOS: surface stderr in health failure text
2025-12-07 21:37:06 +00:00
Peter Steinberger
0f74e372ba
MenuBar: fix health label age string
2025-12-07 19:03:49 +01:00
Peter Steinberger
a3b99dc309
Utilities: add age helper for menu health label
2025-12-07 19:02:50 +01:00
Peter Steinberger
d73d571f19
Launch agent: disable autostart without killing running app
2025-12-07 19:01:14 +01:00
Peter Steinberger
8a8ac1ffe6
style: increase onboarding window height
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
558af7a454
chore: surface helper install status in onboarding
2025-12-07 19:01:14 +01:00
Peter Steinberger
d57ebb3c94
style: enlarge onboarding window to fit full permission list
2025-12-07 19:01:14 +01:00
Peter Steinberger
855976df84
style: compact remote setup card and move advanced ssh fields
2025-12-07 19:01:14 +01:00
Peter Steinberger
6c2a8d6047
style: increase onboarding content height
2025-12-07 19:01:14 +01:00
Peter Steinberger
38a856f7ff
style: tighten onboarding hero spacing
2025-12-07 19:01:14 +01:00
Peter Steinberger
fb2a7d8cd1
VoiceWake: add escaping regression tests
2025-12-07 19:01:14 +01:00
Peter Steinberger
b3f79e5b02
macOS: fix web chat agent PATH and surface stderr
2025-12-07 17:31:14 +00:00
Peter Steinberger
1722148333
macOS: show last health result with age in menu
2025-12-07 17:23:51 +00:00
Peter Steinberger
27e96999cf
VoiceWake: document escape path and reset stale forward command
2025-12-07 18:23:34 +01:00
Peter Steinberger
7efa152418
VoiceWake: document escape path and reset stale forward command
2025-12-07 18:23:34 +01:00
Peter Steinberger
2a45455c80
feat: add remote clawd toggle
2025-12-07 18:23:34 +01:00
Peter Steinberger
c06f49cb3e
macOS: merge status row and fix webchat bundle deps
2025-12-07 17:20:42 +00:00
Peter Steinberger
b837c68df8
VoiceWake: remove python hop; use escaped literal under /bin/sh
2025-12-07 18:03:25 +01:00
Peter Steinberger
f3ebb2e9ce
test(mac): cover voice wake helpers
2025-12-07 17:56:40 +01:00
Peter Steinberger
df9f72134b
refactor(mac): split voice wake settings
2025-12-07 17:55:07 +01:00
Peter Steinberger
4ff5004d7c
webchat: bypass api key prompts in embedded mode
2025-12-07 17:55:07 +01:00
Peter Steinberger
bdf3d60148
webchat: hide model selector in embedded UI
2025-12-07 17:55:07 +01:00
Peter Steinberger
e2c6546b61
auto-reply: enrich chat status
2025-12-07 16:53:33 +00:00
Peter Steinberger
1f0ee9837b
macOS: fix health shell timeout race
2025-12-07 16:53:32 +00:00
Peter Steinberger
71072f084e
VoiceWake: send transcript via python/base64 instead of stdin
2025-12-07 17:45:43 +01:00
Peter Steinberger
98651c2a14
webchat: bundle assets with rolldown
2025-12-07 17:44:37 +01:00
Peter Steinberger
74e5e5e182
docs(mac): document privacy-off logging
2025-12-07 17:35:13 +01:00
Peter Steinberger
16f9dbfe37
VoiceWake: include ssh cmd on failure
2025-12-07 17:30:45 +01:00
Peter Steinberger
12f74de9b3
VoiceWake: pipe transcript to ssh forwarder
2025-12-07 16:59:22 +01:00
Peter Steinberger
fec49e1e28
chore(webchat): increase server logging for module load debugging
2025-12-07 16:55:49 +01:00
Peter Steinberger
9dd9bb7092
chore(webchat): add server logging and ensure buildable
2025-12-07 16:49:08 +01:00
Peter Steinberger
9c07aab2d6
voice wake: log ssh command at info level
2025-12-07 16:43:18 +01:00
Peter Steinberger
41a84cef23
chore(webchat): wait for local server and add debug logging
2025-12-07 16:39:21 +01:00
Peter Steinberger
8942e3e78d
voice wake: log full ssh command for debug
2025-12-07 16:38:49 +01:00
Peter Steinberger
040fe58693
chore: format macOS sources
2025-12-07 16:35:58 +01:00
Peter Steinberger
45398b7660
voice wake: use clean PATH (no inherited junk)
2025-12-07 16:33:56 +01:00
Peter Steinberger
f3950a5a65
feat(macos): serve web chat over localhost to avoid cors
2025-12-07 16:30:10 +01:00
Peter Steinberger
6f6c5129d1
chore: bump version to 2.0.0
2025-12-07 16:28:57 +01:00
Peter Steinberger
139697b9cd
voice wake: keep default key when identity is blank
2025-12-07 16:23:35 +01:00
Peter Steinberger
ddd459426d
voice wake: show identity not found when configured
2025-12-07 16:18:42 +01:00
Peter Steinberger
3387c135ad
Icon: add ear holes on voice wake
2025-12-07 16:15:40 +01:00
Peter Steinberger
73133b61fb
chore(macos): allow file access for web chat modules
2025-12-07 16:14:13 +01:00
Peter Steinberger
ba0f594548
voice wake: surface ssh failures (missing key/no output)
2025-12-07 16:13:40 +01:00
Peter Steinberger
f4fa9bf51a
fix(macos): load web chat from bundled html
2025-12-07 16:13:40 +01:00
Peter Steinberger
9aea85a953
General: add bottom inset to quit button
2025-12-07 15:11:47 +00:00
Peter Steinberger
f878e5e635
fix(mac): keep pnpm health output json-safe
2025-12-07 15:09:56 +00:00
Peter Steinberger
4e2fb38d62
debug: hide helper subtext while sending
2025-12-07 15:47:30 +01:00
Peter Steinberger
ee845376b5
rpc: surface raw error lines and auto-start worker
2025-12-07 15:46:26 +01:00
Peter Steinberger
75234da135
Debug: surface detailed voice send errors
2025-12-07 14:41:45 +00:00
Peter Steinberger
7dc9434aec
chore(macos): enlarge about icon
2025-12-07 15:34:44 +01:00
Peter Steinberger
5986cf4254
docs: record current rpc protocol and heartbeat toggle
2025-12-07 15:34:02 +01:00
Peter Steinberger
f6db636473
Debug: make voice wake test follow config
2025-12-07 14:33:46 +00:00
Peter Steinberger
b30db08110
feat: add heartbeat toggle with live RPC control
2025-12-07 15:32:48 +01:00
Peter Steinberger
2dbef6105d
agent: allow deliver when json output
2025-12-07 15:16:55 +01:00
Peter Steinberger
eeee9625c1
chore(macos): tighten voice wake control widths
2025-12-07 15:09:16 +01:00
Peter Steinberger
76559b352b
debug: surface ssh error details in voice test
2025-12-07 15:07:56 +01:00
Peter Steinberger
a3bf0d6002
fix(macos): honor pnpm/node when locating clawdis for health
2025-12-07 15:07:38 +01:00
Peter Steinberger
96ae0dd23a
fix(macos): handle missing clawdis CLI for health check
2025-12-07 15:03:05 +01:00
Peter Steinberger
9c9e04c5a0
debug: add voice forward test button
2025-12-07 15:00:02 +01:00
Peter Steinberger
15381c7832
ci: use macos-latest with Xcode 26.1
2025-12-07 15:00:01 +01:00
Peter Steinberger
175f929023
macOS: widen voice wake label spacing
2025-12-07 13:57:05 +00:00
Peter Steinberger
a23846b3a1
chore(macos): simplify health status menu and messaging
2025-12-07 14:54:58 +01:00
Peter Steinberger
42c74e864a
chore(macos): align recognition language row styling
2025-12-07 14:52:43 +01:00
Peter Steinberger
809f5d6d8e
chore(macos): align mic level bar width
2025-12-07 14:52:05 +01:00
Peter Steinberger
ff41a61432
chore(macos): clean up CLI helper subtext
2025-12-07 14:49:56 +01:00
Peter Steinberger
28b531593a
fix(macos): resolve clawdis path for health check
2025-12-07 14:49:18 +01:00
Peter Steinberger
4d2f4f1be3
chore(macos): make debug settings scrollable
2025-12-07 14:48:12 +01:00
Peter Steinberger
f97415755b
chore(macos): remove focus ring on about icon
2025-12-07 14:46:54 +01:00
Peter Steinberger
67fa82cf14
agent: deliver via rpc and voice forward
2025-12-07 06:05:00 +01:00
Peter Steinberger
1d38f5a4d5
Revert "fix: auto-start rpc worker for agent calls"
...
This reverts commit e70f8471a8 .
2025-12-07 05:54:47 +01:00
Peter Steinberger
e70f8471a8
fix: auto-start rpc worker for agent calls
2025-12-07 05:54:15 +01:00
Peter Steinberger
093e737af9
fix: keep launch agent alive and inject PATH
2025-12-07 05:49:59 +01:00
Peter Steinberger
1ae0b44bc5
fix(health): reveal logs alerts when missing; align actions
2025-12-07 05:46:47 +01:00
Peter Steinberger
17aeec59a3
fix: raise voice wake forward timeout to 30s
2025-12-07 05:46:05 +01:00
Peter Steinberger
b20507ef0a
chore(health): kick off health refresh at app launch
2025-12-07 05:44:09 +01:00
Peter Steinberger
753995a91d
Docs: add no-real-data rule to AGENTS
2025-12-07 04:43:25 +00:00
Peter Steinberger
67c67dd86d
Docs: swap to obviously fake phone numbers
2025-12-07 04:42:58 +00:00
Peter Steinberger
fdc0b283d7
Docs: scrub personal phone example
2025-12-07 04:40:08 +00:00
Peter Steinberger
2abc51789e
UI: streamline relay status label
2025-12-07 04:39:45 +00:00
Peter Steinberger
1190b9c278
Health: strengthen probe tests
2025-12-07 04:39:24 +00:00
Peter Steinberger
3a8e049093
chore: fix test import and lint
2025-12-07 05:38:29 +01:00
Peter Steinberger
f32a647a20
test: cover command resolver fallbacks
2025-12-07 05:38:29 +01:00
Peter Steinberger
4645f512d1
fix: reuse resolver for agent rpc launch
2025-12-07 05:38:29 +01:00
Peter Steinberger
3d89999a06
docs: add voice wake forwarding tips to agents
2025-12-07 05:38:29 +01:00
Peter Steinberger
cb5c932447
Health: CLI probe and mac UI surfacing
2025-12-07 04:38:20 +00:00
Peter Steinberger
ddf8aef4f7
Settings: move session store path to Debug
2025-12-07 04:38:08 +00:00
Peter Steinberger
2714ed503b
CLI: add health probe command
2025-12-07 04:33:22 +00:00
Peter Steinberger
78d96355dd
Settings: inline heartbeat inputs
2025-12-07 04:32:28 +00:00
Peter Steinberger
bf429b7e87
Settings: add heartbeat controls
2025-12-07 04:30:24 +00:00
Peter Steinberger
2f44046622
chore(agent): start rpc worker at launch, fail if not running
2025-12-07 05:24:54 +01:00
Peter Steinberger
fb106967bc
fix(macos): guard unavailable speech recognizer
2025-12-07 05:22:20 +01:00
Peter Steinberger
32720bd372
feat(agent): add rpc status command and tests; rpc only path
2025-12-07 05:20:50 +01:00
Peter Steinberger
fb1de5c1c6
chore(agent): drop cli fallback, rpc only for sends
2025-12-07 05:16:16 +01:00
Peter Steinberger
69cb71ad7e
feat(agent): use persistent rpc worker for agent sends
2025-12-07 05:14:45 +01:00
Peter Steinberger
0a9b98ed67
feat(cli): add stdin/stdout rpc loop for agent sends
2025-12-07 05:10:58 +01:00
Peter Steinberger
e1c4a5989b
docs: outline RPC plan for agent CLI
2025-12-07 05:08:14 +01:00
Peter Steinberger
cac988f8e2
fix(webchat): wire agent CLI send into web chat view
2025-12-07 05:04:34 +01:00
Peter Steinberger
bbe92a3a40
Mac: fix agent XPC by invoking CLI agent
2025-12-07 04:03:06 +00:00
Peter Steinberger
a489550752
feat(cli): add agent send command and wire through XPC
2025-12-07 05:00:52 +01:00
Peter Steinberger
f1dbff1dd4
fix(voicewake): log ssh/cli failure instead of staying silent
2025-12-07 04:58:57 +01:00
Peter Steinberger
55ea0f398b
test(voicewake): cover trigger matching for runtime listener
2025-12-07 04:53:59 +01:00
Peter Steinberger
38abb044d0
feat(macos): run live voice wake listener and animate ears
2025-12-07 04:52:27 +01:00
Peter Steinberger
ca4e76b34f
test: add voice wake forwarder cache coverage
2025-12-07 04:52:26 +01:00
Peter Steinberger
55e0086958
fix: harden remote voice wake CLI lookup
2025-12-07 04:43:08 +01:00
Peter Steinberger
050ebb3b19
Mac: add relay restart button in Debug
2025-12-07 03:42:50 +00:00
Peter Steinberger
31f788eb5e
CLI: allow --provider flag for login/logout (default whatsapp)
2025-12-07 03:41:27 +00:00
Peter Steinberger
f23b16db2b
build: require signing identity for mac packaging
2025-12-07 04:38:45 +01:00
Peter Steinberger
060f80c239
feat: add icon animation setting
2025-12-07 04:38:45 +01:00
Peter Steinberger
6c3d3b98b8
chore: purge warelay references
2025-12-07 03:36:57 +00:00
Peter Steinberger
21dfbd0103
feat(macos): detect installed CLI helper
2025-12-07 04:35:34 +01:00
Peter Steinberger
1a10569f6d
Logging: use /tmp/clawdis for default pino logs
2025-12-07 03:32:37 +00:00
Peter Steinberger
33396ca9c1
Mac: debug log button shows path and opens in Finder
2025-12-07 03:29:58 +00:00
Peter Steinberger
36ba1ff790
Mac: debug log button falls back to legacy path
2025-12-07 03:20:04 +00:00
Peter Steinberger
fdfcff2bb5
Mac: link Debug log button to pino log
2025-12-07 03:15:30 +00:00
Peter Steinberger
c74c1a0c5f
fix: stabilize tools action width
2025-12-07 04:13:19 +01:00
Peter Steinberger
faca83e1e8
fix: ensure remote clawdis-mac path
2025-12-07 04:12:54 +01:00
Peter Steinberger
759ab54e59
VoiceWake: ssh check also verifies remote clawdis-mac
2025-12-07 04:01:00 +01:00
Peter Steinberger
3c61524f26
Mac: allow signed CLI + same-uid XPC clients
2025-12-07 02:48:24 +00:00
Peter Steinberger
40013c2b61
fix(mac): bundle WebChat resources when packaging
2025-12-07 03:36:47 +01:00
Peter Steinberger
5d5e7393f8
docs(mac): document webchat auto-open and debug flow
2025-12-07 03:34:49 +01:00
Peter Steinberger
71c5511e6c
chore(mac): add webchat auto-open flag and verbose logging
2025-12-07 03:31:03 +01:00
Peter Steinberger
ea83982062
Docs: add clawlog helper note
2025-12-07 03:30:24 +01:00
Peter Steinberger
cdbbdcba5f
Docs: describe mac XPC setup
2025-12-07 02:27:59 +00:00
Peter Steinberger
aeb708fe07
Mac: secure XPC and register mach service via launchd
2025-12-07 02:27:17 +00:00
Peter Steinberger
78c67ed53d
Mac: stabilize XPC and voice wake handling
2025-12-07 02:09:54 +00:00
Peter Steinberger
ea37ee6cb3
feat(mac): add automation permission
2025-12-07 02:34:21 +01:00
Peter Steinberger
2e67c5a045
VoiceWake: stabilize test card height
2025-12-07 02:33:32 +01:00
Peter Steinberger
752bc5a454
VoiceWake: align mic + level rows
2025-12-07 02:32:57 +01:00
Peter Steinberger
3a4bf8f213
VoiceWake: compact SSH test row
2025-12-07 02:32:05 +01:00
Peter Steinberger
bc20664c18
tools: add clawlog helper for unified logs
2025-12-07 02:25:55 +01:00
Peter Steinberger
e27690e894
VoiceWake: log detection, hold to 1s silence, ssh log clarity
2025-12-07 02:24:18 +01:00
Peter Steinberger
bac5ac18f7
fix: gate voice wake permissions
2025-12-07 02:19:50 +01:00
Peter Steinberger
e906b87450
VoiceWake: keep listening until silence, gate enable on permissions
2025-12-07 02:18:37 +01:00
Peter Steinberger
9d0415f9e9
VoiceWake: make tab content scrollable
2025-12-07 02:17:17 +01:00
Peter Steinberger
1d807911e4
VoiceWake: better ssh target parsing and error detail
2025-12-07 02:17:17 +01:00
Peter Steinberger
f51f8ffe45
scripts: make restart clean step resilient
2025-12-07 02:17:17 +01:00
Peter Steinberger
ea9930816f
Mac: disable KeepAlive; launch toggle controls agent
2025-12-07 01:13:48 +00:00
Peter Steinberger
699cb92e86
Mac: let launch checkbox toggle launchd agent
2025-12-07 01:09:49 +00:00
Peter Steinberger
f4f4f2d314
Mac: run via launchd agent with mach service
2025-12-07 01:05:05 +00:00
Peter Steinberger
374472deda
VoiceWake: add SSH connectivity check UI
2025-12-07 02:03:54 +01:00
Peter Steinberger
b27f0dd490
Settings: keep tabs fixed, only content scrolls
2025-12-07 02:03:54 +01:00
Peter Steinberger
141d2b5626
VoiceWake: add SSH forwarder tests
2025-12-07 02:03:54 +01:00
Peter Steinberger
cf0f44823a
VoiceWake: add SSH forward target
2025-12-07 02:03:54 +01:00
Peter Steinberger
6355113af9
chore(mac): move relay status row directly under Active toggle
2025-12-07 02:03:54 +01:00
Peter Steinberger
00ef7ec522
Mac: align app version with package.json
2025-12-07 01:00:47 +00:00
Peter Steinberger
9497a4cb5a
CLI: fix --version by reading app Info.plist
2025-12-07 00:59:37 +00:00
Peter Steinberger
0f71667625
CLI: add --version flag
2025-12-07 00:55:33 +00:00
Peter Steinberger
8b20e0166d
CLI: add --help and usage
2025-12-07 00:53:22 +00:00
Peter Steinberger
567644dabd
Mac: privileged CLI helper install via osascript
2025-12-07 00:50:56 +00:00
Peter Steinberger
9ef8cdadf6
Mac: lighten tool cards
2025-12-07 00:17:54 +00:00
Peter Steinberger
c911568306
Mac: remove Tools & MCP header
2025-12-07 00:16:39 +00:00
Peter Steinberger
ce02f798e4
Mac: fix voice wake actor crash; add mic entitlement
2025-12-07 00:10:29 +00:00
Peter Steinberger
21bb2fb03f
Mac: add mic entitlement to signing helper
2025-12-06 23:52:54 +00:00
Peter Steinberger
11311d07e5
mac: tidy About metadata layout
2025-12-07 00:48:05 +01:00
Peter Steinberger
4426bf2615
Docs: note SIGN_IDENTITY for mac signing
2025-12-06 23:45:17 +00:00
Peter Steinberger
515e973964
Mac: fix permission prompt crash
2025-12-06 23:31:56 +00:00
Peter Steinberger
0a6b934ac1
mac: show build metadata in About
2025-12-07 00:30:58 +01:00
Peter Steinberger
b2e3013898
mac: add signing helper and document debug bundle
2025-12-07 00:30:58 +01:00
Peter Steinberger
757cedc233
fix: remove legacy relay references
2025-12-06 23:21:25 +00:00
Peter Steinberger
ab316b348a
docs: update relay run mode
2025-12-07 00:16:32 +01:00
Peter Steinberger
7b7c4bd116
chore: fix swiftlint after split
2025-12-07 00:14:03 +01:00
Peter Steinberger
82e751a153
macOS: split AppMain into focused modules
2025-12-07 00:10:35 +01:00
Peter Steinberger
c5c50a2141
fix(mac): bundle web chat UI deps
2025-12-07 00:05:38 +01:00
Peter Steinberger
9c32e630a0
docs: add 500 LOC cap to guardrails
2025-12-06 23:59:08 +01:00
Peter Steinberger
02e26996c1
fix(mac): run relay with cwd set to configured project root
2025-12-06 23:57:40 +01:00
Peter Steinberger
b25b72ae19
chore(mac): rename relay root label to Clawdis project root
2025-12-06 23:56:23 +01:00
Peter Steinberger
ff36375581
feat(mac): show relay attention badge without dimming paused state
2025-12-06 23:54:56 +01:00
Peter Steinberger
c9f5edbc1d
feat(mac): make relay project root configurable from Debug tab
2025-12-06 23:51:34 +01:00
Peter Steinberger
ec00e0a952
fix(mac): run pnpm from project root and set PNPM_HOME for relay
2025-12-06 23:49:59 +01:00
Peter Steinberger
51a4b86495
fix(mac): resolve relay executable via common paths and pnpm fallback
2025-12-06 23:48:44 +01:00
Peter Steinberger
c3866b7d6b
docs: document debug signing and bundle id
2025-12-06 23:46:25 +01:00
Peter Steinberger
6dafca79be
build: sign debug app and use stable bundle id
2025-12-06 23:46:19 +01:00
Peter Steinberger
7aca8d2d1c
fix(mac): harden relay spawn path and show status
2025-12-06 23:45:16 +01:00
Peter Steinberger
7daef74fc6
chore: move relay status below toggles
2025-12-06 23:44:20 +01:00
Peter Steinberger
58d0f3053d
feat(mac): show relay run indicator in menu
2025-12-06 23:43:36 +01:00
Peter Steinberger
649f644c75
chore: reorder settings tabs
2025-12-06 23:41:21 +01:00
Peter Steinberger
ad2a26611a
chore: move model reload to debug tab
2025-12-06 23:40:50 +01:00
Peter Steinberger
89bb7d0211
fix(macos): avoid voice tester crash
2025-12-06 23:39:13 +01:00
Peter Steinberger
b3564bf2b4
chore(mac): guard Darwin import for relay manager
2025-12-06 23:26:29 +01:00
Peter Steinberger
16f452cf2e
feat(macos): add tools tab installers
2025-12-06 23:25:17 +01:00
Peter Steinberger
56cedad707
chore: remove bin/warelay.js
2025-12-06 23:17:01 +01:00
Peter Steinberger
4b6325908b
feat: unify main session and icon cues
2025-12-06 23:16:23 +01:00
Peter Steinberger
460d8fc094
feat(mac): add child relay process manager
2025-12-06 22:05:14 +01:00
Peter Steinberger
c435236ceb
mac: streamline model config UI
2025-12-06 21:39:25 +01:00
Peter Steinberger
39254229a0
mac: fix notification prompt and center onboarding toggle
2025-12-06 21:38:21 +01:00
Peter Steinberger
6182b205c8
mac: fix web chat boot in WKWebView
2025-12-06 21:33:35 +01:00
Peter Steinberger
e528b439bc
build: add mac icon pipeline
2025-12-06 21:00:32 +01:00
Peter Steinberger
629140d66c
docs: document macOS Voice Wake and on-device processing
2025-12-06 05:24:27 +01:00
Peter Steinberger
46ed4f2de1
docs: clarify Voice Wake runs on-device
2025-12-06 05:23:28 +01:00
Peter Steinberger
46d55a8ada
fix: harden model catalog parsing
2025-12-06 05:21:07 +01:00
Peter Steinberger
5e6af3d732
fix: add Config tab title case
2025-12-06 05:17:57 +01:00
Peter Steinberger
0d07c58989
fix: expose Config tab in settings
2025-12-06 05:15:15 +01:00
Peter Steinberger
6f80be0653
mac: add webview debug logging
2025-12-06 05:13:33 +01:00
Peter Steinberger
1916e688a6
feat: load PI model catalog and add dropdown in Config tab
2025-12-06 05:10:21 +01:00
Peter Steinberger
07e56ddeb5
docs: note bundled web chat assets
2025-12-06 05:03:51 +01:00
Peter Steinberger
88c8009116
feat: move CLI config into its own Settings tab
2025-12-06 05:03:03 +01:00
Peter Steinberger
42d843297d
mac: bundle web chat assets
2025-12-06 05:01:28 +01:00
Peter Steinberger
15cdeeddaf
feat: add config editor for clawdis model and session store
2025-12-06 04:27:50 +01:00
Peter Steinberger
3c13a265bc
mac: add web chat bridge and docs
2025-12-06 04:14:14 +01:00
Peter Steinberger
93eec9ac3c
mac: expand settings layout and dock toggle
2025-12-06 04:11:31 +01:00
Peter Steinberger
df7dbff683
ui: align live level row with mic picker
2025-12-06 04:08:26 +01:00
Peter Steinberger
2e6265963b
chore: align lint/format configs with peekaboo defaults
2025-12-06 04:07:22 +01:00
Peter Steinberger
b88b18df93
fix: apply dock icon preference at launch
2025-12-06 04:04:23 +01:00
Peter Steinberger
fbf5333b39
chore: run formatters and lint
2025-12-06 04:03:48 +01:00
Peter Steinberger
c6e3b490f5
ci: add swiftlint/swiftformat for mac app
2025-12-06 04:02:43 +01:00
Peter Steinberger
19677f0622
ci: add macOS app build
2025-12-06 03:56:49 +01:00
Peter Steinberger
a8932c2c25
feat: add additional voice wake languages + clean locale labels
2025-12-06 03:55:47 +01:00
Peter Steinberger
f93e33d9de
fix: ignore cancellation and keep mic meter during test
2025-12-06 03:55:47 +01:00
Peter Steinberger
649e6efc4a
fix: decouple voice tester from main actor
2025-12-06 03:55:47 +01:00
Peter Steinberger
a7d3619ec4
fix: avoid audio tap isolation crash
2025-12-06 03:55:47 +01:00
Peter Steinberger
daca3a5fc9
fix: stabilize voice wake test
2025-12-06 03:55:47 +01:00
Peter Steinberger
135a52020c
fix: run speech tap and handlers on safe queues
2025-12-06 03:55:47 +01:00
Peter Steinberger
bf21ed7282
feat: add language picker for Voice Wake
2025-12-06 03:55:47 +01:00
Peter Steinberger
b5f65e3304
chore: gate Voice Wake on macOS 26
2025-12-06 03:55:47 +01:00
Peter Steinberger
45400a1758
fix: show live transcript in voice wake test
2025-12-06 03:55:47 +01:00
Peter Steinberger
acc88bc2b4
tweak: faster mic meter response
2025-12-06 03:55:47 +01:00
Peter Steinberger
98b0595275
fix: pause mic meter while running voice wake test
2025-12-06 03:55:47 +01:00
Peter Steinberger
4efecfdfa0
feat: add live mic meter to Voice Wake
2025-12-06 03:55:47 +01:00
Peter Steinberger
b5afb9d3ab
feat: add mic selection to Voice Wake settings
2025-12-06 03:55:47 +01:00
Peter Steinberger
6a1d58d4e7
mac: fix voice wake mic picker build
2025-12-06 03:55:47 +01:00
Peter Steinberger
d2a3db4c78
mac: add app icon and tidy voice picker
2025-12-06 03:55:47 +01:00
Peter Steinberger
f207788c0a
refactor: make voice wake tester an actor
2025-12-06 03:55:46 +01:00
Peter Steinberger
84b44069c8
fix: run voice wake permission callbacks off the main actor
2025-12-06 03:55:46 +01:00
Peter Steinberger
09ed3f37db
fix: keep voice wake permission callbacks on main actor
2025-12-06 03:55:46 +01:00
Peter Steinberger
f444604e7c
feat: surface mic and speech permissions
2025-12-06 03:55:46 +01:00
Peter Steinberger
e1c9885566
chore: vendor swabble and add speech usage strings
2025-12-06 03:55:46 +01:00
Peter Steinberger
4e7d905783
mac: lock onboarding page width to 640
2025-12-06 03:55:46 +01:00
Peter Steinberger
cb35e3a766
mac: add sessions tab to settings
2025-12-06 03:55:46 +01:00
Peter Steinberger
67fe5ed699
chore(mac): widen settings and keep critter static when paused
2025-12-06 03:55:46 +01:00
Peter Steinberger
e863fd78d6
CLI: compact sessions table output
2025-12-06 00:49:21 +00:00
Peter Steinberger
4ea2518e79
mac: align settings window layout
2025-12-06 01:33:28 +01:00
Peter Steinberger
b508ab240f
fix(mac): stop critter animation when paused
2025-12-06 01:29:53 +01:00
Peter Steinberger
c545ec727c
chore(mac): rely on status item disable for dimming
2025-12-06 01:27:20 +01:00
Peter Steinberger
f290b9a145
fix(mac): align restart/package to use .build
2025-12-06 01:23:54 +01:00
Peter Steinberger
fa1eb9bf25
fix(mac): rebuild into .build-local and clean cache
2025-12-06 01:21:31 +01:00
Peter Steinberger
3a32b83181
chore(mac): label toggle as Clawdis Active
2025-12-06 01:17:25 +01:00
Peter Steinberger
2e393b7d5c
docs: note trimmy-style restart and dimming
2025-12-06 01:15:42 +01:00
Peter Steinberger
12e5b8124e
chore(mac): rebuild and relaunch like trimmy
2025-12-06 01:15:01 +01:00
Peter Steinberger
26e939c1eb
fix(mac): dim menubar icon like trimmy
2025-12-06 01:07:15 +01:00
Peter Steinberger
f09390a412
mac: fix settings window size persistence
2025-12-06 00:56:06 +01:00
Peter Steinberger
3067807802
mac: trimmy-style padding and debug toggle
2025-12-06 00:55:10 +01:00
Peter Steinberger
60f4c9f5b3
mac: tighten onboarding card layout
2025-12-06 00:52:22 +01:00
Peter Steinberger
b0ecafcb8d
mac: bring onboarding layout closer to vibetunnel
2025-12-06 00:50:22 +01:00
Peter Steinberger
ddfb76e9e0
fix: bundle pi dependency and directive handling
2025-12-06 00:49:46 +01:00
Peter Steinberger
6f27f742fe
feat(mac): add critter ear/leg wiggles
2025-12-06 00:49:30 +01:00
Peter Steinberger
c1a64301ce
mac: lock settings window size
2025-12-06 00:46:24 +01:00
Peter Steinberger
1ee690e87c
mac: match trimmy about layout
2025-12-06 00:44:22 +01:00
Peter Steinberger
28e0dbc02f
fix: harden directive handling
2025-12-05 23:43:30 +00:00
Peter Steinberger
a2604a36bc
mac: tighten settings layout
2025-12-06 00:42:41 +01:00
Peter Steinberger
d031c5c7fa
mac: auto-show onboarding on first run
2025-12-06 00:40:09 +01:00
Peter Steinberger
5d01b32c10
mac: polish onboarding and lifecycle
2025-12-06 00:38:02 +01:00
Peter Steinberger
4fe651079c
fix(mac): align critter legs
2025-12-06 00:38:02 +01:00
Peter Steinberger
a573ea4aeb
chore: open settings from menu and restart packaged app
2025-12-06 00:38:02 +01:00
Peter Steinberger
13704d9da5
chore: add settings shortcut and restart packaging
2025-12-06 00:38:02 +01:00
Peter Steinberger
73a1e137e6
feat: trimmy-style settings tabs and CLI helper bundling
2025-12-06 00:38:02 +01:00
Peter Steinberger
0ec9c6c3cf
fix(mac): show critter menubar icon
2025-12-06 00:38:02 +01:00
Peter Steinberger
4aa275e13c
feat(mac): animate menubar icon
2025-12-06 00:38:02 +01:00
Peter Steinberger
b557a73c3f
feat: richer mac settings panes and template icon
2025-12-06 00:38:02 +01:00
Peter Steinberger
b66098ea20
chore: bundle mac app and custom menu icon
2025-12-06 00:38:02 +01:00
Peter Steinberger
d0cefecd0d
chore: add mac build+run helper
2025-12-06 00:38:02 +01:00
Peter Steinberger
38a4e9806f
chore: ignore mac build artifacts
2025-12-06 00:38:02 +01:00
Peter Steinberger
3c64a57c84
revert prompt-too-long fallback and keep inline directives
2025-12-05 23:18:03 +00:00
Peter Steinberger
36b0796976
fix: handle prompt-too-long by resetting session and continuing inline directives
2025-12-05 23:01:37 +00:00
Peter Steinberger
3241d81ce5
fix: allow inline directives to continue and add mixed-message test
2025-12-05 22:57:52 +00:00
Peter Steinberger
d7a188fb34
fix: broaden prompt-echo guard and add heartbeat directive test
2025-12-05 22:56:07 +00:00
Peter Steinberger
5b217b2042
fix: suppress heartbeat directive acks and add coverage
2025-12-05 22:54:17 +00:00
Peter Steinberger
4cb2a92037
fix: avoid echoing prompts when rpc returns empty
2025-12-05 22:52:21 +00:00
Peter Steinberger
24d90c17c2
fix: ignore directives inside history blocks
2025-12-05 22:49:41 +00:00
Peter Steinberger
c95c6d72e9
test: cover directive parsing and abort/restart prefixes
2025-12-05 22:29:49 +00:00
Peter Steinberger
99b174f495
fix: avoid directive hits inside URLs and add tests
2025-12-05 22:28:36 +00:00
Peter Steinberger
5949ef0e2c
chore: rename package to clawdis
2025-12-05 23:19:46 +01:00
Peter Steinberger
d75d64df64
chore: ignore macOS .DS_Store globally
2025-12-05 23:19:04 +01:00
Peter Steinberger
a5164df293
feat: add mac companion app
2025-12-05 23:18:47 +01:00
Peter Steinberger
690113dd73
Add bundled pi default and session token reporting
2025-12-05 23:18:43 +01:00
Peter Steinberger
fe87160b19
chore: add system marker to directives and abort
2025-12-05 21:37:11 +00:00
Peter Steinberger
fffe1be521
docs: note directive short-circuit
2025-12-05 21:30:01 +00:00
Peter Steinberger
dc02bcee74
fix: normalize directive triggers and short-circuit
2025-12-05 21:29:41 +00:00
Peter Steinberger
e7a9313135
chore: remove twilio and expand pi cli detection
2025-12-05 21:13:23 +00:00
Peter Steinberger
5492845659
feat: stream turn completions and tighten rpc timeout
2025-12-05 21:13:17 +00:00
Peter Steinberger
29dfe89137
chore: redact long texts in web logs
2025-12-05 19:21:23 +00:00
Peter Steinberger
0da3f84a2e
fix: ignore rpc toolcall deltas to avoid duplicate replies
2025-12-05 19:16:03 +00:00
Peter Steinberger
c25b0c1a66
docs: update for web-only pi rpc
2025-12-05 19:04:09 +00:00
Peter Steinberger
7c7314f673
chore: drop twilio and go web-only
2025-12-05 19:03:59 +00:00
Peter Steinberger
869cc3d497
Route pi agent prompts via RPC stdin
2025-12-05 18:34:05 +00:00
Peter Steinberger
f315bf074b
fix: harden pi rpc prompt handling
2025-12-05 18:24:45 +00:00
Peter Steinberger
d33f9ddf44
docs: add repo link to homepage
2025-12-05 17:51:11 +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
20cb709ae3
chore: organize imports after rebrand
2025-12-04 18:02:51 +00:00
Peter Steinberger
916a41ed60
branding: default to clawdis paths and launchd label
2025-12-04 18:01:30 +00:00
Peter Steinberger
9797a9993a
docs: document agent CLI and changelog
2025-12-04 17:55:38 +00:00
Peter Steinberger
04ce98148d
web: fix mentioned JID extraction typing
2025-12-04 17:54:51 +00:00
Peter Steinberger
34eb75f634
auto-reply: honor /new after timestamp prefixes
2025-12-04 17:54:20 +00:00
Peter Steinberger
05b76281f7
CLI: add agent command for direct agent runs
2025-12-04 17:54:20 +00:00
Eng. Juan Combetto
4a35bcec21
fix: resolve lint errors (unused vars, imports, formatting)
...
- Prefix unused test variables with underscore
- Remove unused piSpec import and idleMs class member
- Fix import ordering and code formatting
2025-12-04 16:15:17 +00:00
Eng. Juan Combetto
518af0ef24
config: support clawdis.json path for rebranding
...
- Add CONFIG_PATH_CLAWDIS (~/.clawdis/clawdis.json) as preferred path
- Keep CONFIG_PATH_LEGACY (~/.warelay/warelay.json) for backward compatibility
- Update loadConfig() to check clawdis.json first, fallback to warelay.json
- Fix TypeScript type error in extractMentionedJids (null handling)
Part of the warelay → clawdis rebranding effort.
2025-12-04 16:15:17 +00:00
Peter Steinberger
a155ec0599
auto-reply: handle group think/verbose directives
2025-12-04 02:29:32 +00:00
Peter Steinberger
80979cf4d0
🦞 Add backlinks to clawd.me, soul.md, steipete.me
2025-12-03 15:46:29 +00:00
Peter Steinberger
a27ee2366e
🦞 Rebrand to CLAWDIS - add docs, update README
...
- New README with CLAWDIS branding
- docs/index.md - Main landing page
- docs/configuration.md - Config guide
- docs/agents.md - Agent integration guide
- docs/security.md - Security lessons (including the find ~ incident)
- docs/troubleshooting.md - Debug guide
- docs/lore.md - The origin story
EXFOLIATE!
2025-12-03 15:45:43 +00:00
Peter Steinberger
7bc56d7cfe
test: cover verbose directive in group batches
2025-12-03 15:45:43 +00:00
Peter Steinberger
088bdb3313
fix: allow directive-only toggles inside group batches
2025-12-03 15:45:43 +00:00
Peter Steinberger
89d49cd925
chore: bump version to 1.4.0
2025-12-03 15:45:43 +00:00
Peter Steinberger
84f8d8733e
docs: note media-only mention fix
2025-12-03 15:45:43 +00:00
Peter Steinberger
07f323222b
fix(web): capture mentions from media captions
2025-12-03 15:45:43 +00:00
Peter Steinberger
a321bf1a90
fix(web): surface media fetch failures
2025-12-03 15:45:43 +00:00
Peter Steinberger
92a0763a74
changelog: note verbose tool emoji/previews
2025-12-03 15:45:43 +00:00
Peter Steinberger
e878780808
auto-reply: single emoji per verbose tool line
2025-12-03 15:45:43 +00:00
Peter Steinberger
cb5f1fa99d
auto-reply: emoji + result preview for verbose tool calls
2025-12-03 15:45:43 +00:00
Peter Steinberger
b55ac994ea
feat(web): prime group sessions with member roster
2025-12-03 15:45:43 +00:00
Peter Steinberger
3a8d6b80e0
auto-reply: surface tool args from rpc start events
2025-12-03 15:45:43 +00:00
Peter Steinberger
3354a68373
Create CNAME
2025-12-03 16:44:03 +01:00
Peter Steinberger
edc894f6c7
fix(web): annotate group replies with sender
2025-12-03 13:25:34 +00:00
Peter Steinberger
f68714ec8e
fix(web): unwrap ephemeral/view-once and keep mentions
2025-12-03 13:15:46 +00:00
Peter Steinberger
7be9352a3a
test(web): ensure group messages carry sender + bypass allowFrom
2025-12-03 13:12:05 +00:00
Peter Steinberger
3a782b6ace
fix(web): let group pings bypass allowFrom
2025-12-03 13:11:01 +00:00
Peter Steinberger
47d0b6fc14
changelog: note logging capture and verbose trace
2025-12-03 13:09:29 +00:00
Peter Steinberger
8204351d67
fix(web): allow group replies past allowFrom
2025-12-03 13:08:54 +00:00
Peter Steinberger
4c3635a7c0
logging: route console output into pino
2025-12-03 13:07:47 +00:00
Peter Steinberger
7ea43b0145
fix(web): detect self number mentions in group chats
2025-12-03 12:43:20 +00:00
Peter Steinberger
6afe6f4ecb
feat(web): add group chat mention support
2025-12-03 12:35:18 +00:00
Peter Steinberger
273f2b61d0
Docs: document /restart WhatsApp command
2025-12-03 12:16:51 +00:00
Peter Steinberger
0824873ffb
Add /restart WhatsApp command to restart warelay
2025-12-03 12:14:32 +00:00
Peter Steinberger
8f99b13305
Pi: stream tool results faster (0.5s, flush after 5)
2025-12-03 12:08:58 +00:00
Peter Steinberger
9253702966
Pi: stream assistant text during RPC runs
2025-12-03 11:50:49 +00:00
Peter Steinberger
3958450223
Tau RPC: resolve on agent_end or exit
2025-12-03 11:34:00 +00:00
Peter Steinberger
cc596ef011
Pi: resume Tau sessions with --continue
2025-12-03 11:33:51 +00:00
Peter Steinberger
8220b11770
Tau RPC: wait for agent_end when tools run
2025-12-03 11:29:12 +00:00
Peter Steinberger
62c54cd47c
Web: simplify logout message
2025-12-03 11:04:12 +00:00
Peter Steinberger
e34d0d69aa
Chore: satisfy lint after tool-meta refactor
2025-12-03 10:42:10 +00:00
Peter Steinberger
597e7e6f13
Refactor: extract tool meta formatter + debouncer
2025-12-03 10:30:01 +00:00
Peter Steinberger
b460fd61bd
Verbose: shorten meta paths when aggregating
2025-12-03 10:26:41 +00:00
Peter Steinberger
c9b5df8184
Verbose: collapse tool meta paths by directory
2025-12-03 10:24:41 +00:00
Peter Steinberger
341ecf3bbe
Docs: note 1s tool coalescing window
2025-12-03 10:19:10 +00:00
Peter Steinberger
b6b5144ddf
Verbose: slow tool batch window to 1s
2025-12-03 10:13:02 +00:00
Peter Steinberger
deac5ff585
Verbose: shorten home paths in tool meta
2025-12-03 10:12:27 +00:00
Peter Steinberger
38a03ff2c8
Verbose: batch rapid tool results
2025-12-03 10:11:41 +00:00
Peter Steinberger
527bed2b53
Verbose: include tool arg metadata in prefixes
2025-12-03 09:57:41 +00:00
Peter Steinberger
318166f8b0
Verbose: send tool result metadata only
2025-12-03 09:40:05 +00:00
Peter Steinberger
394c751d7d
Tau RPC: resolve on agent_end
2025-12-03 09:39:26 +00:00
Peter Steinberger
86d707ad51
Docs: note streaming verbose tool results
2025-12-03 09:22:43 +00:00
Peter Steinberger
c3792db0e5
Auto-reply: stream verbose tool results via tau rpc
2025-12-03 09:21:31 +00:00
Peter Steinberger
16e42e6d6d
Auto-reply: show tool results before main reply in verbose mode
2025-12-03 09:14:10 +00:00
Peter Steinberger
53c1674382
Chore: format + lint fixes
2025-12-03 09:09:34 +00:00
Peter Steinberger
85917d4769
Docs: mention verbose hints
2025-12-03 09:08:03 +00:00
Peter Steinberger
ae0d35c727
Auto-reply: add verbose session hint
2025-12-03 09:07:17 +00:00
Peter Steinberger
086dd284d6
Auto-reply: add /verbose directives and tool result replies
2025-12-03 09:04:37 +00:00
Peter Steinberger
8ba35a2dc3
Auto-reply: treat prefixed think directives as directive-only
2025-12-03 08:57:30 +00:00
Peter Steinberger
48dfb1c8ca
Auto-reply: ack think directives
2025-12-03 08:54:38 +00:00
Peter Steinberger
5a83a44112
Docs: document thinking levels
2025-12-03 08:45:30 +00:00
Peter Steinberger
58520859e5
Auto-reply: add thinking directives
2025-12-03 08:45:23 +00:00
Peter Steinberger
4faba0fe8b
Changelog: heartbeat array handling
2025-12-03 01:03:59 +00:00
Peter Steinberger
c4b0155cc2
Format: align thinking helpers
2025-12-03 01:02:10 +00:00
Peter Steinberger
38b18202fc
Heartbeat: guard optional heartbeatCommand
2025-12-03 00:45:27 +00:00
Peter Steinberger
0f17a7d828
Heartbeat: normalize reply arrays for twilio/web
2025-12-03 00:43:28 +00:00
Peter Steinberger
9da5b9f4bb
Heartbeat: normalize array replies
2025-12-03 00:40:19 +00:00
Peter Steinberger
a7fdc7b992
Auto-reply: allow array payloads in signature
2025-12-03 00:35:57 +00:00
Peter Steinberger
f519e22e6d
CI: fix command-reply payload typing
2025-12-03 00:33:58 +00:00
Peter Steinberger
ecac4dd72a
Auto-reply: format and lint fixes
2025-12-03 00:30:05 +00:00
Peter Steinberger
b6c45485bc
Auto-reply: smarter chunking breaks
2025-12-03 00:25:01 +00:00
Peter Steinberger
ec46932259
web: handle multi-payload replies
2025-12-02 23:46:11 +00:00
Peter Steinberger
10182f1182
limits: chunk replies for twilio/web
2025-12-02 23:10:16 +00:00
Peter Steinberger
cfaec9d608
auto-reply: support multi-text RPC outputs
2025-12-02 23:03:55 +00:00
Peter Steinberger
0f6157a49d
logging: emit agent/session meta at command start
2025-12-02 21:30:28 +00:00
Peter Steinberger
1df6373cb1
revert: mark system prompt sent on first turn
2025-12-02 21:23:56 +00:00
Peter Steinberger
ea32cd85fe
chore: cut 1.3.1 in changelog
2025-12-02 21:13:47 +00:00
Peter Steinberger
716524c151
docs: note media cleanup and tau rpc typing
2025-12-02 21:13:21 +00:00
Peter Steinberger
96722bba08
ci: fix lint and tau rpc typing
2025-12-02 21:12:51 +00:00
Peter Steinberger
4e20a20927
fix(media): clean up files after response finishes
2025-12-02 21:10:18 +00:00
Peter Steinberger
a0d1004909
test(media): add redirect coverage and update changelog
2025-12-02 21:09:26 +00:00
Peter Steinberger
ccab950d16
Merge branch 'fix/media-replies'
2025-12-02 21:07:45 +00:00
Peter Steinberger
2018c90ae2
chore: tidy claude prompt and drop npm lock
2025-12-02 21:07:37 +00:00
Joao Lisboa
793360c5bb
style: fix biome formatting
2025-12-02 21:07:13 +00:00
Joao Lisboa
d8b1a38350
style: fix biome lint errors
2025-12-02 21:07:13 +00:00
Joao Lisboa
499a3e3227
style: fix biome formatting
2025-12-02 21:07:13 +00:00
Joao Lisboa
73a9fdca2a
fix: send Claude identity prefix on first session message
...
The systemSent variable was being set to true before being passed to
runCommandReply, causing the identity prefix to never be injected.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 21:07:13 +00:00
Joao Lisboa
06dd9b8ed8
fix: follow redirects when downloading Twilio media
...
node:https request() doesn't follow redirects by default, causing
Twilio media URLs (which 302 to CDN) to save placeholder/metadata
instead of actual images.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 21:07:13 +00:00
Joao Lisboa
a86cb932cf
chore: user-agnostic Claude identity and tests
...
- Use ~/Clawd instead of hardcoded /Users/steipete/clawd
- Add MEDIA: syntax instructions to identity prefix
- Update tests to check for 'scratchpad' instead of specific path
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 21:07:13 +00:00
Joao Lisboa
2fae0a9f47
fix: media serving and id consistency
...
- server.ts: Replace sendFile with manual readFile+send to fix
NotFoundError when serving media (sendFile failed even after stat)
- store.ts: Return id with file extension so it matches actual filename
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 21:07:13 +00:00
Joao Lisboa
2ec9192010
fix: use export type for type-only re-exports
...
Fixes build error with isolatedModules.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 21:06:27 +00:00
Peter Steinberger
202eff984d
docs: update agent guidance and changelog
2025-12-02 20:10:43 +00:00
Peter Steinberger
b172b538fc
perf(pi): reuse tau rpc for command auto-replies
2025-12-02 20:09:51 +00:00
Peter Steinberger
a34271adf9
chore: credit media fix contributor
2025-12-02 18:38:02 +00:00
Peter Steinberger
2cf134668c
fix(media): block symlink traversal
2025-12-02 18:37:15 +00:00
Joao Lisboa
b94b220156
Fix path traversal vulnerability in media server
...
The /media/:id endpoint was vulnerable to path traversal attacks.
Since this endpoint is exposed via Tailscale Funnel (unlike the
WhatsApp webhook which requires Twilio signature validation),
attackers could directly request paths like /media/%2e%2e%2fwarelay.json
to access sensitive files in ~/.warelay/ (e.g. warelay.json), or even
escape further to the user's home directory via multiple ../ sequences.
Fix: validate resolved paths stay within the media directory.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-12-02 19:33:21 +01:00
Peter Steinberger
26921cbe68
chore(logs): rotate daily and prune after 24h
2025-12-02 17:11:43 +00:00
Peter Steinberger
8844674825
chore(security): purge session store on logout
2025-12-02 16:33:44 +00:00
Peter Steinberger
c9fbe2cb92
chore(security): harden ipc socket
2025-12-02 16:09:40 +00:00
Peter Steinberger
2b941ccc93
Changelog: note multi-agent and batching
...
Co-authored-by: RealSid08 <RealSid08@users.noreply.github.com >
2025-12-02 11:11:50 +00:00
Peter Steinberger
ed080ae988
Tests: cover agents and fix web defaults
...
Co-authored-by: RealSid08 <RealSid08@users.noreply.github.com >
2025-12-02 11:08:00 +00:00
Peter Steinberger
f31e89d5af
Agents: add pluggable CLIs
...
Co-authored-by: RealSid08 <RealSid08@users.noreply.github.com >
2025-12-02 11:07:46 +00:00
Peter Steinberger
52c311e47f
chore: bump version to 1.3.0
2025-12-02 07:54:49 +00:00
Peter Steinberger
5b54d4de7a
feat(web): batch inbound messages
2025-12-02 07:54:13 +00:00
Peter Steinberger
96152f6577
Add typing indicator after IPC send
...
After sending via IPC, automatically show "composing" indicator so
user knows more messages may be coming from the running session.
2025-12-02 06:58:17 +00:00
Peter Steinberger
e881b3c5de
Document exclamation mark escaping workaround for Claude Code
...
Add symlink CLAUDE.md -> AGENTS.md for Claude Code compatibility.
2025-12-02 06:52:56 +00:00
Peter Steinberger
e86b507da7
Add IPC to prevent Signal session corruption from concurrent connections
...
When the relay is running, `warelay send` and `warelay heartbeat` now
communicate via Unix socket IPC (~/.warelay/relay.sock) to send messages
through the relay's existing WhatsApp connection.
Previously, these commands created new Baileys sockets that wrote to the
same auth state files, corrupting the Signal session ratchet and causing
the relay's subsequent sends to fail silently.
Changes:
- Add src/web/ipc.ts with Unix socket server/client
- Relay starts IPC server after connecting
- send command tries IPC first, falls back to direct
- heartbeat uses sendWithIpcFallback helper
- inbound.ts exposes sendMessage on listener object
- Messages sent via IPC are added to echo detection set
2025-12-02 06:31:07 +00:00
Peter Steinberger
2fc3a822c8
web: isolate session fixtures and skip heartbeat when busy
2025-12-02 06:17:16 +00:00
Peter Steinberger
1b0e1edb08
Update changelog with error message and test isolation fixes
2025-12-02 05:59:31 +00:00
Peter Steinberger
d107b79c63
Fix test corrupting production sessions.json
...
The test 'falls back to most recent session when no to is provided' was
using resolveStorePath() which returns the real ~/.warelay/sessions.json.
This overwrote production session data with test values, causing session
fragmentation issues.
Changed to use a temp directory like other tests.
2025-12-02 05:54:31 +00:00
Peter Steinberger
c5ab442f46
Fix empty result JSON dump and missing heartbeat prefix
...
Bug fixes:
- Empty result field handling: Changed truthy check to explicit type
check (`typeof parsed?.text === "string"`) in command-reply.ts.
Previously, Claude CLI returning `result: ""` would cause raw JSON
to be sent to WhatsApp.
- Response prefix on heartbeat: Apply `responsePrefix` to heartbeat
alert messages in runReplyHeartbeat, matching behavior of regular
message handler.
2025-12-02 04:29:17 +00:00
Peter Steinberger
c5677df56e
Increase watchdog timeout to 30 minutes
...
Changed from 10 to 30 minutes to avoid false positives when
heartbeatMinutes is set to 10. The watchdog should be significantly
longer than the heartbeat interval to account for:
- Network latency
- Slow command responses
- Brief connection hiccups
With heartbeatMinutes=10, a 30-minute watchdog gives 3x buffer before
triggering auto-restart.
2025-11-30 18:03:19 +00:00
Peter Steinberger
21ba0fb8a4
Fix test isolation to prevent loading real user config
...
Tests were picking up real ~/.warelay/warelay.json with emojis and
prefixes (like "🦞 "), causing test assertions to fail. Added proper
config mocks to all test files.
Changes:
- Mock loadConfig() in index.core.test.ts, inbound.media.test.ts,
monitor-inbox.test.ts
- Update test-helpers.ts default mock to disable all prefixes
- Tests now use clean config: no messagePrefix, no responsePrefix,
no timestamp, allowFrom=["*"]
This ensures tests validate core behavior without user-specific config.
The responsePrefix feature itself is already fully config-driven - this
only fixes test isolation.
2025-11-30 18:00:57 +00:00
Peter Steinberger
69319a0569
Add auto-recovery from stuck WhatsApp sessions
...
Fixes issue where unauthorized messages from +212652169245 (5elements spa)
triggered Bad MAC errors and silently killed the event emitter, preventing
all future message processing.
Changes:
1. Early allowFrom filtering in inbound.ts - blocks unauthorized senders
before they trigger encryption errors
2. Message timeout watchdog - auto-restarts connection if no messages
received for 10 minutes
3. Health monitoring in heartbeat - warns if >30 min without messages
4. Mock loadConfig in tests to handle new dependency
Root cause: Event emitter stopped firing after Bad MAC errors from
decryption attempts on messages from unauthorized senders. Connection
stayed alive but all subsequent messages.upsert events silently failed.
2025-11-30 17:53:32 +00:00
Peter Steinberger
37d8e55991
Skip responsePrefix for HEARTBEAT_OK responses
...
Preserve exact match so warelay recognizes heartbeat responses
and doesn't send them as messages.
2025-11-29 06:02:21 +00:00
Peter Steinberger
8d20edb028
Simplify timestampPrefix: bool or timezone string, default true
...
- timestampPrefix: true (UTC), false (off), or 'America/New_York'
- Removed separate timestampTimezone option
- Default is now enabled (true/UTC) unless explicitly false
2025-11-29 05:29:29 +00:00
Peter Steinberger
7564c4e7f4
Generalize prefix config: messagePrefix + responsePrefix
...
Replaces samePhoneMarker/samePhoneResponsePrefix with:
- messagePrefix: prefix for all inbound messages
- Default: '[warelay]' if no allowFrom, else ''
- responsePrefix: prefix for all outbound replies
Also adds timestamp options:
- timestampPrefix: boolean to enable [Nov 29 06:30] format
- timestampTimezone: IANA timezone (default UTC)
Updated README with new config table entries.
2025-11-29 05:27:58 +00:00
Peter Steinberger
26e02a9b8b
Add timestampPrefix config for datetime awareness
...
New config options:
- timestampPrefix: boolean - prepend timestamp to messages
- timestampTimezone: string - IANA timezone (default: UTC)
Format: [Nov 29 06:30] - compact but informative
Helps AI assistants stay aware of current date/time.
2025-11-29 05:25:53 +00:00
Peter Steinberger
25ec133574
Add samePhoneResponsePrefix config option
...
Automatically prefixes responses with a configurable string when in
same-phone mode. This helps distinguish bot replies from user messages
in the same chat bubble.
Example config:
"samePhoneResponsePrefix": "🦞 "
Will prefix all same-phone replies with the lobster emoji.
2025-11-29 05:24:01 +00:00
Peter Steinberger
d88ede92b9
feat: same-phone mode with echo detection and configurable marker
...
Adds full support for self-messaging setups where you chat with yourself
and an AI assistant replies in the same WhatsApp bubble.
Changes:
- Same-phone mode (from === to) always allowed, bypasses allowFrom check
- Echo detection via bounded Set (max 100) prevents infinite loops
- Configurable samePhoneMarker in config (default: "[same-phone]")
- Messages prefixed with marker so assistants know the context
- fromMe filter removed from inbound.ts (echo detection in auto-reply)
- Verbose logging for same-phone detection and echo skips
Tests:
- Same-phone allowed without/despite allowFrom configuration
- Body prefixed only when from === to
- Non-same-phone rejected when not in allowFrom
2025-11-29 04:52:21 +00:00
Peter Steinberger
5bafe9483d
chore: release 1.2.2
2025-11-28 08:17:22 +01:00
Peter Steinberger
4e3663b4d4
chore: move heartbeat notes to unreleased 1.2.2
2025-11-28 08:14:51 +01: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
84f2595349
docs: note changelog not needed for pure tests
2025-11-28 08:13:59 +01:00
Peter Steinberger
c11abc1134
chore: release 1.2.1
2025-11-28 08:11:07 +01:00
Peter Steinberger
f63bdda628
docs: document mime-first media handling
2025-11-28 08:07:53 +01:00
Peter Steinberger
7d6a4f5204
fix(media): sniff mime and keep extensions
2025-11-28 08:07:53 +01:00
Peter Steinberger
f871869c79
Fix broken link: claude-config.md -> clawd.md
2025-11-28 05:19:43 +00:00
Peter Steinberger
8ebe72951f
docs: Add Twitter automation and music recognition examples
...
- Added Twitter automation patterns using Peekaboo + AppleScript
- Documented JS injection for reliable button clicks on Twitter's dynamic UI
- Added audd.io music recognition API example
- These are the techniques Clawd uses to reply to tweets autonomously
2025-11-27 21:00:28 +00:00
Peter Steinberger
8d4b31a301
Expand heartbeat capabilities in docs
2025-11-27 19:09:30 +01:00
Peter Steinberger
8912b3e035
Rename claude-config.md to clawd.md, update credits
...
- Renamed docs/claude-config.md → docs/clawd.md
- Credits now include Clawd (they/them) as co-author
2025-11-27 19:07:35 +01:00
Peter Steinberger
f5d7057042
Add browser-tools CLI and example tweets to docs
...
- Added browser-tools to CLI tools table (lightweight DevTools CLI)
- Added browser-tools usage section for web scraping
- Added "See It In Action" section with 3 example tweets
- Links to agent-scripts repo
2025-11-27 18:59:01 +01:00
Peter Steinberger
6d7e620430
Release 1.2.0
2025-11-27 18:52:26 +01:00
Peter Steinberger
0cc732dce3
Docs: refresh 1.2.0 changelog; fix webhook host import
2025-11-27 18:46:46 +01:00
Peter Steinberger
8acd82aa0d
Add gowa WhatsApp MCP to power user add-ons
2025-11-27 18:45:05 +01:00
Peter Steinberger
7377c676fd
Add WhatsApp screenshot to claude-config.md
...
Shows Clawd in action in the "Meet Clawd" section
2025-11-27 18:43:24 +01:00
Peter Steinberger
9b3c4db10d
Heartbeat defaults and ws guard; format
2025-11-27 18:37:30 +01:00
Peter Steinberger
49ada54f6d
Docs: add useful CLI tools section (spotify-player, TTS, etc.)
2025-11-27 18:33:38 +01:00
Peter Steinberger
c43cdc5ac3
Docs: new Clawd session intro with personality and powers
2025-11-27 18:32:47 +01:00
Peter Steinberger
e1bd9976b3
Docs: explain two-phone setup for dedicated AI number
2025-11-27 18:29:41 +01:00
Peter Steinberger
a888564251
Docs: mention Claude Code reuses existing subscription
2025-11-27 18:28:51 +01:00
Peter Steinberger
e2ccde6434
Fix: warelay lowercase
2025-11-27 18:27:09 +01:00
Peter Steinberger
e88ff78816
Add Peekaboo and mcporter links to recommended tools
2025-11-27 18:26:40 +01:00
Peter Steinberger
5bc151fdca
Redact phone number from example config
2025-11-27 18:24:12 +01:00
Peter Steinberger
f0a5cdc6e4
Add warning disclaimer to claude-config.md
2025-11-27 18:23:56 +01:00
Peter Steinberger
85f53a4174
Fix WebSocket crash + heartbeat default 10min + docs refresh
...
- Wrap Baileys connection.update listeners in try-catch to prevent
unhandled exceptions from crashing the relay process
- Add WebSocket-level error handlers in session.ts
- Add global unhandledRejection/uncaughtException handlers in index.ts
- Make listener.onClose error-safe with .catch() in auto-reply.ts
- Change default heartbeat from 30min to 10min
- Rewrite claude-config.md with personality, better explain personal
assistant features, add recommended MCPs section
2025-11-27 18:21:14 +01:00
Peter Steinberger
549ad272fc
Docs: link Clawd setup and current config
2025-11-27 18:17:17 +01:00
Peter Steinberger
537348d995
Update README.md
2025-11-27 18:14:54 +01:00
Peter Steinberger
d4580d1a31
Fix CI: type gaps and hasMedia check
2025-11-27 18:14:20 +01:00
Peter Steinberger
93a103dde5
Tests: cover identity prefix gating
2025-11-27 04:40:03 +01:00
Peter Steinberger
9e6ad97cfb
Claude prompt: only prepend on first turn
2025-11-27 03:53:13 +01:00
Peter Steinberger
8d995a8529
Heartbeat: add ultrathink marker
2025-11-27 03:15:51 +01:00
Peter Steinberger
f869cd4b79
Heartbeat: shorten prompt to token
2025-11-27 02:48:23 +01:00
Peter Steinberger
26b087c1b4
Heartbeat: honor session override
2025-11-26 18:32:25 +01:00
Peter Steinberger
63bf4683c5
Heartbeat: allow session-id override (with test)
2025-11-26 18:28:02 +01:00
Peter Steinberger
73456a68d7
Fix heartbeat CLI import for recipients resolution
2025-11-26 18:22:28 +01:00
Peter Steinberger
aa6637b47a
Heartbeat: session-id override and safer fallback
2025-11-26 18:19:54 +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
Marcus Neves
b825f141f3
fix: add @lid format support and allowFrom wildcard handling
...
- Add support for WhatsApp Linked ID (@lid) format in jidToE164()
- Use existing lid-mapping-*_reverse.json files for LID resolution
- Fix allowFrom wildcard '*' to actually allow all senders
- Maintain backward compatibility with @s.whatsapp.net format
Fixes issues where:
- Messages from newer WhatsApp versions are silently dropped
- allowFrom: ['*'] configuration doesn't work as documented
2025-11-26 18:03:12 +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
117161e6ff
docs: document heartbeat idle override and tests
2025-11-26 17:31:56 +01:00
Peter Steinberger
98d52edcc9
test: cover heartbeat skip preserving session timestamp
2025-11-26 17:29:12 +01:00
Peter Steinberger
135d930c99
feat: add heartbeat idle override and preserve session freshness
2025-11-26 17:26:17 +01:00
Peter Steinberger
e6c78df975
chore: add verbose heartbeat session logging
2025-11-26 17:21:59 +01:00
Peter Steinberger
3749797434
chore: log heartbeat session snapshot
2025-11-26 17:20:48 +01:00
Peter Steinberger
507ed25289
chore: log heartbeat fallback and add test
2025-11-26 17:12:28 +01:00
Peter Steinberger
0d5e5f8dee
fix: heartbeat falls back to last session contact
2025-11-26 17:08:43 +01:00
Peter Steinberger
3998933b30
docs: document heartbeat triggers
2025-11-26 17:05:09 +01:00
Peter Steinberger
271004bf60
feat: add heartbeat cli and relay trigger
2025-11-26 17:04:43 +01:00
Peter Steinberger
c9e2d69bfb
docs: open 1.1.x unreleased section
2025-11-26 03:33:44 +01:00
Peter Steinberger
c194247dab
test(auto-reply): cover cwd timeout hint and queue meta
2025-11-26 03:03:13 +01:00
Peter Steinberger
a48420d85f
docs: finalize web refactor and coverage
2025-11-26 02:54:43 +01:00
Peter Steinberger
5c66e8273b
chore: update changelog and surface web relay settings
2025-11-26 02:43:24 +01:00
Peter Steinberger
5992e629c3
web: add reconnect logging + troubleshooting doc
2025-11-26 02:41:10 +01:00
Peter Steinberger
765d67cd18
web: extract reconnect helpers and add tests
2025-11-26 02:39:31 +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
8682352edb
docs: trim changelog to user-facing auto-reply changes
2025-11-26 02:19:21 +01:00
Peter Steinberger
ef1222ff31
chore: drop refactor note
2025-11-26 02:18:57 +01:00
Peter Steinberger
0145f3a585
docs: note auto-reply helper split
2025-11-26 02:18:39 +01:00
Peter Steinberger
4a8bb56a1e
chore(auto-reply): include cwd in timeout message
2025-11-26 02:18:16 +01:00
Peter Steinberger
ce5b02a9ad
test(auto-reply): add helper coverage and docs
2025-11-26 02:09:50 +01:00
Peter Steinberger
5c8ce41e12
refactor(auto-reply): split reply helpers
2025-11-26 02:03:51 +01:00
Peter Steinberger
a2586b8b06
feat(web): add logout command and tests
2025-11-26 01:29:02 +01:00
Peter Steinberger
1fd4485716
Auto-reply: refresh typing indicator every 8s
2025-11-26 01:27:51 +01:00
Peter Steinberger
b029ab933e
chore(tests): organize web test imports
2025-11-26 01:24:34 +01:00
Peter Steinberger
e0b28b6718
test(web): split provider web suite
2025-11-26 01:23:34 +01:00
Peter Steinberger
4dd2f3b7f7
refactor(web): split provider module
2025-11-26 01:16:54 +01:00
Peter Steinberger
e5f677803f
chore: format to 2-space and bump changelog
2025-11-26 00:53:53 +01:00
Peter Steinberger
a67f4db5e2
chore: format + lint
2025-11-26 00:30:30 +01:00
Peter Steinberger
8a01dc7f4c
style: normalize indentation to 2 spaces
2025-11-26 00:15:10 +01:00
Peter Steinberger
e107f115e2
chore: bump version to 1.1.0
2025-11-26 00:11:42 +01:00
Peter Steinberger
af8af4881b
docs/tests: typing interval docs and coverage
2025-11-26 00:10:38 +01:00
Peter Steinberger
d871dad85f
feat: keep typing indicators alive during commands
2025-11-26 00:05:11 +01:00
Peter Steinberger
5b83d30887
test: cover sendSystemOnce default
2025-11-25 23:57:41 +01:00
Peter Steinberger
2e3b8a03aa
feat: send session prompt once
2025-11-25 23:52:38 +01:00
Peter Steinberger
d924b7d283
docs: document media caps and tidy web tests
2025-11-25 23:43:57 +01:00
Peter Steinberger
e0425ad3e1
feat: support audio/video/doc media caps and transcript context
2025-11-25 23:21:35 +01:00
Peter Steinberger
5dced02a20
docs: clarify transcript prompt and config
2025-11-25 23:14:23 +01:00
Peter Steinberger
e642f128ae
feat: transcribe audio and surface transcript to prompts
2025-11-25 23:13:22 +01:00
Peter Steinberger
7d0ae151e8
feat: optional audio transcription via CLI
2025-11-25 23:06:54 +01:00
Peter Steinberger
f945e284e1
test: cover media formats + doc resize cap
2025-11-25 22:23:06 +01:00
Peter Steinberger
7166efef08
docs: document media resize config
2025-11-25 22:16:09 +01:00
Peter Steinberger
a81689e902
chore: approve build scripts
2025-11-25 20:11:36 +01:00
Peter Steinberger
0a0418b973
web: compress auto-reply media
2025-11-25 20:09:03 +01:00