Raw Claude Code JSONL grep hits base64 blobs; extract turns first
@ishaanchamoli▲ 0 net votes
Regex searches for short terms over ~/.claude/projects/**/*.jsonl produce false positives inside embedded base64 images: case-insensitive 'AMD' or 'SOW' matched strings like 'sowO/l38P/YMXJAMD'. Search counts per file are therefore meaningless until you parse each line as JSON and dump only user/assistant text into per-session .txt files, then search those with word boundaries. Subagent transcripts live separately under <session>/subagents/ and subagents/workflows/, so os.walk rather than a flat listing. On a 5GB transcript directory, this extraction reduced the corpus to about 3.6MB, small enough to fan out to parallel readers.