Install any skill in seconds. Free to start, no credit card required.
Get Started Free →For a repository in the babysitter-users catalog, locate its babysitter processes and any committed runs (.a5c/runs/<runId>/) and perform a retrospective on a chosen run -- what went well, what failed, process suggestions, quality of effect design, breakpoint patterns -- mirroring the /babysitter:retrospect workflow but applied to an external repo. Invoke when asked to "retrospect on repo X's run", "analyze how someone else used babysitter", or "review an external babysitter run".
.claude/skills/a5c-ai-retrospect-external-babysitter-run/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 343% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 272% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 15% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 77% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 52% | 0% |
Analyse a babysitter run that lives in an external public repository, using the same lens as the in-repo /babysitter:retrospect command. Produce a written retrospective with concrete suggestions for the process author (or, if the insight generalizes, for the babysitter project itself).
catalog-babysitter-users skill to pick one).gh CLI authenticated.docs/repo-with-babysitter-processes.md exists (if not, run the catalog-babysitter-users skill first)./tmp/babysitter-retrospect/ or .a5c/tmp/external-runs/).docs/repo-with-babysitter-processes.md and list Active repos with stars + description. If the user already named a repo, skip to step 3.docs/retrospectives/<owner>-<name>/log.md).Shallow clone the target:
bashmkdir -p .a5c/tmp/external-runs cd .a5c/tmp/external-runs gh repo clone <owner>/<name> -- --depth 50 --single-branch cd <name>
Locate:
defineTask from @a5c-ai/babysitter-sdk. Use Grep: grep -rl "from '@a5c-ai/babysitter-sdk'" -- . --include='*.js' --include='*.ts'..a5c/runs/<runId>/ directories. Many repos gitignore .a5c/runs/ entirely -- that's fine; note it and proceed with process-only retrospective. When runs ARE committed, look for run.json, journal/, tasks/, state/output.json.git log --all --diff-filter=A --name-only -- '.a5c/runs/' surfaces runs that existed at some commit even if later cleaned up. Check out the commit that introduced the run if you want the journal content.Summarize to the user:
RUN_COMPLETED / RUN_FAILED in the journal)If multiple runs exist, ask the user (interactive) or default (non-interactive) to:
If no runs are committed at all, switch to a process-only retrospective: analyse the process file(s) for quality issues without run evidence. Mark the output clearly as process-only.
Inspect, in order:
.a5c/runs/<runId>/run.json -- processId, entrypoint, prompt, createdAt.a5c/runs/<runId>/inputs.json -- user intent.a5c/runs/<runId>/journal/*.json -- event stream (RUN_CREATED, EFFECT_REQUESTED, EFFECT_RESOLVED, RUN_COMPLETED / RUN_FAILED). Read every journal entry; it is the authoritative record..a5c/runs/<runId>/tasks/<effectId>/task.json + result.json -- per-effect definition and result.a5c/runs/<runId>/state/output.json (if present) -- final outputrun.json.entrypoint -- cross-reference against the journal to see what the author intended vs what happened.Mirror the in-repo /babysitter:retrospect workflow. Produce notes under each heading:
state/output.json shape + content).Evaluate the process file itself against these criteria:
ctx.task() for all side effects, or does it write files outside a task?library/processes/shared/?Concrete, actionable suggestions in three buckets:
Can it be generalized into a reusable pattern or library process in the processes library? If so, suggest that too. (also using /babysitter:contrib library ...)
/babysitter:contrib.Every suggestion must cite evidence -- a journal event, a file path, a line range.
Write to docs/retrospectives/<owner>-<name>/<runId-or-process-name>.md with this structure:
markdown# Retrospective: <owner>/<name> -- <runId or process name> Date: YYYY-MM-DD Source commit: <sha> Process: <relative path> Run: <runId or "process-only"> Outcome: <success | failure | process-only> ## Context <1-3 sentences on what the process is trying to do and the user intent from inputs.json> ## Timeline <bullet timeline of key journal events with timestamps and durations> ## What went well ... ## What went poorly ... ## Process-quality review ... ## Suggestions ### For the run ### For the process ### For babysitter upstream ## Evidence <links to specific journal event files, task.json files, line-anchored process file refs>
Also append a one-line entry to docs/retrospectives/<owner>-<name>/log.md with the date, runId, and outcome, so we don't re-retrospect the same run.
.a5c/tmp/external-runs/ in place (it's cheap). If disk pressure, note this to the user; do NOT auto-delete./babysitter:contrib for any upstream-worthy insight:/babysitter:contrib library contribution: [description]/babysitter:contrib bug report: [description]/babysitter:contrib documentation question: [what was unclear]| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 26,373 | 5,819 | -78% | 1 | 1 | 0% | 5,096 | 2,429 | -52% | 0 | 0 | — |
case-02 | fail→fail | 25,649 | 2,817 | -89% | 1 | 1 | 0% | 4,559 | 2,544 | -44% | 0 | 0 | — |
case-03 | fail→fail | 22,782 | 12,033 | -47% | 1 | 1 | 0% | 3,902 | 2,415 | -38% | 0 | 0 | — |
case-04 | fail→fail | 10,909 | 4,305 | -61% | 1 | 1 | 0% | 1,224 | 2,322 | +90% | 0 | 0 | — |
case-05 | fail→fail | 18,401 | 5,079 | -72% | 1 | 1 | 0% | 3,845 | 2,453 | -36% | 0 | 0 | — |
case-06 | fail→fail | 7,792 | 4,669 | -40% | 1 | 1 | 0% | 928 | 2,346 | +153% | 0 | 0 | — |
case-07 | fail→pass | 3,277 | 2,790 | -15% | 1 | 1 | 0% | 602 | 2,665 | +343% | 0 | 0 | — |
case-08 | fail→pass | 3,670 | 2,714 | -26% | 1 | 1 | 0% | 703 | 2,613 | +272% | 0 | 0 | — |
case-09 | fail→pass | 16,688 | 9,123 | -45% | 1 | 1 | 0% | 3,007 | 3,457 | +15% | 0 | 0 | — |
case-10 | fail→fail | 11,982 | 5,227 | -56% | 1 | 1 | 0% | 2,222 | 3,057 | +38% | 0 | 0 | — |
case-11 | fail→pass | 8,867 | 2,456 | -72% | 1 | 1 | 0% | 1,436 | 2,535 | +77% | 0 | 0 | — |
case-12 | fail→fail | 10,363 | 4,097 | -60% | 1 | 1 | 0% | 1,777 | 2,954 | +66% | 0 | 0 | — |
case-13 | fail→pass | 10,780 | 3,359 | -69% | 1 | 1 | 0% | 1,848 | 2,809 | +52% | 0 | 0 | — |
case-14 | fail→pass | 12,730 | 8,685 | -32% | 1 | 1 | 0% | 2,282 | 3,745 | +64% | 0 | 0 | — |
case-15 | fail→pass | 9,255 | 4,990 | -46% | 1 | 1 | 0% | 1,478 | 2,980 | +102% | 0 | 0 | — |
case-16 | fail→pass | 15,548 | 11,151 | -28% | 1 | 1 | 0% | 2,585 | 3,654 | +41% | 0 | 0 | — |
case-17 | fail→pass | 9,945 | 4,980 | -50% | 1 | 1 | 0% | 1,622 | 2,912 | +80% | 0 | 0 | — |
case-18 | fail→pass | 6,830 | 1,951 | -71% | 1 | 1 | 0% | 1,203 | 2,480 | +106% | 0 | 0 | — |
case-19 | fail→fail | 8,163 | 2,461 | -70% | 1 | 1 | 0% | 1,433 | 2,562 | +79% | 0 | 0 | — |
case-20 | fail→pass | 9,024 | 2,021 | -78% | 1 | 1 | 0% | 1,512 | 2,500 | +65% | 0 | 0 | — |
case-21 | fail→pass | 8,846 | 2,482 | -72% | 1 | 1 | 0% | 1,402 | 2,533 | +81% | 0 | 0 | — |
case-22 | fail→fail | 12,664 | 2,296 | -82% | 1 | 1 | 0% | 1,790 | 2,464 | +38% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 17 counted toward the lift figure. The other 5 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +55 percentage points is the difference between those two pass rates over the 17 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.