On agent | Claude Code, Codex, OpenCode, Antigravity, Copilot, Cursor, Grok-Build, Pi, Hermes, OpenClaw, etc.
Overview
On agent | Claude Code, Codex, OpenCode, Antigravity, Copilot, Cursor, Grok-Build, Pi, Hermes, OpenClaw, etc.
README
Quickstart (15 seconds)
- Install for every agent you use:
npx skills@latest add LilMGenius/paperthin --global --agent '*' - Run it from an elevated/admin shell if your OS asks so the skills are symlinked (they auto-update), not copied.
- Stay current — run
/re0-upgradewhenever you want to update; it also wires a quiet session-start notice for when new skills ship. - Use them — call any skill by name, like
/re0; model-invoked ones also fire on their own.
Not sure? Paste that command into whatever agent you’re using and just say set this up for me, it’ll do the rest.
The Map
How many artifacts, and across how much time?
The Index
depth/
| Skill | What it does | Scope | Invoker | Read-only |
|---|---|---|---|---|
| ♻️ re0 | Rewrite a drifted artifact into a clean v0, not another patch | one artifact | model | |
| 🧭 readchk | Check the model’s read of the request; surface only a real surviving fork | one instruction | model | ✔ |
| 🏹 aim | Read handed-over data and propose the intent to confirm, instead of asking for it | one data drop | model | ✔ |
| 📏 modelchk | Size the cheapest sufficient tier and reasoning effort | one task | model | ✔ |
| 😈 hate | Refuse to be nice: the one objection that could kill it, plus the cheapest test | one plan | user | |
| 🧠 macrothink | Strip the bait, fan out fresh reads, report divergence first | one direction | user | ✔ |
| 🧐 feynman | Press a just-made decision until you can explain it, or the gap is flagged | one decision | user | ✔ |
| 🛣️ autobahn | Carve unsafe scope out up front, run the safe rest at full strength, log the descope | one task | model | |
| 🔃 reorder | Realign a drifted listing into a logical order under one stated principle; move items only, reword nothing | one listing | user | |
| 🧰 detool | Replace incidental stack nouns with the mechanism they mean | one durable artifact | model | |
| ✂️ dedash | Remove em-dashes and look-alikes, picking the punctuation each spot needs | your prose | user | |
| 🗜️ debloat | Compress a bloated artifact to its load-bearing density; cut words, never a rule | one artifact | user | |
| 🚿 shower | Cold-read it with fresh, zero-context eyes: does it stand alone? | one artifact | model | ✔ |
| 🔬 factchk | Verify what’s asserted against sources both ways: could the absurd be real, the obvious false? | one claim | model | |
| 🧪 mandela | Audit for leakage: does outside ground-truth actually enter? | one eval | model | ✔ |
| 🥄 sip | After any change, taste it with the repo’s own clean-and-true checks | your output | model | |
| 🧾 re0-git | Rewrite a finished commit’s message so git log alone hands off |
one commit | user | |
| 🚀 re0-release | Run the shipping and releasing checklist, then tag and publish once confirmed | one release | user | |
| 🤝 re0-merge | Review and land a contribution: gate it, keep the author’s credit, approve before closing, explain any change | one contribution | user |
breadth/
| Skill | What it does | Scope | Invoker | Read-only |
|---|---|---|---|---|
| 🧲 ssotize | Audit scatter, then consolidate to one home and point the rest at it | one fact, many places | model | |
| 🧰 re0-upgrade | Upgrade to the full current catalog in one command: retire renamed, add new, all confirmed first | your skill install | user |
coil/
| Skill | What it does | Scope | Invoker | Read-only |
|---|---|---|---|---|
| 🗂️ re0-plan | Open a new iteration folder with DESIGN/WORKFLOW/EVIDENCE before re0-loop’s first turn | one new cycle | user | |
| 🌀 re0-loop | Run the build → QA → re0-memo → re0-work loop so learning compounds, not code | the whole loop | model | |
| 🧭 re0-memo | Pull the lessons and anti-patterns from a finished or failed cycle | one finished cycle | model | |
| 🧱 re0-work | Start over from v0, keeping only the lessons that earned reuse | one restart | model | |
| 🗺️ catchup | Rebuild lost context from live state: what needs them, what changed, what new words mean | one re-entry | model | ✔ |
| 🎯 nba | Read the live cycle state and return the single next best action, not a menu | the live cycle | model | ✔ |
mesh/
| Skill | What it does | Scope | Invoker | Read-only |
|---|---|---|---|---|
| 🔺 prism | Split one artifact across independent lenses; return where they clash and the question that resolves it | one artifact | user | ✔ |
More on invocation: docs/invocation.md
The Problem
Most agent skills are slop.
Point an agent at a goal and it adds — more files, more options, more “helpful” boilerplate. Adding looks like progress, and nothing ever makes it go back and delete.
[!WARNING] Repeat that across a project and you get the familiar AI-generated toolkit: near-duplicate skills, dead settings, a README that says the same thing three times. Plausible, busy, and quietly unmaintainable.
These skills bet the other way — every one of them removes:
re0rewrites a draft into a clean v0 instead of patching it,readchkrestates the request and asks only when a real fork survives,aimreads a handed-over data drop and proposes the intent to confirm, instead of asking for it,modelchksizes the cheapest sufficient capability tier and reasoning effort before the work starts,macrothinkfans out fresh reads and reports divergence before convergence reads as proof,feynmanpresses a just-made decision until you can explain it to a skeptic, or names the gap you can’t,prismsplits one artifact across independent lenses and returns where they clash, never their average,autobahncarves unsafe scope out up front, so the safe remainder runs at full speed,detoolstrips incidental stack nouns from portable content, leaving the mechanism they meant,dedashremoves even the em-dash tell and its look-alikes, one judged occurrence at a time,debloatcompresses a bloated artifact to its load-bearing density, cutting words but never a rule,showercuts whatever a stranger can’t follow,ssotizeaudits scattered facts, asks approval, then folds them into one home,reorderrealigns a drifted listing under one principle, moving items and rewording nothing,sipruns all of it on your own output, automatically,re0-memo/re0-work/re0-looppreserve the lesson, let the wrong build die, and keep the cycle running,catchup/nbareload the human’s map from live state, then return the one next move.
[!TIP] The hard part isn’t adding features — it’s restraint. A pass that finds nothing to improve changes nothing. That restraint is the product.
The Fixes
Each is a well-worn principle, made automatic.
#1 — Artifacts rot
Edit a doc one piece at a time across a session and it bloats: stale deltas, duplicated noise, changelog scars. Patching on top just preserves the rot.
The fix → re0: rewrite the artifact as a clean v0, as if it were the first version.
Prior art: the Boy Scout Rule — “leave it cleaner than you found it” (Robert C. Martin, Clean Code, 2008).
re0goes further: rewrite, don’t just tidy.
#2 — You can build the wrong request perfectly
A long or bundled instruction has enough surface area for a subtle misread: the agent starts work, stays coherent, and only later proves it optimized the wrong target.
The fix → readchk: restate the instruction internally, cross-check it against available context, proceed silently when the read is resolved, and ask only when one real fork survives.
#3 — Sizing the run becomes guesswork
Some work is run with too much horsepower because “stronger” feels safer; some is run too cheaply until the failure costs more than the saved tokens. The same guessing hits the reasoning-effort dial: max it on everything and burn tokens, or skim a task that needed real deliberation. All of it is guessing wearing operational clothing.
The fix → modelchk: from one risk read, recommend two coordinates — the cheapest sufficient capability tier (fast, standard, frontier) and the reasoning effort within it (glance to exhaustive), each on a neutral scale. It advises; it never routes, pins, or names a concrete model or level.
#4 — You can’t kill your own plan
You built it, so you defend it. The questions that would break it are exactly the ones you won’t ask.
The fix → hate: refuse to be nice to the plan — return the one load-bearing objection that could kill it and the cheapest experiment that would prove it matters. User-invoked: you point it at a plan deliberately.
Prior art: egoless programming (Weinberg, 1971 — the same root
showercites), hostile review, and fail-fast.
#5 — One framing becomes the whole world
Examples, names, and first plausible answers can trap a session before the plan even looks risky. A single agent may keep improving the inherited frame instead of noticing a different read.
The fix → macrothink: user-invoke a read-only fan-out: strip the session’s bait, ask 2 to 5 fresh reads for the underlying problem, and report divergence first. Same-model convergence is reassurance only, never proof.
#6 — Risk-adjacent work comes back hedged
Point an agent at a task that brushes guardrails — scraping, licensing, privacy, security — and you get the worst of both worlds: the risky sliver triggers refusals and retries, while the safe 90% comes back hedged, diluted, or quietly missing.
The fix → autobahn: carve guardrail-adjacent items out of scope before execution, each with a safe alternative and an archive entry; run the remaining scope at full strength in a fresh subagent that only ever sees the carved prompt, not the risky input; ship a descope ledger so every exclusion is a visible decision, not a silent gap. It removes the ask rather than slipping it past. The autobahn has no speed limit because entry discipline is strict.
Prior art, from this very summer: the US suspended Fable 5 and Mythos 5 over one jailbroken safeguard (Anthropic, 2026), and OpenAI shipped GPT-5.6 safety-stack-first to trusted partners (OpenAI, 2026) — at the frontier, the fast lane stays open only as far as entry discipline holds.
#7 — Portable docs smuggle their toolchain
A durable artifact says it should work across agents, hosts, and time, but its prose quietly depends on one vendor, model, CLI, path, quota, or UI. Portability dies by nouns.
The fix → detool: classify the text by role first, then replace incidental stack coupling in portable content with the mechanism it meant, while leaving provenance, runbooks, and tool-subject claims concrete.
#8 — You go blind to your own work
After a long session you’re the one person who can’t read your own work straight: you know too much, so your brain quietly fills every gap and the holes turn invisible.
The fix → shower: hand a stranger who never saw your session only the artifact, and ask “does this actually make sense?”
Prior art: egoless programming — you can’t review your own work objectively; someone else must (Gerald Weinberg, 1971). Here, that someone is a context-free sub-session.
#9 — The same fact ends up everywhere
A timeout value, a decision, a status — copied into a README, a doc, a ticket, and a Slack thread. The copies drift, and now no one knows which is true.
The fix → ssotize: find the scatter, name the canonical source, ask approval for the mutation plan, then consolidate and point the rest at it.
Prior art: DRY — one fact, one authoritative home (Hunt & Thomas, The Pragmatic Programmer, 1999).
#10 — A list’s order stops meaning anything
Items get appended where they were typed, not where they belong. Kin drift apart, the sequence follows no axis a reader can feel, and an order that was information now says nothing.
The fix → reorder: realign the listing under one nameable principle, moving items only — nothing reworded, added, or removed.
#11 — Your gut isn’t a source
“Plausible,” “absurd,” “novel” — the least reliable line in any artifact. Human priors fail both ways: they exclude the real (desert frogs exist) and normalize the impossible (weightless crates).
The fix → factchk: verify any reality-grounded claim against external sources, in both directions, before it ships — and flag, don’t guess, when you can’t reach one.
Prior art: WEIRD bias (Henrich, Heine & Norenzayan, 2010) and the naive-physics / impetus error (McCloskey, Caramazza & Green, 1980) — intuition misjudges reality in both directions.
#12 — The eval confirms itself
A model, a scorer, and a designer can all agree a result is real while no outside ground-truth ever entered the loop — a whole room confidently remembering something that never independently happened.
The fix → mandela: audit any eval, metric, or experiment against an 8-pattern leakage taxonomy — does external ground-truth enter independently, or is the verifier the designer?
Prior art: Goodhart’s law, data leakage (Kaufman et al., 2012), and circular analysis — “double dipping” (Kriegeskorte et al., 2009).
#13 — “Remember to verify” never fires
A guideline buried in docs won’t trigger in a brand-new session — exactly when author bias is highest.
The fix → sip: the moment you finish something, it runs the clean checks (shower, ssotize, re0) and, when there’s a claim or an eval, the true ones (factchk, mandela) on your output, automatically.
Prior art: dogfooding — eat your own dog food (Microsoft, 1988). Taste your own cooking before you serve it.
#14 — Your session doesn’t travel; the git log does
Your session is stuck where it ran — this agent, this account, this machine. A teammate or another agent can’t load the context your work happened in.
The fix → re0-git: clean a finished commit’s message so git log — the one thing every environment shares — carries the handoff, and anyone picks up from the log alone.
#15 — Long cycles lose the build, and the builder
Long agentic cycles produce many working parts — panels, routes, tests, screenshots — that prove activity more than value, and the sunk cost tempts you to carry the architecture forward. The same cycles coin vocabulary, rename files, and make calls faster than the human owner can follow, so even a correct next action arrives unreadable: phrased in words invented while they were away.
The fix → re0-memo + re0-work + re0-loop + catchup + nba: extract the lesson, anti-pattern, and next gate; restart from a clean v0 when the foundation is wrong; run the build → QA → re0-memo → re0-work loop. When the owner’s mental model has gone stale, catchup rebuilds it first from live state, not conversation memory: what needs them, what changed, what new words mean. Only then does nba read the live cycle and return the single next best action. Keep only what earned reuse.
Credits
- Built on mattpocock/skills (MIT) — its architecture and philosophy.
- Not a fork — these are LilMGenius’s own, non-overlapping workflows.
- Vendored verbatim — a few shared building blocks, kept as-is with per-source attribution in NOTICE.
- Authoring guide — conventions and philosophy live in CLAUDE.md.
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add lilmgenius/paperthin