workbench
AGENTS.md1 starsChanged 2 months agoMITView on GitHub
Global conventions for any coding agent working in my repos. Skills and project CONTEXT.md files build on this — they don't restate it. This file is the cross-tool source of truth. Claude Code, Codex, and other agents all read AGENTS.md — put a convention here once instead of duplicating it into tool-specific config. Per-project specifics (domain glossary, stack, deviations) go in that project's CONTEXT.md (see the stub in this repo). - Conventional Commits, enforced with commitlint. - Types: feat:, fix:,…
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,774 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository73 other files it gives its agents.
- bigquery-analyticsSkill
- cache-invalidationSkill
- mongo-aggregationSkill
- mongo-modelingSkill
- postgres-aggregationSkill
- postgres-indexingSkill
- redis-coordinationSkill
- redis-patternsSkill
- review-querySkill
- code-migrationSkill
- cut-releaseSkill
- data-migrationSkill
- deploy-serviceSkill
- hotfixSkill
- rollbackSkill
- design-endpointSkill
- design-eventSkill
- design-schemaSkill
- evolve-contractSkill
- scaffold-nestjs-moduleSkill
- scaffold-projectSkill
- incident-responseSkill
- investigate-bugSkill
- on-callSkill
- postmortemSkill
- audit-skillsSkill
- distill-review-styleSkill
- write-skillSkill
- debug-with-tracesSkill
- define-alertsSkill
- instrument-serviceSkill
- evaluate-dependencySkill
- grillSkill
- handoffSkill
- orientSkill
- phased-deliverySkill
- spikeSkill
- to-questionnaireSkill
- write-adrSkill
- write-prdSkill
- devops-pr-reviewSkill
- go-backend-pr-reviewSkill
- nestjs-backend-pr-reviewSkill
- python-backend-pr-reviewSkill
- react-frontend-pr-reviewSkill
- bisectSkill
- break-couplingSkill
- dead-code-sweepSkill
- deslopifySkill
- extract-moduleSkill
- rebase-cleanSkill
- resolve-merge-conflictsSkill
- split-commitSkill
- tddSkill
- wait-whatSkill
- wide-renameSkill
- bullmqSkill
- kafkaSkill
- sqs-consumerSkill
- audit-dependenciesSkill
- The first 60 shown.
The file
We split this AGENTS.md into the rules it gives an agent
3 rules. About 0 are common, 2 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
If a repo ships its own commitlint.config.*, that file is the source of truth for types and scopes — read it and follow it exactly.
- Distinctive: line 29
Commit as the configured git user only.
- Distinctive: line 66
Every phase has a non-goals list, a checkable definition of done, and a
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md
Global conventions for any coding agent working in my repos. Skills and
project CONTEXT.md files build on this — they don't restate it.
This file is the cross-tool source of truth. Claude Code, Codex, and other agents
all read AGENTS.md — put a convention here once instead of duplicating it into
tool-specific config. Per-project specifics (domain glossary, stack, deviations)
go in that project's CONTEXT.md (see the stub in this repo).
Commits
- Conventional Commits, enforced with commitlint.
- Types:
feat:,fix:,chore:,refactor:,docs:,test:,build:,ci:,perf:,style:,revert:. - If a repo ships its own
commitlint.config.*, that file is the source of truth for types and scopes — read it and follow it exactly. - One logical change per commit. Subject in imperative mood, no trailing period.
Branches
feature/<name>for new work.bugfix/<name>for fixes.improvement/<name>for non-feature, non-bug changes (perf, refactor, tooling).<name>is short and kebab-cased. Enforced by a huskypre-pushhook.
Commit authorship
- Commit as the configured git user only. Never add agent/AI co-author or attribution trailers, and never push on my behalf unless asked.
PR review — house priorities
Ordered; earlier beats later when they conflict.
- Reuse before building — is there an existing helper, module, or pattern this should use instead of a new one?
- Correctness — logic, edge cases, error handling, concurrency.
- Right altitude — the change solves the actual problem, not more, not less.
- Convention fit — matches the surrounding code and this file's rules.
- Tests — meaningful coverage for the change.
- Style nits last, and only if not autoformatted.
Stack-specific checks and tooling live in skills/pr-review/<language>.md.
Docs
- PRDs, ADRs, and postmortems use the templates in
docs/templates/, driven by the skills inskills/planning/andskills/incident/. - ADRs are numbered and immutable once accepted — supersede, don't edit.
- Postmortems are blameless: systems and decisions, never people.
- Each project keeps a
CONTEXT.mdwith a living domain glossary (ubiquitous language). Use the shared term; don't invent synonyms.
Composing skills
- Most tasks need several skills in order. Describe the task and the matching
workflow skill (
skills/workflows/) is loaded and walks the sequence:new-feature,ship-change,handle-incident,adopt-repo. - The concept, trigger methods, and an example:
docs/composing-skills.md.
Planning multi-session work
- A change that spans more than one session gets broken into phases first
(
planning/phased-delivery). - Every phase has a non-goals list, a checkable definition of done, and a git tag or merged PR as its boundary. Slice vertically (tracer bullets), not by layer. Confirm the phase list before starting.
Before committing
- On any session that touched code, run the
deslopifypass (quality/deslopify) before the commit — subtractive only.
Security
- A change touching auth, user input, file handling, external requests, or
dependencies gets a
security-reviewpass (skills/security/) on top of the inline pr-review checks. Run it before a release too. - A real secret that was ever committed is compromised — rotate it, don't just delete it.
Rejected ideas
- Decisions to not do something live in
.out-of-scope/as short files, not in memory and not deleted. Check there before re-proposing something; add a file when a direction is ruled out.
Tooling
- MCP servers: configs and per-client setup in
.agents/mcp/— Context7 (library docs), DeepWiki (unfamiliar repos), Notion (search/read/write a workspace). - GitHub (PR / issue / release history) goes through the
ghCLI, not an MCP server:.agents/github-cli.md. - External skill sets worth installing (Matt Pocock's, etc.):
.agents/external-skills.md.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

