AGENTS.md and CLAUDE.md examples for Express
Of 218 actively developed open-source products built with Express, 122 (56%) keep instruction files for coding agents: AGENTS.md in 94, CLAUDE.md in 70. The typical file is 1,050 words, and most cover pointers to other docs (81%) and commands to build, run and test (76%).
Real files to read
From the best-known open-source Express products whose file is a real one (not a pointer to another), 200 to 4,000 words, covering at least three of the usual topics and naming Express. Each opens on GitHub.
| Project | File | Stars | Words | Covers |
|---|---|---|---|---|
| paperclipai/paperclip | AGENTS.md | 100,422 | 1,472 | CommandsTestingDoc pointersGit |
| LibreChat-AI/LibreChat | AGENTS.md | 45,538 | 2,229 | CommandsTestingDoc pointersCode styleGit |
| verdaccio/verdaccio | AGENTS.md | 17,912 | 2,726 | CommandsTestingDoc pointersStructureCode styleGit |
| chartbrew/chartbrew | AGENTS.md | 4,061 | 419 | CommandsDoc pointersStructureCode style |
| pipeshub-ai/pipeshub-ai | AGENTS.md | 3,829 | 957 | CommandsTestingDoc pointersStructure |
| msgbyte/tailchat | AGENTS.md | 3,638 | 1,727 | CommandsTestingDoc pointersGit |
| chrisvel/tududi | CLAUDE.md | 3,427 | 2,330 | CommandsTestingDoc pointersStructure |
| tsedio/tsed | AGENTS.md | 3,088 | 685 | CommandsTestingDoc pointersStructureCode styleGit |
| Viren070/AIOStreams | CLAUDE.md | 2,850 | 1,206 | CommandsTestingStructureCode styleGit |
| saifyxpro/HeadlessX | AGENTS.md | 2,329 | 2,558 | CommandsTestingDoc pointersStructureCode styleGit |
| hotovo/aider-desk | AGENTS.md | 1,456 | 1,050 | CommandsTestingStructureCode style |
| loglayer/loglayer | AGENTS.md | 548 | 2,059 | CommandsTestingDoc pointersStructureCode style |
What Express projects put in them
Share of the 108 files that cover each topic, against all 641 files we read.
How they talk to the agent: 84% say “never” or “do not” somewhere (all files: 80%), 30% shout a rule in capitals like IMPORTANT or MUST (24%), and 19% tell it to ask before some changes (20%).
The tools they name
Package managersnpm (34 files), pnpm (28 files), yarn (10 files)
Tests and lintersVitest (24), Playwright (23), ESLint (23), Prettier (17), Jest (11), Biome (7)
Named more than in files generallyNode.js (34), Prettier (17), Electron (15), GraphQL (12), Zod (12), Jest (11)
What they tell the agent
Instructions that recur across files, in our words; open one for the Express projects whose file says it.
About Express
Named as the backend HTTP or REST API server, often paired with a separate React frontend.14 files
Keep route files thin, with one router per file delegating to controllers or repositories.3 files
In production the API server also serves the built frontend.3 files
About Node.js
Node.js has a required minimum version, so check the version before installing or running anything.13 files
The Node version is pinned in a version file such as .nvmrc or package.json engines; use nvm to match it.8 files
Use the one designated package manager alongside Node, such as pnpm only or npm with the lockfile.7 files
Node.js is the runtime for backend services, CLIs, and tooling in the monorepo.8 files
About Prettier
Follow the project's Prettier settings in its config file for quotes, semicolons, width, and indentation.4 files
Format with the project's format script, such as yarn format or pnpm format, rather than by hand.3 files
Formatting is enforced by hooks or CI, so unformatted code gets rejected or fixed automatically.2 files
About Electron
Named as the desktop app or wrapper, living in its own directory such as desktop or electron.3 files
Treat Electron as a thin desktop shell; keep shared logic and UI in common packages or the web app.1 files
Running Electron locally needs care: install its binaries per worktree, avoid focus-stealing e2e runs, kill stale processes.1 files
Keep main and renderer processes separate; communicate via IPC and preload bridges, with a thin main process.2 files
About GraphQL
Named as the API layer of the backend, often next to REST or MCP endpoints.6 files
About Zod
Validate all external or untrusted input, such as requests and payloads, with Zod schemas at the boundary.4 files
Keep Zod schemas in one dedicated shared location rather than inline in pages or routers.1 files
Forms pair React Hook Form with Zod for validation.2 files
Use Zod parsing to narrow unknown values instead of any or casts.1 files
About Jest
Run Jest through the project's own script or make target rather than invoking it directly.1 files
Check which runner a package uses; do not mix Jest with Vitest imports or APIs.1 files
A starting AGENTS.md for Express
The sections these files cover most, the package manager and checks Express projects name most, and the stack Express makers' products chose most often. Fill in the <placeholders>.
# AGENTS.md <What this product does and who it is for, in a sentence or two.> ## Stack - Backend Framework: Express ## Commands - Install: `npm install` - Run locally: `<command>` - Test: `npx vitest run` - End-to-end tests: `npx playwright test` - Lint: `npx eslint .` ## Testing Run `npx vitest run` and `npx playwright test` before calling a change done, and add a test with each fix or feature. ## Project structure - `<folder>/`: <what lives there> - More in <docs/…> ## Conventions - <Naming, patterns and style the code does not show> - Commits and pull requests: <your rules> ## Boundaries - Ask before: <changes you want to approve first> - Never: <files or actions that are off-limits> <!-- Started from https://howmakersbuild.com/agents-md/express — point CLAUDE.md here with a line: @AGENTS.md -->
- npm: named in 34 of 108 instruction files from open-source projects built with Express.
- Vitest: named in 24 of 108 instruction files from open-source projects built with Express.
- Playwright: named in 23 of 108 instruction files from open-source projects built with Express.
- ESLint: named in 23 of 108 instruction files from open-source projects built with Express.
Questions
What should an AGENTS.md for a Express project include?
In 108 files from open-source Express products: pointers to other docs (81%), commands to build, run and test (76%), testing (68%), project structure (57%), code style (50%), git, commits and pull requests (50%). The package manager they name most is npm (34 files).
AGENTS.md or CLAUDE.md?
Among these Express products, 94 keep an AGENTS.md and 70 a CLAUDE.md. Across every product we checked, 320 keep both, and in 170 of those the CLAUDE.md only points to the AGENTS.md (a symlink or a line like @AGENTS.md), so there's one file to maintain. Codex, Cursor, Copilot and others read AGENTS.md; Claude Code reads CLAUDE.md.
How long is a typical Express AGENTS.md?
The median is 1,050 words in these 108 files; across all 641 files we read, half are between 425 and 1,665 words.
How this is counted: the GitHub repos of open-source products built with Express, pushed to in the 180 days before 2026-10-12. We read each repo's AGENTS.md, CLAUDE.md and other agent files; what's published here is counts and links, not their text. All files, by the numbers.