The evidence (HUMAN.md)
Every skill stratless installs cites its evidence, and this is where that evidence lives. HUMAN.md is the internal file the sitting reads — the measured record of how you actually work, built from your own history and nothing you declared.
HUMAN.md is the person layer. There is one per assistant — ~/.stratless/HUMAN.claude-code.md, ~/.stratless/HUMAN.codex.md — because each is measured inside one working relationship, and what stratless observed in one tool is never presented to another. It is internal evidence: the dyno sheet of the pair, read by the sitting when stratless tune proposes skills. It is never loaded into your assistant — the tune is what your assistant gains, and every line of the tune cites this file’s measurements.
What’s in it
Not a rules sheet you wrote. A measured brief, in four parts:
- your shorthand, decoded (“In the moment”): the phrases you reach for, and what each one means you want right now, so your assistant recognises the move as you make it — and, when the evidence earns it, the situations to catch that you never announce
- what to offer you before you ask: the things you reliably want set up or handed over, so your assistant offers them unprompted instead of waiting to be told
- what to catch for you: what you reliably challenge or refuse, so it pre-empts those instead of making you catch them yourself
- how to talk to you: the register you work in, matched rather than smoothed over
Some rows carry more than their instruction. When the engine measures a gap — a standard you demonstrably hold that sometimes arrives only as a late correction — the row that holds that standard gains a when-clause telling your assistant to model the move in exactly the moments you miss it. The line deepens while the gap is open, and sheds the clause once the gap closes: the file gets shorter as you get better.
The decode key can carry two lines of another kind, both measured from how your own questions land. Your comprehension signature tells the assistant how explanations must arrive for you — with the honest counts behind it, including how many explanations didn’t land. And where whole zones of your work show you never asking at all, a second line marks them as chosen outsourcing: do the work, skip the teaching. Neither line ever names a topic or grades what you know — every line records how the assistant must adjust, never a state of you — and each stands on its own evidence, thinning away as the failures it marks stop happening.
Every line is an instruction to the AI with the real count behind it. No section is guaranteed: the file carries whatever your history actually supports.
Seeing it
It is a plain text file at ~/.stratless/HUMAN.<assistant>.md — open it in anything. Building it is update’s job; reading it as evidence is the sitting’s. See Commands.
A sample
Every line is observed and carries the count behind it. It opens with your shorthand, then tells your assistant what to do:
## In the moment
- "yes plan" · "can we plan" → wants a plan before code
- a new or multi-step task begins → pause and offer
a concise plan before implementing anything
## What to offer me before I ask
- offer to enter a planning step before touching any
implementation — and when a new or multi-step task begins,
pause and offer a concise plan before implementing
anything. (265× · slip 28×)
## What to catch for me
- catch anything left unverified, uncommitted, or
unconfirmed as done and check or lock it in before
continuing:
- remote or deployed state unverified (192×)
- uncommitted work needs a commit first (155×)
- completion claim needs double-check (126×)
## How to talk to me
- treat a bare "yes, run X" as full authorization; don't ask
for restatement — and when the coding is finished and a run
or test is next, check the scope with me before
proceeding. (205×, fading · slip 16×)
rising and fading are the trend: whether you are doing that thing more than you used to, or less. A third word, met, is the best outcome a row can have: you stopped asking because the assistant already does it. It is measured from both sides of the conversation — your asking fell, the assistant’s doing held, and you kept accepting the work — inside the one assistant this file describes, which is why it prints bare: the file itself names who earned it. On the offer and catch rows a trend word is an instruction, so those rows only carry one the engine has confirmed from both sides; a bare count there means the trend is unproven, not absent. A row carrying a when-clause adds a second count to its receipt — (265× · slip 28×) — the slip count is the times that standard arrived late, and any trend word after it is on the gap itself. Rows that read almost alike fold into one entry: the shared instruction as the main point, then one sub-point per situation, each carrying its own count — never added together, because no single pattern earned the sum. A real, unedited skill derived from this evidence lives on the home page.
It sharpens every time it runs.