A Loop to Remember
Giving coding agents the structure human teams rely on: how I work as the owner of an agent dev team, and where it goes next.
222 Votes Away, and a Record Few Can Get End to End
The National Popular Vote Interstate Compact needs no amendment and is 48 electoral votes from its threshold. The record that argument turns on is now a public API, with every electoral vote back to 1824 and the popular vote from 1976, so you can ask it your own questions.
-
Token accounting is harder than it looks
Part 4 of the anatomy series. The four token kinds, the subagent rollup undercount trap, and why turning session JSONL into accurate cost figures needs model identity, service_tier, and an external pricing table rather than a single sum.
-
What launched this turn? Subagents, MCP tools, and Skills
A short aside off Part 3. Every assistant line can carry a record of how it came to exist — which subagent ran it, which MCP tool it routed through, which Skill it ran under. The attribution* fields, what each one records, and the one that is not the sidechain signal it looks like.
-
Inside the subagent trace file
Part 3 of the anatomy series. When Claude Code delegates to a subagent, the parent session records only a rollup — the subagent's real work lives in a separate trace file. Where it is, how it links back, and why isSidechain is the field that matters.
-
How often does Claude retry a tool call?
The session JSONL's tool_use_id pairing key (introduced in Part 2) lets you measure how often Claude retries after a tool error — and the answer is different by tool, which is where it gets interesting.
-
Reading a Claude Code session, line by line
Part 2 of the anatomy series. Every type of line in a session JSONL, the snake_case/camelCase split that reveals two layers (API content wrapped in Claude Code's bookkeeping), and why tool results live inside user messages.