crabbuild/compass/compass-release
Claude Code and agent skill by crabbuild/compass
- community
Checking that the SKILL.md file is still in the repository.
Release Compass from the latest origin/main. Use this skill whenever a user asks to sync Compass, bump a Compass version, create or merge a release PR, build or publish macOS/Linux/Windows artifacts, write release notes, verify release downloads, or build the matching VS Code VSIX. Follow the complete gated workflow rather than treating a release as a local version edit.
Install
npx vskill@latest install crabbuild/compass/compass-releaseSKILL.md
Compass release
Use this skill for the full Compass release path. Compass releases are immutable, multi-platform artifacts, so the version bump, PR, tag, CI build, release notes, and download verification must describe one exact commit.
Inputs and defaults
Extract these from the user request before changing anything:
version: the explicit SemVer requested by the user (for example0.3.7). Never guess a version when the request is ambiguous.with_vsix: build the VS Code extension when requested; do not publish it to a GitHub release unless the user explicitly asks.release_notes: summarize the user-visible changes since the previous Compass tag. Keep the notes concise and link the changelog and comparison range.repo: the Compass checkout named by the user. Resolve it withgit rev-parse --show-toplevel; do not assume a particular worktree path.
Use these shell variables after the version is confirmed:
Safety gates
Stop and report the blocker instead of improvising when:
- The worktree has user changes (
git status --shortis non-empty). Preserve them; never usegit reset --hard,git clean, force-push, or overwrite unrelated files. /Volumes/Workspaceis missing or$target_dircannot be created and written. Cargo must not fall back to a localtarget/directory.- The requested tag already exists, points at a different commit, or the GitHub release already exists. Published realizations are immutable.
gh auth statusor repository permissions do not allow fetching, pushing, PR operations, or release inspection.- Metadata, validation, PR checks, tag validation, a release job, an archive checksum, or an archive smoke check fails. Do not publish a partial artifact set.
Publishing a PR, tag, or release is an external mutation, but it is in scope when the user explicitly asks to publish. Confirm exact version, branch, base commit, and target repository in commentary before the first push.
1. Sync and audit
From the repository root:
Start from the exact origin/main tree. If the worktree is clean, create or switch to codex/release-${version} from origin/main; if the branch already exists, verify that it has no unrelated commits before continuing. Do not silently release from a stale branch. Record the base SHA.
Read the repository AGENTS.md, COMPATIBILITY.md, docs/implementation/workspace-tour.md, and docs/implementation/extending-compass.md before editing. For a release-only change, the relevant package identity is compass-cli (binary compass), the shared workspace version in the root Cargo.toml, and the VS Code package when the extension is included.
Audit the current version with Cargo metadata, not a single text match:
The Compass workspace packages must agree on one release version (excluding the vendored language-pack exception used by the repository). The fuzz harness package itself remains 0.0.0.
2. Bump metadata and changelog
Update only Compass-owned metadata from the previous version to $version:
- root workspace version in
Cargo.toml; - internal Compass dependency constraints in
crates/*/Cargo.tomlandfuzz/Cargo.toml; - Compass package records in
Cargo.lockandfuzz/Cargo.lock; - the qualification producer version in
tests/qualification/code-graph-v1-semantic.jsonwhen present; editors/vscode/package.jsonand its corresponding rootpackage-lock.jsonworkspace entry;CHANGELOG.md, preserving the emptyUnreleasedsection and adding a dated$versionsection.
Do not globally replace arbitrary occurrences of the old number: external dependencies, the fuzz package version, schema versions, and historical changelog entries may legitimately retain other values. Use a controlled edit and inspect git diff.
Build release notes from the meaningful commits between the previous compass-v* tag and origin/main; omit generated noise and internal-only details. Cover behavior users can act on, installation, checksums, the changelog link, and the comparison link.
3. Validate before publishing the PR
Verify the build volume and create only this checkout's target directory:
Set CARGO_TARGET_DIR="$target_dir" on every Cargo invocation. Run the repository's release gates, using --locked and Rust 1.97.1:
For a release that changes JavaScript, the VS Code extension, or viewer assets, also run:
If a required gate cannot run, state why and do not claim the release is fully verified.
4. Commit, PR, and merge
Inspect all changes before staging:
Commit the intentional release metadata and changelog as Release Compass $version. Push codex/release-$version, then open a draft PR into main with a short summary, validation list, and release-note summary. Mark it ready only after the diff is reviewed. Wait for every required check, including the six platform build checks, to pass. Merge with the repository's normal merge strategy and delete the remote branch only after checks are green.
After merging:
The PR merge commit becomes the only valid release source. Do not tag the pre-merge branch tip.
5. Tag, build, publish, and verify the CLI release
Before tagging, confirm the tag is absent and the merged tree has one uniform Compass version. Create an annotated tag on the merge SHA and push it:
The tag triggers .github/workflows/compass-release.yml. It builds and verifies these six targets:
x86_64-apple-darwinandaarch64-apple-darwin;x86_64-unknown-linux-gnuandaarch64-unknown-linux-gnu;x86_64-pc-windows-msvcandaarch64-pc-windows-msvc.
Monitor the exact workflow run until it completes successfully:
Inspect the published release and replace autogenerated notes with curated notes titled Compass v$version. The expected asset set is 15 files: six .tar.gz archives, six matching .sha256 files, compass-release.json, install.sh, and install.ps1.
Download into a unique temporary directory and verify every checksum and archive listing:
Confirm the release is not draft/prerelease, the tag resolves to origin/main, and the worktree has no generated or unrelated changes. Report the release URL, workflow URL, tag SHA, all target names, asset count, and verification result. Include convenient exact-version install commands:
6. Optional VS Code VSIX
When the user asks to build the extension, first ensure editors/vscode/package.json and the root lockfile workspace entry equal $version, then run:
The local artifact is editors/vscode/crabbuild-compass-vscode-$version.vsix. The manual .github/workflows/compass-vscode-release.yml workflow can package a CI artifact when the user explicitly asks; it requires the version input and confirmation package. Do not attach the VSIX to the CLI release unless requested.
Final handoff
Lead with the outcome. State:
- version, release URL, PR URL, tag, merge SHA, and workflow URL;
- six target archives, six checksums,
compass-release.json, and the two installer scripts (or the VSIX path/checksum when requested); - curated release-note highlights;
- gates run and any checks not run or non-fatal warnings;
- checksum/archive verification and worktree status.
Never describe a release as published until the GitHub release is live and all expected downloads have passed verification.
Security
- Security scanPassed, 93 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/compass-release/SKILL.md
Popularity
- Repository stars
- 162
- Repository forks
- 8
- 7-day trend score
- 25
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/crabbuild/compass/compass-release)