compass
CLAUDE.md0 starsChanged 2 months agoMITView on GitHub
Repo conventions every agent editing Compass must follow.
In this repository37 other files it gives its agents.
- ask-compassSkill
- codebase-designSkill
- code-reviewSkill
- diagnosing-bugsSkill
- domain-modelingSkill
- implementSkill
- improve-codebase-architectureSkill
- probe-with-docsSkill
- prototypeSkill
- researchSkill
- resolving-merge-conflictsSkill
- scoutSkill
- setup-compassSkill
- tddSkill
- to-specSkill
- to-ticketsSkill
- triageSkill
- wizardSkill
- claude-handoffSkill
- implement-specSkill
- loop-meSkill
- retroSkill
- setup-ts-deep-modulesSkill
- writing-beatsSkill
- writing-fragmentsSkill
- writing-shapeSkill
- git-guardrails-claude-codeSkill
- migrate-to-shoehornSkill
- scaffold-exercisesSkill
- setup-pre-commitSkill
- handoffSkill
- probe-meSkill
- probingSkill
- teachSkill
- to-questionnaireSkill
- wait-whatSkill
- writing-for-agentsSkill
The file
We split this CLAUDE.md 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
- Very specific: line 19
Every skill in engineering/ or productivity/ (the promoted buckets) must have a reference in the top-level README.md.
- Very specific: line 29
Every SKILL.md is either user-invoked (disable-model-invocation: true plus policy.allow_implicit_invocation: false in agents/openai.yaml, …
- Very specific: line 36
No per-platform skills: Don't add etl-databricks, web-typescript, or similar.
- Distinctive: line 53
No em-dashes anywhere in this repo's prose.
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.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
Compass
Compass is our agent-skills repo, adapted from the upstream skills repository (see NOTICE.md) (MIT). It keeps that repo's shape and discipline. The skills stay platform-agnostic; what is specific to a repo (warehouse, cloud, app stack, standards) lives in that repo's docs/agents/ config, never in a skill. See CONTEXT.md for the vocabulary.
Skills are organized into bucket folders under skills/:
engineering/: daily code workproductivity/: daily non-code workflow toolsmisc/: kept around but rarely used, not promotedin-progress/: beta: try them, feedback wanteddeprecated/: no longer used
Every skill in engineering/ or productivity/ (the promoted buckets) must have a reference in the top-level README.md. Skills in misc/, in-progress/, and deprecated/ must not.
Install is a clone plus scripts/install.sh; the wording is copied verbatim from .agents/install-block.md. There is no plugin manifest and no npx route; don't add one.
Each skill entry in the top-level README.md must link the skill name to its SKILL.md.
Each bucket folder has a README.md that lists every skill in the bucket with a one-line description, with the skill name linked to its SKILL.md. The promoted buckets' README.mds and the top-level README.md group entries into User-invoked and Model-invoked; non-promoted bucket README.mds (misc/, in-progress/) use a flat list.
Skills in engineering/ and productivity/ also have a human-facing docs page at docs/<bucket>/<skill-name>.md. The docs tree mirrors those two bucket folders under skills/. When you add, rename, or change the behaviour of a promoted skill, create or re-sync its docs page following .agents/writing-docs.md. Skills in the non-promoted buckets get no docs page.
Every SKILL.md is either user-invoked (disable-model-invocation: true plus policy.allow_implicit_invocation: false in agents/openai.yaml, reachable only by the human) or model-invoked (model- or user-reachable). See .agents/invocation.md.
ask-compass is the router that maps every user-reachable skill and how they relate. Whenever you add, rename, remove, or change how a user-reachable skill fits the flows, re-read ask-compass's SKILL.md and update it so the map stays accurate: a new skill it never mentions, or a stale one it still routes to, is a router that lies.
Compass-wide rules
- Plain-language questions. Every decision question a skill puts to the user carries an In plain terms restatement a non-technical stakeholder could answer. The
probingtemplate carries the line;setup-compasswrites the rule into each target repo'sAGENTS.md/CLAUDE.mdviadocs/agents/plain-language.md. A new skill that asks questions follows it. - No per-platform skills. Don't add
etl-databricks,web-typescript, or similar. Skills generalize; repo-specific facts (platform, dialect, deployment target, standards to pull in) live in the target repo'sdocs/agents/*.mdwritten bysetup-compass. - Write for frontier models. Skills favour goals and criteria over rigid procedure, carry no emphasis scaffolding, use examples only where the format is the point, and hold no hardcoded context sizes.
writing-for-agentscarries the rules; read it before adding or editing a skill. - Diagrams as a required artifact alongside
CONTEXT.md,AGENTS.md, and ADRs: not yet implemented; see.agents/roadmap.md. - Company-skill integration (API, Engineering Security, AWS standards): not yet implemented; see
.agents/roadmap.md.
To (re)install every promoted skill, run scripts/install.sh from a target repo (per-project) or with --user; re-run it after adding, removing, or renaming a skill.
README banner
assets/compass.svg is generated. Edit scripts/build-banner.py (timings, waypoints, palette) and rerun it; never hand-edit the SVG, because the keyframe percentages are derived from the constants. The base style is the finished composition, so reduced-motion viewers see a complete static banner. If the main flow in the README changes, change the waypoints here too.
OKF
This repo is an Open Knowledge Format v0.2 bundle. Every non-reserved .md carries frontmatter with a type (Skill, Skill Doc, Reference, Template, ADR, Glossary, Agent Instructions), a generated: { by, at } actor, and sources where the content derives from upstream. index.md files are generated, never hand-edited: run scripts/okf.py index after adding, removing, or renaming a document, and scripts/okf.py check before committing (CI runs both). log.md at the root is the update log, newest first under ISO date headings; README.md files stay as the human-facing narrative. The root README.md alone carries no frontmatter (GitHub would render it as a table above the banner), so okf.py skips it; every other README keeps its block. New documents get their frontmatter from scripts/okf.py stamp.
The skills also write OKF: every template a skill emits into a target repo (CONTEXT.md, ADRs, docs/agents/*.md, research files, handoffs, questionnaires, out-of-scope notes, local tracker files, teach workspaces) starts with the block defined in skills/engineering/setup-compass/okf.md, which setup-compass copies into the target as docs/agents/okf.md. generated.by is compass/<skill>; verified is added only after the user confirms. A new skill that writes markdown follows the same seed and adds its type to that table. tests/fixtures/target-repo/ is a repo populated exactly as the templates say; scripts/test.sh checks it (and this repo) with okf.py check --strict, run it before committing template changes.
No em-dashes anywhere in this repo's prose. Where a sentence reaches for one, rewrite it with a comma, colon, period, parentheses, or a conjunction.
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.

