Skip to main content
skill CX Codex

audioaccessorykit — Claude Code skill: what it does, how to install

Guides automatic audio switching setup for third-party Bluetooth headphones with AudioAccessoryKit on iOS 26.4+. Useful when companion apps and extensions handle accessory state.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add dpearson2699/swift-ios-skills --skill audioaccessorykit -a claude-code
Open on GitHub

What audioaccessorykit does

The skill explains how to implement Apple's AudioAccessoryKit framework, introduced in iOS 26.4 and iPadOS 26.4. It covers the workflow between a companion app and an app extension. The accessory pairs first via AccessorySetupKit to produce an ASAccessory instance. After pairing, the container app registers device capabilities with AccessoryControlDevice.register.

Ongoing updates happen from the app extension using a gated write workflow. Developers retrieve the active configuration via AccessoryControlDevice.current(for:), mutate placement values like .inEar or .offHead, and call update(_:). The skill also details reporting multi-device Bluetooth addresses using Data. It clarifies that AudioAccessoryKit is not meant for direct Bluetooth transport or standard AVAudioSession routing.

In the Xcode 26.6 toolchain, the framework is present in device SDKs but missing from the iPhone Simulator 26.5 SDK. Testing requires a physical device. To keep simulator builds working, isolate imports with #if canImport(AudioAccessoryKit) and stub the implementation.

What it helps with

  • register a paired accessory with AccessoryControlDevice after AccessorySetupKit pairing
  • report headphone placement changes from an app extension to the system
  • configure Bluetooth source device identifiers for multi-point switching
  • guard Xcode simulator builds using #if canImport(AudioAccessoryKit)

Example prompts for the agent

  • Show how to register an ASAccessory with .audioSwitching and .placement capabilities in AudioAccessoryKit.
  • Write the app extension update flow for reporting .inEar placement changes.
  • How do I handle AudioAccessoryKit missing from the iPhone Simulator 26.5 SDK?

How to install audioaccessorykit

1Skills CLI (Vercel)

npx skills add dpearson2699/swift-ios-skills --skill audioaccessorykit -a claude-code

2Manually: put the files in place

~/.claude/skills/audioaccessorykit/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/audioaccessorykit/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about audioaccessorykit

How do I install audioaccessorykit in Claude Code?

Run npx skills add dpearson2699/swift-ios-skills --skill audioaccessorykit -a claude-code.

What does audioaccessorykit do?

It provides implementation guidance for AudioAccessoryKit in iOS 26.4+, enabling automatic audio routing for third-party Bluetooth accessories. It details registration in the container app and state reporting in extensions.

Can I run AudioAccessoryKit code in the iOS simulator?

Xcode 26.6 includes the framework in the device SDK, but not in the iPhone Simulator 26.5 SDK. You need a physical device for execution, or wrap the code in #if canImport(AudioAccessoryKit) checks for simulator targets.

Similar skills

Everything for Mobile →

From the same set86

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor