Pure Python, no dependencies. Decodes raw TPDU bytes into structured JSON: CLA bitfield, INS->name via APDU_SPEC table, P1/P2 field breakdown, body extraction, SW name lookup. ~40 command types, 40+ SW codes, known FID notes. database.py: _row_to_message() calls decode_message() for tpdu messages, adding 'decoded' field to API responses. Decoding happens at query time, not storage time — no schema migration, all past sessions get decode retroactively.