$npx -y skills add github/awesome-copilot --skill create-agentsmdcreate-agentsmd is an agent skill published from github/awesome-copilot, installable through the skills CLI.
| 1 | # Create high‑quality AGENTS.md file |
| 2 | |
| 3 | You are a code agent. Your task is to create a complete, accurate AGENTS.md at the root of this repository that follows the public guidance at https://agents.md/. |
| 4 | |
| 5 | AGENTS.md is an open format designed to provide coding agents with the context and instructions they need to work effectively on a project. |
| 6 | |
| 7 | ## What is AGENTS.md? |
| 8 | |
| 9 | AGENTS.md is a Markdown file that serves as a "README for agents" - a dedicated, predictable place to provide context and instructions to help AI coding agents work on your project. It complements README.md by containing detailed technical context that coding agents need but might clutter a human-focused README. |
| 10 | |
| 11 | ## Key Principles |
| 12 | |
| 13 | - **Agent-focused**: Contains detailed technical instructions for automated tools |
| 14 | - **Complements README.md**: Doesn't replace human documentation but adds agent-specific context |
| 15 | - **Standardized location**: Placed at repository root (or subproject roots for monorepos) |
| 16 | - **Open format**: Uses standard Markdown with flexible structure |
| 17 | - **Ecosystem compatibility**: Works across 20+ different AI coding tools and agents |
| 18 | |
| 19 | ## File Structure and Content Guidelines |
| 20 | |
| 21 | ### 1. Required Setup |
| 22 | |
| 23 | - Create the file as `AGENTS.md` in the repository root |
| 24 | - Use standard Markdown formatting |
| 25 | - No required fields - flexible structure based on project needs |
| 26 | |
| 27 | ### 2. Essential Sections to Include |
| 28 | |
| 29 | #### Project Overview |
| 30 | |
| 31 | - Brief description of what the project does |
| 32 | - Architecture overview if complex |
| 33 | - Key technologies and frameworks used |
| 34 | |
| 35 | #### Setup Commands |
| 36 | |
| 37 | - Installation instructions |
| 38 | - Environment setup steps |
| 39 | - Dependency management commands |
| 40 | - Database setup if applicable |
| 41 | |
| 42 | #### Development Workflow |
| 43 | |
| 44 | - How to start development server |
| 45 | - Build commands |
| 46 | - Watch/hot-reload setup |
| 47 | - Package manager specifics (npm, pnpm, yarn, etc.) |
| 48 | |
| 49 | #### Testing Instructions |
| 50 | |
| 51 | - How to run tests (unit, integration, e2e) |
| 52 | - Test file locations and naming conventions |
| 53 | - Coverage requirements |
| 54 | - Specific test patterns or frameworks used |
| 55 | - How to run subset of tests or focus on specific areas |
| 56 | |
| 57 | #### Code Style Guidelines |
| 58 | |
| 59 | - Language-specific conventions |
| 60 | - Linting and formatting rules |
| 61 | - File organization patterns |
| 62 | - Naming conventions |
| 63 | - Import/export patterns |
| 64 | |
| 65 | #### Build and Deployment |
| 66 | |
| 67 | - Build commands and outputs |
| 68 | - Environment configurations |
| 69 | - Deployment steps and requirements |
| 70 | - CI/CD pipeline information |
| 71 | |
| 72 | ### 3. Optional but Recommended Sections |
| 73 | |
| 74 | #### Security Considerations |
| 75 | |
| 76 | - Security testing requirements |
| 77 | - Secrets management |
| 78 | - Authentication patterns |
| 79 | - Permission models |
| 80 | |
| 81 | #### Monorepo Instructions (if applicable) |
| 82 | |
| 83 | - How to work with multiple packages |
| 84 | - Cross-package dependencies |
| 85 | - Selective building/testing |
| 86 | - Package-specific commands |
| 87 | |
| 88 | #### Pull Request Guidelines |
| 89 | |
| 90 | - Title format requirements |
| 91 | - Required checks before submission |
| 92 | - Review process |
| 93 | - Commit message conventions |
| 94 | |
| 95 | #### Debugging and Troubleshooting |
| 96 | |
| 97 | - Common issues and solutions |
| 98 | - Logging patterns |
| 99 | - Debug configuration |
| 100 | - Performance considerations |
| 101 | |
| 102 | ## Example Template |
| 103 | |
| 104 | Use this as a starting template and customize based on the specific project: |
| 105 | |
| 106 | ```markdown |
| 107 | # AGENTS.md |
| 108 | |
| 109 | ## Project Overview |
| 110 | |
| 111 | [Brief description of the project, its purpose, and key technologies] |
| 112 | |
| 113 | ## Setup Commands |
| 114 | |
| 115 | - Install dependencies: `[package manager] install` |
| 116 | - Start development server: `[command]` |
| 117 | - Build for production: `[command]` |
| 118 | |
| 119 | ## Development Workflow |
| 120 | |
| 121 | - [Development server startup instructions] |
| 122 | - [Hot reload/watch mode information] |
| 123 | - [Environment variable setup] |
| 124 | |
| 125 | ## Testing Instructions |
| 126 | |
| 127 | - Run all tests: `[command]` |
| 128 | - Run unit tests: `[command]` |
| 129 | - Run integration tests: `[command]` |
| 130 | - Test coverage: `[command]` |
| 131 | - [Specific testing patterns or requirements] |
| 132 | |
| 133 | ## Code Style |
| 134 | |
| 135 | - [Language and framework conventions] |
| 136 | - [Linting rules and commands] |
| 137 | - [Formatting requirements] |
| 138 | - [File organization patterns] |
| 139 | |
| 140 | ## Build and Deployment |
| 141 | |
| 142 | - [Build process details] |
| 143 | - [Output directories] |
| 144 | - [Environment-specific builds] |
| 145 | - [Deployment commands] |
| 146 | |
| 147 | ## Pull Request Guidelines |
| 148 | |
| 149 | - Title format: [component] Brief description |
| 150 | - Required checks: `[lint command]`, `[test command]` |
| 151 | - [Review requirements] |
| 152 | |
| 153 | ## Additional Notes |
| 154 | |
| 155 | - [Any project-specific context] |
| 156 | - [Common gotchas or troubleshooting tips] |
| 157 | - [Performance considerations] |
| 158 | ``` |
| 159 | |
| 160 | ## Working Example from agents.md |
| 161 | |
| 162 | Here's a real example from the agents.md website: |
| 163 | |
| 164 | ```markdown |
| 165 | # Sample AGENTS.md file |
| 166 | |
| 167 | ## Dev environment tips |
| 168 | |
| 169 | - Use `pnpm dlx turbo run where <project_name>` to jump to a package instead of scanning with `ls`. |
| 170 | - Run `pnpm install --filter <project_name>` to add the package to your workspace so Vite, ESLint, and TypeScript can see it. |
| 171 | - Use `pnpm create vite@latest <project_name> -- --template react-ts` to spin up a new React + Vite package with TypeScript checks ready. |
| 172 | - Check the name field inside each package's package.json to confirm the right name—skip the top-level one. |
| 173 | |
| 174 | ## Testing instr |