Agents Md
Audits and edits agent instruction files, verifies repository commands, and migrates repositories to AGENTS.md as the single shared source. Use when asked to "improve my AGENTS.md", "migrate CLAUDE.md to AGENTS.md", or make instructions work across agents. For SKILL.md use agent-skills-creator.
- Skill ID
- mblode/agent-skills/agents-md
- Publisher
- mblode
- Repository
- agent-skills
- Installs
- 0
- Files
- 8
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
mblode/agent-skills/agents-mdInstalls these files- SKILL.md
- evals/evals.json
- references/project-setup.md
- references/quality-criteria.md
- references/quick-checklist.md
- references/refactor-workflow.md
- references/root-content-guidance.md
- references/templates.md
What this skill tells the agent
AGENTS.md Setup and Audit
- IS: wiring a repo so every agent tool in use reads the same rules, then auditing, scoring, refactoring, and writing the AGENTS.md / CLAUDE.md / CLAUDE.local.md files agents load at session start.
- IS NOT: authoring SKILL.md files (use
agent-skills-creator), project docs or READMEs (useghostwriter), or mining session history (use the externalcadence-adviseskill where installed; this skill audits the file as-is).
AGENTS.md files are execution contracts, not knowledge bases. Two tests catch the two ways a line fails.
- Dead weight: "Would removing this cause the agent to make a mistake?" If no, cut it; bloat makes agents ignore the rules that matter.
- Harmful precision: "Is this wrong on any plausible task in this repo?" A prohibition that is wrong one task in ten is still obeyed on that task, and the agent cannot tell that this is the exception. State the outcome you want and let the surrounding code pick the path.
NEVER write commentsbecomesmatch the comment density of the file you are editing: shorter, no exception list to maintain, and correct in a densely commented file without being told.
Absolutes still earn their place for safety, data loss, format contracts, and rules this repo's agents have actually been observed to break.
AGENTS.md is the tool-agnostic source of truth. Claude Code's built-in agents-md mod supports it directly. Use AGENTS.md at the root and in scoped subdirectories, without CLAUDE.md wrappers or symlinks. The default claude-md-or-agents-md mode yields when project Claude instruction files exist on the root-to-working-directory path; see references/project-setup.md for migration, settings, and loader limits. Preserve unique instructions before removing old files. User-level and managed Claude files are separate from repository migration.
Choose a Mode
- Repo has no agent instructions, or targets a tool it is not wired for -> Setup:
references/project-setup.mddecides which files exist and which tool reads each one, then Writing From Scratch below fills the root file, then Audit scores it. - A file exists and the question is quality -> Audit, below.
- A file exists and is bloated, stale, or scored badly -> Refactor,
references/refactor-workflow.md.
Reference Files
| File | Read when |
|---|---|
references/project-setup.md | Setting a repo up for Claude Code, Codex, and Cursor; deciding which files exist and what each tool actually loads |
references/quick-checklist.md | Every audit; default 12-check triage |
references/quality-criteria.md | Quick audit fails, file is high-risk, or full scoring requested |
references/refactor-workflow.md | File is bloated (root over ~150 lines), stale, or below target |
references/root-content-guidance.md | Deciding what stays in root and where moved content goes so it still loads |
references/templates.md | Drafting or rebuilding a file from scratch |
Writing From Scratch
The content step of Setup, and the whole job when the repo is already wired and only the file is missing. Skip the audit. Gather real commands from the manifest (package.json, Makefile, CI config), pick a skeleton from references/templates.md, fill it with verified commands and known gotchas, then validate against references/quick-checklist.md before delivering.
Audit Workflow
Copy this checklist to track progress:
Audit Progress:
- [ ] Step 1: Discover files
- [ ] Step 2: Select audit mode (quick or full)
- [ ] Step 3: Run audit and score
- [ ] Step 4: Report findings with score table
- [ ] Step 5: Propose minimal diffs
- [ ] Step 6: Validate changes
- [ ] Step 7: Apply and report before/after scoresStep 1: Discover files
find . \( -name "AGENTS.md" -o -name "AGENTS.override.md" -o -name "CLAUDE.md" -o -name "CLAUDE.local.md" \) -not -path "*/node_modules/*" 2>/dev/null | sort
ls -la CLAUDE.md .claude/rules .cursor/rules 2>/dev/nullAlso check ~/.claude/CLAUDE.md and ~/.codex/AGENTS.md; both load in every repo. ls -la CLAUDE.md tells you whether it is a symlink, an @AGENTS.md pointer, or a second copy, and a copy is a finding on its own. For monorepos, include workspace-level files. Audit each level independently: root holds universal rules, child files hold directory-specific rules (see the placement hierarchy in references/root-content-guidance.md).
Step 2: Select audit mode
- Quick (default): 12 checks from
references/quick-checklist.md, target >= 10/12. - Full: 49 checks from
references/quality-criteria.md, target >= 91% of applicable points (grade A). Use when the quick audit fails, the file gates a high-risk repo, or full scoring is requested.
Step 3: Run audit and score
Score each root file independently; exclude N/A checks from the denominator.
Step 4: Report findings
Output a concise report before any edits:
## AGENTS.md Audit Report
| File | Mode | Score | Grade | Key Issues |
|------|------|-------|-------|------------|
| ./AGENTS.md | Quick | 6/10 | Fail | Missing test command, stale path, doc-heavy section |Every issue in the table must map to a Step 5 diff; no vague findings.
Step 5: Propose minimal diffs
In priority order:
- Fix broken or stale commands; bugs, not style.
- Remove generic, duplicate, or obsolete guidance, restatements of what the harness already does, and facts auto-memory owns.
- Rewrite blanket prohibitions as the outcome they were protecting; keep the absolute only where the harmful-precision test clears it.
- Move detail needed in fewer than ~30% of tasks to a location that loads on demand: a nested
AGENTS.mdin the directory it concerns, a path-scoped.claude/rules/*.md, or a skill. Not an@import: imported files load at launch and save nothing. - Add emphasis ("IMPORTANT:", "YOU MUST") only on critical rules agents skip, one line at a time.
For an audit request, propose the diffs. A request to improve, refactor, or write the file already authorizes those edits; apply them and report the rationale.
Step 6: Validate changes
- Smoke-run core commands (
dev,test,build,lint/typecheck) where the environment allows; otherwise verify the script exists in the manifest and note the limitation. - Check every linked and
@imported path resolves. In a Claude Code session,/contextlists the memory files that actually loaded; a file absent from that list is not loaded, whatever the tree looks like. - Confirm no contradictory rules remain across levels (home, root, child), against installed skills (
.claude/skills/,.agents/skills/,~/.claude/skills/), or against harness defaults. Where the overlap is deliberate, the file must say who wins, so the agent is told precedence instead of arbitrating it every task. - Issues found: revise, then validate again. Never proceed on "looks right".
Step 7: Apply and report
Apply approved edits, re-score with the same checklist, report before/after scores and line counts. Per future PR, add at most one new gotcha, only if it prevented or fixed a real mistake.
Gotchas
- A project
CLAUDE.md,.claude/CLAUDE.md, orCLAUDE.local.mdcan suppress the default AGENTS.md fallback across the project. Removing only the root wrapper may not fix loading. Check the built-in mod and/configProject instructions, then verify loaded files. @importmoves text, not cost. Imported files are expanded into context at launch, so splitting a 400-lineCLAUDE.mdinto five imports still loads 400 lines every session. Only nested files, path-scoped.claude/rules/, and skills load on demand.@importreaches Claude Code only. Codex and Cursor pass the line through as text without warning, so an imported safety or format rule is absent from most sessions while the file still looks correct.
More from mblode
Use this skill in a project
Open any RiverX project, search the Skills panel for mblode/agent-skills/agents-md, and install it in one click.
