Rattrapage de sessions

VérifiéSûr

Remplit les résumés structurés de sessions à partir des transcriptions Claude Code dans le dossier Sessions de votre coffre Obsidian.

Spar Skills Guide Bot
ProductiviteIntermédiaire
22/07/2026
Claude Code
#obsidian#session-summaries#knowledge-management#claude-code#transcripts

Recommandé pour

Synthèse automatique

Cette skill relit les transcripts .jsonl de Claude Code et les distille en fiches de session structurées (TL;DR, objectif, résultat, décisions, blocages, suite) dans le dossier Sessions d'un vault Obsidian, par projet.

Points forts

  • Remplace les stubs vides de session-auto-track par des notes réellement exploitables et indexables par QMD
  • Utilise `claude -p` par défaut, donc l'abonnement local, sans clé API ni facturation Console
  • Idempotent : les sessions déjà résumées sont ignorées, ce qui permet de relancer sans risque
  • Résolution du vault sans chemin codé en dur (argument, variables d'environnement, emplacements courants) et mode --dry-run pour prévisualiser

Limites

  • Dépend fortement de la structure de Braynee (stubs session-auto-track) et de l'arborescence `~/.claude/projects/` de Claude Code
  • Nécessite un vault Obsidian avec la convention `2. Areas/Sessions/<Projet>` pour que les notes tombent au bon endroit
  • Chaque session passe par un appel LLM : sur de gros volumes, le backfill complet peut être long
Quand l'utiliser

À utiliser quand un vault contient des fiches de session vides ou squelettiques et qu'on veut reconstituer un historique de projet recherchable à partir des vraies conversations Claude Code.

Quand l'éviter

À éviter si l'on n'utilise pas Claude Code ni un vault Obsidian structuré de cette façon, ou si l'on ne veut aucune synthèse LLM des transcripts.

Analyse de sécurité

Sûr
Score qualité90/100

Skill instructs running a Python script and the Claude Code CLI to read local transcript files and write structured markdown notes locally. No destructive, exfiltrating, or obfuscated commands are present. The script explicitly strips ANTHROPIC_API_KEY from the subprocess environment to prevent unintended API billing, and network use is limited to the Claude Code subscription, which is expected and legitimate.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

Single project backfill
Backfill my Claude Code sessions for sophon-webapp into the vault.
Dry run first
Do a dry run of the session backfill for the foreman project so I can see which notes would be created.
Recent sessions only
Summarize the last 5 Claude Code sessions for foreman and fill in the empty session notes.

name: session-backfill description: > Backfill structured session summaries from Claude Code .jsonl transcripts into the vault's per-project Sessions folder. Distills each CC session into TL;DR / Goal / Outcome / Decisions / Blockers / Next / References — agent- and human-searchable, not raw transcripts. Use when user says "backfill sessions", "summarize my sessions for X", "fill in the empty session notes", or wants to make QMD project history actually useful. argument-hint: '[--project NAME | --all] [--limit N] [--dry-run]' allowed-tools: Bash(python3:), Bash(claude:)

Session Backfill Skill

Turn empty braynee session-auto-track stubs into substantive per-project session notes by distilling the real Claude Code conversation history.

Why

Braynee's session-auto-track creates a one-line stub session note when each CC session starts. The stubs never get filled in — they say "Waiting for user to state goal" and "(none yet)" forever. Meanwhile the actual conversation lives in ~/.claude/projects/<encoded-path>/*.jsonl. QMD indexes only the stubs, so project history is unsearchable.

This skill reads each .jsonl, filters the tool-call noise, distills the conversation skeleton, and writes a structured summary into <vault>/2. Areas/Sessions/<Project>/<date>-<slug>-<type>-<id>.md.

Idempotent: if a structured note already exists for a session_id, it's skipped. Safe to rerun.

Distillation: no API billing by default

The default backend is claude -p — it uses your local Claude Code subscription via OAuth. No ANTHROPIC_API_KEY, no Console credits, no infisical, no per-session cost. The script explicitly strips ANTHROPIC_API_KEY from the claude -p subprocess env so it can never silently fall back to API billing.

--use-api is an explicit opt-in for the raw Anthropic API (Console credits). Use it only if you specifically want API billing and have set ANTHROPIC_API_KEY yourself. It is never required and never the default.

Commands

# Single project (pilot use) — uses `claude -p`, no API billing
python3 {baseDir}/scripts/backfill.py --project sophon-webapp

# Dry run — print what would be created, no distillation at all
python3 {baseDir}/scripts/backfill.py --project sophon-webapp --dry-run

# Limit to N most-recent sessions per project
python3 {baseDir}/scripts/backfill.py --project foreman --limit 5

# All projects (the big backfill)
python3 {baseDir}/scripts/backfill.py --all

# Point at a non-default vault location
python3 {baseDir}/scripts/backfill.py --all --vault "/path/to/Obsidian Vault"

# Opt in to the raw API (Console billing — only if you explicitly want it)
ANTHROPIC_API_KEY=... python3 {baseDir}/scripts/backfill.py --project foreman --use-api

Vault resolution

The vault is resolved universally, no hardcoded path:

  1. --vault PATH argument
  2. $BRAYNEE_VAULT / $OBSIDIAN_VAULT environment variable
  3. Common locations probed for a .obsidian directory (~/Obsidian Vault, ~/vault, ~/Documents/Obsidian Vault, OneDrive / iCloud variants)
  4. Falls back to ~/Obsidian Vault so a brand-new vault still works

Note format produced

Every backfilled note follows this structure:

---
type: session
project: "[[Sophon Webapp]]"
status: done
session_type: debug
session_id: "66b42f24-..."
started: 2026-04-27T09:01:00Z
tags:
  - session
  - debug
---

## TL;DR
[1-2 sentences — state of work + outcome]

## Goal
[What this session was trying to accomplish]

## Outcome
- **Shipped:** concrete changes that landed
- **In flight:** things started but not finished

## Decisions
- **[Decision]** — rationale, tradeoff

## Blockers / Open Questions
- [Things stuck, waiting, unknown]

## Next
[Single highest-leverage next action]

## References
- **Files:** `path/to/file.ts`
- **Related:** [[wikilinks]]

Project name mapping

Claude Code stores each project under ~/.claude/projects/<encoded-path>/, where the encoded path is the project's absolute path with separators (and the Windows drive colon) replaced by -. The skill derives the project slug generically — it strips a leading Windows drive letter, then takes the path segment after the last recognised parent directory token (code, src, work, repos, dev, …). This works for any user on any OS regardless of where their code lives.

For projects where the derived slug doesn't map to a clean wikilink (e.g., dealreveal-engine → DealReveal, not Dealreveal Engine), add an override in scripts/project_map.json. Overrides are optional — without them the slug is title-cased word-by-word.

Requirements

  • Python 3.10+ — that's it for the default path.
  • claude CLI on PATH (Claude Code) — used for distillation via your subscription. Already present wherever this skill runs.
  • Optional: pip install anthropic only if you pass --use-api (raw API, Console billing).
  • No infisical, no secrets manager, no API key needed for normal use.

Cost

  • Default (claude -p): consumes your Claude Code subscription quota, no API dollar cost.
  • --use-api (opt-in only): claude-sonnet-4-6, prompt-cached system prompt, ~$0.02/session on Console credits.

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/session-backfill-mrwakblw/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/session-backfill-mrwakblw' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/session-backfill-mrwakblw/download' --output '.skill-downloads/session-backfill-mrwakblw/SKILL.md.part' && mv '.skill-downloads/session-backfill-mrwakblw/SKILL.md.part' '.skill-downloads/session-backfill-mrwakblw/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) : Bash(python3:*), Bash(claude:*)

Extrait original : Requirements
  • Python 3.10+ — that's it for the default path.
  • claude CLI on PATH (Claude Code) — used for distillation via your subscription. Already present wherever this skill runs.
  • Optional: pip install anthropic only if you pass --use-api (raw API, Console billing).
  • No infisical, no secrets manager, no API key needed for normal use.

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/session-backfill-mrwakblw/SKILL.md' && test -s '.skill-downloads/session-backfill-mrwakblw/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/session-backfill' && cp -R '.skill-downloads/session-backfill-mrwakblw' '.claude/skills/session-backfill'

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/session-backfill-mrwakblw'

openskills read 'session-backfill-mrwakblw'

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/session-backfill-mrwakblw/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