mcpbeat

Agents Md Generator

madteacher/agents-md-generator

Create, generate, update, repair, trim, or split minimal AGENTS.md files for repository roots and confirmed nested modules using progressive disclosure. Use for missing, bloated, contradictory, or outdated agent instructions, monorepos, services, packages, module context, and portable agent guidance without assuming any fixed agent folder structure.

2k tokens
context cost
the whole folder, loaded on every use
3
files
instructions only
0
copies elsewhere
how many repositories repackaged it
105
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/MADTeacher/mad-agents-skills --skill agents-md-generator

What comes with it

2 229 bytes besides the instruction
references/AGENTS_TEMPLATE_MODULE.md
references/AGENTS_TEMPLATE_ROOT.md

The instruction itself

15 sections, as written by the author

AGENTS.md Generator (Root + Nested, Portable)

Goal

Maintain small, high-signal AGENTS.md files:

  • Root AGENTS.md — purpose of repository, navigation, universal toolchain, canonical commands, links to docs and skills.
  • Nested AGENTS.md — module/package purpose, local commands, module references.

Use progressive disclosure: keep AGENTS.md concise; push details to docs or skills.


Skill location (agent-specific)

  • Do NOT assume .agents/ or any fixed directory exists.
  • Skills may live:
  • inside the repository (embedded),
  • or in an external/global skill library (external).
  • If referencing local skills, use only an existing skill root already used by

the project or an existing project path already mentioned by repo docs.

  • If no local skill directory exists — reference skills by name only (external).
  • Never create hidden agent directories just to store skills.

Resource Routing

Use templates as skeletons, not literal output:

  • Read references/AGENTS_TEMPLATE_ROOT.md only when creating or updating the

root AGENTS.md.

  • Read references/AGENTS_TEMPLATE_MODULE.md only after a directory is

confirmed as a nested module that needs its own AGENTS.md.

  • Replace or remove every placeholder. Final AGENTS.md files must not contain

unresolved <...> template markers.


When to run

Run this skill when:

  • AGENTS.md is missing, bloated, contradictory, or outdated.
  • AGENTS.md needs to be generated, repaired, trimmed, split, or updated.
  • A new package/service/module appears.
  • Repository structure changes (monorepo growth or split).
  • Teams want consistent agent context across diverse stacks.

Workflow (Deterministic)

1. Discover repository shape

  • Identify repository root (git root if available).
  • Detect language/tool markers:
  • package.json, pnpm-workspace.yaml
  • go.mod, go.work
  • pyproject.toml
  • Cargo.toml
  • pubspec.yaml
  • pom.xml, build.gradle
  • Locate docs/, README.md, existing AGENTS.md.

2. Detect module boundaries

Create nested AGENTS.md if directory:

  • Contains independent build/package manifest
  • OR represents deployable/service unit (apps/, services/, packages/)
  • AND adds distinct commands, docs, ownership, deployment notes, or toolchain

guidance compared with parent scope.

Do not create a nested AGENTS.md that only repeats the root instructions.


3. Generate/Update Root AGENTS.md

Constraints:

  • Ideal size: ≤ 60 lines
  • Must include:
  • One-sentence repository purpose
  • Primary toolchain/package manager
  • Canonical commands (if non-standard)
  • Links to docs
  • Instruction to read nested AGENTS.md when inside modules
  • Optional skill references (adaptive: local or external)
  • Preserve verified commands, docs, security/secrets/deployment warnings, and

important local rules from any existing root AGENTS.md.


4. Generate/Update Nested AGENTS.md

Constraints:

  • Ideal size: ≤ 40 lines
  • Must include:
  • One-sentence module purpose
  • Module-specific commands
  • Local documentation references
  • Optional skill references (adaptive)
  • Preserve verified module warnings, ownership, deployment notes, and local

rules from any existing nested AGENTS.md.


5. Progressive Disclosure Rules

  • Do not embed style guides, CI policies, or architecture details.
  • Prefer links to existing docs and external or local skills.
  • Include only links that exist or are explicitly cited as the source for

commands or policy.

  • Replace stale long-form sections with links when an authoritative doc exists.
  • Avoid “always/never” rules unless critical for correctness/security.

6. Safety / Correctness Gates

  • Never invent commands.
  • Infer commands from:
  • package scripts
  • Makefile
  • CI configuration
  • README
  • If uncertain → write:

“Known commands: see <existing file>”

  • Preserve critical warnings (security, secrets, deployment).

Output Contract

Create or update only:

  • <repo_root>/AGENTS.md
  • <module_dir>/AGENTS.md

Do not create agent configuration folders.


Skill Referencing Strategy

When adding skill references inside AGENTS.md:

  • If local skill directory detected
   See: <detected-skill-root>/<skill-name>/SKILL.md
  • If no local directory exists
   Skill: agents-md-generator (external)

Never assume filesystem paths.


Validation

Before finishing, verify:

  • Only root/module AGENTS.md files were created or updated.
  • Final AGENTS.md files contain no unresolved <...> placeholders.
  • Relative documentation links exist or clearly point to a source file for

commands/policy.

  • Commands are supported by package scripts, Makefile, CI configuration, or

README. If no command is verified, use Known commands: see <existing file>.

  • Line budgets are respected: root ≤ 60 lines, nested module ≤ 40 lines.
  • Nested files exist only for confirmed module boundaries.
  • Critical warnings from existing AGENTS.md files are preserved.

How to use it

Copy the folder

Take madteacher/agents-md-generator from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.