Best use case

usb-debug is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Teams using usb-debug should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/usb-debug/SKILL.md --create-dirs "https://raw.githubusercontent.com/wangjianjq/Skill/main/.agents/skills/usb-debug/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/usb-debug/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How usb-debug Compares

Feature / Agentusb-debugStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

This skill provides specific capabilities for your AI agent. See the About section for full details.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Skill: USB Debugging & Automation

## 1. Overview

Protocol for debugging USB devices using software sniffers and Python automation.

## 2. Tools

* **Analysis**: Wireshark with USBPcap (Windows) or usbmon (Linux).
* **Automation**: Python `pyusb` (libusb wrapper).
* **Hardware**: Total Phase Beagle (High-end) or OpenVizsla (Open-source).

## 3. Python Automation (PyUSB)

```python
import usb.core
import usb.util

# Find device
dev = usb.core.find(idVendor=0x1234, idProduct=0x5678)

if dev is None:
    raise ValueError('Device not found')

# Set configuration to first available
dev.set_configuration()

# Write to Endpoint 1 (OUT)
dev.write(1, b'\x00\x01\x02')

# Read from Endpoint 129 (IN)
data = dev.read(0x81, 64)
print(data)
```

## 4. Debugging Workflow

1. **Capture**: Start Wireshark with USBPcap.
2. **Plug & Play**: Connect device, perform actions.
3. **Analyze**: Filter by `usb.addr` to isolate device traffic.
4. **Replay**: Use `pyusb` to mimic host commands verifying device response.