From necturalabs
Create or update the project's AGENTS.md file based on codebase analysis. Invoke manually via /agents-md-manager, or triggered automatically as the final step of superpowers plan execution.
How this skill is triggered — by the user, by Claude, or both
Slash command
/necturalabs:agents-md-managerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Creates or updates the project's `AGENTS.md` file based on codebase analysis.
Creates or updates the project's AGENTS.md file based on codebase analysis.
/agents-md-managersuperpowers:executing-plans)This skill does NOT run automatically at conversation start.
digraph manager {
"User invokes or plan completes" [shape=doublecircle];
"AGENTS.md exists?" [shape=diamond];
"Analyze codebase (new)" [shape=box];
"Create AGENTS.md" [shape=box];
"Check if stale" [shape=diamond];
"Analyze codebase (update)" [shape=box];
"Update AGENTS.md" [shape=box];
"Done" [shape=doublecircle];
"User invokes or plan completes" -> "AGENTS.md exists?";
"AGENTS.md exists?" -> "Analyze codebase (new)" [label="no"];
"AGENTS.md exists?" -> "Check if stale" [label="yes"];
"Analyze codebase (new)" -> "Create AGENTS.md";
"Create AGENTS.md" -> "Done";
"Check if stale" -> "Done" [label="current"];
"Check if stale" -> "Analyze codebase (update)" [label="stale"];
"Analyze codebase (update)" -> "Update AGENTS.md";
"Update AGENTS.md" -> "Done";
}
Re-analyze when ANY of these are true:
AGENTS.md does not existpackage.json / go.mod / Cargo.toml / etc.Scan these files to infer project context:
| Source | What to Extract |
|---|---|
package.json / go.mod / Cargo.toml / *.csproj / requirements.txt | Tech stack, versions, dependencies |
package.json scripts / Makefile / Taskfile / CI configs | Build, test, lint commands |
| Directory listing | Project structure |
| Existing test files | Test framework, naming patterns, file locations |
.eslintrc / .prettierrc / biome.json / ruff.toml | Linting and formatting config |
.env.example / .env.template | Required environment variables |
| Existing code files | Naming conventions, patterns, style |
Target: under 200 lines. Every line must earn its place — ask "would removing this cause the agent to make mistakes?" If no, cut it.
1. Project Overview (1-3 sentences) What it does, who it's for, tech stack with versions.
## Project
E-commerce API built with Node.js 20, Express 4, TypeScript 5.4, PostgreSQL 16. Serves the mobile and web storefronts.
2. Commands Exact build/test/lint commands with flags. Put these early — agents reference them constantly.
## Commands
- Build: `npm run build`
- Test: `npm test -- --watch`
- Lint: `npm run lint -- --fix`
- Single test: `npm test -- --testPathPattern=<file>`
3. Code Conventions (non-obvious only) Only include what differs from framework defaults or what the agent cannot infer from existing code.
## Conventions
- Named exports only, no default exports
- Use ES modules (import/export), not CommonJS
- Error responses use `{ error: string, code: string }` shape
4. Project Structure (key directories)
## Structure
- `src/api/` — Route handlers
- `src/services/` — Business logic
- `src/models/` — Database models
- `tests/` — Mirrors src/ structure
5. Testing Approach Framework, naming, where tests live.
6. Boundaries
## Boundaries
- **Always**: Run tests before committing
- **Ask first**: Database schema changes, dependency additions
- **Never**: Commit secrets, modify vendor/, force push to main
| Exclude | Why |
|---|---|
| Things derivable from reading code | Wastes token budget |
| Standard language conventions | Agent already knows these |
| Detailed API docs | Link to them instead |
| Frequently changing data | Goes stale, poisons context |
| Vague principles ("write clean code") | Not actionable, gets ignored |
| File-by-file descriptions | Agent discovers through tools |
| Linting rules enforced by tools | "Never send an LLM to do a linter's job" |
| Secrets or credentials | Security risk |
| Contradicting instructions | Agent picks one arbitrarily |
Generate AGENTS.md at project root — it's the universal format supported by 20+ tools (Claude Code, Cursor, Codex, Copilot, Windsurf, Kilo, etc.).
CLAUDE.md and AGENTS.md serve different purposes:
CLAUDE.md — User-authored preferences and instructions (do not modify unless asked)AGENTS.md — Auto-detected project context (commands, structure, conventions)Do NOT merge auto-detected content into CLAUDE.md. Always write to AGENTS.md. Never duplicate content that already exists in CLAUDE.md.
After creating or updating, briefly tell the user:
Keep the notification to one line. Don't dump the file contents.
npx claudepluginhub necturalabs/agentskills --plugin necturalabsGenerates AGENTS.md project documentation with feedback instructions, architecture, conventions, and discovered commands. Analyzes package.json, configs, directory structure, CI workflows. Use for new projects or doc updates.
Analyzes a codebase to create or improve an AGENTS.md file that captures hard-to-rediscover conventions, constraints, and rationale for future agent instances.
Generates and maintains AGENTS.md files for AI agents using shell scripts that detect project structure, extract commands and CI rules, and validate content freshness.