121 lines
4.0 KiB
Markdown
121 lines
4.0 KiB
Markdown
---
|
|
name: agents-md
|
|
description: This skill should be used when the user asks to "create AGENTS.md", "update AGENTS.md", "maintain agent docs", "set up CLAUDE.md", or needs to keep agent instructions concise. Enforces research-backed best practices for minimal, high-signal agent documentation.
|
|
risk: unknown
|
|
source: community
|
|
---
|
|
|
|
# Maintaining AGENTS.md
|
|
|
|
AGENTS.md is the canonical agent-facing documentation. Keep it minimal—agents are capable and don't need hand-holding. Target under 60 lines; never exceed 100. Instruction-following quality degrades as document length increases.
|
|
|
|
## File Setup
|
|
|
|
1. Create `AGENTS.md` at project root
|
|
2. Create symlink: `ln -s AGENTS.md CLAUDE.md`
|
|
|
|
## Before Writing
|
|
|
|
Analyze the project to understand what belongs in the file:
|
|
|
|
1. **Package manager** — Check for lock files (`pnpm-lock.yaml`, `yarn.lock`, `package-lock.json`, `uv.lock`, `poetry.lock`)
|
|
2. **Linter/formatter configs** — Look for `.eslintrc`, `biome.json`, `ruff.toml`, `.prettierrc`, etc. (don't duplicate these in AGENTS.md)
|
|
3. **CI/build commands** — Check `Makefile`, `package.json` scripts, CI configs for canonical commands
|
|
4. **Monorepo indicators** — Check for `pnpm-workspace.yaml`, `nx.json`, Cargo workspace, or subdirectory `package.json` files
|
|
5. **Existing conventions** — Check for existing CONTRIBUTING.md, docs/, or README patterns
|
|
|
|
## Writing Rules
|
|
|
|
- **Headers + bullets** — No paragraphs
|
|
- **Code blocks** — For commands and templates
|
|
- **Reference, don't embed** — Point to existing docs: "See `CONTRIBUTING.md` for setup" or "Follow patterns in `src/api/routes/`"
|
|
- **No filler** — No intros, conclusions, or pleasantries
|
|
- **Trust capabilities** — Omit obvious context
|
|
- **Prefer file-scoped commands** — Per-file test/lint/typecheck commands over project-wide builds
|
|
- **Don't duplicate linters** — Code style lives in linter configs, not AGENTS.md
|
|
|
|
## Required Sections
|
|
|
|
### Package Manager
|
|
Which tool and key commands only:
|
|
```markdown
|
|
## Package Manager
|
|
Use **pnpm**: `pnpm install`, `pnpm dev`, `pnpm test`
|
|
```
|
|
|
|
### File-Scoped Commands
|
|
Per-file commands are faster and cheaper than full project builds. Always include when available:
|
|
```markdown
|
|
## File-Scoped Commands
|
|
| Task | Command |
|
|
|------|---------|
|
|
| Typecheck | `pnpm tsc --noEmit path/to/file.ts` |
|
|
| Lint | `pnpm eslint path/to/file.ts` |
|
|
| Test | `pnpm jest path/to/file.test.ts` |
|
|
```
|
|
|
|
### Commit Attribution
|
|
Always include this section. Agents should use their own identity:
|
|
```markdown
|
|
## Commit Attribution
|
|
AI commits MUST include:
|
|
```
|
|
Co-Authored-By: (the agent model's name and attribution byline)
|
|
```
|
|
Example: `Co-Authored-By: Claude Sonnet 4 <noreply@example.com>`
|
|
```
|
|
|
|
### Key Conventions
|
|
Project-specific patterns agents must follow. Keep brief.
|
|
|
|
## Optional Sections
|
|
|
|
Add only if truly needed:
|
|
- API route patterns (show template, not explanation)
|
|
- CLI commands (table format)
|
|
- File naming conventions
|
|
- Project structure hints (point to critical files, flag legacy code to avoid)
|
|
- Monorepo overrides (subdirectory `AGENTS.md` files override root)
|
|
|
|
## Anti-Patterns
|
|
|
|
Omit these:
|
|
- "Welcome to..." or "This document explains..."
|
|
- "You should..." or "Remember to..."
|
|
- Linter/formatter rules already in config files (`.eslintrc`, `biome.json`, `ruff.toml`)
|
|
- Listing installed skills or plugins (agents discover these automatically)
|
|
- Full project-wide build commands when file-scoped alternatives exist
|
|
- Obvious instructions ("run tests", "write clean code")
|
|
- Explanations of why (just say what)
|
|
- Long prose paragraphs
|
|
|
|
## Example Structure
|
|
|
|
```markdown
|
|
# Agent Instructions
|
|
|
|
## Package Manager
|
|
Use **pnpm**: `pnpm install`, `pnpm dev`
|
|
|
|
## Commit Attribution
|
|
AI commits MUST include:
|
|
```
|
|
Co-Authored-By: (the agent model's name and attribution byline)
|
|
```
|
|
|
|
## File-Scoped Commands
|
|
| Task | Command |
|
|
|------|---------|
|
|
| Typecheck | `pnpm tsc --noEmit path/to/file.ts` |
|
|
| Lint | `pnpm eslint path/to/file.ts` |
|
|
| Test | `pnpm jest path/to/file.test.ts` |
|
|
|
|
## API Routes
|
|
[Template code block]
|
|
|
|
## CLI
|
|
| Command | Description |
|
|
|---------|-------------|
|
|
| `pnpm cli sync` | Sync data |
|
|
```
|