Peter Steinberger
1ebde4dc24
style: align voice wake text utils format
2026-01-08 01:49:29 +00:00
Peter Steinberger
d9482719fb
refactor: share voice wake text utils
2026-01-08 01:46:25 +00:00
Peter Steinberger
45deb50e1a
fix: voice wake logging privacy (PR #438 @xadenryan)
2026-01-08 01:37:42 +00:00
Xaden Ryan
a15943c809
Mac: format voice wake files
2026-01-08 01:36:16 +00:00
Xaden Ryan
da972b119d
Voice Wake: trigger on wake-word pause
2026-01-08 01:36:15 +00:00
Xaden Ryan
804177b1f5
Voice Wake: preserve mic selection across disconnects
...
- Keep the chosen mic label visible when it disconnects and show a disconnected hint while falling back to system default.
- Avoid clearing the preferred mic on device changes so it auto-restores when available.
- Add audio input change and default-input logs in voice wake runtime/tester/meter to debug routing.
2026-01-08 01:36:15 +00:00
Xaden Ryan
830613d9fa
Mac: keep voice wake tester local-only
...
Why: Start Test is a local verification tool, but it was forwarding transcripts to the gateway/chat, which confused users and made tests look like real commands.
What: stop forwarding from VoiceWakeTester and clarify in docs that the tester does not send to the gateway.
2026-01-08 01:36:15 +00:00
Xaden Ryan
0f1a262ae1
Mac: stabilize voice wake test flow
...
Why: voice wake tests often delivered partial/final transcripts without reliable word timings, so trigger matching failed, timeouts overwrote detections, and test runs/mic capture kept running after UI changes.
What: add text-only/prefix fallback and silence-based detection in the test flow, stop/clean up any prior test, cancel timeout on detection/stop, and tear down meter/test when the Voice Wake tab is inactive. Runtime detection now falls back on final text-only matches when timing is missing. UI state now reflects finalizing and prevents hanging tests.
2026-01-08 01:36:15 +00:00
Peter Steinberger
02ad9eccad
fix: resolve CI asset/protocol drift
2026-01-08 01:25:17 +00:00
Peter Steinberger
9859ad3176
style(macos): swiftformat + swiftlint cleanup
2026-01-07 20:41:41 +00:00
Peter Steinberger
2b6adc9e60
test(macos): make env/defaults helper Swift 6-safe
2026-01-07 20:32:15 +00:00
Peter Steinberger
eb5f0b73a9
refactor(macos): inject main-actor services into node runtime
2026-01-07 20:32:15 +00:00
Peter Steinberger
5a09926126
test(macos): isolate env + defaults
2026-01-07 20:32:15 +00:00
Peter Steinberger
d45fcc44da
refactor(macos): move launchctl + plist snapshot
2026-01-07 20:32:15 +00:00
Peter Steinberger
f10d1fd9ac
fix(macos): stabilize node runtime + menu sessions
2026-01-07 19:42:49 +00:00
Peter Steinberger
8913bfbcd5
refactor(macos): drop duplicate AnyCodable
2026-01-07 19:42:49 +00:00
Peter Steinberger
e4f62c5b0c
fix(macos): make launchd enable idempotent
2026-01-07 19:42:49 +00:00
gupsammy
c572859c86
fix(macos): prevent gateway launchd race condition on startup ( #306 )
2026-01-07 19:42:49 +00:00
Peter Steinberger
9be7e1b332
fix(ClawdbotKit): bundle tool-display.json
2026-01-07 18:30:45 +00:00
François Catuhe
04ae9bdbef
fix(android): rotate camera photos by EXIF orientation
2026-01-07 19:19:07 +01:00
Manuel Jiménez Torres
6de2a1d958
fix(android): fix build error
2026-01-07 18:09:31 +00:00
Peter Steinberger
ec0ae6fb85
fix(android): drop broken apk output renaming
2026-01-07 18:04:37 +00:00
Peter Steinberger
b83570c5e7
fix(android): restore tool display config
2026-01-07 15:38:10 +00:00
Peter Steinberger
491a6e02fb
Merge branch 'main' into pr-402
2026-01-07 15:36:34 +00:00
Peter Steinberger
7f6b98929f
build(android): bump 2026.1.7 + apk naming
2026-01-07 15:30:03 +00:00
François Catuhe
d3ae92aaa8
android: set version 2026.1.5, add APK naming convention, remove duplicate asset
2026-01-07 16:05:26 +01:00
Peter Steinberger
85e536f3ff
fix(macos): validate remote ports
2026-01-07 11:00:21 +00:00
Nima Karimi
a5b29623b8
fix(macos): honor discovered gateway ports
2026-01-07 10:51:06 +00:00
Peter Steinberger
9bf6684366
feat: add provider usage tracking
2026-01-07 11:42:46 +01:00
Peter Steinberger
86fde78442
chore: sync swift protocol models
2026-01-07 06:14:15 +00:00
Peter Steinberger
b0bd7b946e
fix(macos): fix swiftformat lint in A2UI handler
2026-01-06 21:54:46 +01:00
Peter Steinberger
250debcc00
Merge PR #310
2026-01-06 20:25:47 +01:00
Peter Steinberger
91f67f5bd7
build(protocol): regenerate protocol artifacts
2026-01-06 18:37:20 +00:00
Peter Steinberger
dbfa316d19
feat: multi-agent routing + multi-account providers
2026-01-06 18:33:37 +00:00
Nimrod Gutman
62e590323a
fix(macOS): keep gateway config sync local
2026-01-06 18:05:28 +02:00
Peter Steinberger
dbac51e60f
chore(protocol): regenerate GatewayModels.swift
2026-01-06 09:55:58 +01:00
Shadow
69f285c5ca
chore: fixed CI
2026-01-05 23:36:48 -06:00
Marcus Neves
67e1452f4a
Cron: normalize cron.add inputs + align channels ( #256 )
...
* fix: harden cron add and align channels
* fix: keep cron tool id params
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-06 02:09:48 +00:00
Peter Steinberger
8e8d07cbf4
fix(ci): satisfy formatter checks
2026-01-05 13:55:53 +00:00
Peter Steinberger
d9103b387a
fix: sync gateway mode via gateway config
2026-01-05 06:39:37 +00:00
Peter Steinberger
30038f7d37
fix: custom connections sidebar
2026-01-05 07:25:13 +01:00
Peter Steinberger
7c51efe8f8
fix: prefer gateway config in local mode
2026-01-05 06:16:48 +00:00
Peter Steinberger
1119f2003e
fix: preserve JSON5 config parsing
2026-01-05 06:16:48 +00:00
Peter Steinberger
0d0da2e297
fix: remove sidebar toggle toolbar item safely
2026-01-05 06:49:57 +01:00
Peter Steinberger
82c16a8bed
fix: remove settings sidebar toggle
2026-01-05 06:48:49 +01:00
Peter Steinberger
545f52d7d5
fix: hide settings toolbar row
2026-01-05 06:36:34 +01:00
Peter Steinberger
a7d33c06f9
refactor: align agent lifecycle
2026-01-05 05:55:02 +01:00
Peter Steinberger
a89204362e
fix: use sidebar settings layout
2026-01-05 05:54:21 +01:00
Peter Steinberger
95d9160e27
fix: avoid settings toolbar overflow
2026-01-05 05:32:14 +01:00
Peter Steinberger
8a31a868c0
fix: honor tailnet bind for macOS gateway endpoint
2026-01-05 05:30:40 +01:00
Peter Steinberger
f871563f37
chore: sync generated protocol swift
2026-01-05 00:54:54 +00:00
Peter Steinberger
39e482414a
chore: apply upstream autostash
2026-01-05 00:26:52 +00:00
Andranik Sahakyan
d9a9f6db7d
fix(mac): add Sendable conformance to generated Swift protocol structs ( #195 )
...
* fix(mac): add Sendable conformance to generated Swift protocol structs
* fix(mac): make generated protocol types Sendable
* chore(mac): drop redundant Sendable extensions
* docs(changelog): thank @andranik-sahakyan for Sendable fix
* chore(swiftformat): exclude generated protocol models
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-04 22:39:21 +00:00
Nachx639
fa3a768a3a
fix(macos): remove authorizedWhenInUse references (iOS-only API) ( #165 )
...
CLAuthorizationStatus.authorizedWhenInUse only exists on iOS. On macOS,
location services only support .authorizedAlways. This was causing
compilation warnings and potentially incorrect behavior.
Fixes:
- GeneralSettings.swift: Remove authorizedWhenInUse check
- PermissionManager.swift: Update ensureLocation and status methods
- MacNodeRuntime.swift: Update location permission check
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 17:58:01 +00:00
Peter Steinberger
5dcf43d6ad
test: cover macos location permission status
2026-01-04 18:49:36 +01:00
Peter Steinberger
9eee832282
chore: update protocol swift models
2026-01-04 18:16:36 +01:00
Peter Steinberger
564cc9359d
style: swiftformat gateway models
2026-01-04 18:12:33 +01:00
Peter Steinberger
e2c6a96cd3
test(android): cover notification tap intent
2026-01-04 18:05:26 +01:00
Manuel Jiménez Torres
7200dabfb2
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 18:05:26 +01: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
4e072d59c1
chore(protocol): regenerate GatewayModels
2026-01-04 16:05:47 +00: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
246adaa119
chore: rename project to clawdbot
2026-01-04 14:38:51 +00:00
Peter Steinberger
529cf91ac3
fix: keep node presence fresh
2026-01-04 14:41:52 +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
259b14d66a
chore: refresh protocol models
2026-01-04 07:07:21 +01:00
Peter Steinberger
04cd1bd11a
fix(macos): bridge wizard option values
2026-01-04 06:17:07 +01: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
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
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
44bdd4ca0c
chore: regen Swift protocol models
2026-01-04 01:20:20 +01:00
Peter Steinberger
5862f95bd2
fix: lock main session deletion
2026-01-03 23:57:17 +00:00
Peter Steinberger
e1dd764504
feat: add node location support
2026-01-04 00:54:44 +01:00
Peter Steinberger
3d39e2ad75
feat(macos): sync gateway config
2026-01-03 22:17:04 +01:00
Peter Steinberger
52458a5628
Discord: default reaction notifications to own
2026-01-03 18:48:36 +00:00
Shadow
451174ca10
Discord: add reaction notification allowlist
2026-01-03 18:48:36 +00:00
Peter Steinberger
0af89022ff
fix: avoid Swift compiler crash in onboarding wizard
2026-01-03 17:59:37 +00:00
Peter Steinberger
53baba71fa
feat: unify onboarding + config schema
2026-01-03 16:48:08 +01:00
Peter Steinberger
be3da5b856
fix: update protocol models and android parsing
2026-01-03 15:04:24 +00:00
Peter Steinberger
3043dd3a0c
fix: restructure macOS connections settings
2026-01-03 14:25:03 +01:00
Peter Steinberger
f11b352089
fix(macos): expand onboarding window height
2026-01-03 13:34:30 +01:00
Peter Steinberger
6e16c0699a
feat: centralize tool display metadata
2026-01-03 13:18:27 +01:00
Peter Steinberger
7165c8a7e5
refactor: rename bundle identifiers to com.clawdis
2026-01-03 12:26:22 +01:00
Peter Steinberger
f47c7ac369
feat: support configurable gateway port
2026-01-03 12:00:17 +01:00
Shadow
7400c0946e
Discord: update UIs to use the new config
2026-01-03 01:02:22 -06:00
Peter Steinberger
c3e1b8cfd9
chore: update protocol swift models
2026-01-03 06:44:21 +01:00
Peter Steinberger
b417fe5727
fix: show rich session names in chat UIs
2026-01-03 05: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
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
75a9cd83a0
fix(mac): resolve camera type deprecation
2026-01-03 01:49:27 +01:00
Peter Steinberger
9dd613edf7
fix(mac): harden remote tunnel recovery
2026-01-03 00:02:27 +01:00