agentleFS
me-cedricme-cedric/agent-compass/skills/compass/SKILL.md

compass

Skill3 starsChanged 27 days agoMITView on GitHub

Set up, update, migrate, extend and promote agent-compass in a project with the ac CLI. Use when the user asks to install, sync, upgrade or extend compass, or to move a project skill into compass.

13 other projects use a version of this.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

25 rules. 0 are common, 3 are distinctive, and 22 are very specific to this project.

  • 0

    Common

    Most of the 9 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 22

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Run ac from the project root.

    line 12
  2. Very specific:

    Every command takes --dry (show the changes, write nothing) and --json.

    line 14
  3. Very specific:

    Run ac init --dry --json. Read the plan.

    line 25
  4. Very specific:

    Run ac init. It creates .agents/compass.json and then syncs.

    line 26
  5. Very specific:

    Run ac doctor. Fix each fail line.

    line 27
  6. Very specific:

    Run ac check --frozen. It must pass.

    line 28
  7. Very specific:

    Run ac sync --dry --json. Read each change.

    line 35
  8. Very specific:

    Run ac sync. To move to another compass version, run ac sync --to <tag>.

    line 36
  9. Very specific:

    Run ac check --frozen. Then run ac doctor --tokens.

    line 39
  10. Very specific:

    Do not edit a managed file to change compass behavior.

    line 40
  11. Very specific:

    Use this for an old install: a submodule, a vendored copy, .agent/agent-compass.lock, or double skill copies.

    line 44
  12. Very specific:

    If ac prints "migrate needs --docs", stop.

    line 47
  13. Very specific:

    Run ac check --frozen. Report each file that the command kept because the project edited it.

    line 49
  14. Distinctive:

    Add a skill, rule or pack to compass itself.

    line 53
  15. Very specific:

    Use a generic name. Never use a client, project or person name.

    line 56
  16. Very specific:

    Write the skill frontmatter keys in this order: name, description, risk_level, writes_files, requires_tools.

    line 57
  17. Very specific:

    Add disable-model-invocation: true for a skill that only the user starts.

    line 58
  18. Very specific:

    Add metadata.stacks for a skill that fits some stacks only.

    line 59
  19. Very specific:

    Keep the description of a model-invoked skill to 220 characters or fewer.

    line 60
  20. Very specific:

    Write each repository path as a path placeholder: the key of PATH_DEFAULTS in engine/config.mjs in capitals, with _DIR or _FILE, in double …

    line 61
  21. Very specific:

    Add or change a test in test/ for each changed script.

    line 62
  22. Very specific:

    Run npm run check. Fix each finding.

    line 63
  23. Distinctive:

    Do not commit unless the user asks.

    line 64
  24. Very specific:

    If ac prints "Unknown command", stop.

    line 71
  25. Distinctive:

    Check the result before you accept it:

    line 72

“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

compass

Run ac from the project root. It never prompts. Exit 0 is success. Exit 1 is an error or drift. Exit 2 is a usage error. Every command takes --dry (show the changes, write nothing) and --json.

Commands that exist: ac init, ac sync, ac sync --to <tag>, ac check --frozen, ac doctor --tokens. Dev-loop commands: ac env, ac dev and ac run. The skills env, local-run and e2e tell how to use them. ac ui opens the local web UI: assets on and off, the recommended set for the stack, env, run, tests, usage, delivery, promote. ac usage shows tokens and cost by day, project and model. ac promote <skill> copies a project skill into compass. Compass owns the text between its markers and the files that ac sync lists. Put project rules outside the markers.

init

  1. Confirm that the project is a git repository.
  2. Run ac init --dry --json. Read the plan.
  3. Run ac init. It creates .agents/compass.json and then syncs.
  4. Run ac doctor. Fix each fail line. Report each warn line.
  5. Run ac check --frozen. It must pass.
  6. Report the changed files and the command results.

A project that has specs starts with spec-flow, section "Init from specs".

update

  1. Run ac sync --dry --json. Read each change.
  2. Run ac sync. To move to another compass version, run ac sync --to <tag>.
  3. An item with the action kept is a file that the project edited. Compass keeps the edit.
  4. To take the update for a kept item, revert the file. To stop updates for it, add its path to exclude in .agents/compass.json.
  5. Run ac check --frozen. Then run ac doctor --tokens.
  6. Do not edit a managed file to change compass behavior. Change compass, or add the path to exclude.

migrate

Use this for an old install: a submodule, a vendored copy, .agent/agent-compass.lock, or double skill copies.

  1. Run ac migrate --dry.
  2. If ac prints "migrate needs --docs", stop. Tell the user that this compass version migrates only the docs layout. For the docs, use spec-flow.
  3. Show the plan to the user. Run ac migrate only after a yes.
  4. Run ac check --frozen. Report each file that the command kept because the project edited it.

extend

Add a skill, rule or pack to compass itself.

  1. Pick the place: a skill in skills/<name>/SKILL.md, a rule in rules/, a pack in packs/<name>/.
  2. Use a generic name. Never use a client, project or person name. node scripts/check-naming.mjs fails on them.
  3. Write the skill frontmatter keys in this order: name, description, risk_level, writes_files, requires_tools.
  4. Add disable-model-invocation: true for a skill that only the user starts.
  5. Add metadata.stacks for a skill that fits some stacks only.
  6. Keep the description of a model-invoked skill to 220 characters or fewer. Keep the SKILL.md body to 120 lines or fewer.
  7. Write each repository path as a path placeholder: the key of PATH_DEFAULTS in engine/config.mjs in capitals, with _DIR or _FILE, in double braces. Any other double-brace token with capital letters is an install error.
  8. Add or change a test in test/ for each changed script.
  9. Run npm run check. Fix each finding.
  10. Do not commit unless the user asks.

promote

Move a project skill, named <project>-<name>, into compass.

  1. Run ac promote.
  2. If ac prints "Unknown command", stop. Tell the user that this compass version has no promote command.
  3. Check the result before you accept it:
    • The name is generic.
    • The text has no secret, client name, project name or hard-coded path.
    • The frontmatter follows section "extend".
  4. Report the promoted skill and the project copy that the user can now remove.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.