How to install cmux-release
npx skills add null --skill cmux-releaseFull instructions (SKILL.md)
Source of truth, from manaflow-ai/cmux.
name: cmux-release description: "cmux release workflow, version bumping, changelog updates, pretag guard, release tags, and release asset expectations. Use when preparing or troubleshooting a cmux release."
cmux Release
Use the /release command to prepare a new release. This will:
- Determine the new version (bumps minor by default)
- Gather commits since the last tag and update the changelog
- Update
CHANGELOG.md(the docs changelog page atweb/app/docs/changelog/page.tsxreads from it) - Run
./scripts/bump-version.shto update both versions - Commit, run
./scripts/release-pretag-guard.sh, tag, and push
Version bumping
./scripts/bump-version.sh
./scripts/bump-version.sh patch
./scripts/bump-version.sh major
./scripts/bump-version.sh 1.0.0
This updates both MARKETING_VERSION and CURRENT_PROJECT_VERSION. The build number is auto-incremented and is required for Sparkle auto-update to work.
Before creating a release tag, run:
./scripts/release-pretag-guard.sh
If it fails, run ./scripts/bump-version.sh, commit the build-number bump, then retry tagging.
Manual release steps if not using the command:
./scripts/release-pretag-guard.sh
git tag vX.Y.Z
git push origin vX.Y.Z
gh run watch --repo manaflow-ai/cmux
Notes
- Requires GitHub secrets:
APPLE_CERTIFICATE_BASE64,APPLE_CERTIFICATE_PASSWORD,APPLE_SIGNING_IDENTITY,APPLE_ID,APPLE_APP_SPECIFIC_PASSWORD,APPLE_TEAM_ID. - The release asset is
cmux-macos.dmgattached to the tag. - README download button points to
releases/latest/download/cmux-macos.dmg. - Bump the minor version for updates unless explicitly asked otherwise.
- Update
CHANGELOG.md; docs changelog is rendered from it.
Detailed reference
- Read references/release-checklist.md for a more detailed release checklist and common failure handling.
Related skills
More from manaflow-ai/cmux and the wider catalog.
cmux
End-user control of cmux topology and routing (windows, workspaces, panes/surfaces, focus, moves, reorder, identify, trigger flash). Use when automation needs deterministic placement and navigation in a multi-pane cmux layout.
cmux-browser
End-user browser automation with cmux. Use when you need to open sites, interact with pages, wait for state changes, and extract data from cmux browser surfaces.
cmux-markdown
Open markdown files in a formatted viewer panel with live reload. Use when you need to display plans, documentation, or notes alongside the terminal with rich rendering (headings, code blocks, tables, lists).
cmux-settings
View and edit cmux settings in ~/.config/cmux/cmux.json. Use when the user wants to change cmux preferences (appearance, sidebar, notifications, automation, browser, shortcuts), set a value by JSON path, validate the file, open it in an editor, or look up which keys cmux recognizes. Triggers on '/cmux-settings', 'change cmux setting', 'set <something> in cmux', 'cmux config', 'cmux.json', or 'rebind a cmux shortcut'.
cmux-workspace
Work inside the current cmux workspace and terminal. Use for cmux workspace, current workspace, caller surface, panes, surfaces, socket targeting, and non-interfering cmux automation.
cmux-customization
Customize cmux for an end user. Use when changing cmux.json actions, custom commands, workspace layouts, plus-button behavior, surface tab bar buttons, Command Palette entries, Dock controls, sidebar and app settings, shortcuts, notifications, browser routing, examples-library presets, or Ghostty-backed terminal preferences.