agents-md
Skill5 starsChanged 54 days agoMITView on GitHub
AGENTS.md: create, audit, or maintain the file. Use when the user mentions AGENTS.md, project instructions, instruction budget, or progressive disclosure of agent instructions.
36 other projects use a version of this.
Adopted by
Most recently taken up by
- caidanw/skillstheir own version, first seen Nov 8, 2026
- Integralist/agent-skillstheir own version, first seen Nov 6, 2026
- d-o-hub/github-template-ai-agentstheir own version, first seen Nov 3, 2026
- Rvey/agent-engineering-kittheir own version, first seen Nov 2, 2026
- Devolutions/IronRDPtheir own version, first seen Nov 1, 2026
- ytil/skillstheir own version, first seen Nov 1, 2026
Used with
Projects with it also use jira, how and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
MicrosoftSkilljira
Jira issue workflows for search, issue updates, transitions, comments, field discovery, and interactive credential setup via the Jira REST API. Use when you need to configure Jira access, search with JQL, inspect an issue, create or update work items, move an issue between statuses, post comments, or discover required fields for issue creation.
Also in 3 projects that use this
jaydubya818Skillhow
Use for runtime, ownership, layering, code-walkthrough, and placement questions.
Also in 3 projects that use this
asterkinSkilladr
Create Architecture Decision Records (ADRs) following project standards. Guides template usage, process, and best practices for documenting architecturally significant decisions.
Also in 3 projects that use this
jaydubya818Skillwhy
Use when design rationale must be recovered from source history and available records.
Also in 3 projects that use this
photon-groveSkillunslop
Detects and rewrites generic, overly polished, or AI-sounding prose while preserving meaning. Use when the user asks to "unslop", humanize, de-AI, tighten, or review whether writing sounds generated.
Also in 4 projects that use this
AWSSkillwait-what
Stop. That last message did not land: re-pitch it.
Also in 3 projects that use this
Other versions36 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 36
- agent-substrate/substrate★ 6.2ksame name
- Devolutions/IronRDP★ 3.3ksame name
- getsentry/skills★ 1.1ksame name
- mblode/agent-skills★ 189same name
- cumbucadev/cinemaempoa★ 145same name
- devbrother2024/skills★ 91same name
- Integralist/agent-skills★ 23same name
- arfar-x/agent-skills★ 14same name
- getsentry/webvitals.com★ 12same name
- caidanw/skills★ 11same name
26 more not listed
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 repository15 other files it gives its agents.
- AGENTS.mdAGENTS.md
- agents-memorySkill
- agentsview-extractSkill
- agentsview-resumeSkill
- backfill-unit-testsSkill
- dotnet-upgradeSkill
- github-epicSkill
- gitlab-epicSkill
- miseSkill
- pr-workflowSkill
- record-walkthroughSkill
- setup-agent-ready-repoSkill
- tech-leadSkill
- tidy-commitsSkill
- write-e2e-testsSkill
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 10 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 32 edited versions we read keep these.
10
Distinctive
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 22
Every line loads on every turn, and every new session writes it to the prompt cache again at a premium.
- Distinctive: line 38
Progressive Disclosure: keep AGENTS.md lean (about 100 lines is a heuristic, not a gate.
- Distinctive: line 51
Trust Model Judgment: keep project-specific, non-derivable constraints.
- Distinctive: line 62
Write pointers in light-touch language: a conversational reference, not ALL-CAPS or "ALWAYS".
- Very specific: line 71
Do not create files for src/ or tests.
- Distinctive: line 75
Start a package file with its one-sentence purpose.
- Distinctive: line 88
If exactly one AGENTS.md exists, use it.
- Distinctive: line 89
If multiple files exist, prefer the nearest AGENTS.md that governs the user's requested path or current working directory.
- Distinctive: line 94
If none exists, create the root AGENTS.md unless the user requested a narrower package/module path.
- Distinctive: line 115
Sibling
CLAUDE.mdis a symlink toAGENTS.md: leave it; mention it is optional on 2.1.277+ and the user may delete it. - Distinctive: line 149
When solving a problem turns up a gotcha, a hidden config, or an env var quirk, the agent MUST:
- Very specific: line 183
Legacy migration: If this section under any earlier heading stops at writing to a file, or gotchas sit inline under ## Lessons Learned, …
“Common” is measured: kept by at least 6 in 10 of the 32 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
AGENTS.md
https://agents.md/ is the format baseline: plain Markdown, no required fields.
Nested files are optional. The closest AGENTS.md to the edited files has
precedence; some tools also load ancestor files, so keep root facts repo-wide
and package facts in the package file. Repo evidence and the user's explicit
instructions govern the content.
Instruction budget
Every line loads on every turn, and every new session writes it to the prompt cache again at a premium. Keep the file an index, not a manual. A line earns its place when it is relevant to every single task, or when looking it up in the environment is expensive.
Root file holds:
- One-sentence project description (what this repo is, and why work happens here)
- Package manager, when it is not the ecosystem default
- Build/test/typecheck commands that are non-standard or costly to discover
- Context pointers to domain docs, schemas, gold-standard tests, and skills
- Prevent Recurrence so later agents lock discoveries down
Everything else lives behind a pointer: a domain doc, a nested AGENTS.md, or
a skill. Hand-author from repo evidence; skip init-script dumps.
Progressive Disclosure: keep AGENTS.md lean (about 100 lines is a
heuristic, not a gate; a pointer table may run past it). Offload SOPs
and single-domain rules to a pointer or a skill.
Pointers: backtick paths, not @path and not markdown links. Occasion
plus read when the doc has a distinct branch; a label when it does not.
Shapes and why @path is a finding live in
references/templates.md. Convert @path and
markdown links in AGENTS.md to the matching shape. Convert @path in
docs/agents/*.md to a backtick path; markdown links there stay. Keep
@AGENTS.md at the top of a regular sibling CLAUDE.md; that is Claude
Code's include.
Trust Model Judgment: keep project-specific, non-derivable constraints. Generic style and hygiene already live in the model.
Single Source of Truth: package.json, configs, and the tree are the live
source. Restate a fact here only when the lookup is expensive (a cache). Point
rather than copy.
Rich References: point at schemas and gold-standard tests instead of prose specs. Describe capabilities and stable domain terms; skip file-by-file maps (paths drift).
Write pointers in light-touch language: a conversational reference, not ALL-CAPS or "ALWAYS".
Monorepo boundaries
Root AGENTS.md owns policy, shared docs/, cross-package completion, and
Prevent Recurrence. Add a nested file only at an autonomous boundary. It is an
adapter for local invariants, domain pointers, and completion criteria.
Do not create files for src/ or tests; add a deeper file only for a durable
local decision, and remove it when the decision disappears. Keep commands in
package config unless discovery is costly. Independently cloned packages need
their own root AGENTS.md; verify tool inheritance before relying on ancestors.
Start a package file with its one-sentence purpose. Repeat the package manager
only when its toolchain differs from the root or ancestor loading is unavailable.
Workflows
1. Discovery & Quality Assessment
find . -name "AGENTS.md" -o -name "CLAUDE.md" -o -name ".claude.md" 2>/dev/null | head -50Choose the target AGENTS.md explicitly:
- If exactly one
AGENTS.mdexists, use it. - If multiple files exist, prefer the nearest
AGENTS.mdthat governs the user's requested path or current working directory; otherwise ask before editing. - In nested repositories or monorepos, the closest
AGENTS.mdto the edited files has precedence for that subtree (nested files are optional). - If none exists, create the root
AGENTS.mdunless the user requested a narrower package/module path.
Done when the target path is named.
Then grade that file with references/quality-criteria.md:
Micromanagement Audit, Bloat, contradictions, every-task placement, stale
caches, @path file references, and markdown links in AGENTS.md. Scan
docs/agents/*.md for the same @path file references; markdown links
there stay. Propose the matching pointer shape from
references/templates.md §4 — occasion plus
read, or Label: path, and a backtick path in a domain doc. Emit a
Quality Report before any edit.
Done when the report is in the conversation and no edit has started.
2. Claude Code Check
Claude Code 2.1.277+ reads a project's AGENTS.md when it has no CLAUDE.md,
so leave CLAUDE.md absent: no file, no symlink.
- Sibling
CLAUDE.mdis a symlink toAGENTS.md: leave it; mention it is optional on 2.1.277+ and the user may delete it. - Regular
CLAUDE.mdthat imports its localAGENTS.mdand adds only Claude-specific rules: preserve it. - Any other regular
CLAUDE.md: it shadowsAGENTS.md. Read it, summarize unique instructions, propose migration, and ask approval before replacing it. CLAUDE.local.mdpresent: it also counts as aCLAUDE.mdand stopsAGENTS.mdfrom loading; the user sets/configProject instructions toclaude-md-and-agents-mdto read both.- Older Claude Code: tell the user they can run
ln -s AGENTS.md CLAUDE.mdthemselves.
Done when the next action is known and a regular CLAUDE.md is still intact
unless the user approved replacement.
3. Creation & Updates
Load references/templates.md for this branch.
- Build or slim the file as an index: one-sentence description, non-default package manager, non-standard commands, pointers.
- Apply Progressive Disclosure: offload multi-step SOPs and single-domain
rules. Convert
@pathand markdown links inAGENTS.mdto the matching pointer shape. Convert@pathindocs/agents/*.mdto backtick paths. - On a bloated existing file, group leftovers by domain, ask which of any contradictory pair to keep, and flag no-ops / vague / obvious lines for deletion.
- Include the
Prevent Recurrencesection rules inAGENTS.mdso all future agents follow them.
Done when every remaining root line passes the every-task test or is a pointer.
4. Prevent Recurrence (on problem-solving)
When solving a problem turns up a gotcha, a hidden config, or an env var quirk, the agent MUST:
- Candidate: Name who hits it again, in which file, on what change. No such scenario, nothing to propose. Then sort it: a preventable slip, or an environment fact no assertion can reach? Gates in references/quality-criteria.md.
- Promote: Offer the first tier that applies and only that one — the same
knowledge twice is the duplicate Prune exists to remove. Every tier waits on
the user's explicit confirmation.
- Enforce it: an assert, a type, or a test leaves nothing to remember. Quote its size and the files it touches so one word can authorize it. It has to be able to fail on the mistake itself; where only the symptom is checkable, the knowledge belongs a tier down.
- Comment at the site that must be passed: the constant a new caller imports, the declaration a change has to touch. Cross-reference from the other sites rather than restating it.
- An agent-facing doc, only for what no site owns (environment,
toolchain, CI, a process spanning files) — and say in one sentence why
the tiers above cannot hold it. Merge into an existing topic doc;
otherwise follow the repo's agent-facing docs convention —
docs/agents/<topic>.mdwhere none exists yet — without relocating existing files. Fall back tolessons-learned.mdbeside it. Add or update a single backtick-path line per file under Pointers, never a standalone "Lessons Learned" heading.
- Prune: Whenever Promote reaches the doc tier, read that whole file before writing to it — you are already in it with the gates in hand, so the audit costs one pass — and propose deletions alongside the addition, judged per entry rather than by a count. An entry goes once stale (library/version upgraded past the tagged context, now enforced by a linter/type/test, duplicated across files, or a one-off debugging transcript). Enforcement prunes too: an entry it supersedes in a doc already read this session goes with it. "Periodically" is not a trigger an agent can act on; the file being open is.
- Legacy migration: If this section under any earlier heading stops at
writing to a file, or gotchas sit inline under
## Lessons Learned, propose the current heading and wording, and move inline entries out to the topic/fallback file(s), leaving reference line(s) — pending confirmation.
Done when one means of prevention is in front of the user, or no recurrence scenario survived the gates.
References
- Audit rubric: references/quality-criteria.md
- Starter templates: references/templates.md
- Mock runs: references/examples.md
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.

