Guide · Agent skill
How to use the Offensive Bluetooth LE Testing agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The offensive-bluetooth-ble skill gives an AI agent a structured methodology for security testing Bluetooth Low Energy devices such as smart locks, fitness trackers, beacons and medical or car key systems. This guide explains what the skill does, how to install it, how to ask for help with natural requests, and what you need before you start. After reading, you should be able to load the skill and direct an agent through an authorized BLE assessment, with safety limits in mind.
Quick start
- 1Download the ZIP. Get the offensive-bluetooth-ble ZIP from the skill page on this site.
- 2Unzip into a skills folder. Unzip into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder.
- 3Or upload in the Claude apps. Go to Settings → Capabilities → Skills and upload the skill.
- 4Install the required tools. Make sure you have Linux with BlueZ, bettercap, Sniffle with a TI CC1352 or Ubertooth, crackle, jadx and adb as needed.
- 5Confirm authorization. Check that you own the device or have written permission to test it before any live step.
- 6Ask with a natural request. Describe the device and the goal, such as enumerating the GATT tree of a device you own.
- 7Review commands before running. Read each sudo or script command the agent proposes before allowing it to run.
What the skill makes the agent do
Agent skills are folders of instructions that an AI agent loads when a task matches them. This skill's main file, SKILL.md, is a BLE attack methodology and command reference. Once it is loaded, the agent knows how to map a device's GATT services and characteristics, test whether characteristics accept reads or writes without authentication, identify the pairing method, and explain how sniffing or relay tools could be used against weak pairing.
The skill covers discovery and GATT enumeration, characteristic read/write checks, pairing method identification, sniffing the pairing exchange, active MITM during pairing, companion app reverse engineering, and device-class notes for smart locks, cars, medical devices and beacons. It is a methodology, not a standalone product, and it assumes you already have security knowledge and the tools installed.
Install the skill (ZIP download or Claude app upload)
Download the ZIP from the skill's page on this site and unzip it. To make it available for your user account, unzip it into ~/.claude/skills/. To scope it to one project, unzip it into that project's .claude/skills/ folder.
You can also upload the skill in the Claude apps under Settings → Capabilities → Skills.
- Personal install: ~/.claude/skills/
- Project install: .claude/skills/ inside your project folder
- Claude apps: Settings → Capabilities → Skills
Set up the tools it expects
The skill assumes a Linux environment and several security tools. Its listed requirements are bluetoothctl and gatttool (BlueZ), bettercap, Sniffle with a TI CC1352 dongle or Ubertooth hardware, crackle, jadx and adb for companion app analysis, and btproxy cloned from GitHub for MITM testing.
The skill does not install these for you. If a tool is missing, the agent can only describe the commands that would use it.
- Linux with bluetoothctl and gatttool (BlueZ)
- bettercap
- Sniffle with a TI CC1352 dongle, or Ubertooth hardware
- crackle
- jadx and adb (companion app analysis)
- btproxy, cloned from GitHub (MITM testing)
Trigger the skill with natural requests
You do not need special syntax. Describe the device and the job in plain language, and mention Bluetooth Low Energy or BLE so the agent matches the skill. Name the device type and say that you own it or have written permission to test it.
Good requests state the goal and the scope, for example asking the agent to enumerate the GATT tree of a device you own, or to check whether a lock's characteristics accept writes without authentication.
- Map the GATT services and characteristics of my BLE fitness tracker, which I own.
- Test whether any characteristic on this smart lock accepts a write without authentication. I have written permission.
- Identify the pairing method used by this BLE beacon and explain what it means for security.
- Help me decode a BLE pairing capture from my own lab device with crackle.
Example commands the skill references
The skill lists concrete commands. The examples below are taken from its methodology. Replace the placeholder MAC address and handles with values from your own test device.
Discovery with bettercap and enumeration with bluetoothctl and gatttool are the starting point. Use these only against devices you are authorized to test.
sudo bettercap -eval "ble.recon on; events.show 60; ble.show"
bluetoothctl
> scan on
> connect AA:BB:CC:DD:EE:FF
> menu gatt
> list-attributesSafety notes: scripts and network access
This skill runs scripts and uses the network. Its commands include sudo bettercap, sudo Sniffle, and cloning btproxy from GitHub, and they interact with real radio hardware. Read each command before the agent runs it and confirm the target is a device you are authorized to test.
Do not use the skill on devices you do not own or have written permission to test. Unauthorized access to locks, cars or medical devices can be illegal and dangerous. The skill itself warns that medical implants such as insulin pumps and pacemakers need carefully coordinated disclosure, and live testing can harm patients. Leave those out of live testing.
- Confirm written authorization or ownership before any live test.
- Review every sudo command and script before running it.
- Do not test medical implants such as insulin pumps or pacemakers live.
Tips for better results
Start with the discovery and enumeration steps, then move to characteristic testing only after you have a clear map of the device. Give the agent the device's MAC address and the tool outputs you already have, so it can reason from real data rather than guessing.
Expect the agent to explain results in terms of the skill's pairing table. Just Works offers no MITM protection, while LE Secure Connections is strong if Just Works is not forced. Use that distinction to decide what to test next.
- Provide the MAC address and any existing gatttool or bluetoothctl output.
- Work through the Quick Workflow in order.
- Ask the agent to explain each finding before moving on.
What people use it for
- Mapping the GATT services of a BLE fitness tracker you own to see which characteristics are exposed.
- Checking whether a smart lock's characteristics accept writes without authentication during an authorized test.
- Identifying the pairing method of a BLE beacon and explaining the security implications.
- Decoding a pairing capture from your own lab hardware with crackle.
- Reviewing a companion app's BLE write calls with jadx after pulling the APK with adb.
Frequently asked questions
Is the offensive-bluetooth-ble skill free?
The skill is listed under the MIT licence. Check the licence text in the source repository for the terms that apply to your use. The tools it relies on, such as bettercap and crackle, are separate projects with their own licences.
How do I install an agent skill?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. You can also upload it in the Claude apps under Settings → Capabilities → Skills.
What do I need to run this skill?
You need Linux with bluetoothctl and gatttool from BlueZ, bettercap, Sniffle with a TI CC1352 dongle or Ubertooth hardware, crackle, and jadx and adb for app analysis. btproxy, cloned from GitHub, is needed for MITM testing.
Can I use this skill to test any Bluetooth device?
No. Use it only on devices you own or are contracted or permitted to assess. Unauthorized testing of locks, cars or medical devices can be illegal and dangerous, and the skill warns against live testing of medical implants.
What is the difference between Just Works and LE Secure Connections?
Just Works authenticates anything and offers no MITM protection. LE Secure Connections, introduced in Bluetooth 4.2, uses ECDH and is strong if Just Works is not forced.
Is this skill a good alternative to a commercial BLE scanner?
It is not a standalone product. It is a methodology and command reference for an agent that already has security tools installed. If you want a simple scanning app without security tooling, this skill is not the right choice.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits security professionals doing authorized BLE tests, students working on their own lab hardware, and researchers doing coordinated disclosure. It is a poor fit for anyone testing devices they do not own or have permission to test, for medical implants, or for non-technical users who want a simple BLE tool.
Download the skill