Analyse rétrospective d'un run babysitter externe

VérifiéPrudence

Analyse et rédige une rétrospective pour un run babysitter situé dans un dépôt public externe, en suivant le même workflow que /babysitter:retrospect.

Spar Skills Guide Bot
DeveloppementIntermédiaire
23/07/2026
Claude Code
#babysitter#retrospective#run-analysis#workflow-orchestration#external-repos

Recommandé pour

Synthèse automatique

Réalise une rétrospective sur une exécution babysitter (run) trouvée dans un dépôt public externe, en analysant le processus, la qualité de la conception des effets et les points de rupture.

Points forts

  • Décrit une démarche en phases claires : sélection de la cible, découverte des processus et runs, choix du run, puis chargement et lecture du journal.
  • Repère les runs supprimés via l'historique git, ce qui permet d'analyser des exécutions qui ne sont plus présentes dans HEAD.
  • Bascule explicitement en rétrospective « processus uniquement » lorsque le dépôt n'a pas versionné de runs, au lieu d'échouer.
  • Produit des recommandations concrètes pour l'auteur du processus, et signale les enseignements généralisables au projet babysitter.

Limites

  • Suppose un environnement déjà préparé : CLI gh authentifiée et fichier docs/repo-with-babysitter-processes.md généré au préalable.
  • Ne s'applique qu'aux dépôts utilisant le SDK @a5c-ai/babysitter-sdk ; ailleurs, aucun processus ne sera détecté.
  • La profondeur de l'analyse dépend fortement de la présence des artefacts de run, que beaucoup de dépôts ignorent via gitignore.
Quand l'utiliser

À utiliser lorsqu'on veut comprendre comment un tiers a réellement exécuté un processus babysitter et en tirer des axes d'amélioration.

Quand l'éviter

À éviter pour analyser ses propres runs locaux, ou pour un dépôt sans processus babysitter, où la commande interne /babysitter:retrospect ou un audit classique suffit.

Analyse de sécurité

Prudence
Score qualité85/100

The skill performs read-only analysis of public repositories using git and gh, with no destructive or exfiltration commands. It does clone external repos and read untrusted files, which carries mild prompt-injection risk, and it uses shell commands without declaring allowed-tools, so caution is appropriate.

Points d'attention
  • •Instructs shallow-cloning and reading arbitrary public repositories; external content may contain prompt-injection or malicious instructions that could influence the agent.
  • •Uses shell commands (gh repo clone, git log, grep) without declaring allowed-tools, which may bypass tool allowlist expectations in restricted environments.
Comment cette analyse est faite

Exemples

Retrospect a named external repo
Do a retrospective on the babysitter run in github.com/acme/agent-pipelines — what went well, what failed, and how could the process author improve their effect design?
Pick a target from the catalog
Find a babysitter run to retrospect on: look through the catalog of user repos and pick the highest-starred active one that hasn't been reviewed in the last 30 days.
Survey how others use babysitter
Review an external babysitter run and tell me how other people are using babysitter processes and what they commonly get wrong.

name: retrospect-external-babysitter-run description: 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".

Retrospect External Babysitter Run

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).

When to use

  • User names an external repo and asks for a retrospective.
  • User asks "find a babysitter run to retrospect on" (combine with the catalog-babysitter-users skill to pick one).
  • User asks "how are other people using babysitter processes? What do they get wrong?".

Prerequisites

  • gh CLI authenticated.
  • docs/repo-with-babysitter-processes.md exists (if not, run the catalog-babysitter-users skill first).
  • A workspace directory where external repos can be shallow-cloned (default: /tmp/babysitter-retrospect/ or .a5c/tmp/external-runs/).

