openclaw/apps/macos/Sources/Clawdis
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
..
Bridge refactor(macos): simplify bridge frame handling 2025-12-14 04:09:20 +00:00
Resources fix(webchat): reconnect gateway ws 2025-12-14 04:31:04 +00:00
AboutSettings.swift fix(mac): show link cursor in About 2025-12-13 17:18:22 +00:00
AgentEventStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
AgentEventsWindow.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
AgentIdentity.swift fix(macos): suggest critter emojis only 2025-12-14 04:29:07 +00:00
AgentRPC.swift fix(macos): share gateway websocket connection 2025-12-12 21:35:00 +00:00
AgentWorkspace.swift docs(macos): critter-first onboarding copy 2025-12-14 06:26:51 +00:00
AnthropicOAuth.swift fix(macos): clarify OAuth detection 2025-12-14 19:10:48 +00:00
AnyCodable.swift fix(presence): report bridged iOS nodes 2025-12-13 02:35:35 +00:00
AppState.swift style(macos): swiftformat 2025-12-14 05:09:48 +00:00
CameraCaptureService.swift fix(camera): harden capture pipeline 2025-12-14 05:30:34 +00:00
CanvasFileWatcher.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
CanvasManager.swift feat(mac): allow Canvas placement and resizing 2025-12-12 20:28:19 +00:00
CanvasScheme.swift fix(mac): render Canvas HTML correctly 2025-12-12 20:01:12 +00:00
CanvasSchemeHandler.swift chore(swift): run swiftformat and clear swiftlint 2025-12-13 19:53:17 +00:00
CanvasWindow.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
ClawdisConfigFile.swift feat(macos): onboard Claude OAuth + identity 2025-12-14 04:22:38 +00:00
ConfigSettings.swift chore(swift): run swiftformat and clear swiftlint 2025-12-13 19:53:17 +00:00
ConnectionModeCoordinator.swift refactor(macos): centralize gateway endpoint resolution 2025-12-12 22:27:18 +00:00
Constants.swift feat(macos): onboard Claude OAuth + identity 2025-12-14 04:22:38 +00:00
ContextMenuCardView.swift macOS: align context padding 2025-12-13 11:16:33 +00:00
ContextUsageBar.swift fix(ui): improve light-mode green for context bar 2025-12-13 13:55:16 +00:00
ControlChannel.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
ControlRequestHandler.swift feat(macos): move camera setting to General 2025-12-14 03:33:24 +00:00
ControlSocketServer.swift chore(swift): run swiftformat and clear swiftlint 2025-12-13 19:53:17 +00:00
CritterStatusLabel.swift fix(macos): show tool-use badge glyph 2025-12-12 21:02:38 +00:00
CronJobsStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
CronModels.swift feat(macos): manage cron jobs 2025-12-13 12:09:27 +00:00
CronSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
DebugActions.swift feat(macos): load sessions via gateway 2025-12-13 16:33:14 +00:00
DebugSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
DeepLinks.swift ui(macos): always enable deep links 2025-12-14 04:06:34 +00:00
DiagnosticsFileLog.swift feat(bridge): add Bonjour node bridge 2025-12-12 21:19:39 +00:00
GatewayChannel.swift fix(chat): improve history + polish SwiftUI panel 2025-12-14 04:31:04 +00:00
GatewayConnection.swift refactor(macos): centralize gateway endpoint resolution 2025-12-12 22:27:18 +00:00
GatewayEndpointStore.swift chore(swift): run swiftformat and clear swiftlint 2025-12-13 19:53:17 +00:00
GatewayEnvironment.swift fix(macos): install gateway via npm 2025-12-13 13:00:59 +00:00
GatewayPayloadDecoding.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GatewayProcessManager.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
GatewayProtocolSendable.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GatewayPush.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
GeneralSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
HealthStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
HeartbeatStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
IconState.swift refactor(mac): embed work badge in status icon 2025-12-12 18:40:33 +00:00
InstanceIdentity.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
InstancesSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
InstancesStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
LogLocator.swift mac: tidy menu and gateway support 2025-12-10 01:00:53 +00:00
MasterDiscoveryMenu.swift ui(macos): polish onboarding wording 2025-12-14 19:22:31 +00:00
MasterDiscoveryModel.swift refactor(macos): tidy gateway discovery naming 2025-12-14 05:30:07 +00:00
MenuBar.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
MenuContentView.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
MenuContextCardInjector.swift fix(mac): move menu separator below context card 2025-12-14 00:57:34 +00:00
MenuHostedItem.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
MicLevelMonitor.swift refactor(mac): split voice wake settings 2025-12-07 17:55:07 +01:00
ModelCatalogLoader.swift macOS: split AppMain into focused modules 2025-12-07 00:10:35 +01:00
NSAttributedString+VoiceWake.swift macOS: extract attributed string helper 2025-12-09 00:59:56 +01:00
NodePairingApprovalPrompter.swift style(macos): mark Reject destructive 2025-12-13 23:32:57 +00:00
NotificationManager.swift fix(mac): treat timeSensitive as best-effort 2025-12-12 18:58:07 +00:00
NotifyOverlay.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
Onboarding.swift ui(macos): remove Claude auth skip button 2025-12-14 19:23:49 +00:00
PeekabooBridgeHostCoordinator.swift refactor(macos)!: remove clawdis-mac ui; host PeekabooBridge 2025-12-13 23:49:29 +00:00
PermissionManager.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
PermissionsSettings.swift chore: format swift/ts and fix gateway lint 2025-12-09 17:11:25 +00:00
PointingHandCursor.swift style(macos): tidy settings and CLI 2025-12-13 19:23:41 +00:00
PortGuardian.swift fix(mac): keep remote control tunnel alive 2025-12-12 18:44:44 +00:00
PresenceReporter.swift fix(presence): hide cli sessions; use numeric mac build 2025-12-12 17:27:11 +00:00
RemoteTunnelManager.swift fix(macos): harden remote ssh tunnel 2025-12-13 01:43:23 +00:00
RuntimeLocator.swift Gateway: discriminated protocol schema + CLI updates 2025-12-09 15:01:13 +01:00
ScreenshotSize.swift style(macos): tidy settings and CLI 2025-12-13 19:23:41 +00:00
SessionData.swift fix(macos): surface gateway sessions load errors 2025-12-13 17:15:00 +00:00
SessionsSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
SettingsComponents.swift macOS: split AppMain into focused modules 2025-12-07 00:10:35 +01:00
SettingsRootView.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
ShellExecutor.swift chore: drop runner shim and add committer helper 2025-12-09 17:24:25 +00:00
SoundEffects.swift chore(mac): apply swiftformat and lint fixes 2025-12-09 04:42:44 +01:00
ToolsSettings.swift chore(tools): match repo emojis 2025-12-14 04:31:04 +00:00
Utilities.swift test(macos): boost Clawdis coverage to 40% 2025-12-14 04:31:04 +00:00
ViewMetrics.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
VisualEffectView.swift feat(discovery): bonjour beacons + bridge presence 2025-12-13 04:28:43 +00:00
VoicePushToTalk.swift fix(macos): lazy-init AVAudioEngine to prevent Bluetooth audio ducking 2025-12-16 09:35:02 +00:00
VoiceSessionCoordinator.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
VoiceWakeChime.swift feat(mac): add rolling diagnostics log 2025-12-12 21:19:39 +00:00
VoiceWakeForwarder.swift feat(voicewake): route replies to last channel 2025-12-12 16:22:30 +00:00
VoiceWakeGlobalSettingsSync.swift feat(macos): sync wake words via gateway 2025-12-14 05:06:27 +00:00
VoiceWakeHelpers.swift test(mac): cover voice wake helpers 2025-12-07 17:56:40 +01:00
VoiceWakeOverlay.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
VoiceWakeRuntime.swift fix(macos): lazy-init AVAudioEngine to prevent Bluetooth audio ducking 2025-12-16 09:35:02 +00:00
VoiceWakeSettings.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00
VoiceWakeTestCard.swift refactor(mac): split voice wake settings 2025-12-07 17:55:07 +01:00
VoiceWakeTester.swift mac: remove voice wake forward pref 2025-12-12 16:09:31 +00:00
WebChatServer.swift test(macos): boost Clawdis coverage to 40% 2025-12-14 04:31:04 +00:00
WebChatSwiftUI.swift fix(chat): improve history + polish SwiftUI panel 2025-12-14 04:31:04 +00:00
WebChatTunnel.swift fix(macos): harden remote ssh tunnel 2025-12-13 01:43:23 +00:00
WebChatWindow.swift fix(macos): sane chat window placement 2025-12-14 04:31:04 +00:00
WindowPlacement.swift style(macos): swiftformat 2025-12-14 04:42:04 +00:00
WorkActivityStore.swift refactor(observation): migrate SwiftUI state 2025-12-14 05:06:34 +00:00