Extract Prompts into Granular Git Structure

Anthropic publishes Claude chat system prompts as a single Markdown page. To analyze evolutions, split it into separate files per model (e.g., Opus), family, and revision using Claude Code. Assign fake git commit dates matching prompt timestamps. This repo structure—https://github.com/simonw/research/tree/main/extract-system-prompts—turns history into a queryable timeline, avoiding manual parsing of the monolithic source.

Commit each prompt version as a granular file, enabling GitHub's commit view for visual browsing. Git operations reveal precise change attribution: git log lists evolution chronologically, git diff highlights additions/deletions between versions like Opus 4.6 and 4.7, and git blame pins modifications to exact dates.

Leverage Git for Prompt Analysis Trade-offs

This approach excels for researchers tracking LLM behavior shifts, as prompts directly influence outputs—e.g., comparing 4.6 to 4.7 exposed targeted tweaks without sifting raw Markdown. Trade-off: Fake commits require upfront scripting but unlock native git tooling over ad-hoc diffs. Readers can fork the repo to apply the same workflow to other providers' prompt histories, accelerating reverse-engineering of model updates.

Real-world Output: Opus 4.6 to 4.7 Insights

Applied to Opus changes, git diffs surfaced specific refinements, fueling detailed notes at https://simonwillison.net/2026/Apr/18/opus-system-prompt/. This proves the method's value: from raw docs to actionable insights in minutes, versus hours of manual review.