Skip to content

Compass 8.0.1

Choose a tag to compare

@jed72 jed72 released this 27 Oct 16:48
· 24 commits to main since this release
Immutable release. Only release title and notes can be modified.
d507e33

Compass 8.0.1 is a patch release. It changes how Compass is packaged and narrows what its commands pre-approve, so the Claude plugin directory can read and review it. Nothing is removed, and no reader changes: every old form 8.0.0 reads is still read until 9.0.0.

Upgrade

Run claude plugin update compass. No archive migration is needed.

What's new

  • A smaller install. An install is now a copy of the 434 files the plugin reads, published to the plugin branch, not the whole repository with its tests and developer documents. The marketplace entry fetches that branch, so 8.0.0 users get 8.0.1 through the usual update (#698).
  • compass policy migrate recognises 8.0.0. Governance copied from the 8.0.0 release is matched to that release (#696).

Changed behavior

  • Commands pre-approve only compass. Each command's allowed-tools now names Bash(compass *) in place of every shell command. Test runs go through compass tdd-red and compass tdd-green, so they stay pre-approved. Three steps now ask for permission once: the status-line setup in /compass:init, scripts/integrate.sh in /compass:ship and scripts/multiagent.sh in /compass:breakdown (#699).
  • Commands that write only issue state write only there. Twelve commands (assess, breakdown, consult, design, flow, init, intent, plan, position, refine, status and verify) pre-approve writes to .compass/ and docs/ only, and init also to compass.yml. A write elsewhere asks first (#699).
  • gh and the Codex hooks get only the variables they need. The GitHub label and page sync passes gh its own settings, the GitHub token, locale, certificates and proxies, and no other variable. The Codex adapter's shared hooks get the same kind of list (#699).
  • A broken install refuses. The pre-tool hook now loads its checks from parts in hooks/lib/. If a part is missing from the install or cannot be read, the hook refuses every call with reader-failed and names the part, in any project, rather than run with a check left out (#699, #701).

Fixes

  • The hooks, including the approval prompt hook, run each Python check from its own file in hooks/py/, not from text inside the script. A file in your project can no longer shadow a module a check imports, because the project folder is no longer on the check's import path (#699, #700).

Queued against this release

  • A check that an 8.0.0 install updates to 8.0.1 from the plugin branch (FU-B3). It needs the published 8.0.1 copy, so it runs after this release.
  • Let the approval guard cover the approval program file. It waits: the approval program moved to hooks/py/ in this release, and the guard change needs its own review.
  • Move the remaining inline Python out of shipped scripts. It waits: the scripts it names, bin/compass-statusline and scripts/multiagent.sh, are not hooks, and this release moves only the hooks' inline programs.
  • Refuse a Codex tool call when python3 is missing. It waits: without python3 the Codex hook fails as it did in 8.0.0, and the fix needs a hook command that does not start with python3.