Commit Graph

464 Commits

Author SHA1 Message Date
Peter Steinberger
0f8901bd57 macos: stabilize control connection wait 2025-12-08 21:37:07 +00:00
Peter Steinberger
701f14dae4 macos: blink critter when overlay dismisses empty 2025-12-08 22:34:11 +01:00
Peter Steinberger
422a9ae515 macos: sync ears with overlay visibility 2025-12-08 22:31:03 +01:00
Peter Steinberger
4dbbd6c717 VoiceWake: add level meter 2025-12-08 22:28:49 +01:00
Peter Steinberger
735e5f5c6d macos: refine speech noise floor tracking 2025-12-08 22:24:12 +01:00
Peter Steinberger
9580ff3ac0 macos: polish voice overlay and remote command handling 2025-12-08 22:23:24 +01:00
Peter Steinberger
d1d4906db2 macos: harden control channel connect continuation 2025-12-08 22:16:05 +01:00
Peter Steinberger
609b89b653 ux: float close button outside bubble, stronger shadow 2025-12-08 22:11:38 +01:00
Peter Steinberger
a45cd40158 macos: control channel diagnostics and tunnel-based testing 2025-12-08 22:04:02 +01:00
Peter Steinberger
a44ddb3eea fix: avoid auto-send task init error 2025-12-08 22:02:03 +01:00
Peter Steinberger
43d52297f8 ux: float close button outside bubble and reduce hover flicker 2025-12-08 21:59:05 +01:00
Peter Steinberger
1ba7dcf0b1 chore: sync webchat bundle and voice wake settings 2025-12-08 21:51:08 +01:00
Peter Steinberger
926c6dd90f macos: use control channel for health and heartbeat 2025-12-08 21:50:51 +01:00
Peter Steinberger
bebd620656 VoiceWake: centralize send chime and guard play 2025-12-08 21:25:30 +01:00
Peter Steinberger
21127449ff ux: add hover/ edit close button and keep overlay until escape or send 2025-12-08 21:22:04 +01:00
Peter Steinberger
b754971847 VoiceWake: skip send chime when nothing to send 2025-12-08 20:57:41 +01:00
Peter Steinberger
bb2cb83126 VoiceWake: streamline chimes, default to Glass 2025-12-08 20:50:34 +01:00
Peter Steinberger
17fc11e475 VoiceWake: add chimes for trigger and send 2025-12-08 20:45:05 +01:00
Peter Steinberger
2c4fbf82d0 ux: keep window in edit, add escape to cancel; fix lint drift 2025-12-08 20:22:56 +01:00
Peter Steinberger
f38556bebf VoiceWake: sanitize triggers only when applying 2025-12-08 20:20:56 +01:00
Peter Steinberger
43183aeff7 RPC: stream heartbeat events to menu 2025-12-08 20:18:54 +01:00
Peter Steinberger
ecc0743fd8 HeartbeatStore: fix main-actor cleanup 2025-12-08 20:17:38 +01:00
Peter Steinberger
13bbc5cfe6 VoiceWake: keep empty trigger rows 2025-12-08 20:13:49 +01:00
Peter Steinberger
0782d913f6 ux: top-align overlay content 2025-12-08 20:10:39 +01:00
Peter Steinberger
ede1d43f99 ui: strip label color attributes so text uses primary color 2025-12-08 20:00:36 +01:00
Peter Steinberger
414acf3aaf ux: use primary text color in display label 2025-12-08 19:57:29 +01:00
Peter Steinberger
90e8b97e5e ux: wrap label to overlay width, remove label background 2025-12-08 19:43:07 +01:00
Peter Steinberger
4cf5862d61 ux: keep vibrancy, brighten label, ensure wrapping 2025-12-08 19:36:48 +01:00
Peter Steinberger
41d807d66b ui: drop translucency for overlay background 2025-12-08 19:20:46 +01:00
Peter Steinberger
c219067e73 ux: brighten display label and wrap properly 2025-12-08 19:15:58 +01:00
Peter Steinberger
d7183f0ff3 ux: show vibrant label until edit, then switch to text view 2025-12-08 19:11:59 +01:00
Peter Steinberger
2f6c23e2b9 tweak: strengthen partial transcript tint 2025-12-08 18:54:02 +01:00
Peter Steinberger
964db9b232 tweak: centralize overlay max/min heights 2025-12-08 18:52:19 +01:00
Peter Steinberger
8c13ed42f3 fix: hide overlay scrollbar unless content overflows 2025-12-08 18:50:14 +01:00
Peter Steinberger
132cc164e8 perf(mac): move blocking launchctl/webchat work off main 2025-12-08 18:42:13 +01:00
Peter Steinberger
980815f6dd tweak: allow overlay to grow to 400px then scroll 2025-12-08 18:33:14 +01:00
Peter Steinberger
0484f2782b fix: keep overlay attributed colors and auto-resize 2025-12-08 18:28:17 +01:00
Peter Steinberger
a755f55757 docs/macos: simplify sag install (auto-tap) 2025-12-08 18:19:54 +01:00
Peter Steinberger
4d3a82dc85 fix: polish voice overlay and webchat lint 2025-12-08 17:32:34 +01:00
Peter Steinberger
c7ffca1fea fix(mac): surface webchat load failures and preflight reachability 2025-12-08 17:24:08 +01:00
Peter Steinberger
0cf02f5b79 feat(mac): add push-to-talk hotkey 2025-12-08 17:24:08 +01:00
Peter Steinberger
b07763df7d Webchat: push updates over WebSocket 2025-12-08 16:19:33 +00:00
Peter Steinberger
141af1715a fix: restart webchat tunnel on main actor 2025-12-08 17:14:43 +01:00
Peter Steinberger
3903ad5e3a fix(mac): harden remote webchat tunnel and keep it alive 2025-12-08 17:14:43 +01:00
Peter Steinberger
492d0229ab fix: resize overlay on text updates and keep final tint 2025-12-08 17:14:43 +01:00
Peter Steinberger
9e3e6acd88 Webchat: poll session for messages/thinking 2025-12-08 16:14:12 +00:00
Peter Steinberger
11b31f7b47 Webchat: sync thinking level with session 2025-12-08 16:10:14 +00:00
Peter Steinberger
dd2a3b5e26 chore: use 5s silence before speech, 2s after 2025-12-08 17:06:12 +01:00
Peter Steinberger
5b1d5d5dbc chore: fix lint warnings and formatting 2025-12-08 17:05:27 +01:00
Peter Steinberger
36e7996646 chore: extend voice capture hard stop to 120s 2025-12-08 16:58:38 +01:00
Peter Steinberger
169be77ad6 chore: use 2s silence or 5s max capture 2025-12-08 16:55:08 +01:00
Peter Steinberger
eb138da2cd fix(mac): run remote health with pnpm under zsh 2025-12-08 16:52:42 +01:00
Peter Steinberger
56cb9e4153 fix: finalize only after full 1s silence 2025-12-08 16:52:13 +01:00
Peter Steinberger
b53084adb6 fix(mac): surface health errors instead of pending 2025-12-08 16:50:20 +01:00
Peter Steinberger
ccf682acb3 feat: add outcome-based dismiss animations 2025-12-08 16:49:58 +01:00
Peter Steinberger
1f6f30f38a chore: remove overlay shadow/border 2025-12-08 16:45:25 +01:00
Peter Steinberger
d61a06ca2e fix: animate overlay resizing on updates 2025-12-08 16:44:44 +01:00
Peter Steinberger
474b674ed5 feat: show partial transcripts with subdued tint 2025-12-08 16:44:00 +01:00
Peter Steinberger
a1159e4f1e feat: tint partial transcripts and stabilize delays 2025-12-08 16:41:33 +01:00
Peter Steinberger
c23e5b9f07 fix: delay logic waits for post-trigger content 2025-12-08 16:38:33 +01:00
Peter Steinberger
f3db5893f6 test: cover trigger trimming for voice wake 2025-12-08 16:36:53 +01:00
Peter Steinberger
2f32c49fce fix: trim overlay transcript to post-trigger 2025-12-08 16:35:03 +01:00
Peter Steinberger
e0044b81aa feat: add adaptive voice wake delays 2025-12-08 16:34:06 +01:00
Peter Steinberger
b5b4e318b3 feat: refine voice wake overlay animations 2025-12-08 16:34:06 +01:00
Peter Steinberger
5f76466122 feat: add voice wake overlay 2025-12-08 16:34:06 +01:00
Peter Steinberger
03ba7de9ef Webchat: update bundled assets after attachment support 2025-12-08 14:48:03 +00:00
Peter Steinberger
8151964028 Webchat: inline attachments to agent RPC and fix status compile 2025-12-08 14:46:33 +00:00
Peter Steinberger
dd39795d04 feat(macos): add voice wake mic picker 2025-12-08 15:05:57 +01:00
Peter Steinberger
09cfd8b40a macOS webchat: use relay HTTP transport directly 2025-12-08 13:12:34 +00:00
Peter Steinberger
52bf44e2a7 Split clawdis node vs mac helper commands 2025-12-08 13:26:12 +01:00
Peter Steinberger
e315a38420 SSH remote uses clawdis only 2025-12-08 13:20:55 +01:00
Peter Steinberger
9408670050 Remote web chat tunnel and onboarding polish 2025-12-08 12:50:37 +01:00
Peter Steinberger
f6d54664d3 webchat: send via http rpc endpoint and show errors 2025-12-08 12:23:45 +01:00
Peter Steinberger
2a7b1bfe4a webchat: surface bootstrap errors in UI 2025-12-08 12:17:39 +01:00
Peter Steinberger
ebad54b940 webchat: move serving to relay loopback and tunnel from mac app 2025-12-08 11:54:30 +01:00
Peter Steinberger
b89a2e31af webchat: fetch remote sessions via CLI and log missing history 2025-12-08 01:55:09 +01:00
Peter Steinberger
e7bd656f21 chore(ci): fix lint and swiftformat failures 2025-12-08 01:48:53 +01:00
Peter Steinberger
ba150e35fc webchat: load remote history from tau fallback and send to session 2025-12-08 01:36:00 +01:00
Peter Steinberger
a325939017 VoiceWake: capture utterance and add prefix 2025-12-08 01:35:42 +01:00
Peter Steinberger
abee148535 webchat: make remote mode load history and send via rpc 2025-12-08 01:27:18 +01:00
Peter Steinberger
eecc6e75b0 ui: drop default sound picker; use cli per-notification sound 2025-12-08 00:56:36 +01:00
Peter Steinberger
9c5bf7fa5b health: surface ssh output when probe fails 2025-12-08 00:52:31 +01:00
Peter Steinberger
1c88047681 copy: rename menu toggle to Remote Clawdis Active when remote 2025-12-08 00:41:31 +01:00
Peter Steinberger
37d56ad313 copy: capitalize send heartbeats menu label 2025-12-08 00:40:30 +01:00
Peter Steinberger
93eea879bd feat(macos): add Sparkle updates and release docs 2025-12-08 00:18:16 +01:00
Peter Steinberger
9d59a1b805 ui: remove duplicate health row in General 2025-12-08 00:17:29 +01:00
Peter Steinberger
285c5c85c8 ui: move Clawdis active toggle to top 2025-12-08 00:16:25 +01:00
Peter Steinberger
8a25534d23 copy: shorten tailscale tip 2025-12-08 00:14:58 +01:00
Peter Steinberger
43789b7aeb fix: stop voice wake tester after short post-trigger silence 2025-12-07 23:43:50 +01:00
Peter Steinberger
be0393b83d copy: rename recognition language label 2025-12-07 23:35:58 +01:00
Peter Steinberger
49b03177e4 ui: place health row under remote picker and improve timeout message 2025-12-07 23:34:49 +01:00
Peter Steinberger
068974233b ui: tidy tables, links, and hide redundant voice wake forwarder 2025-12-07 23:26:28 +01:00
Peter Steinberger
8f72672ac3 ui: move health/cli info to Debug; add single health row in General 2025-12-07 23:22:54 +01:00
Peter Steinberger
eb1e006421 ui: fold remote mode label into picker 2025-12-07 23:21:00 +01:00
Peter Steinberger
95c0cef374 ui: reuse compact remote card in General and hide voice wake forwarder 2025-12-07 23:20:14 +01:00
Peter Steinberger
8f6d71c21b fix: remote test uses CLI path discovery again 2025-12-07 23:12:33 +01:00
Peter Steinberger
94a94ec139 ui: make General tab scrollable 2025-12-07 23:06:10 +01:00
Peter Steinberger
f290033ddd ui: align voice wake forwarding with remote mode 2025-12-07 23:04:51 +01:00
Peter Steinberger
0c38517baa style: bump onboarding height to 840px 2025-12-07 22:58:05 +01:00
Peter Steinberger
3e2fd900c8 chore: refresh webchat bundle 2025-12-07 22:57:12 +01:00
Peter Steinberger
4cab66118c macOS: surface stderr in health failure text 2025-12-07 21:37:06 +00:00
Peter Steinberger
80a257e5eb MenuBar: fix health label age string 2025-12-07 19:03:49 +01:00
Peter Steinberger
81310c39bc Utilities: add age helper for menu health label 2025-12-07 19:02:50 +01:00
Peter Steinberger
1b888af439 Launch agent: disable autostart without killing running app 2025-12-07 19:01:14 +01:00
Peter Steinberger
1489de6738 style: increase onboarding window height 2025-12-07 19:01:14 +01:00
Peter Steinberger
8d2fd382e4 build: add local node bin to restart script PATH 2025-12-07 19:01:14 +01:00
Peter Steinberger
0af70ed3fa chore: surface helper install status in onboarding 2025-12-07 19:01:14 +01:00
Peter Steinberger
95a56fcac5 style: enlarge onboarding window to fit full permission list 2025-12-07 19:01:14 +01:00
Peter Steinberger
410a595379 style: compact remote setup card and move advanced ssh fields 2025-12-07 19:01:14 +01:00
Peter Steinberger
2938b09d6c style: increase onboarding content height 2025-12-07 19:01:14 +01:00
Peter Steinberger
e2b4d3223e style: tighten onboarding hero spacing 2025-12-07 19:01:14 +01:00
Peter Steinberger
8135e76372 VoiceWake: add escaping regression tests 2025-12-07 19:01:14 +01:00
Peter Steinberger
1a58b52898 macOS: fix web chat agent PATH and surface stderr 2025-12-07 17:31:14 +00:00
Peter Steinberger
73053d2f79 macOS: show last health result with age in menu 2025-12-07 17:23:51 +00:00
Peter Steinberger
eb8312daa6 VoiceWake: document escape path and reset stale forward command 2025-12-07 18:23:34 +01:00
Peter Steinberger
c674f8696c VoiceWake: document escape path and reset stale forward command 2025-12-07 18:23:34 +01:00
Peter Steinberger
6553001873 feat: add remote clawd toggle 2025-12-07 18:23:34 +01:00
Peter Steinberger
8bcf7bace1 macOS: merge status row and fix webchat bundle deps 2025-12-07 17:20:42 +00:00
Peter Steinberger
dc3b793ded VoiceWake: remove python hop; use escaped literal under /bin/sh 2025-12-07 18:03:25 +01:00
Peter Steinberger
4ae4bda826 test(mac): cover voice wake helpers 2025-12-07 17:56:40 +01:00
Peter Steinberger
0e3d1b68d3 refactor(mac): split voice wake settings 2025-12-07 17:55:07 +01:00
Peter Steinberger
390215a7d6 webchat: bypass api key prompts in embedded mode 2025-12-07 17:55:07 +01:00
Peter Steinberger
d9e5cb34fc webchat: hide model selector in embedded UI 2025-12-07 17:55:07 +01:00
Peter Steinberger
26a60df295 macOS: fix health shell timeout race 2025-12-07 16:53:32 +00:00
Peter Steinberger
2b7263f485 VoiceWake: send transcript via python/base64 instead of stdin 2025-12-07 17:45:43 +01:00
Peter Steinberger
dd524781f8 webchat: bundle assets with rolldown 2025-12-07 17:44:37 +01:00
Peter Steinberger
8644d35cbb VoiceWake: include ssh cmd on failure 2025-12-07 17:30:45 +01:00
Peter Steinberger
edba350a7c VoiceWake: pipe transcript to ssh forwarder 2025-12-07 16:59:22 +01:00
Peter Steinberger
f8acd88ab1 chore(webchat): increase server logging for module load debugging 2025-12-07 16:55:49 +01:00
Peter Steinberger
36defa04f0 chore(webchat): add server logging and ensure buildable 2025-12-07 16:49:08 +01:00
Peter Steinberger
462350c48f voice wake: log ssh command at info level 2025-12-07 16:43:18 +01:00
Peter Steinberger
ce0afc94d7 chore(webchat): wait for local server and add debug logging 2025-12-07 16:39:21 +01:00
Peter Steinberger
2d830d5820 voice wake: log full ssh command for debug 2025-12-07 16:38:49 +01:00
Peter Steinberger
59d6400e65 chore: format macOS sources 2025-12-07 16:35:58 +01:00
Peter Steinberger
4a8beedafd voice wake: use clean PATH (no inherited junk) 2025-12-07 16:33:56 +01:00
Peter Steinberger
539a0d46de feat(macos): serve web chat over localhost to avoid cors 2025-12-07 16:30:10 +01:00
Peter Steinberger
f7f0dca8de voice wake: show identity not found when configured 2025-12-07 16:18:42 +01:00
Peter Steinberger
586689a6f3 Icon: add ear holes on voice wake 2025-12-07 16:15:40 +01:00
Peter Steinberger
4dece5de61 chore(macos): allow file access for web chat modules 2025-12-07 16:14:13 +01:00
Peter Steinberger
d7180fb98c voice wake: surface ssh failures (missing key/no output) 2025-12-07 16:13:40 +01:00
Peter Steinberger
7e634caedc fix(macos): load web chat from bundled html 2025-12-07 16:13:40 +01:00
Peter Steinberger
c8613fbfeb General: add bottom inset to quit button 2025-12-07 15:11:47 +00:00
Peter Steinberger
6f3e635307 fix(mac): keep pnpm health output json-safe 2025-12-07 15:09:56 +00:00
Peter Steinberger
ebd14b79d3 debug: hide helper subtext while sending 2025-12-07 15:47:30 +01:00
Peter Steinberger
c32aa3a0f0 rpc: surface raw error lines and auto-start worker 2025-12-07 15:46:26 +01:00
Peter Steinberger
462782c011 Debug: surface detailed voice send errors 2025-12-07 14:41:45 +00:00
Peter Steinberger
da5f5a4a7b chore(macos): enlarge about icon 2025-12-07 15:34:44 +01:00
Peter Steinberger
b20d79c671 Debug: make voice wake test follow config 2025-12-07 14:33:46 +00:00
Peter Steinberger
e1b888a7aa feat: add heartbeat toggle with live RPC control 2025-12-07 15:32:48 +01:00
Peter Steinberger
8903ce5014 chore(macos): tighten voice wake control widths 2025-12-07 15:09:16 +01:00
Peter Steinberger
7811aed216 debug: surface ssh error details in voice test 2025-12-07 15:07:56 +01:00
Peter Steinberger
c64f69617c fix(macos): honor pnpm/node when locating clawdis for health 2025-12-07 15:07:38 +01:00
Peter Steinberger
766ccbdaae fix(macos): handle missing clawdis CLI for health check 2025-12-07 15:03:05 +01:00
Peter Steinberger
ab6a2117a2 debug: add voice forward test button 2025-12-07 15:00:02 +01:00
Peter Steinberger
ca658c8680 macOS: widen voice wake label spacing 2025-12-07 13:57:05 +00:00
Peter Steinberger
76dc0cf2ea chore(macos): simplify health status menu and messaging 2025-12-07 14:54:58 +01:00
Peter Steinberger
a80b2abd48 chore(macos): align recognition language row styling 2025-12-07 14:52:43 +01:00
Peter Steinberger
083487f4a3 chore(macos): align mic level bar width 2025-12-07 14:52:05 +01:00
Peter Steinberger
eaaf075087 chore(macos): clean up CLI helper subtext 2025-12-07 14:49:56 +01:00
Peter Steinberger
6c31add3b7 fix(macos): resolve clawdis path for health check 2025-12-07 14:49:18 +01:00
Peter Steinberger
051ba00c62 chore(macos): make debug settings scrollable 2025-12-07 14:48:12 +01:00
Peter Steinberger
7bcdc62cc5 chore(macos): remove focus ring on about icon 2025-12-07 14:46:54 +01:00
Peter Steinberger
55c163bd77 agent: deliver via rpc and voice forward 2025-12-07 06:05:00 +01:00
Peter Steinberger
112b423fbb Revert "fix: auto-start rpc worker for agent calls"
This reverts commit 74ddb697d3.
2025-12-07 05:54:47 +01:00
Peter Steinberger
74ddb697d3 fix: auto-start rpc worker for agent calls 2025-12-07 05:54:15 +01:00
Peter Steinberger
e5dc471a00 fix: keep launch agent alive and inject PATH 2025-12-07 05:49:59 +01:00
Peter Steinberger
034ebf9203 fix(health): reveal logs alerts when missing; align actions 2025-12-07 05:46:47 +01:00
Peter Steinberger
e79880b296 fix: raise voice wake forward timeout to 30s 2025-12-07 05:46:05 +01:00
Peter Steinberger
c3a4074d68 chore(health): kick off health refresh at app launch 2025-12-07 05:44:09 +01:00
Peter Steinberger
df8d5773ec UI: streamline relay status label 2025-12-07 04:39:45 +00:00
Peter Steinberger
f08da7f948 chore: fix test import and lint 2025-12-07 05:38:29 +01:00
Peter Steinberger
9b36aeb2da test: cover command resolver fallbacks 2025-12-07 05:38:29 +01:00
Peter Steinberger
8e2c7f6f84 fix: reuse resolver for agent rpc launch 2025-12-07 05:38:29 +01:00
Peter Steinberger
2438311637 Health: CLI probe and mac UI surfacing 2025-12-07 04:38:20 +00:00
Peter Steinberger
069fdc2a39 Settings: move session store path to Debug 2025-12-07 04:38:08 +00:00
Peter Steinberger
a8464a78ef Settings: inline heartbeat inputs 2025-12-07 04:32:28 +00:00
Peter Steinberger
a43b6796b8 Settings: add heartbeat controls 2025-12-07 04:30:24 +00:00
Peter Steinberger
1251af2f4d chore(agent): start rpc worker at launch, fail if not running 2025-12-07 05:24:54 +01:00
Peter Steinberger
59714e1396 fix(macos): guard unavailable speech recognizer 2025-12-07 05:22:20 +01:00
Peter Steinberger
4ce5d9fb59 feat(agent): add rpc status command and tests; rpc only path 2025-12-07 05:20:50 +01:00
Peter Steinberger
8468741147 chore(agent): drop cli fallback, rpc only for sends 2025-12-07 05:16:16 +01:00
Peter Steinberger
59cb38b753 feat(agent): use persistent rpc worker for agent sends 2025-12-07 05:14:45 +01:00
Peter Steinberger
ae543dc712 fix(webchat): wire agent CLI send into web chat view 2025-12-07 05:04:34 +01:00
Peter Steinberger
16d375def4 Mac: fix agent XPC by invoking CLI agent 2025-12-07 04:03:06 +00:00
Peter Steinberger
c5c2dc9eb8 feat(cli): add agent send command and wire through XPC 2025-12-07 05:00:52 +01:00
Peter Steinberger
a8a72ca15b fix(voicewake): log ssh/cli failure instead of staying silent 2025-12-07 04:58:57 +01:00
Peter Steinberger
1fe33cf32f test(voicewake): cover trigger matching for runtime listener 2025-12-07 04:53:59 +01:00
Peter Steinberger
8e96d1637e feat(macos): run live voice wake listener and animate ears 2025-12-07 04:52:27 +01:00
Peter Steinberger
98b9fe158f test: add voice wake forwarder cache coverage 2025-12-07 04:52:26 +01:00
Peter Steinberger
67099e1369 fix: harden remote voice wake CLI lookup 2025-12-07 04:43:08 +01:00
Peter Steinberger
2b11bb69e6 Mac: add relay restart button in Debug 2025-12-07 03:42:50 +00:00
Peter Steinberger
2446a9ef08 feat: add icon animation setting 2025-12-07 04:38:45 +01:00
Peter Steinberger
b662fcc9d2 chore: purge warelay references 2025-12-07 03:36:57 +00:00
Peter Steinberger
b7f573fee9 feat(macos): detect installed CLI helper 2025-12-07 04:35:34 +01:00
Peter Steinberger
2defb603d0 Mac: debug log button shows path and opens in Finder 2025-12-07 03:29:58 +00:00
Peter Steinberger
54dd44304d Mac: debug log button falls back to legacy path 2025-12-07 03:20:04 +00:00
Peter Steinberger
7757a4300d Mac: link Debug log button to pino log 2025-12-07 03:15:30 +00:00
Peter Steinberger
e5b0154458 fix: stabilize tools action width 2025-12-07 04:13:19 +01:00
Peter Steinberger
7837672ccb fix: ensure remote clawdis-mac path 2025-12-07 04:12:54 +01:00
Peter Steinberger
b2aa650f59 VoiceWake: ssh check also verifies remote clawdis-mac 2025-12-07 04:01:00 +01:00