qol-plugin-bluetoothlisted
Install: claude install-skill qol-tools/qol-skills
# qol-plugin-bluetooth
Bluetooth owns adapter control, device discovery, and reliable reconnection of selected devices. Supported targets, actions, and device capabilities come from the checked-out manifest, adapters, and tests; do not maintain a support matrix here.
## Contract sources
- `plugin.toml` owns actions, daemon metadata, declared capabilities, platform availability, and release artifacts.
- `qol-config.toml` owns settings sections, fields, live queries, and the actions each field invokes.
- `qol-runtime.toml` owns the runnable action contract and its typed input.
- `Cargo.toml` owns target-scoped native dependencies.
Change an action name in the manifest, runtime contract, config contract, and dispatcher together, then run contract validation instead of copying values into prose.
## Source ownership
| Path | Responsibility |
|---|---|
| `src/main.rs` | Thin entrypoint delegating to the headless app. |
| `src/cli.rs` | Headless command surface, doctor registration, and text rendering. |
| `src/bluetooth/` | Platform-neutral domain: device facts, discovery state, reconnect selection and reporting, adapter health. |
| `src/bluetooth/retry.rs` | Reconnect retry policy and its per-device state. |
| `src/platform/` | Target-selected backend; the Linux adapter talks to BlueZ through the `bluer` D-Bus bindings. |
| `src/settings/` | Native settings panel with a browser fallback. |
| `src/config/` | Typed config loading. |
Keep cfg selection in `platform/mod.rs`. Do