Paperthin is a collection of low-level design patterns that coding agents can apply as repeatable checks and actions during software work. It is for people using agents such as Claude Code, Codex, Cursor, or other supported tools, and its catalogue entries package the patterns as skills, an instruction, and a plugin.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add LilMGenius/paperthin --skill feynmangit clone --depth 1 https://github.com/LilMGenius/paperthinWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/lilmgenius/paperthin/feynman)<a href="https://agentmods.dev/skills/lilmgenius/paperthin/feynman"><img src="https://agentmods.dev/badge/skills/lilmgenius/paperthin/feynman/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/lilmgenius/paperthin/feynman"><img src="https://agentmods.dev/badge/skills/lilmgenius/paperthin/feynman.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00081 | $0.00896 |
| Opus 5.5 | $0.00032 | $0.00358 |
| Sonnet 5.5 | $0.00016 | $0.00179 |
| Haiku 4.5 | $0.00008 | $0.00090 |
Grade A, and why
feynman scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
Copies of this mod
1 near-identical copy found in the catalogue:
- feynman — 100% identical
How it starts
The opening of the file, as written. The whole thing — 38 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Press a decision you just made until you can explain it, or the gap where you can't is named.
Goal
The moment after a choice is when understanding is cheapest to fake: you can restate an option fluently without having earned the reasons behind it, and by the time that gap matters the decision is load-bearing elsewhere. The Feynman test catches it — if you can't explain a thing plainly, you don't yet understand it. So no one hands you the rationale; a fresh critic that never made the decision presses for what you can't actually explain, and a shallow answer draws a narrower question instead of a pass. The result is a decision you can now explain under real pressure, or an honest flag that you can't yet.
Workflow
- Trigger: fire right after a decision is made — typically just after options were laid out with no argument for any, and one was picked.
- Restate, don't justify: state the decision neutrally. Do not supply the reasoning behind it, and do not let the user borrow reasoning that was never actually given.
- Isolate the critic: hand the decision — not any reasoning — to a fresh, context-free sub-session that never watched the decision get made. Have it press for gaps: what a skeptical outsider would ask, what is assumed but unstated, what would have to be true for the choice to hold.
- Return one gap at a time: give the user the sharpest unresolved gap and ask them to explain it in their own words. Never batch gaps into a checklist.
- Judge the explanation: if the answer actually resolves the gap, close it and move on. If it restates the question, deflects, or leans on authority ("the agent suggested it") instead of reasoning, do not accept it.
- Narrow, don't repeat: on a shallow answer, don't ask the same question again — narrow to the exact part that stayed vague and ask that. Keep narrowing each round; never widen back to a generic "are you sure?"
- Stop condition: after repeated rounds, either every gap is genuinely explained, or one isn't. Both are valid endings.
- On an unexplained gap: don't force a resolution or let the user paper over it. Name the unresolved point specifically and flag the decision for re-review — not a verdict that it was wrong, only that it isn't yet earned.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 38 lines · 81 tokens per session scan A 618a6ccc4bfa
feynman is a skill published in the GitHub repository LilMGenius/paperthin (1,334 stars, last pushed today), licensed MIT. It adds 81 tokens to every session and 896 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
mm-setup
A setup guide that personalizes a shared mm system for one user. It asks for details such as your name, work area, tools, language, and Obsidian vault location, then saves them in private configuration files.
mm-update
A guided updater for the mm system, which is installed by copying a Git repository rather than through a package manager. It downloads the latest version, registers its skills again, and tells you to restart Claude Code.
mm
A dispatcher that provides short /mm commands for project setup, session recovery, project overviews, and workflow checks. It maps these aliases to longer system commands.
mm-instructions
A generator for ready-to-paste instructions for a Claude.ai project. It reads project details and fills a template with the project's name, technology, planning information, and current work context.
mm-projects
A read-only overview of all registered projects stored in Obsidian notes. It shows each project's status, type, current GSD phase, recent activity, and number of open questions.
goal-loop
Drive a verifiable goal to done with factory-built agents, visible and held-out evidence, and a cross-provider judge.