Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/rishi4792/compass/plannpx skills add Rishi4792/compass --skill plangit clone --depth 1 https://github.com/Rishi4792/compassWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00095 | $0.03707 |
| Opus 5 | $0.00048 | $0.01853 |
| Sonnet 5 | $0.00019 | $0.00741 |
| Haiku 4.5 | $0.00010 | $0.00371 |
Grade A, and why
plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 145 lines — stays where its author put it; the contents beside it link to each section on GitHub.
compass:plan
Convert contract.md into the plan the world's best engineers would deliver right the first time.
Read these before you start. They are the standards this stage is held to, and they
live in plugins/compass/shared/ so they are the same for every stage that uses them:
shared/feynman.md— the writing standard for the reader-facing copy this stage produces.
(A standard nobody loads is not a standard. shared/MANIFEST declares who reads each file and
doctrine-wired-check.sh proves it — feynman.md sat unread for three releases while its own
first line claimed three stages loaded it.)
Step 0 — gate
Run compass.sh gate .claude/builds/<slug> review-contract. Non-zero → STOP (contract not LOCKED), offer compass:review-contract. Read contract.md — the invariant below.
⛔ Phase 0 — understand the codebase FIRST (write findings INTO the plan; cite real paths)
- Repo guidance + tooling (PREFER existing workflows):
CLAUDE.md,.claude/, architecture/invariants docs, CI, package scripts, Makefile, test/migration/seed/perf/OOM scripts, deploy hooks. - Real blast radius — read the actual code for every area the contract touches; name files, readers/writers, routes, jobs, DB tables, and the existing workflows that depend on them (direct + indirect) that could regress. Rewrite the INDEX
touchesline with this real file list, and if it overlaps another in-flight build, surface it and ask. - Real infra constraints — DB plan/size, instances, caching, memory ceiling, RBAC, cost invariants. Read, don't assume.
- Confirm reconciliation against reality — can the reproducing query recompute toward the pinned gold? If not, surface it (the contract may bounce back). Greenfield: no code → inventory the chosen stack/scaffolding/conventions/tooling and say "greenfield."
The plan (plan.md)
- Traceability — every contract requirement → step(s).
- INVARIANT → assertion map — each INVARIANT → the exact command asserting its bound. An INVARIANT's assertion may NOT be deferred.
- Files to change/add (real paths) · Workflows touched + regression risks.
- DB / migration — changes; every migration includes a DRY-RUN step: apply forward + roll back on a restored copy/branch DB, assert row-count + checksum identical, BEFORE prod; reversibility; rolling-deploy compatibility.
- Dependencies — any install/upgrade/lockfile/version-pin change is its own explicit step with its own verify (don't let it be improvised).
- API — shape, backward compatibility, idempotency. · Code invariants.
- Security design — threat-model / RBAC matrix (v0.18.0, for any build adding a view/endpoint): design the role×resource matrix the reviews will assert against — every role × the new view/endpoint's resources+actions, allow/deny per cell, traced to the contract's role×view — plus a STRIDE-lite line per surface and the IDOR expectation (each lower role → 403/empty). This is the design artifact review-plan
[E]/ review-build[D](the RBACSTRIDE method) check the built code against. Wire thepermission-matrixskill when present; N/A when the build adds no new view/endpoint. - Concurrency/TOCTOU analysis (v0.19.0, for any build with a read-modify-write): for every read-modify-write on shared state, name the losing interleaving (the concurrent order that corrupts) and the guard that defeats it — a row lock / unique constraint / atomic upsert — and flag any long transaction that holds a lock across I/O. This is the analysis review-plan
[A]/ review-build[A](the EDGERACE method) assert the built code against; also enumerate the boundary/edge checklist (off-by-one · timezone+DST · rollover) for numeric/temporal inputs. N/A when the build has no boundary or read-modify-write surface. - FMEA / perf design (v0.20.0, for any build with an external dependency or non-trivial scale): a per-dependency failure-mode analysis — for each external dependency (DB / API / cron / queue / third-party), state its behavior when slow and when down + the mitigation (timeout / retry-backoff / fallback); no dependency called with no timeout. Plus the anti-patterns to avoid at the contract's row count (N+1 / paginationless / O(n²); the query count + peak memory to hold). This is the design artifact review-plan
[D]/ review-build (the PERFFMEA method) assert the built code against. N/A when the build has no external dependency or data-volume-sensitive loop. - Cross-table invariant design (v0.21.0, for any build touching ≥2 related tables): enumerate the invariants that must hold ACROSS the tables — child-sums-to-parent, no orphan FK, one active generation — and for each name the DB-constraint / trigger (not app-only) that enforces it, plus the zero-violators pre-flight query that returns empty before CLOSED. This is the design artifact review-plan
[B]/ review-build[B](the CROSSTAB method) assert the built code against. N/A when the build has no ≥2-related-table surface. - Compliance / PII design (v0.21.0, for any build touching customer PII / financial records): state a
compliance/PII:line covering what is logged (assert no raw PII/secret in logs), retention, residency, and that no regulated field crosses into an out-of-scope view. This is whatcompass.sh pii-gate(plan seam) requires when the contract declarespii: yes; N/A when the build touches no PII/financial surface.
- Security design — threat-model / RBAC matrix (v0.18.0, for any build adding a view/endpoint): design the role×resource matrix the reviews will assert against — every role × the new view/endpoint's resources+actions, allow/deny per cell, traced to the contract's role×view — plus a STRIDE-lite line per surface and the IDOR expectation (each lower role → 403/empty). This is the design artifact review-plan
- Step checklist — ordered, atomic. Each: what · which requirement · VERIFY command (project-facet rungs) · checkbox. A verify may be "deferred — proven by step N / post-deploy X" ONLY for non-INVARIANT steps with a named later proof.
- Affected routes (v0.8.0, blast-radius): if the build adds or changes the data/render path of ANY page/route (direct OR indirect readers), the plan MUST carry a machine-readable
## Affected routesblock — one route per line, each starting with its path (e.g.- /accounts/[branchId] — prospect page). This is the canonical setroute-coveragechecks. Each such route's step VERIFY must be a page-load rung (GET/Playwright → 200-with-content, on the migration-built schema) — typecheck alone is BANNED for a page/route step (it proves it compiles, not that it runs; the exactpg-method-ratesmiss). Omitting the block when page/route files change is not allowed —route-coverageG-R0 makes declaration mandatory.
- Affected routes (v0.8.0, blast-radius): if the build adds or changes the data/render path of ANY page/route (direct OR indirect readers), the plan MUST carry a machine-readable
- Test plan — unit/integration/migration/API/UI-or-golden-file/permission/regression/perf + reconciliation + (web) design-token + a11y + an idempotency test (run twice → identical end-state).
- Rollout & rollback (exact revert path) · Assumptions/open risks (each with how it's validated).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 145 lines · 95 tokens per session scan A 62a2ef663a64
plan is a skill published in the GitHub repository Rishi4792/compass (2 stars, last pushed 8d ago), licensed MIT. It adds 95 tokens to every session and 3,707 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
agent-host-chat-contributions
Build and review cross-cutting agent-host chat behavior through lifecycle contributions. Use when adding turn lifecycle side effects, prompt or context injection, restored-history transformation, protocol-action observation, or when reviewing changes that add code to AgentSideEffects or AgentService.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.