PulseAugur
EN
LIVE 13:32:15

Claude Code's evolving JSONL schema requires flexible parsing strategies

The developer of a read-only replay and search tool for Claude Code's conversation logs has detailed patterns for handling its evolving JSONL schema. Since the schema changes frequently without documentation, the tool employs an explicit whitelist of known message types to parse successfully, while preserving unknown types for future re-parsing. To manage schema updates, derived data is versioned, allowing an indexer to automatically re-parse sessions when the parser is updated. The author also shares a war story about encountering unpaired UTF-16 surrogates in tool error messages due to older versions truncating long strings. AI

IMPACT Provides practical strategies for developers working with evolving AI tool outputs, ensuring data integrity and searchability.

RANK_REASON The item describes a tool for parsing and managing data from another tool (Claude Code), focusing on technical implementation details rather than a new release or significant industry event.

Read on dev.to — Claude Code tag →

AI-generated summary · Google Gemini · from 1 sources. How we write summaries →

Claude Code's evolving JSONL schema requires flexible parsing strategies

COVERAGE [1]

  1. dev.to — Claude Code tag TIER_1 English(EN) · 林子超(子超) ·

    Parsing Claude Code's JSONL: patterns for a schema that keeps moving

    <p>Every conversation you have with Claude Code is written to disk as JSONL, under <code>~/.claude/projects/</code>. Your decisions, your dead ends, the bug hunt that took three sessions: it is all there. You have probably never opened one.</p> <p>The catch: the format is an inte…