Skip to content

skilldrop·docs·How-to

Measure your loops

Turn on the opt-in, local-only run log, then see which gates pass first time, which keep looping back, and which end in BLOCKED.

Every loop's gate gives a verdict: READY or NOT READY, SHIP IT or MAJOR REWRITE. Over a few weeks those verdicts show where work really gets stuck. Maybe G2 fails first time on most changes, or discover keeps sending PRDs back. The run log records them, on your machine only.

Turn it on

Set one environment variable to a file path, in your shell profile or the project's .envrc:

export SKILLDROP_LOOP_LOG="$PWD/.skilldrop/loop-log.jsonl"
mkdir -p .skilldrop && echo ".skilldrop/" >> .git/info/exclude   # keep it out of git

Every loop's LOOP.md has a Run log (opt-in) section. When the variable is set, the agent running the loop appends one JSON line after each gate:

{"ts":"2026-10-01T14:03:00Z","loop":"build","stage":"verify","gate":"G2","verdict":"NOT READY","round":1}

That's all it records: no prompts, no code, no names. Nothing is sent anywhere. Unset the variable and logging stops. Delete the file and the history is gone.

Read it

npx skilldrop-cli loop-stats              # reads $SKILLDROP_LOOP_LOG
npx skilldrop-cli loop-stats --days 30    # the last 30 days only
build  G2 (verify)
  6 verdict(s): NOT READY 3, READY 2, BLOCKED 1
  33% pass first time · 1 blocked · longest run 3 round(s)

A conditional pass (SHIP WITH CHANGES, PROCEED WITH CONDITIONS) counts as passing first time.

See it as a page

For a retrospective, write a dashboard: each gate's verdict mix and its verdicts per week.

npx skilldrop-cli loop-stats --days 90 --html loop-stats.html

The page has no script and its policy blocks every request, so it can be sent on as a file.

Combine a team's numbers

Each person writes a summary, which holds counts only, and shares the file however the team shares files:

npx skilldrop-cli loop-stats --days 30 --json > alex.json
npx skilldrop-cli loop-stats alex.json sam.json priya.json --html team.html

Any mix of summaries and raw logs combines into one view.

What to do with it

Don't rank people by these numbers: a hard change loops more than an easy one.

Edit this page on GitHub · View source