Release
skillsynchq/txcript
Cut a txcript release — dispatch the prepare-release workflow, approve the plan, watch the tag publish to crates.io, npm, and GitHub Releases, and verify.
Cut and publish a full stable NAC release after main, release-PR, and publication CI pass.
$ npx skills add arcee-ai/nac --skill release -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install arcee-ai/nac release --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/release .claude/skills/release && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .claude/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/arcee-ai/nac/tree/dev/.agents/skills/releaseType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add arcee-ai/nac --skill release -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install arcee-ai/nac release --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/release .agents/skills/release && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .agents/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arcee-ai/nac --skill release -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install arcee-ai/nac release --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/release .cursor/skills/release && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .cursor/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/arcee-ai/nac.git --path .agents/skills/release--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add arcee-ai/nac --skill release -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install arcee-ai/nac release --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/release .gemini/skills/release && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .gemini/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install arcee-ai/nac releaseInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add arcee-ai/nac --skill release -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/release .github/skills/release && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .github/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arcee-ai/nac --skill release -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install arcee-ai/nac release --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arcee-ai/nac.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/release .opencode/skills/release && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "release" agent skill from https://github.com/arcee-ai/nac/tree/dev/.agents/skills/release into .opencode/skills/release/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
releaseCut and publish a full stable NAC release after main, release-PR, and publication CI pass.
Release is an agent skill from arcee-ai/nac. Cut and publish a full stable NAC release after main, release-PR, and publication CI pass. Use when a maintainer asks for a stable version bump, tag, or GitHub Release. Never use for release candidates; NAC RC releases are automated.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).
It sits in Agent Workflows. It works with GitHub, Model Context Protocol and Rust. The repository describes itself as: Give AI agents ambitious work without losing the plot. nac is an open-source harness for long-running tasks, using a central orchestrator, threads, and structured episodes to… The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 60b68e0. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
ghcargogitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Release loads about 2.7k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 1,505 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from arcee-ai/nac at commit 60b68e0, republished under its Apache-2.0 licence (© arcee-ai). 1,505 words, ~2,669 tokens.
.claude/skills/release/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Publish a stable NAC release end to end. A request for X.Y.Z or vX.Y.Z means complete the version bump, merge, annotated tag, GitHub Release, release automation, asset verification, and clean-install smoke test. Do not stop after preparing a branch or pull request.
This workflow is only for stable releases. Never create, edit, rerun, promote, or delete vX.Y.Z-rc.N tags or prereleases; the scheduled release workflow owns release candidates.
X.Y.Z and vX.Y.Z to VERSION=X.Y.Z and TAG=vX.Y.Z. Require canonical stable SemVer with exactly three numeric components and no prerelease or build suffix..github/workflows/release.yml, crates/nac-server/Cargo.toml, Cargo.lock, release-related scripts, and the latest stable GitHub Release before changing anything.origin/main.origin/main SHA. Find the Release workflow run for that SHA and wait until its required jobs succeed. An older green run does not authorize a newer commit.Record the initial main SHA, its successful workflow URL, the previous stable tag, and the target version. These values anchor the rest of the release.
Use only changes reachable from the commit that will be tagged.
The stable binary version is the nac-server package version. The release-managed files are:
crates/nac-server/Cargo.tomlnac-server package entry in Cargo.lockCompare the checked-in nac-server version with VERSION before opening a PR or creating public state. Stop if the checked-in version is greater than VERSION; never tag a higher-version binary with an older release tag.
If origin/main is below VERSION:
chore/release-vX.Y.Z from the captured main SHA.VERSION. Do not update dependencies or reformat unrelated files.cargo metadata --locked --no-deps --format-version 1 reports nac-server VERSION and all changed version-bearing entries agree.git diff --check and the repository's cheapest focused validation. Do not duplicate the full CI suite locally when required CI is available.chore(release): cut vX.Y.Z, push the branch, and open a ready-for-review PR to main with the same title.The PR body must state:
Wait for every required PR check. Merge with the repository's normal merge style only after all required checks pass. Then wait for the Release push workflow on the merge commit to succeed. Record the PR URL, merge SHA, and workflow URL.
If origin/main already contains exactly VERSION, identify the merged PR that introduced that version and verify its required checks and the current main workflow. Do not manufacture a no-op commit, edit an unrelated file, or open an empty release PR. Use the current green main SHA as the release commit and report why a second PR was unnecessary.
If main advances before tagging, do not silently include unreviewed commits. Recompute the change set and wait for CI on the intended release SHA, or stop if the release boundary is no longer clear.
Immediately before tagging, prove again that TAG is absent locally, on the remote, and in GitHub Releases.
Create an annotated tag on the exact verified release commit:
git tag -a "$TAG" "$RELEASE_SHA" -m "$TAG"
git push origin "$TAG"Verify that the pushed object is an annotated tag and that peeling it resolves to RELEASE_SHA. Never move, replace, delete, or force-push a published stable tag.
Pushing the tag alone does not publish NAC assets. The stable asset workflow begins when the GitHub Release is published.
Write notes for users, not maintainers implementing the code:
## Bug fixes as the final section and summarize observable fixes there.TAG, at the end of that final section.Publish a stable, non-draft, non-prerelease GitHub Release for the existing tag. Its title must be exactly TAG:
Save the final notes to a local file and set NOTES_FILE to that path.
gh release create "$TAG" --verify-tag --title "$TAG" --notes-file "$NOTES_FILE" --latestRelease publication triggers .github/workflows/release.yml. Do not manually upload substitute artifacts while that workflow is running.
Release workflow run whose event is release, head branch is TAG, and head SHA is RELEASE_SHA.Verify from GitHub, not only from the local checkout:
TAG.RELEASE_SHA.nac-aarch64-apple-darwin.tar.gznac-x86_64-unknown-linux-musl.tar.gzINSTALL_DIR to a child directory before running scripts/install.sh against the published latest stable release. Invoke that exact installed path with -V and --version; require nac-web VERSION and the short form of RELEASE_SHA. Never overwrite or resolve through an existing user installation.Stop without mutating published state when:
Once a stable tag or Release is public, never delete, recreate, move, or overwrite it without explicit maintainer instruction. Finish all safe verification and report the exact blocker and public state.
Report concrete evidence:
push workflow URL and conclusion;release-event workflow URL and conclusion;-V and --version output;Prefer native repository and GitHub tools when the harness provides them. With GitHub CLI, use structured JSON from gh repo view, gh run list/view/watch, gh pr view/checks/merge, and gh release list/view/create/edit/download; avoid human-formatted tables when release identity, bodies, checks, or asset metadata could be truncated.
© arcee-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in .agents/skills/release of arcee-ai/nac.
Open the folder on GitHubat commit 60b68e0
Release next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Release this skillarcee-ai/nac | 280 | — | ~2.7k | Automated safety check: Pass | Apache-2.0 | |
| Releaseskillsynchq/txcript | 154 | — | ~775 | Automated safety check: Pass | Apache-2.0 | |
| Release WorkflowGoldziher/spikard | 123 | — | ~909 | Automated safety check: Pass | MIT | |
| Release Crater3bl-org/r3bl-open-core | 485 | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Spec Driven Developzhu1090093659/deepseek-pp | 1.9k | — | ~6.9k | Automated safety check: Pass | Apache-2.0 | |
| Rocketmq Rust Issue Generatormxsm/rocketmq-rust | 1.5k | — | ~1.6k | Automated safety check: Pass | Apache-2.0 |
skillsynchq/txcript
Cut a txcript release — dispatch the prepare-release workflow, approve the plan, watch the tag publish to crates.io, npm, and GitHub Releases, and verify.
Goldziher/spikard
Release/publish the spikard Rust core crate and CLI end-to-end.
r3bl-org/r3bl-open-core
Publish a crate release to crates.io with changelog, standalone release notes, git tag, and GitHub release.
zhu1090093659/deepseek-pp
Automates pre-development workflow for large-scale complex tasks.
mxsm/rocketmq-rust
A skill your agent uses when the user asks to create, draft, prepare, or publish a GitHub issue for the rocketmq-rust project — bugs, features, enhancements, refactors, docs, unit tests, CI…
Adancurusul/embedded-debugger-mcp
Embedded hardware debugging workflow for probe-rs targets using embedded-debugger-mcp.
arcee-ai/nac
Triage a GitHub repository's open issues by finding exact duplicates, rejecting evidenceably off-base requests, requesting concrete clarification, applying only existing labels, and opening a linked…
arcee-ai/nac
Run scalable, isolated live QA for nac development. An agent skill from arcee-ai/nac.
Works with
Categories
Cut and publish a full stable NAC release after main, release-PR, and publication CI pass. Release is an agent skill from arcee-ai/nac. Cut and publish a full stable NAC release after main, release-PR, and publication CI pass.
Release fits situations like: A maintainer asks for a stable version bump; release candidates; NAC RC releases are automated.
Run `npx skills add arcee-ai/nac --skill release -a claude-code`. Or copy the skill folder (.agents/skills/release in arcee-ai/nac) into .claude/skills/release in your project. Claude Code loads it when a task matches its description.
Run `npx skills add arcee-ai/nac --skill release -a codex`. Or copy the skill folder (.agents/skills/release in arcee-ai/nac) into .agents/skills/release in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add arcee-ai/nac --skill release -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/release, .gemini/skills/release, .github/skills/release and .opencode/skills/release in your project.
Going by SKILL.md and its folder, Release needs the command-line tools its instructions call (gh, cargo and git).
SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Release is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Release: Release (skillsynchq/txcript, 154 stars), Release Workflow (Goldziher/spikard, 123 stars), Release Crate (r3bl-org/r3bl-open-core, 485 stars) and Spec Driven Develop (zhu1090093659/deepseek-pp, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
arcee-ai (a GitHub organization) maintains it in arcee-ai/nac, which has 280 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.
Source: arcee-ai/nac on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.