read your agent's
run back.

observability shows you the run. postflight closes the loop — a tiny, local, harness-neutral CLI that turns an agent transcript into a flight review + the skill to extract. no signup, no SDK, no platform.

$ npx agent-postflight
this review was computed in your tab, just now — transcripts never leave your machine.
● REC FLIGHT REVIEW
or drop a transcript anywhere on this card

what it finds

findings, not dashboards.

redundant work

the same file read twelve times, the same command re-run, the same search repeated — with a rough token cost for every re-read.

retry loops

a tool that errored, then got tried again — and whether it ever recovered. the loop you'd never spot scrolling a dashboard.

the skill to extract

the one thing repeated enough that it should be captured once. --skill writes the SKILL.md scaffold. that's the loop, closed.

harness-neutral

the analyzer never learns your format.

claude code openai format ○ langgraph — next ○ raw logs — next

each harness gets a small adapter; they all emit the same flat shape, so adapters are additive, not rewrites. point it at either format — detection is automatic.

the honest caveat

if your runs are short and tight, postflight will tell you so and find nothing to fix — that's a good run, not a failure. and --skill gives you a scaffold, not a finished skill; you still write the durable facts. it will not fabricate a problem to look useful.

install

one command. your latest run.

npx agent-postflight # review your latest claude code run
npx agent-postflight --demo # the bundled sample, zero setup
npx agent-postflight run.jsonl # any transcript — format auto-detected
npx agent-postflight --skill # write the extracted SKILL.md scaffold