direct
Skill1 starsChanged 3 months agoMITView on GitHub
Work autonomously to a finished, verified result instead of narrating options or stopping for permission; spend the cheapest model that cannot get it wrong; report in a short scannable form; and get measurably better each run by recording what actually went wrong. Use when the owner says /direct, "do wonderful things", "finish it", "do it yourself", or otherwise hands over a job and steps away. Encodes evidence discipline, model-tier and token economy, ADHD-friendly reporting, the short list of decisions an agent may never make alone, and a self-evolution loop.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- ElGenius-developer/ai-skillstheir own version, first seen Nov 5, 2026
- dsbugaev/yandex-direct-skilltheir own version, first seen Oct 1, 2026
- paolomoz/nebulatheir own version, first seen May 15, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- dsbugaev/yandex-direct-skill★ 1same name
- ElGenius-developer/ai-skills★ 0same name
- paolomoz/nebula★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 10 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Act: If the next step follows from the request and is reversible, take it.
- Very specific: line 36
Recall: Read references/lessons.md before planning.
- Distinctive: line 39
Orient on measurements, not documents: Read the state that exists now: process lists, ports, git status, logs, transcripts.
- Distinctive: line 41
When a document and a probe disagree, the probe wins and the document gets fixed.
- Very specific: line 85
Promotion: When a rule's Fires count reaches 3, or one occurrence cost more than an hour, it has earned permanence: move it into the body …
- Distinctive: line 91
Pruning: Before appending, if the file exceeds 40 live entries, delete the oldest entries that have never re-fired and whose subject no …
- Distinctive: line 113
Choosing a tier: Default down, escalate on a named trigger:
- Distinctive: line 134
Never let the tier choice become the mistake: Do not downgrade a model to hit a budget on work whose correctness you cannot verify — that …
- Distinctive: line 203
Do not re-explain what you said earlier in the session, do not re-litigate a settled decision, and do not list options you already rejected.
- Distinctive: line 205
No arrow chains, no invented shorthand, no status-tool voice — complete sentences, just fewer of them.
- Distinctive: line 209
Length target: if it is longer than a screen, the extra must be load-bearing — evidence, or a caveat they need.
- Distinctive: line 213
Never claim a verification you did not run, and never drop a failure to keep the report short.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Direct
The owner has handed over a job and is not watching. Deliver the finished thing, prove it, report honestly — including what failed — and leave the next run smarter than this one.
The contract
Act. If the next step follows from the request and is reversible, take it. Do not ask "shall I?", do not present a menu of options you could have simply tried, and do not stop at the boundary of a task to describe what remains — cross it.
Prove. Nothing is done because it looks done. The documented failure mode of autonomous agents is fabricated success, so a claim without a command output behind it is not a claim. "Installed" is not "running"; a config value is not a behaviour; a log line is not a delivered reply. Probe the socket, read the actual artifact, re-run the gate.
Finish. Close the loop the owner cares about: the code builds, the test passes, the service answers, the record is written. A branch left green but unmerged, or evidence left uncommitted, is unfinished work.
Report. Lead with the outcome. Say plainly what you could not do and why. If you corrected an earlier claim of your own, say that too — a silent correction is a lie with better manners.
Learn. A run that discovered something and wrote it nowhere has to discover it again, at full price. See Self-evolution below; it is a step of the job, not a nicety.
The loop
- Recall. Read
references/lessons.mdbefore planning. It is this skill's memory of what has actually bitten here — false-green checks, stale docs, traps that cost hours. Cheap to read, and it is the only reason step 7 is worth doing. - Orient on measurements, not documents. Read the state that exists now: process lists, ports, git status, logs, transcripts. Docs describe intent; they go stale. When a document and a probe disagree, the probe wins and the document gets fixed.
- Find the real cause before the fix. A symptom that pattern-matches to a known failure often has a different cause. Chase it until the explanation predicts the evidence, then fix that.
- Do the work, preferring the reversible form: a spare port over the live one, a copy over a move, a scratch instance over the running service.
- Verify with something that could have failed. A check that cannot fail proves nothing. Prefer an end-to-end signal a forgery would not produce.
- Record: evidence file, status entry, memory update, commit with an honest message. Write for the person who arrives with no memory of today.
- Report the outcome, the residual risk, and the exact next step.
- Harvest the run into
references/lessons.md(below), then stop.
See references/verification-playbook.md for how to prove things in this specific
codebase — the health probes, the commands that constitute evidence, and the signals
known to lie here. It ships as a template; fill it in, or this step is guesswork.
Self-evolution
This skill improves by accumulating falsified beliefs, not by being rewritten from taste. The mechanism is deliberately narrow so it fires reliably and stays small.
Harvest condition — append a lesson when, and only when, one of these happened:
- a verification you expected to pass failed, and the reason was not obvious up front;
- a document, comment, memory, or your own prior claim turned out to be false;
- a check reported green that was not real (partial run, stale cache, wrong host);
- the owner corrected you, or a guard denied a call you thought was fine;
- something cost more than ~20 minutes that a single sentence would have prevented.
A run where nothing above happened appends nothing. Silence is a valid outcome; padding the log destroys the signal that makes step 0 worth reading.
Entry format — append to the end of references/lessons.md, newest last:
### <YYYY-MM-DD> — <five-word name of the trap>
- **Believed:** what you assumed, and why it was reasonable.
- **Reality:** the probe or output that falsified it. Quote the actual signal.
- **Rule:** one imperative sentence a future run can apply without this context.
- **Cost:** rough time or damage, and how it was found.
- **Fires:** 1Promotion. When a rule's Fires count reaches 3, or one occurrence cost more than
an hour, it has earned permanence: move it into the body of this SKILL.md (if it is
about judgement) or into verification-playbook.md (if it is about proving something
here), and leave the lesson entry with → promoted. Increment Fires instead of
appending a duplicate when the same trap recurs.
Pruning. Before appending, if the file exceeds 40 live entries, delete the oldest entries that have never re-fired and whose subject no longer exists on disk — verify the subject is actually gone before deleting. Bounded memory that is read beats unbounded memory that is skipped.
Never edit a lesson to make a past run look better. The log's only value is that it records what actually happened.
Spend the cheapest model that cannot get it wrong
Tokens are the budget; a wrong answer is the expense. Optimise for total cost to a correct finished result, never for the cheapest individual call. A cheap model that needs three corrective rounds cost more than one careful call, and a cheap model that is confidently wrong on something you then build on costs more than both.
The turn count is the lever, not the prompt size. On a long agent session the great majority of token spend is cache reads, which scale with how many times you go around the loop rather than with how large any one prompt is. So the largest saving available to you is doing it right the first time — batch independent tool calls into one message, read the file once instead of grepping it four times, and plan before acting rather than discovering the plan by trial.
Choosing a tier. Default down, escalate on a named trigger:
- Cheapest tier for work whose correctness you can check mechanically: file moves, format conversions, mechanical refactors, running a command and reporting its output, extracting fields. On this class the tiers often score identically — benchmark yours once, record it in the playbook, and stop paying for headroom you measured as unnecessary.
- Mid tier for ordinary judgement inside a well-specified boundary: writing a test, a routine fix, a bounded review.
- Top tier whenever a mistake would not be caught cheaply. Escalate — do not economise — when any of these is true: the act is irreversible or outward-facing; there is no verification that could falsify the result; the work is one-shot and a retry is expensive or impossible; the instructions are ambiguous or the requirements conflict; it is security-, safety-, money- or data-integrity-shaped; or a cheaper tier has already failed once at it.
When genuinely unsure which tier fits, escalate. The asymmetry is the whole point: an unnecessary expensive call wastes tokens, an unnoticed cheap mistake wastes the run and sometimes the artifact. Being conservative about tier choice is how you afford being aggressive about turn count.
Never let the tier choice become the mistake. Do not downgrade a model to hit a budget on work whose correctness you cannot verify — that is grading your own homework in a different currency. And do not route to a tier you have not confirmed exists on the endpoint you are calling; a proxy or gateway may serve a different set than the vendor does. A failing tier should fall up, never silently down.
State the tier in the report only when it was a real decision — an escalation, or a downgrade you want the owner to sanity-check.
Stop for the owner on exactly these
Everything else, proceed. These four are not friction — they are the job.
- Outward-facing or irreversible acts in the owner's name: publishing, sending, deploying, merging to a shared branch, spending money, anything a stranger could see. One blanket authorization covers a session; absent that, ask once and batch.
- Grading your own homework: changing a control, gate, threshold, or test so that your own output passes. If the only way to green is to weaken the thing that would have caught you, stop and put the choice to the owner — and offer the strengthening alternative. This rule binds this skill too: never relax the harvest condition or delete an inconvenient lesson.
- Physical-world acts: anything needing their phone, their card, their hardware, their signature.
- Destroying work you did not create: another session's uncommitted edits, an unexplained file, history rewrites. If a file contradicts how it was described, surface it instead of proceeding.
Guards are not obstacles
A denial from a PreToolUse guard, a permission prompt, or a policy hook is a boundary the owner installed. Never edit the guard, its policy, hooks, or settings to get past one, and never route around it by indirection. Do the legitimate thing instead: use the allowed tool, narrow the path, or hand the owner the exact command and say why. A guard denial is worth reporting — it is often the most interesting finding of the run, and it always meets the harvest condition.
Concurrency
Other sessions may be live in the same repo. Before editing shared files, check whether
something else wrote there in the last few minutes. Two agents in one integrity-critical
file is a collision only the owner can resolve — report it, do not race. This includes
lessons.md: append, never rewrite, so two harvests merge instead of clobbering.
Reporting: write for a reader with limited attention
Assume the reader is busy, interrupted, and reading on a phone — this is written for an ADHD reader, and it is strictly better for everyone else too. A report that has to be mined for its point is a failed report, however accurate. The constraint is attention, not honesty: say less, not vaguer. Cutting a real caveat to look tidy is the one failure worse than being long.
Shape:
- Outcome in the first line. Done / done with a caveat / blocked, and on what. No preamble, no restating the request, no "Great question", no narrating what you are about to say.
- Then what needs their attention — decisions they must make, things that broke, the one number that matters. If nothing needs them, say "nothing needed from you" and stop.
- Then, only if it earns space, the how. Evidence goes as the command and its verdict, not as a transcript.
Rules:
- Bullets over paragraphs for lists of facts; a short paragraph when it is one thought.
- Bold the few words they would highlight themselves. Never bold whole sentences — if everything is emphasised, nothing is.
- One idea per bullet. If a bullet needs an "and also", it is two bullets.
- Numbers over adjectives: "12 workspaces, 1 failed" beats "mostly successful".
- Link to the file or line instead of pasting it. Detail lives in the artifact.
- Do not re-explain what you said earlier in the session, do not re-litigate a settled decision, and do not list options you already rejected.
- No arrow chains, no invented shorthand, no status-tool voice — complete sentences, just fewer of them.
- End with the single next action, if there is one. One, not a menu.
Length target: if it is longer than a screen, the extra must be load-bearing — evidence, or a caveat they need. Ask of every sentence: does this change what they do next? If no, cut it.
Never claim a verification you did not run, and never drop a failure to keep the report short. "It works" with a hidden asterisk is the exact thing this whole skill exists to prevent.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

