mcpField
C
corebluetooth

corebluetooth

github.com/nonameplumDevelopment1747 installsUpdated 13w ago
Repository

About corebluetooth

A reference skill for Apple Core Bluetooth development, covering central and peripheral roles, workflows, API lookup, and lifecycle constraints. It helps developers plan BLE operations and follow role-specific steps and practices.

Key features

  1. 01Central-role workflow guidance
  2. 02Peripheral-role workflow guidance
  3. 03BLE API and symbol lookup
  4. 04Background processing and restoration guidance
  5. 05Role-specific best practices

Use cases

  1. 01Build an app that scans for and connects to peripherals
  2. 02Configure an app to advertise as a peripheral
  3. 03Handle Bluetooth background behavior and state restoration

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/nonameplum/agent-skills --skill corebluetooth

After installing, type/corebluetoothin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

AboutCoreBluetooth.md
BestPracticesforInteractingwithaRemotePeripheralDevice.md
BestPracticesforSettingUpYourLocalDeviceasaPeripheral.md
BluetoothStateRestorationAppReaunchRules.md
corebluetooth.md
CoreBluetoothBackgroundProcessingforiOSApps.md
CoreBluetoothOverview.md
PerformingCommonCentralRoleTasks.md
PerformingCommonPeripheralRoleTasks.md

Details

From the project README

Core Bluetooth

What to open

  • Use corebluetooth/AboutCoreBluetooth.md and corebluetooth/CoreBluetoothOverview.md for concepts and role orientation.
  • Use corebluetooth/PerformingCommonCentralRoleTasks.md for step-by-step central workflows.
  • Use corebluetooth/PerformingCommonPeripheralRoleTasks.md for step-by-step peripheral workflows.
  • Use corebluetooth/BestPracticesforInteractingwithaRemotePeripheralDevice.md and corebluetooth/BestPracticesforSettingUpYourLocalDeviceasaPeripheral.md for pitfalls and best practices.
  • Use corebluetooth/CoreBluetoothBackgroundProcessingforiOSApps.md for background modes and lifecycle constraints.
  • Use corebluetooth/BluetoothStateRestorationAppReaunchRules.md for state restoration app relaunch rules.
  • Use corebluetooth/corebluetooth.md for API quick maps and symbol lookup.

Workflow

  • Identify whether the app acts as a central, a peripheral, or both.
  • Wait for the manager state to be poweredOn before issuing BLE operations.
  • Follow the role checklist to keep discovery and connection order correct.
  • Open the role task guide and best practices first; use the API reference for exact signatures.

Central checklist

  1. Create a CBCentralManager with a delegate and queue.
  2. Handle centralManagerDidUpdateState(_:) and gate scanning on .poweredOn.
  3. Scan with scanForPeripherals(withServices:options:) and stop when the target is found.
  4. Connect, set the CBPeripheral delegate, and discover services and characteristics.
  5. Read, write, or subscribe to characteristic notifications as needed.

Peripheral checklist

  1. Create a CBPeripheralManager with a delegate and queue.
  2. Wait for the state to become .poweredOn.
  3. Define services and characteristics, then add them to the manager.
  4. Start advertising with service UUIDs and optional local name.
  5. Respond to read and write requests; publish updates to subscribed centrals.

Reminders

  • Retain discovered CBPeripheral instances to keep them alive.
  • Use notifications for streaming data; use write-without-response only when canSendWriteWithoutResponse is true.
  • Use L2CAP only for use cases that do not fit GATT characteristics.

Comments

Markdown supported