بنقرة واحدة
project-release-workflow
Create and push a release tag to trigger GitHub Release workflow.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Create and push a release tag to trigger GitHub Release workflow.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | project-release-workflow |
| description | Create and push a release tag to trigger GitHub Release workflow. |
| argument-hint | <vX.Y.Z> [--dry-run] [--force-tag] |
| allowed-tools | Bash, Read, Edit, Write, Grep, Glob |
Prereqs:
git available on PATH.gh available on PATH and authenticated (gh auth status) for GitHub remotes.semantic-commit available on PATH (used for automated version-bump commit when needed).package*.json files are present: node available on PATH (used for JSON version sync).origin configured and reachable.v* tags:
.github/workflows/release.ymlon.push.tags: ["v*"]Inputs:
<version> (for example v0.1.0)--remote <name> (default origin)--dry-run (validate and print planned actions only)--force-tag (overwrite existing local/remote tag with same version)--poll-seconds <n> (default 15)--max-wait-seconds <n> (default 1800)Outputs:
vX.Y.Z -> X.Y.Z) for:
version = "..." entries in tracked Cargo.toml filesworkflows/*/workflow.toml manifests (excluding _template)package.json and package-lock.json version fieldsworkflows/bangumi-search/src/info.plist.template BANGUMI_USER_AGENT placeholder (nils-bangumi-cli/X.Y.Z)Cargo.lock workspace package versions when present.THIRD_PARTY_LICENSES.md when its inputs changed..github/workflows/ci.yml) for the release head commit is success (GitHub remotes).Release <version>).git push <remote> refs/tags/<version>).success.Exit codes:
0: success1: operational failure (git/remote/tag push error)2: usage error3: precondition failure (not git repo, dirty tree, missing remote, duplicate tag)124: timeout while waiting for release workflow/release pageFailure modes:
v).--force-tag when re-tagging an existing release version is intentional.origin (or provided remote) not configured.<PROJECT_ROOT>/.agents/skills/project-release-workflow/scripts/project-release-workflow.shgit repo, clean tree, remote exists, upstream branch ready).Cargo.toml + workflow manifests + root package*.json + Bangumi User-Agent placeholder), refresh
Cargo.lock and tracked THIRD_PARTY_LICENSES.md as needed, then commit/push when changes exist..github/workflows/ci.yml) for the release head commit to complete with success.Release <version>.success.This is a project-local skill scoped to cutting and publishing a release for
this repository: version sync, release-head CI gating, annotated tag creation,
and release-page verification on the configured remote. The broader
allowed-tools set exists only to support the step 9 fix-and-retag loop on a
failing release; it must not mutate runtime-kit manifests, rendered product
output, global runtime homes, credentials, or sessions. Re-tagging an existing
release version requires the explicit --force-tag flag.
This skill is also reachable through the Claude Code /release slash command,
which dispatches here via <repo>/.agents/scripts/release.sh — a thin wrapper
that execs the script above. Args forward unchanged; behaviour is identical
whether you invoke the skill directly or type /release v0.1.0.
The skill script remains the canonical implementation per the multi-CLI mirror
rule (see claude-kit's docs/dispatcher-commands.md): codex / opencode discover
work through .agents/skills/, Claude Code reaches the same logic through the
dispatcher convention.