Synthèse automatique
Produit une revue « stack-unwind » d'une conversation Claude Code : tâches terminées barrées et chaque point laissé ouvert, imbriqué à la profondeur où il a été abandonné.
Points forts
- Dimensionnement déterministe : le nombre de nœuds est calculé à partir du nombre de prompts mesuré, et non laissé à l'appréciation du modèle.
- S'exécute dans un contexte forké vierge, sans accès à la conversation revue, pour éviter tout biais.
- Prend en compte les interruptions, les branches mortes et les résumés compactés.
- Peut analyser une autre session via un chemin .jsonl ou un identifiant de session.
Limites
- Spécifique à Claude Code : dépend de l'identifiant de session et des scripts du répertoire de skill.
- La profondeur maximale de 3 et le budget de nœuds peuvent aplatir les très longues sessions.
- Nécessite le script auxiliaire census.sh et l'extraction du fichier spine.
À la fin d'une longue session de travail, pour obtenir une rétrospective structurée de ce qui a été fait et de ce qui reste en suspens.
Pour une session courte et mono-objectif, où il n'y a que peu ou pas de fils abandonnés.
Analyse de sécurité
SûrThe skill only reads local conversation spine files and executes a fixed local script (census.sh) from the skill directory with the session id or provided path. There are no destructive commands, network calls, secret exfiltration, or obfuscated payloads. Bash use is constrained to a specific, deterministic local script.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
Review this whole session and show me a stack-unwind: what I actually finished and everything I left open, nested where I dropped it./tape-opens .claude/sessions/2024-06-12.jsonl - give me the opens tree for that session.Go through this conversation and list every deferred fix, unanswered question and TODO still hanging, at the depth each was abandoned.description: Stack-unwind review of this conversation - a tree of main tasks done (struck through) and every open left behind at the depth it was abandoned, sized by the thread's measured shape, never by feel. Optional argument - a .jsonl path or session id to review a different session. argument-hint: [session.jsonl | session-id] disable-model-invocation: true context: fork agent: general-purpose background: false allowed-tools: Read, Bash(bash ${CLAUDE_SKILL_DIR}/census.sh:*)
/tape-opens - stack-unwind review
You are a fresh instance with NO access to the conversation you are about to review. That is by design: you must not assume anything about the user, the project, or what a "normal" conversation looks like.
The concept: long working sessions are depth-first. The user starts with an objective, drills into one aspect (leaving opens behind), drills deeper inside that, and so on - a stack, not a list. Your job is to reconstruct the whole thread as a stack-unwind tree: the main tasks that actually got done, checked and struck through, and everything raised-but-never-resolved as unchecked opens, nested at the stack depth where each was abandoned.
Step 1 - census (deterministic, run exactly this)
bash ${CLAUDE_SKILL_DIR}/census.sh ${CLAUDE_SESSION_ID} $ARGUMENTS
It prints SESSION, USER_PROMPTS, SPAN, BUDGET, SPINE (a file path), SPINE_BYTES. If it prints ERROR, stop and report that error text as your final message.
BUDGET is the sizing law and it is not yours to adjust, in either direction. Why it exists: opens are created by descents, and descents happen at user prompts - not at tokens, which are dominated by tool noise. So the tree size is computed from the measured prompt count (round(1.5 * sqrt(USER_PROMPTS)), clamped 5..30) by the script, before any model is involved. A zero-knowledge instance like you would otherwise default to "about a page" no matter the thread; the computed budget is what makes a 15-prompt evening yield 6 nodes and a 5-day monster yield 25, consistently, on every run.
Step 2 - read the spine
Read the SPINE file completely (use offset/limit chunks if it is large). It is the conversation reduced to plain chronological text:
[USER <timestamp>]- a user prompt (truncated to 800 chars)[AI]- an assistant text reply (truncated to 400 chars)[INTERRUPTED]- the user cut the assistant off mid-turn; a frame likely got popped without unwinding - strong open signal nearby[TASK-RESULT]- a background subagent returned; its findings may contain deferred items[COMPACTED SUMMARY <date>]- condensed earlier history; treat its contents as thread events[USER dead-branch <timestamp>]/[AI dead-branch]- content from an abandoned or rewound timeline: the user backtracked and the thread continued differently. Real work and real opens can live there, but the live thread wins on any conflict, and nothing from a dead branch counts as done unless the live thread confirms it
Step 3 - build the tree
- First enumerate ALL candidate opens internally, end to end. Their count is
K.- An open is anything raised but never resolved later in the thread: a deferred fix or rename, a "later/TODO", a question asked and never answered, an unverified claim ("should work"), a rabbithole abandoned mid-descent, a "we should also X" nobody did, next-steps proposed at the close and never picked up.
- NOT an open: anything resolved later in the thread (render it done or omit it), transient debugging, plans that were superseded.
- Rank candidates by "would the user still care today". Recency, explicit user words ("later", "don't do X now"), and blocked-on-user gates rank high; stale trivia dies.
- Build the tree under these hard constraints:
- max
BUDGETnodes TOTAL (done + open combined), max depth 3, one line per node - top level = the thread's main tasks in chronological order
- done:
- [x] ~~task~~ - 3-6 word outcome - open:
- [ ] item (MM-DD)with the date hint when useful - nesting mirrors the drill-down stack: an open left while inside sub-task B of task A nests under A > B
- telegraphic but readable - no invented codenames, no abbreviations the tree itself doesn't explain
- max
Step 4 - output
Your final message must be EXACTLY this raw markdown and nothing else - no preamble, no closing remarks, no code fence around it:
## <invented 4-8 word thread title> - <USER_PROMPTS> prompts, <SPAN>
<the tree>
_pruned: kept <nodes-shown-as-open> of <K> candidate opens_
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 annexesCe 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.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/stack-unwind-conversation-review-msh3utx3/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/stack-unwind-conversation-review-msh3utx3' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/stack-unwind-conversation-review-msh3utx3/download' --output '.skill-downloads/stack-unwind-conversation-review-msh3utx3/SKILL.md.part' && mv '.skill-downloads/stack-unwind-conversation-review-msh3utx3/SKILL.md.part' '.skill-downloads/stack-unwind-conversation-review-msh3utx3/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.
Outils déclarés par l’auteur (à vérifier dans votre agent) : Read, Bash(bash ${CLAUDE_SKILL_DIR}/census.sh:*)
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
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
Le fichier ne fournit pas un en-tête name/description exploitable pour cette procédure native. Le téléchargement reste disponible pour lecture ; utilisez le mode manuel ci-dessous.
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/stack-unwind-conversation-review-msh3utx3/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.
Lecteur PDF
Productivite
Lit et extrait le texte de fichiers PDF (rapports, contrats, tableurs). Gère les fichiers locaux, les URL et les pièces jointes WhatsApp. Utilisez-le dès qu'un contenu PDF est nécessaire, même sans demande explicite.
Workflows de messagerie Discord
Productivite
Utilisez l'outil message pour envoyer, modifier et modérer des messages Discord avec des composants interactifs.
Aperçu interactif des verdicts
Productivite
Générer un aperçu HTML interactif des verdicts (garder/supprimer) pour la revue par le mainteneur, puis traiter le JSON de retour.