efferent-ble-simulator

efferent-ble-simulator is a skill for Claude Code, Codex from dncore/efferent-ble-simulator. It costs 43 tokens per session (7,129 once invoked), scanned B, original, MIT.

A service for simulating Bluetooth Low Energy devices, either running locally on a Linux computer with Bluetooth hardware or controlling an already-running service over a local network.

In plain words
What is it for?
Use it to install, build, start, and operate the simulator, or control a running HTTP instance from another device on the network.
Why use it?
It lets developers test BLE-related behavior without relying only on physical devices, while documenting the setup needed for the simulator service.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions OpenCode.

Good fit Use it to install, build, start, and operate the simulator, or control a running HTTP instance from another device on the network.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/dncore/efferent-ble-simulator/efferent-ble-simulator
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.

Any agent
npx skills add dncore/efferent-ble-simulator --skill efferent-ble-simulator
Clone the repo
git clone --depth 1 https://github.com/dncore/efferent-ble-simulator

Made for: Claude Code, Codex.

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 efferent-ble-simulator

README.md
[![agentmods](https://agentmods.dev/badge/skills/dncore/efferent-ble-simulator/efferent-ble-simulator.svg)](https://agentmods.dev/skills/dncore/efferent-ble-simulator/efferent-ble-simulator)
Your own site
<a href="https://agentmods.dev/skills/dncore/efferent-ble-simulator/efferent-ble-simulator"><img src="https://agentmods.dev/badge/skills/dncore/efferent-ble-simulator/efferent-ble-simulator.svg" alt="Measured on agentmods" height="20"></a>
Per session 43 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 7,129 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00043 $0.07129
Opus 5 $0.00022 $0.03564
Sonnet 5 $0.00009 $0.01426
Haiku 4.5 $0.00004 $0.00713

Measured 7d ago against content hash f97310db173d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade B, and why

efferent-ble-simulator scanned grade B with 1 finding 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 7d 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.

Asks for rootmediumPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

- **BlueZ ≥ 5.87** — BlueZ 5.86 has an advertisement-registration bug (`src/advertising.c` uses the wrong struct size for `MGMT_OP_ADD_EXT_ADV_DATA`, sending 14 bytes instead of 6); on kernels with strict MGMT length val
SKILL.md · 733 lines

How it starts

The opening of the file, as written. The whole thing — 733 lines — stays where its author put it; the contents beside it link to each section on GitHub.

BLE Simulator MCP Skill

This skill covers two distinct usage modes. Identify which applies before proceeding.


Mode A — Host: Deploy & Run the Service on the Local Machine

Use this mode when you are working directly on the Linux machine that has a Bluetooth adapter and need to install, build, and start the simulator service.

Prerequisites

  • Linux with BlueZ (bluetoothd), a BLE-capable adapter
  • BlueZ ≥ 5.87 — BlueZ 5.86 has an advertisement-registration bug (src/advertising.c uses the wrong struct size for MGMT_OP_ADD_EXT_ADV_DATA, sending 14 bytes instead of 6); on kernels with strict MGMT length validation this makes every RegisterAdvertisement fail with Failed to register advertisement. Upgrade before deploying: sudo pacman -S bluez && sudo systemctl restart bluetooth
  • Node.js ≥ 18

First-time setup

Run once with sudo before starting the service:

npm install
npm run setup    # requires sudo — installs D-Bus policy, enables bluetoothd, verifies GATT
npm run build

npm run setup (scripts/setup.sh) does the following automatically:

  1. Installs BlueZ if missing (apt / pacman / dnf / zypper)
  2. Enables and starts bluetoothd
  3. Powers on the BLE adapter
  4. Writes /etc/dbus-1/system.d/ble-simulator.conf — the critical step: without this policy file, RegisterApplication() silently fails and the device cannot be connected to or read from
  5. Reloads D-Bus daemon so the policy takes effect immediately
  6. Runs an end-to-end GATT registration smoke test and reports pass/fail

Starting the service

stdio mode (default, for local MCP clients that launch the process directly):

npm start
# or: node dist/index.js

MCP client config:

{
  "mcpServers": {
    "ble-simulator": {
      "command": "node",
      "args": ["/path/to/ble-simulator-node/dist/index.js"]
    }
  }
}

HTTP mode (exposes the service over the network so remote agents on the LAN can connect):

npm run start:http
# equivalent: MCP_TRANSPORT=http npm start

Read the full file on GitHub · 733 lines

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. 7d ago First seen · 733 lines · 43 tokens per session scan B f97310db173d

Subscribe to this mod's changes

efferent-ble-simulator is a skill published in the GitHub repository dncore/efferent-ble-simulator (0 stars, last pushed 13d ago), licensed MIT. It adds 43 tokens to every session and 7,129 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 1 finding (asks for root). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

gke-compute-classes

Configures, optimizes, and troubleshoots GKE ComputeClasses. Use when configuring Spot VMs with on-demand fallback, targeting specific accelerators (GPUs/TPUs) or machine families, restricting ComputeClass access, or debugging pending pods related to node pool auto-creation. Do not use for cluster-level Node Auto…

google/skills · 83 tokens

jetson-diagnostic

Read-only Jetson health snapshot for identity, memory, GPU, thermal, power, storage, services, and top processes.

NVIDIA/skills · 30 tokens

doca-socket-relay

Use this skill when the operator is driving the DOCA Socket Relay to bridge a socket-oriented host application onto a BlueField DPU peer without rewriting it — picking the deployment shape (in-process, sidecar, or BlueField service container), configuring the host-side socket and the DPU-side forwarding endpoint…

NVIDIA/skills · 236 tokens

offensive-z-wave

Z-Wave attack methodology — sniffing with Z-Force / EZ-Wave / RTL-SDR + ZniffMobile, S0 (legacy) network-key derivation flaw and key reuse, S2 (modern) ECDH commissioning analysis, replay/injection on unauthenticated nodes, default-key brute-force on test deployments, and home-automation hub pivots. Use when targeting…

SnailSploit/Claude-Red · 113 tokens

hsb-flash

Flash the FPGA on an HSB board connected to an NVIDIA devkit. Supports HSB Lattice boards (FPGA versions 2407, 2412, 2507, 2510) and Leopard Imaging VB1940 "all-in-one" cameras (FPGA versions 2507, 2510). Uses release-specific YAML manifests and board-type-specific program commands. Lattice and VB1940 commands must…

NVIDIA/skills · 94 tokens

jetson-validate-image

Use after jetson-flash-image to run static BSP checks, on-target smoke/regression tests on a flashed DUT, or both. Not for build or flash steps. Triggers: validate bsp, on-target validation.

NVIDIA/skills · 50 tokens