UStackUStack
Claude Desktop Buddy icon

Claude Desktop Buddy

Reference and example firmware for connecting maker devices to Claude for macOS and Windows over Bluetooth Low Energy. It documents the desktop bridge protocol, pairing flow, and sample hardware behavior for status displays and permission controls.

Claude Desktop Buddy

Claude Desktop Buddy

`claude-desktop-buddy` is a reference repository and example firmware for connecting maker devices to Claude for macOS and Windows over Bluetooth Low Energy. It focuses on the wire protocol, pairing flow, and sample device behavior needed to build hardware that can display Claude session status and react to permission prompts.

The repository centers on a desk-pet style ESP32 build and also documents the underlying Bluetooth API so other devices can implement the same flow without using the sample code. The desktop bridge runs in developer mode, uses the Nordic UART Service, and exchanges newline-delimited JSON for snapshots, turn events, and permission decisions.

What it provides

Protocol reference for BLE makers

The project documents the Bluetooth LE wire protocol used by the Claude desktop apps, including service UUIDs, newline-delimited JSON messaging, heartbeat snapshots, and permission-decision messages.

Developer-mode pairing and reconnect

The desktop bridge can pair with a device from the Hardware Buddy window once developer mode is enabled, then auto-reconnect when both sides are awake.

ESP32 example firmware

The example firmware targets ESP32 with the Arduino framework and is written around a specific hardware stack that uses the M5StickCPlus display, IMU, and buttons.

Live session status display

The sample device UI tracks Claude session state such as running sessions, waiting approvals, recent transcript entries, and token counts for compact screens.

Custom character rendering workflow

The repository supports ASCII pets and GIF character packs, with tooling to load custom characters over BLE or over USB for faster iteration.

Hardware prompt responses

The device can respond to permission prompts with approved or denied decisions, turning the desktop bridge into a small hardware control surface.

Common ways to use it

  • Status display for maker hardware

    Build a small desk accessory that shows whether Claude is idle, working, or waiting on approval, so you can see session state at a glance.

  • Permission prompt control

    Create a button-driven device that lets a user approve or deny Claude tool calls directly from the hardware.

  • Custom hardware integration

    Implement your own BLE-compatible device by following the wire protocol reference instead of copying the sample firmware.

  • Character-based device UX

    Experiment with ASCII pets or animated GIF characters as a playful front end for Claude-connected maker devices.

  • Faster hardware prototyping

    Iterate on device graphics and behavior locally by pushing character packs over USB during development, then using BLE for normal operation.

Pros and Cons

Pros

  • Gives builders a concrete wire-protocol reference instead of requiring reverse engineering.
  • Covers both a working example and the underlying JSON message formats, UUIDs, and pairing flow.
  • Supports live hardware interactions such as approval prompts, transcript display, and session-state feedback.
  • Includes example tooling for building and flashing character packs, including USB-based iteration paths.

Cons

  • The Bluetooth API is only available in developer mode, so it is not a general end-user feature.
  • The example firmware is tied to an ESP32 Arduino setup and the M5StickCPlus library, which limits how directly the sample can be reused on other boards.
  • The repo provides a protocol reference and example, not a hosted service or packaged app on its own.

FAQ

How does Claude Desktop Buddy connect to Claude Desktop?

Claude Desktop Buddy is a Bluetooth Low Energy bridge for the Claude desktop apps. In developer mode, you open the Hardware Buddy window, connect to a device advertising the Nordic UART Service, and the desktop app streams snapshots and prompts over newline-delimited JSON.

What hardware does it support?

The source describes support for an ESP32 device built with the Arduino framework, and notes that the firmware currently depends on the M5StickCPlus library for display, IMU, and button drivers. It also says any device that can advertise the Nordic UART Service and parse newline-delimited JSON should work.

What does the repository include for builders?

The repository provides both a wire-protocol reference and an example implementation. The README points to REFERENCE.md for UUIDs, JSON schemas, folder-push transport details, heartbeat snapshots, and permission-decision messages.

Is the Bluetooth API generally available to all users?

The bridge is only available when the desktop apps are in developer mode, and it is described as intended for makers and developers rather than an officially supported product feature.

What kinds of device experiences can be built with it?

The example firmware supports ASCII pets and GIF character packs, plus a desk-pet style device that shows session status and lets you approve or deny permission prompts from the hardware.

Quick Facts

Category
Developer Tool
Primary platform
Claude for macOS and Windows
Hardware focus
ESP32 example device
Transport
Bluetooth Low Energy via Nordic UART Service
Source domain
github.com
Availability
Developer mode only

Альтернативы Claude Desktop Buddy