What problem does it solve? Raw USB captures from Packetry/Cynthion use the wire-level LINKTYPE_USB_2_0 format that generic pcap tools like dpkt and scapy misparse, making it hard to inspect descriptors, transfers, or compare captures across firmware versions. ## Core Features & Use Cases - Four-layer decoding: Streams packets into transactions, transfers, and decoded content including standard descriptors (device, configuration, interface, endpoint, string) and class-specific payloads (HID, MSC/SCSI, CDC-ACM, MIDI, hub). - Flexible filtering and output: Filter by device address, endpoint, transfer type, time range, or enumeration phase, with JSON, transcript, and Markdown report formats. - Capture diffing: Aligns two captures by endpoint and sequence to report added, removed, or byte-level changed transactions. - Use Case: After a firmware update, run diff.py on before/after captures to confirm the device descriptor and HID report format did not change unexpectedly. ## Quick Start Ask the agent to decode your Packetry capture file and summarize the enumeration phase and descriptors in a Markdown report.