Guide for creating and editing CLAUDE.md or AGENTS.md files - AI agent instruction documents. Use when the user wants to create a new CLAUDE.md/AGENTS.md, edit existing agent documentation, set up AI instructions for a repository, or asks about best practices for agent docs structure.
/plugin marketplace add yaakaito/env/plugin install yaakaito-skills-cc-plugins-skills@yaakaito/envThis skill inherits all available tools. When active, it can use any tool Claude has access to.
assets/template.mdreferences/agents-md-spec.mdreferences/best-practices.mdreferences/claude-md-features.mdThis skill provides knowledge and templates for creating and editing CLAUDE.md and AGENTS.md files - structured documentation that guides AI coding agents working with a codebase.
Let the user choose the output format:
| Format | Use Case |
|---|---|
| CLAUDE.md | Claude Code specific (supports @ imports, hierarchical memory) |
| AGENTS.md | Cross-tool compatible (Codex, Cursor, Copilot, etc.) |
For format-specific features, see:
references/claude-md-features.md - Claude Code specific featuresreferences/agents-md-spec.md - AGENTS.md specificationUse this 8-section structure. See assets/template.md for the full template.
Start with # [Project Name] followed by a brief description (1-3 sentences) explaining WHY this project exists, then list key features/capabilities as bullet points. No separate section heading needed.
Key architectural points as bullet list - important components, data flow, design decisions. Answer "WHAT are the key things to know?" Keep it concise (3-5 bullets). If docs/ARCHITECTURE.md or similar exists, link to it for details.
Tree view of the repository layout with brief descriptions. Answer "WHERE is everything?"
Coding principles to follow. Use these defaults as-is; append project-specific items rather than replacing:
## Core Principles
- Correspond to the current codebase, data, and terminology over theory or general practices; always review thoroughly
- Avoid adding new dependencies unless necessary; remove when possible
- Follow clean code principles (simplicity, clarity, descriptive names, remove unused code)
- Follow Conventional Commits for commit messages unless otherwise instructed
Build, run, lint, and test commands. Example:
## Commands
- `npm install` - Install dependencies
- `npm run dev` - Start development server
- `npm run build` - Production build
- `npm test` - Run all tests
- `npm run lint` - Run linter
Testing strategy and policies (not commands). Use these defaults as-is; append project-specific items rather than replacing:
## Testing
- Prefer integration tests over unit tests; write unit tests to cover edge cases
- Do not use mocks by default; use them only for external communication or resource fetching
- Test names should follow the user's language
- New features require corresponding tests
Programming and natural language rules. Use these defaults as-is; append project-specific items rather than replacing:
## Language Policy
- Follow the user's language by default (comments, commits, tests)
- The following files must always be written in English:
- CLAUDE.md, AGENTS.md
- Files under .claude/
- Files under docs/agents/
References to detailed documentation. Format:
## Additional Resources
- `docs/ARCHITECTURE.md`: Detailed architecture decisions
- `docs/agents/[FILE].md`: [Description]
- `docs/adr/adr-001-[slug].md`: [ADR title]
For detailed guidelines on writing effective agent documentation, see references/best-practices.md.
Key points: