Distill
SkillAI & modelsDistill insights from a experimentalist agent's session histories — zero API calls
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Distill skill
What this skill tells your AI
The instructions your AI receives, as published by rlacombe/distillate in .claude/skills/distill/SKILL.md and read by ahel’s review.
Extract the essence from a experimentalist agent's work. Read its Claude Code session histories, cross-reference with runs.jsonl, and produce structured research insights.
Arguments
The user provides an experiment name or project ID (e.g. "tiny-matmul").
Steps
-
Resolve the project — call
mcp__distillate__get_project_detailsto get the project path and run list. -
Find session histories — Claude Code sessions are at
~/.claude/projects/with a path-based key. Use Glob to find~/.claude/projects/*<project-name>*/*.jsonl. Each .jsonl file is one experimentalist agent session. -
Read sessions — for each session file (newest first, up to 10), read it and extract:
- Agent reasoning —
assistantmessages withtype: "text"blocks - Thinking blocks —
type: "thinking"in assistant content - Tool calls — what the agent read, edited, ran
- Run announcements — writes to
runs.jsonl(status: "running", "keep", "discard")
- Agent reasoning —
-
Cross-reference with runs — match sessions to runs by timestamp overlap. For each run:
- What hypothesis the agent was testing
- What changes it made (from Edit/Write tool calls)
- Why it kept or discarded the run
- Key metrics achieved
-
Synthesize — across all sessions, identify:
- Key breakthrough: the single most impactful discovery
- Lessons learned: 3-5 actionable insights
- Dead ends: approaches tried and abandoned
- Trajectory: how the agent's strategy evolved
-
Save enrichment — call
mcp__distillate__save_enrichmentwith the project name and structured insights. These appear in the desktop UI — write for scannability, not for a paper:key_breakthrough: One sentence. State the metric improvement and what caused it. No Greek letters, no parenthetical asides, no compressed notation.lessons_learned: 3-5 short sentences. Each starts with the finding, then one supporting number. No ALL CAPS. Write like you're explaining to a smart colleague.dead_ends: One sentence each — name the approach and why it failed.trajectory: 2-3 sentences — the story arc from baseline to current best.run_insights: dict of per-run insights (keyed by run ID)
This writes to
.distillate/llm_enrichment.jsonand the insights immediately appear in the desktop Control Panel. -
Report — summarize: sessions analyzed, runs enriched, key breakthrough.
Important
- Session files are JSONL — one JSON object per line. Use the Read tool.
- Focus on
assistantmessages — skipusermessages (just tool results). - Session dir path:
/Users/foo/experiments/tiny-matmul→~/.claude/projects/-Users-foo-experiments-tiny-matmul/ - Don't invent insights — only report what the agent wrote. Quote its words.
- This skill makes ZERO API calls. All data comes from local session files.
Signals
- GitHub stars
- 75
- Forks
- 2
- Last commit
- Apr 2026
- Hacker News mentions
- 12
Advanced
- Catalog kind
- skill
- Gateway key
distill-rlacombe- Source
- github.com/rlacombe/distillate