agent-instructions
Skill0 starsChanged 53 days agoMITView on GitHub
Write and maintain the repository instruction file an AI coding agent loads every session (CLAUDE.md, AGENTS.md or equivalent), and decide what belongs there versus in an on-demand skill. Use when setting one up, when an agent keeps repeating a mistake the file was supposed to prevent, or when the file has grown past the point of being read.
- Reads credentials
9 other projects use a version of this.
Adopted by
Most recently taken up by
- devantler-tech/agent-skillstheir own version, first seen Oct 31, 2026
- The-Vibe-Company/companion-skillstheir own version, first seen Oct 20, 2026
- LuisUrrutia/skillstheir own version, first seen Oct 18, 2026
- nimadorostkar/Claude-Skills-collectiontheir own version, first seen Oct 13, 2026
- krema/agent-skillstheir own version, first seen Oct 13, 2026
- EpicenterHQ/epicentertheir own version, first seen Oct 8, 2026
Other versions9 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 9
- EpicenterHQ/epicenter★ 4.8ksame name
- murphytrueman/design-system-ops★ 197same name
- nimadorostkar/Claude-Skills-collection★ 33same name
- devantler-tech/agent-skills★ 3same name
- LuisUrrutia/skills★ 2same name
- NecturaLabs/AgentSkills★ 1same name
- The-Vibe-Company/companion-skills★ 1same name
- juancamiloqhz/skills★ 0same name
- krema/agent-skills★ 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.
In this repository17 other files it gives its agents.
- access-control-proofSkill
- contract-changeSkill
- data-change-scriptSkill
- deploy-safetySkill
- design-critiqueSkill
- evidence-layersSkill
- interface-craftSkill
- issue-ledgerSkill
- mobile-field-readinessSkill
- offline-first-syncSkill
- parallel-worktreesSkill
- requirements-elicitationSkill
- root-cause-investigationSkill
- solution-architectureSkill
- ux-state-coverageSkill
- versioned-publishingSkill
- skill-nameSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 6 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 9 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 55
When it grows, the answer is not smaller fonts — it is moving material out:
- Distinctive: line 73
Put a date on anything time-sensitive, and write dates absolutely.
- Distinctive: line 75
When a rule changes, edit the file in the same commit as the change.
- Distinctive: line 77
Delete rules whose hazard no longer exists.
- Distinctive: line 88
Never put credentials, tokens or customer data in it.
- Distinctive: line 119
When an agent makes the same mistake twice, that is not an agent problem.
“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Repository instructions for agents
The instruction file is loaded into every session, whether or not it is relevant. That makes it the most expensive text in the repository, and the rule that follows from it: every line must change what an agent does.
1. Write the hazards, not the tour
An agent can read the code. It cannot know what happened the last time someone ran the obvious command.
| Belongs in the file | Does not |
"Never run x directly — it bypasses the deploy lock" | "The frontend is in frontend/" |
| "Scripts default to staging; production must be named" | A list of the main components |
| "This directive is inert on this API; use the other one" | "We use TypeScript and React" |
"Cross-module type imports must use import type or the app serves blank" | Coding style a linter enforces |
The test for a line: would a competent engineer get this wrong on their first day, in a way the code does not warn them about? If not, cut it. Architecture descriptions, folder tours and stack lists are re-derivable in seconds and consume the budget that the hazards need.
2. Every prohibition carries its consequence
"Never run npm run build directly" gets optimised away by a reader who has a
good reason and no information. "Never run npm run build directly — it bakes
.env.local localhost URLs into the production bundle, silently" does not,
because now the reader can see what they would be trading.
The consequence is also what lets an agent reason about the edge case you did not anticipate. A rule with no reason is only ever followed literally.
3. State defaults out loud, especially inverted ones
Anything where the safe option is not what happens by default deserves its own line, in plain language, including which way round it is:
deploy.shdefaults to production.scripts/*default to staging. They are opposite, and the mismatch has shipped the wrong build.
A rule that contradicts intuition needs restating more than a rule that agrees with it.
4. Keep it short enough to be read whole
A long file is skimmed, and skimming defeats the purpose. Aim for something a person would read in full before starting work.
When it grows, the answer is not smaller fonts — it is moving material out:
- Standing facts and hazards stay in the instruction file. Always loaded.
- Task procedures move to a skill, loaded only when that task comes up. "How to review content", "how to author a lesson", "how to cut a release" are skills. "Never deploy from a stale worktree" is an instruction.
- Reference material moves to a doc, with a one-line pointer from the instruction file saying when to read it.
The pointer matters: read Docs/branching.md before you deploy or cut a branch
is a line that earns its place, because it fires at the right moment.
5. Stale instructions are worse than none
An instruction file is trusted. When it is wrong, it produces confident wrong work, and the error is hard to find because the agent is doing exactly what it was told.
- Put a date on anything time-sensitive, and write dates absolutely. "Since 2026-09-12, production deploys are manual" stays true; "recently" does not.
- When a rule changes, edit the file in the same commit as the change. A follow-up commit does not happen.
- Delete rules whose hazard no longer exists. A guard now enforced in CI does not need a paragraph; one line saying the guard exists is enough.
- Periodically check each claim against the repo. Named scripts, flags and paths are the things that rot first.
6. Where the file lives, and how many
- One per repository at the root, named whatever the tools in use expect. If several agents are used, keep one canonical file and have the others point to it or mirror it — two drifting copies is worse than one imperfect file.
- Subdirectory files for genuinely separate concerns in a monorepo, kept short.
- Never put credentials, tokens or customer data in it. It is committed, it is read by tooling, and it is quoted back in transcripts. Say "ask the owner" and name what is needed.
7. Descriptions are triggers, not summaries
For any skill you factor out, the description is the only thing read when deciding whether to load it. Write the situations, in the words that will appear in a request:
Bad: Documentation for our content review process.
Good: Audit course content for a year level or path, produce ranked findings,
and drive fixes through dry-run scripts. Use for any request to review,
audit, check or find gaps in content, decks, questions or exams.Name the verbs and the nouns a person would actually use. A skill that never triggers is worth nothing however good its body is.
8. Test it by starting fresh
The only real check. Open a new session with no context and ask for something the file is supposed to govern.
- Did it take the safe path without being told?
- Did it look for the thing the file says exists?
- Did it repeat a mistake the file was written to prevent? Then the line is missing, buried, or too polite. Sharpen it and put it higher.
When an agent makes the same mistake twice, that is not an agent problem. It is a missing or weak line, and the fix belongs in the file — that is how the file grows honestly.
9. The instruction file is a record of scar tissue
Its best form is a list of things that have actually gone wrong, each with what to do instead. It reads oddly to a newcomer — a strange mix of the specific and the severe — and that is correct. It is not documentation. It is the set of things that cost someone a day.
Checklist
- Every line changes what an agent does; tours and stack lists removed
- Every prohibition states its consequence
- Inverted or surprising defaults stated explicitly
- Short enough to read whole; procedures moved to skills, reference to docs
- Pointers to docs say when to read them
- Dates absolute; rules updated in the same commit as the change
- Obsolete rules deleted; named paths and flags verified against the repo
- One canonical file; no credentials
- Skill descriptions written as triggers, in the requester's words
- Tested from a fresh session; repeated mistakes turned into new lines
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.

