Skip to content

[Bug]: [macOS] Companion app crashes on launch when configured Swabble mic is unavailable #23162

@chadmbrown

Description

@chadmbrown

Summary

The macOS companion app crashes immediately on launch if the audio device configured as the Swabble (voice wake) microphone is disconnected or unavailable. The crash is unhandled — the app throws SIGABRT with no graceful fallback or user-facing error.

Steps to reproduce

  1. Configure Swabble with a USB microphone (e.g. Logitech C922 Pro Stream Webcam)
  2. Quit the companion app
  3. Unplug the USB mic
  4. Reopen the companion app → crashes immediately

Expected behavior

App should launch successfully and either: (a) disable Swabble automatically with a notification that the configured mic is unavailable, or (b) fall back to the system default mic.

Actual behavior

Exception: EXC_CRASH (SIGABRT) — abort() called
Bundle: ai.openclaw.mac.debug 2026.2.17 (12195)
macOS: 26.3 (25D125) — ARM64

AVAudioEngineImpl::InstallTapOnNode(...) + 1556 ← throws NSException
-[AVAudioNode installTapOnBus:bufferSize:format:block:] + 608
VoiceWakeRuntime.start(with:) + 2636
VoiceWakeRuntime.refresh(state:) + 1
closure #2 in AppState.init(preview:) + 1

Workaround:
defaults write ai.openclaw.mac.debug "openclaw.swabbleEnabled" -bool false

OpenClaw version

2026.2.21

Operating system

macOS

Install method

nom global + Mac app

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

Additional context

• Configured mic preference key: openclaw.voiceWakeMicID in ai.openclaw.mac.debug domain
• The crash loops if you click "Reopen" in the macOS crash dialog — the app will keep crashing until the mic is reconnected or Swabble is disabled via the workaround above
• Setting openclaw.swabbleEnabled = false in ai.openclaw.mac (non-debug domain) has no effect — the app reads from ai.openclaw.mac.debug

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions