ble-opaque-binary

ble-opaque-binary is a skill for Claude Code, Codex from mvanhorn/cli-printing-press. It costs 19 tokens per session (375 once invoked), scanned A, original, MIT.

A command-line skill for controlling a Bluetooth Low Energy device whose data format is opaque binary, meaning its messages are raw bytes without a described human-readable structure. It provides commands to inspect capabilities and replay-backed device status.

In plain words
What is it for?
Use it to inspect BLE capabilities, check device status, and operate the supported opaque-binary device through its generated command-line interface.
Why use it?
It gives an agent a defined way to inspect and control this type of device while exposing safety classes and evidence references for available operations.

Skill for Claude CodeCodex

Part of the cli-printing-press plugin — 19 skills, 1 hook shipped together

About the project

CLI Printing Press is a tool that creates Go command-line clients, Claude Code skills, and MCP servers for APIs and websites by studying their documentation and existing integrations. It is intended for AI agents and developers who need token-efficient command-line access to services and compound queries. The catalogue entries are skills, instructions, plugins, settings, and a hook related to using the generated tools and the press.

mvanhorn/cli-printing-press · 4,615 stars · on GitHub

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/mvanhorn/cli-printing-press/ble-opaque-binary
Any agent
npx skills add mvanhorn/cli-printing-press --skill ble-opaque-binary
Clone the repo
git clone --depth 1 https://github.com/mvanhorn/cli-printing-press

Made for: Claude Code, Codex.

Or install cli-printing-press, the plugin that ships this one along with the rest of its 19 skills, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ble-opaque-binary

README.md
[![agentmods](https://agentmods.dev/badge/skills/mvanhorn/cli-printing-press/ble-opaque-binary.svg)](https://agentmods.dev/skills/mvanhorn/cli-printing-press/ble-opaque-binary)
Your own site
<a href="https://agentmods.dev/skills/mvanhorn/cli-printing-press/ble-opaque-binary"><img src="https://agentmods.dev/badge/skills/mvanhorn/cli-printing-press/ble-opaque-binary.svg" alt="Measured on agentmods" height="20"></a>
Per session 19 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 375 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00019 $0.00375
Opus 5 $0.00010 $0.00187
Sonnet 5 $0.00004 $0.00075
Haiku 4.5 $0.00002 $0.00038

Measured 5d ago against content hash de0d71f33bb7, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ble-opaque-binary scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

testdata/golden/expected/generate-device-ble-opaque/ble-opaque-binary/SKILL.md · 22 lines

What it actually says

Prerequisites: Install the CLI

This skill drives the ble-opaque-binary-pp-cli binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:

  1. Install via the Printing Press installer. It defaults binaries to $HOME/.local/bin on macOS/Linux and %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows:
    npx -y @mvanhorn/printing-press-library install ble-opaque-binary --cli-only
    
  2. Verify: ble-opaque-binary-pp-cli --version
  3. Ensure the reported install directory is on $PATH for the agent/runtime that will invoke this skill.

If the npx install fails before this CLI has a public-library category, install Node or use the category-specific Go fallback after publish.

If --version reports "command not found" after install, the runtime cannot see the binary directory on $PATH. Do not proceed with skill commands until verification succeeds.

Use ble-opaque-binary-pp-cli capabilities --json to inspect callable and withheld BLE capabilities, including safety classes and evidence refs. Use ble-opaque-binary-pp-cli status --json to inspect replay-backed status output. By default the CLI is replay-backed; build with -tags ble_live and pass --live to control a real device, ble-opaque-binary-pp-cli doctor to check live readiness, and ble-opaque-binary-pp-cli scan --live to discover devices. Session IPC scaffolding is generated only when the device spec enables device-session support.

Files

What ships with it

13 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 22 lines · 19 tokens per session scan A de0d71f33bb7

Subscribe to this mod's changes

ble-opaque-binary is a skill published in the GitHub repository mvanhorn/cli-printing-press (4,615 stars, last pushed yesterday), licensed MIT. It adds 19 tokens to every session and 375 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

lathe

Initialize CLI-first applications and keep their OpenAPI contract, generated CLI, and Agent Skill synchronized. Use when creating an application with lathe init or changing a Lathe-generated application.

lathe-cli/lathe · 39 tokens

climate-generator

Generate Go CLIs from OpenAPI 3.x specs with climate, inspect generated CLIs, and emit Markdown skill prompts so those CLIs can be attached to agent workflows.

disk0Dancer/climate · 39 tokens

lathe-release

Run Lathe release validation and publishing workflows. Use when the user asks to prepare, validate, cut, tag, publish, or ship a Lathe versioned release; runs the captured pre-release regression gate before tagging.

lathe-cli/lathe · 48 tokens

configuration-builder

Use when creating CLI tools from scratch using stampo, converting MCP server tools into shell commands, or generating stampo YAML configurations from natural language descriptions.

MichaelCereda/stampo · 32 tokens

foundry-lens

Runs a multi-pass research method that deliberately catches its own blind spots — a shallow first pass, a forced structural self-diagnosis, then corrected and inverted passes. Use when mapping a product's full feature set, tearing down a competitor, doing exhaustive documentation research, or any time a first answer…

waveriderai/cli-type-foundry · 112 tokens

foundry-capture

Guides the user through capturing an app's network traffic on Android, iOS, desktop, or web, and exporting it as HAR for analysis. Use when a teardown needs network evidence, when the user asks how to see what an app is talking to, or when intake reports network-surface as missing. Triggers on "capture traffic", "how…

waveriderai/cli-type-foundry · 113 tokens