add-standards-layer
Skill1 starsChanged 4 months agoMITView on GitHub
Scaffold a new language or framework standards layer for this config repo — a standards-<name> skill built from the shared templates, written as a delta over common/ and registered in the docs.
In this repository14 other files it gives its agents.
- .claude/rules/common/agents.mdAGENTS.md
- docs/agents.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- standards-<layer>Skill
- add-agentSkill
- audit-configSkill
- plan-featureSkill
- research-reuseSkill
- review-changesSkill
- shipSkill
- standards-fastapiSkill
- standards-pythonSkill
- standards-typescriptSkill
- tddSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 1 is distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Add a standards layer for $ARGUMENTS to this repository.
- Very specific: line 23
If the guidance is general, it belongs in common/ instead — put it there and stop.
- Very specific: line 49
Write only the delta: Every topic file opens with a > Extends common/<topic>.md line.
- Very specific: line 50
If you catch yourself restating a rule from a layer above, delete it.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill 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
Add a standards layer for $ARGUMENTS to this repository.
Where layers live
.claude/rules/common/— stack-agnostic rules. No frontmatter, loaded in every session. This is where non-negotiable invariants live, because they must apply while a file is being created and after/compact.skills/standards-<name>/— language and framework layers. These load on demand when thedescriptionmatches the work at hand, which also makes them distributable inside the plugin (.claude/rules/is not a plugin component)..claude/rules/_template/— blank canonical stubs to copy from.
Steps
- Confirm there is a real delta. A layer exists only to say what
common/does not already say. If the guidance is general, it belongs incommon/instead — put it there and stop. Create
skills/standards-<name>/with aSKILL.mdand one file per topic where the layer has a genuine delta. Copy the stubs from.claude/rules/_template/; the canonical set is a menu, not a mandate:coding-style.md·patterns.md·security.md·testing.md·hooks.mdProcess topics (
agents,code-review,development-workflow,git-workflow) arecommon/-only and must not be duplicated into a layer.Write
SKILL.mdas a thin overview, under 500 lines, that says what the layer covers and points at the topic files. Itsdescriptionis the trigger — name the concrete technologies and concerns so the layer loads when it should:--- name: standards-<name> description: <Name> coding standards — <the two or three things a reader would search for>. Use when writing or reviewing <name> code. ---For a framework layer, extend the language layer rather than
common/, and say so in the body:> Extends [standards-python](../standards-python/SKILL.md).- Write only the delta. Every topic file opens with a
> Extends [common/<topic>.md](...)line. If you catch yourself restating a rule from a layer above, delete it. If a rule turns out to be general across languages, move it up intocommon/instead of repeating it. - Register the layer in:
CLAUDE.md— the map of the repository and the layer table..claude/rules/README.md— the taxonomy.docs/(anddocs/ru/) — wherever layers are listed.
- Wire tooling if the layer needs it — formatter/linter hooks in
hooks/hooks.jsonand the matching entries inpermissions.allow. Hooks must be self-guarding: no-op when the tool is not installed, and never block an edit. - Verify with
/audit-config, then confirm the layer actually triggers: in a fresh session, a prompt about that language should load the skill without naming it.
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.