Phase 1 -- Target selection

  1. Read docs/repo-with-babysitter-processes.md and list Active repos with stars + description. If the user already named a repo, skip to step 3.
  2. Ask the user which repo to retrospect on (use AskUserQuestion in interactive mode; if non-interactive, pick the highest-starred Active repo that wasn't retrospected in the last 30 days -- track via docs/retrospectives/<owner>-<name>/log.md).
  3. Confirm the target with the user before cloning.

Phase 2 -- Discover processes and runs

Shallow clone the target:

mkdir -p .a5c/tmp/external-runs
cd .a5c/tmp/external-runs
gh repo clone <owner>/<name> -- --depth 50 --single-branch
cd <name>

Locate:

  • Process files: files importing defineTask from @a5c-ai/babysitter-sdk. Use Grep: grep -rl "from '@a5c-ai/babysitter-sdk'" -- . --include='*.js' --include='*.ts'.
  • Committed runs: .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.
  • Historical runs via git log: 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:

  • N process files found, by top-level directory
  • M run directories present in HEAD; P additional historical runs reachable via git history
  • Which runs completed vs failed (grep RUN_COMPLETED / RUN_FAILED in the journal)

Phase 3 -- Pick a run to retrospect

If multiple runs exist, ask the user (interactive) or default (non-interactive) to:

  • The most recent failed run (highest signal for process improvement), OR
  • If no failures, the most recent completed run.

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.

Phase 4 -- Load the run

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 output
  • The process file referenced by run.json.entrypoint -- cross-reference against the journal to see what the author intended vs what happened.

Phase 5 -- Retrospective analysis

Mirror the in-repo /babysitter:retrospect workflow. Produce notes under each heading:

5.1 Outcome

  • Success / partial success / failure.
  • Total iterations, duration, distinct effect count, retry count.
  • Final output quality (from state/output.json shape + content).

5.2 What went well

  • Effects that resolved on first try.
  • Process sections with clear inputs/outputs and no re-runs.
  • Useful breakpoints that caught real issues before they propagated.

5.3 What went poorly

  • Effects that were re-dispatched (same invocationKey or similar taskId appearing repeatedly).
  • Long gaps between EFFECT_REQUESTED and EFFECT_RESOLVED (external bottlenecks).
  • Breakpoints that looped (approval -> reject -> retry -> reject).
  • Tasks that crashed and what the error category was (Configuration / Validation / Runtime / External / Internal).
  • Any RUN_FAILED: trace the last few events and the thrown error.

5.4 Process-quality review

Evaluate the process file itself against these criteria:

  • Determinism: does every effect have stable invocation keys (processId:stepId:taskId)? Any non-deterministic branching based on wall-clock time, random, or unpinned env vars?
  • Effect granularity: are tasks too coarse (one huge agent task vs several narrower ones) or too fine (dozens of tiny tasks)?
  • Idempotency: can the process be re-run safely? Does it use ctx.task() for all side effects, or does it write files outside a task?
  • Breakpoint discipline: are breakpoints used to gate irreversible actions? Do they follow the robust rejection pattern (loop with feedback)?
  • Error surfacing: does the process throw with useful context, or swallow errors?
  • Labels: are task labels meaningful and consistent (enables filtering / observability)?
  • Re-use: could any section be replaced by a shared component from library/processes/shared/?

5.5 Suggestions

Concrete, actionable suggestions in three buckets:

  • For the run (if still in progress): what to retry, rollback, or fix first.
  • For the process (always): specific edits to the process file -- split this task, add this breakpoint, move that side-effect inside a task, use stableKey here.

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 ...)

  • For babysitter upstream (when the insight generalizes): missing primitives, confusing SDK behavior, documentation gaps worth filing via /babysitter:contrib.

Every suggestion must cite evidence -- a journal event, a file path, a line range.

Phase 6 -- Write the retrospective

Write to docs/retrospectives/<owner>-<name>/<runId-or-process-name>.md with this structure:

# 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.

Phase 7 -- Cleanup and callbacks

  • Leave the shallow clone under .a5c/tmp/external-runs/ in place (it's cheap). If disk pressure, note this to the user; do NOT auto-delete.
  • Suggest the user use /babysitter:contrib for any upstream-worthy insight:
    • Process/skill improvement idea -> /babysitter:contrib library contribution: [description]
    • SDK/CLI bug or missing primitive -> /babysitter:contrib bug report: [description]
    • Documentation gap that tripped the external author -> /babysitter:contrib documentation question: [what was unclear]
  • If the process author is findable (repo owner, git author of the process file), suggest opening an issue on their repo with a pointer to the retrospective document.

Notes

  • Honour the target repo's LICENSE when quoting code in the retrospective. Short excerpts for analysis are fair use; do not wholesale copy process files into this repo.
  • Never execute the external process -- retrospectives are read-only analysis.
  • If the run journal is very large (>500 events), sample: first 20, last 20, plus every EFFECT that transitioned to resolved or failed.

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/external-babysitter-run-retrospect-mrx3xzoa/download' --output '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md.part' && mv '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md.part' '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Extrait original : Prerequisites
  • gh CLI authenticated.
  • docs/repo-with-babysitter-processes.md exists (if not, run the catalog-babysitter-users skill first).
  • A workspace directory where external repos can be shallow-cloned (default: /tmp/babysitter-retrospect/ or .a5c/tmp/external-runs/).

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md' && test -s '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/retrospect-external-babysitter-run' && cp -R '.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa' '.claude/skills/retrospect-external-babysitter-run'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/external-babysitter-run-retrospect-mrx3xzoa'

openskills read 'external-babysitter-run-retrospect-mrx3xzoa'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/external-babysitter-run-retrospect-mrx3xzoa/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires