WAYS OF WORKING · DEMO 04 NINO CHAVEZ

Your sessions
are a corpus.

Every agent session leaves a transcript. Mine them, and your own history becomes training data for how you work: reusable prompts, your correction patterns as standing priors, and an honest ledger of what the agent built that actually survived.

agent — zsh
$ python3 artifact-miner.py --out artifact-mine.json
$ jq '.corpus' artifact-mine.json
{ "files": 2747, "lines": 527394 }

or scroll to advance · to go back

02 THE EXHAUST

The dataset you already have

Coding agents log everything: every command, every file read, every correction you typed at them. Across one machine's history that's a real dataset — and it accumulates whether or not you ever look at it.

Transcripts2,747 sessions
Volume527,394 transcript lines
Shell commands62,312 Bash calls
File activity30,914 reads · 17,284 edits

The survival ledger inside it is the honest part: of the workspace artifacts agents created, 2,013 are gone and 961 still exist. Most of what an agent builds is scaffolding — knowing which parts survived is where the signal is.

03 THE CONFESSION

The miner was rebuilt at least 12 times first

The mining tool's own docstring tells the origin story better than any slide could — quoted verbatim:

artifact-miner.py — docstring
Before this script existed, one-off variants of it were rebuilt in throwaway
sessions at least 12 times (mine_sessions.py, mine_failures_v3.py,
friction_mining_v2.py, ...) — hence the durable home.

The evidence, from its own output

A fresh mining run finds its own ancestors in the ephemeral graveyard: mine_sessions.py, mine_transcripts.py, mine_corrections.py, mine_failures.py, _v2, _v3, friction_mining.py, _v2, deep_friction_scan.py, detailed_analysis.py — all written once, used once, gone.

Across all sessions: 313 ephemeral scripts gone, 12 kept.

The promotion

The twelfth rebuild became the durable one — with the rule written into the tool itself: if you're about to write a new session miner, extend this one instead.

The method: notice the throwaway you keep re-forking. Promote it once. Encode "extend, don't re-fork" where the next session will read it.

04 YIELD 1 · AUDITS

Every guard started as a query

The mechanical guards in demo 03 weren't designed from intuition. Each one's origin audit was a mining pass over this corpus:

122 pkills

Mined from Bash-call signatures across 16 projects → the preview and q helpers.

50% re-reads

A 60-day Read-pattern audit (worst case: one file read 184×) → the read-guard hook.

553 hesitations

Ask-then-told-"go" exchanges mined from user turns → the three-layer anti-hesitation fold.

You can't build guards from vibes. The corpus turns "I feel like the agent wastes context" into a number you can act on — and a baseline you can re-measure against.

05 YIELD 2 · PRIORS

Your corrections become standing context

User turns get mined into a character stack — 1,411 signals across 74 projects, regenerated after each ingest — and injected as priors when a new prompt matches an old pattern. Two priors that fired in the session that built this very deck:

correction / over-engineered · injected as prior

"the playbook and deck have too much fluff. consider what are appropriate comms approach"

Effect: this deck shipped without a stat-card scoreboard — the correction resurfaced before the mistake recurred.

preference / i-prefer · injected as prior

"no. i want interactive html demos, not mp4s, for all use cases."

Effect: the series' whole format — interactive HTML decks, not videos — matches a preference stated months earlier in a different project.

The stack also carries a quantitative voice card — median sentence length 12 words, hedge rate 11.9%, cheerleading rate 1.4% — so "write it the way I would" is a measured target, not a vibe. The standing rule: priors, never commands. The live conversation always wins.

06 YIELD 3 · GRADES

838 sessions, graded like anything else you'd improve

Each ingested session gets scored — instruction compliance, thrash ratio, session shape, commits produced. The distribution, straight from the database:

A
361
B
206
C
145
D
113
F
13

What the shapes say

The most common productive shape is research-then-build (382 sessions, 5.4 commits on average). But the data resists a tidy story: extended-discussion sessions average more commits (6.1) — long conversations aren't waste when they're converging on something.

Where the lessons live

The 126 D and F sessions are the valuable ones — high-thrash transcripts are where corrections, tool misuse, and abandoned work concentrate. Grading isn't a report card; it's an index into which transcripts to mine next.

07 THE LOOP

The corpus improves the sessions that feed it

Session
real work, real corrections
Transcript
logged automatically
Mine
one durable tool, extended
Yields
audits · priors · grades
Environment
helpers, hooks, rules (demo 03)
Better session
which feeds the corpus

This isn't hypothetical — the loop produced the thing you're reading. This demo series' roadmap was selected by mining this corpus. Demo 03's numbers were re-derived by a fresh mining run during authoring. The voice stack regenerated the same day. The corpus is upstream of everything on this site.

08 HONEST LIMITS

Transcripts remember everything — that cuts both ways

The scrub gate is mandatory

Sessions contain everything ever typed: client names, private paths, the occasional secret pasted in error. Nothing mined goes public without a sanitization pass. This deck went through one — some of the corpus's best stories stayed behind because of it.

Mined signals are hypotheses

Regex over transcripts is crude. During this series' research, one suggested pattern — a supposedly recurring creative workflow — turned out to be mostly false positives on closer verification. Mined claims get re-derived before they're repeated. Same discipline as any other source.

The stack is frozen in time

A prior distilled from last month can contradict what you want today. The rule baked into the stack's own preamble: if the live conversation contradicts a stored signal, trust the conversation. Preferences evolve; the corpus lags.

09 YOUR VERSION OF THIS

Start with one query, not a platform

If you never touch code

Your correction history is the most valuable thing you produce with an AI. When you correct the same thing twice, save the correction somewhere the next session will see it — that's the whole loop, manually.

If you're technical

Your agent's transcripts are on disk right now. Grep them for your own name-brand waste — repeated commands, re-reads, re-built scripts — before building anything. One counted number beats a platform.

If you build systems

Mine user turns and agent actions separately — corrections become priors, actions become audits. Make the miner durable with an extend-don't-re-fork rule, and gate every public output behind a scrub pass.

github.com/nino-chavez/claude-recall-cli SQLite + FTS5 · /recall commands poe-extract · artifact-miner · session grades
Colophon. Every number re-derived for this page on publication day: corpus size and survival from a fresh artifact-miner run, grades and session shapes queried from the live database, the docstring and priors quoted verbatim (client names and private paths scrubbed). Demo 04 in the ways-of-working series — the guards this corpus produced are demo 03.