Commit Graph

1222 Commits

Author SHA1 Message Date
Peter Steinberger
84d9d1fd66 build(protocol): regenerate protocol artifacts 2026-01-06 18:37:20 +00:00
Peter Steinberger
882bcaf414 feat: multi-agent routing + multi-account providers 2026-01-06 18:33:37 +00:00
Nimrod Gutman
d0260c1e49 fix(macOS): keep gateway config sync local 2026-01-06 18:05:28 +02:00
Peter Steinberger
f6fda75f02 chore(protocol): regenerate GatewayModels.swift 2026-01-06 09:55:58 +01:00
Shadow
aae366d41b chore: fixed CI 2026-01-05 23:36:48 -06:00
Marcus Neves
9572f92a0f 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
fdb81c006c fix(ci): satisfy formatter checks 2026-01-05 13:55:53 +00:00
Peter Steinberger
02f259dd00 fix: sync gateway mode via gateway config 2026-01-05 06:39:37 +00:00
Peter Steinberger
93e4584fca fix: custom connections sidebar 2026-01-05 07:25:13 +01:00
Peter Steinberger
b61a2b0679 fix: prefer gateway config in local mode 2026-01-05 06:16:48 +00:00
Peter Steinberger
e5df2e782f fix: preserve JSON5 config parsing 2026-01-05 06:16:48 +00:00
Peter Steinberger
3fa0fcd399 fix: remove sidebar toggle toolbar item safely 2026-01-05 06:49:57 +01:00
Peter Steinberger
01c45cc13b fix: remove settings sidebar toggle 2026-01-05 06:48:49 +01:00
Peter Steinberger
23723430fb fix: hide settings toolbar row 2026-01-05 06:36:34 +01:00
Peter Steinberger
da8ed6928d refactor: align agent lifecycle 2026-01-05 05:55:02 +01:00
Peter Steinberger
e3df06bf02 fix: use sidebar settings layout 2026-01-05 05:54:21 +01:00
Peter Steinberger
654ba9a265 fix: avoid settings toolbar overflow 2026-01-05 05:32:14 +01:00
Peter Steinberger
e1e04fec39 fix: honor tailnet bind for macOS gateway endpoint 2026-01-05 05:30:40 +01:00
Peter Steinberger
25d43ca55c chore: sync generated protocol swift 2026-01-05 00:54:54 +00:00
Peter Steinberger
fb731a0756 chore: apply upstream autostash 2026-01-05 00:26:52 +00:00
Andranik Sahakyan
9ade229e09 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
c3b444a553 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
46bd8e1fdd chore: update protocol swift models 2026-01-04 18:16:36 +01:00
Peter Steinberger
3e6d461b5d style: swiftformat gateway models 2026-01-04 18:12:33 +01:00
Peter Steinberger
d9222ca3b4 fix: macOS Swift cleanup 2026-01-04 17:57:53 +01:00
Peter Steinberger
3d0b703ae4 chore(protocol): regenerate GatewayModels 2026-01-04 16:05:47 +00:00
Peter Steinberger
5eef8eadde fix: avoid sendable issue in mac location timeout 2026-01-04 16:27:17 +01:00
Peter Steinberger
fa4d5cb362 chore: lint and format cleanup 2026-01-04 16:24:17 +01:00
Peter Steinberger
81349a30a5 refactor: streamline node invoke handling 2026-01-04 16:24:17 +01:00
Peter Steinberger
51fcb3bea3 refactor: split connections settings/store 2026-01-04 16:24:17 +01:00
Peter Steinberger
f7cb3846f1 chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
Peter Steinberger
a1806acb16 fix: keep node presence fresh 2026-01-04 14:41:52 +01:00
Peter Steinberger
79272d0efc chore: refresh protocol models 2026-01-04 07:07:21 +01:00
Peter Steinberger
2a8ce783ae fix(macos): bridge wizard option values 2026-01-04 06:17:07 +01:00
Tu Nombre Real
4463e3f39c 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
9f8a3bd1b9 feat(sessions): add agent-to-agent post step 2026-01-04 03:04:55 +01:00
Peter Steinberger
b67a0d0d28 chore: regen Swift protocol models 2026-01-04 01:20:20 +01:00
Peter Steinberger
6b6a4c69f8 fix: lock main session deletion 2026-01-03 23:57:17 +00:00
Peter Steinberger
df609cdd27 feat: add node location support 2026-01-04 00:54:44 +01:00
Peter Steinberger
76c118657e feat(macos): sync gateway config 2026-01-03 22:17:04 +01:00
Peter Steinberger
965f9c4746 Discord: default reaction notifications to own 2026-01-03 18:48:36 +00:00
Shadow
1acd162502 Discord: add reaction notification allowlist 2026-01-03 18:48:36 +00:00
Peter Steinberger
40192f9f22 fix: avoid Swift compiler crash in onboarding wizard 2026-01-03 17:59:37 +00:00
Peter Steinberger
5052414f12 feat: unify onboarding + config schema 2026-01-03 16:48:08 +01:00
Peter Steinberger
d6509b9e55 fix: update protocol models and android parsing 2026-01-03 15:04:24 +00:00
Peter Steinberger
1eb491c30b fix: restructure macOS connections settings 2026-01-03 14:25:03 +01:00
Peter Steinberger
5f95aabe19 fix(macos): expand onboarding window height 2026-01-03 13:34:30 +01:00
Peter Steinberger
38b755935c feat: centralize tool display metadata 2026-01-03 13:18:27 +01:00
Peter Steinberger
79d21b58e4 refactor: rename bundle identifiers to com.clawdis 2026-01-03 12:26:22 +01:00
Peter Steinberger
a5340a920b feat: support configurable gateway port 2026-01-03 12:00:17 +01:00
Shadow
cdd30c4c3e Discord: update UIs to use the new config 2026-01-03 01:02:22 -06:00
Peter Steinberger
2dcd90ece8 chore: update protocol swift models 2026-01-03 06:44:21 +01:00
Shadow
250db134cb UI: add discord action toggles 2026-01-03 03:07:13 +01:00
Shadow
1aff389226 Discord: drop enableReactions config 2026-01-03 03:07:13 +01:00
Peter Steinberger
41fd695de6 fix: respect onboarding scroll indicator preference 2026-01-03 02:55:43 +01:00
Shadow
e10ee6fb27 macOS: add onboarding scroll gutter 2026-01-03 02:55:43 +01:00
Peter Steinberger
4fb2fbb523 fix(mac): resolve camera type deprecation 2026-01-03 01:49:27 +01:00
Peter Steinberger
015239367c fix(mac): harden remote tunnel recovery 2026-01-03 00:02:27 +01:00
Peter Steinberger
1756e6a891 fix: align discord config ui 2026-01-02 21:15:59 +01:00
Peter Steinberger
b01ee75b8d Merge pull request #108 from thewilloftheshadow/shadow/ui-connection-update
UI: Update connections UIs
2026-01-02 21:04:45 +01:00
Peter Steinberger
95c0b832d8 fix(macos): resolve gateway launch args 2026-01-02 19:58:38 +00:00
Peter Steinberger
5a1067fb58 fix(macos): improve session preview loading 2026-01-02 19:55:19 +01:00
Shadow
fb708b073b macOS: swiftformat connections settings 2026-01-02 12:30:59 -06:00
Shadow
2211996cea macOS: fix swiftlint param count 2026-01-02 12:25:47 -06:00
Shadow
e347bf8656 Update connections UIs 2026-01-02 12:06:05 -06:00
Peter Steinberger
e33c732880 fix(macos): decode session preview payload 2026-01-02 18:32:03 +01:00
Peter Steinberger
057ec6c811 feat(macos): add session previews in menu 2026-01-02 18:29:47 +01:00
Peter Steinberger
95a6c4bceb feat: add camera list and device selection 2026-01-02 18:23:26 +01:00
Peter Steinberger
6339269ff1 fix: resolve mac camera continuation isolation 2026-01-02 18:02:24 +01:00
Peter Steinberger
af9bea95e1 fix: wait for camera exposure to settle 2026-01-02 17:57:34 +01:00
Peter Steinberger
1e89e507d8 fix(macos): keep config writes on main actor 2026-01-02 17:15:26 +01:00
Peter Steinberger
3536400745 chore: fix lint and add gateway auth tests 2026-01-02 17:15:26 +01:00
Peter Steinberger
d471340937 chore: merge origin/main 2026-01-02 16:50:29 +01:00
Peter Steinberger
560ed9a12e fix: harden gateway password auth 2026-01-02 16:47:52 +01:00
Peter Steinberger
b6fdb743e3 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
189c4889c8 fix(macos): return node name 2026-01-02 15:28:34 +01:00
Peter Steinberger
2d88ded666 fix(macos): show gateway in devices list 2026-01-02 15:27:21 +01:00
Peter Steinberger
8913c8a507 fix(macos): suppress cancelled node refresh 2026-01-02 15:12:57 +01:00
Peter Steinberger
1e0f9f9e74 fix(macos): clarify gateway error state 2026-01-02 13:48:19 +01:00
Peter Steinberger
ce319bef69 refactor: normalize group session keys 2026-01-02 10:14:58 +01:00
Jefferson Nunn
bdef1abb4b 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
67b2f08b55 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
680cdee9e3 style: fix swiftlint warnings 2026-01-02 00:17:49 +01:00
Peter Steinberger
1775fd3de9 feat: add recent session switchers 2026-01-01 23:50:26 +01:00
Peter Steinberger
db9977e38e fix(macos): colorize provider status subtitles 2026-01-01 23:16:22 +01:00
Peter Steinberger
9137a1decc feat(macos): verify Claude OAuth in onboarding 2026-01-01 23:16:15 +01:00
Peter Steinberger
383c500cec feat(macos): show skills in onboarding 2026-01-01 22:55:10 +01:00
Peter Steinberger
5c87ec8bbe fix: improve canvas debug status in remote mode 2026-01-01 20:41:13 +00:00
Peter Steinberger
ab69dd7ff9 fix: resolve macOS config store concurrency 2026-01-01 21:31:37 +01:00
Peter Steinberger
9a4f42f1ca test: cover remote config routing 2026-01-01 20:29:53 +01:00
Peter Steinberger
97c4b994c6 fix: route macOS remote config via gateway 2026-01-01 18:58:41 +01:00
Petter Blomberg
3b82377feb fix(macos): prioritize main bundle for device resources to prevent crash 2026-01-01 17:39:33 +01:00
Peter Steinberger
4b6395febd fix(macos): add icon to app logging menu 2026-01-01 16:48:17 +01:00
Peter Steinberger
23246cbc22 fix(macos): restore swift test build 2026-01-01 11:05:14 +01:00
Peter Steinberger
edf0738919 docs: annotate nix path resolution 2026-01-01 09:30:12 +01:00
Peter Steinberger
388ddd0f85 feat: centralize config paths and expose in snapshot 2026-01-01 09:22:37 +01:00
Peter Steinberger
8059613856 fix: honor nix config overrides in mac app 2026-01-01 09:17:21 +01:00
Peter Steinberger
2d7b457b21 Merge remote-tracking branch 'origin/main' into upstream-preview-nix-2025-12-20 2026-01-01 09:15:28 +01:00
Peter Steinberger
01a07f711e fix: prefer module bundle for device models 2026-01-01 08:58:54 +01:00
Peter Steinberger
8d7b29f261 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
Mariano Belinky
39d24a2287 Use user home for pnpm path 2026-01-01 08:35:54 +01:00
Mariano Belinky
f81f9c4a17 Fix device model resources for Instances 2025-12-31 16:45:35 +01:00
Peter Steinberger
fcf3a1d156 chore: add mac app logging coverage 2025-12-31 16:28:51 +01:00
Peter Steinberger
f262196625 feat: add swift-log app logging controls 2025-12-31 16:03:18 +01:00
Peter Steinberger
ca1fba630e fix: restore talk orb hit testing 2025-12-30 20:25:52 +01:00
Peter Steinberger
4592391281 fix: allow mp3 fallback result 2025-12-30 14:35:53 +01:00
Peter Steinberger
bbad34479f fix: fallback mp3 when pcm blocked 2025-12-30 14:32:47 +01:00
Peter Steinberger
2e82abe2c4 fix: hop audio to main actor 2025-12-30 14:22:03 +01:00
Peter Steinberger
461169e996 fix: improve talk overlay input + drag 2025-12-30 14:18:51 +01:00
Peter Steinberger
26f02543d6 refactor: inject audio players 2025-12-30 13:46:14 +01:00
Peter Steinberger
a39f30f7e7 fix: tighten macOS menu device rows 2025-12-30 13:31:11 +01:00
Peter Steinberger
748f9cf628 chore: sync local changes 2025-12-30 12:53:17 +01:00
Peter Steinberger
3bac41c7ad fix: address talk streaming build 2025-12-30 12:20:32 +01:00
Peter Steinberger
0db06400e2 fix: stream elevenlabs tts playback 2025-12-30 12:17:40 +01:00
Peter Steinberger
7b84aa93b0 feat(talk): pause + drag overlay orb 2025-12-30 11:37:52 +01:00
Peter Steinberger
1ee99b6f00 feat: add talk voice alias map 2025-12-30 11:35:29 +01:00
Peter Steinberger
80a3766d65 fix(ui): move mac talk orb to corner 2025-12-30 11:20:14 +01:00
Peter Steinberger
3cebaec512 fix(macos): await-safe session key selection 2025-12-30 11:07:34 +01:00
Peter Steinberger
89ebff4da3 fix(talk): harden TTS + add system fallback 2025-12-30 07:40:02 +01:00
Peter Steinberger
6ae39ffdc7 fix(ui): refine talk overlays 2025-12-30 06:47:35 +01:00
Peter Steinberger
e409c6f04c fix(talk): align sessions and chat UI 2025-12-30 06:47:19 +01:00
Peter Steinberger
3bb9e13ac6 fix(talk): harden playback, interrupts, and timeouts 2025-12-30 06:05:43 +01:00
Peter Steinberger
6fcd9e880e fix(talk): hard-timeout ElevenLabs synthesis 2025-12-30 05:46:47 +01:00
Peter Steinberger
1cc85703dc feat(ui): add centered talk orb 2025-12-30 05:27:29 +01:00
Peter Steinberger
ada86eb1e8 fix(voice): sync talk mode chat events 2025-12-30 05:27:11 +01:00
Peter Steinberger
2739d935aa chore(protocol): regenerate Swift gateway models 2025-12-30 04:42:08 +01:00
Peter Steinberger
093ba105cd feat: add ui.seamColor accent 2025-12-30 04:14:36 +01:00
Peter Steinberger
ad9802ef11 fix(macos): prevent Talk Mode audio hang 2025-12-30 04:14:16 +01:00
Peter Steinberger
8b5e7234cf fix: tag A2UI platform and boost Android canvas 2025-12-30 03:49:24 +01:00
Peter Steinberger
53a648363c feat: talk mode key distribution and tts polling 2025-12-30 01:57:58 +01:00
Peter Steinberger
6b85f6df6a fix(macos): hide Restart Gateway when remote 2025-12-30 01:57:58 +01:00
Peter Steinberger
bb1a3be02b fix: expand talk overlay bounds 2025-12-30 00:58:58 +01:00
Peter Steinberger
f4233b13d6 fix: talk overlay + elevenlabs defaults 2025-12-30 00:51:17 +01:00
Peter Steinberger
c4fa466c61 fix: wire talk menu + mac build 2025-12-30 00:17:10 +01:00
Peter Steinberger
49073ea950 feat: extend status activity indicators 2025-12-29 23:42:22 +01:00
Peter Steinberger
8d2a27e83d feat: add talk mode across nodes 2025-12-29 23:21:05 +01:00
Peter Steinberger
ae40eab072 fix: align camera payload caps 2025-12-29 23:20:55 +01:00
Peter Steinberger
e1488106cb fix: show connected nodes only 2025-12-29 18:35:52 +01:00
Josh Palmer
6c080c3425 macOS: load device models from bundle resources 2025-12-29 17:49:13 +01:00
Josh Palmer
c3073e0c5f 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
93d75d6d33 feat: improve health checks (telegram tokenFile + hints) 2025-12-29 17:49:13 +01:00
Josh Palmer
2e9ff2ef73 feat: Nix mode config, UX, onboarding, SwiftPM plist, docs 2025-12-29 17:49:13 +01:00
Peter Steinberger
22552c0cf6 fix: menu devices list 2025-12-29 17:31:23 +01:00
Peter Steinberger
4bb0a2f057 fix(macos): fully stop Voice Wake runtime when disabled 2025-12-28 10:17:30 +00:00
Peter Steinberger
7cffe0af90 fix: start gateway before control channel 2025-12-28 09:24:43 +00:00
Peter Steinberger
546f386735 fix: harden heartbeat acks + gateway reconnect 2025-12-27 20:02:27 +00:00
Peter Steinberger
c2184dcb6f fix(macos): soften light mode usage bar track 2025-12-27 14:05:36 +01:00
Peter Steinberger
9694cf17fa fix(macos): boost light mode usage bar contrast 2025-12-27 14:03:45 +01:00
Peter Steinberger
c27e028abf fix(macos): refresh sessions on menu open 2025-12-27 13:49:03 +01:00
Peter Steinberger
807d005344 fix(macos): tighten chat window chrome 2025-12-27 03:21:14 +01:00