Borrowing it
Nothing to install: this file belongs to haoxiang-xu/PuPu. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/haoxiang-xu/PuPu/main/.agents/skills/release-run-pipeline/SKILL.mdgit clone --depth 1 https://github.com/haoxiang-xu/PuPuWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/haoxiang-xu/pupu/release-run-pipeline)<a href="https://agentmods.dev/skills/haoxiang-xu/pupu/release-run-pipeline"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/release-run-pipeline/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/haoxiang-xu/pupu/release-run-pipeline"><img src="https://agentmods.dev/badge/skills/haoxiang-xu/pupu/release-run-pipeline.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00055 | $0.01676 |
| Opus 5.5 | $0.00022 | $0.00670 |
| Sonnet 5.5 | $0.00011 | $0.00335 |
| Haiku 4.5 | $0.00006 | $0.00168 |
Grade A, and why
release-run-pipeline scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 132 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PuPu Release Pipeline
Operate the existing release workflows through the deterministic repository CLI. This skill is an operator, not a release authority.
Authority boundary
- Read-only
plan,status, andwaitmay run without extra approval. - Immediately before every
dispatch, state the exact phase, tag, commit/run inputs, and external effect, then obtain a fresh instruction from the project owner. Never carry approval from an earlier phase. - Never approve a GitHub Environment, move or create a tag, close an issue, change Project state, decide GO, or select a fuzzy latest run.
- Stage creates or updates a Draft Release after protected approval. Publish makes that Draft public after a separate protected approval. Treat them as distinct mutations.
- If the Release still has code to land, stop before Stage even when candidate and qualification are green.
Canonical CLI
For pipeline plan/dispatch/status/wait, use only:
node scripts/release-qa/release-operator.mjs <command> ...
Commands:
plan: validate an exact phase/ref/input tuple without GitHub mutation.dispatch: start one confirmed workflow and return its exact run ID/URL.status: read one exact run ID and project its jobs/artifacts/blockers.wait: resume observation of one exact run ID for a bounded period; it never retries or dispatches.
The CLI defaults waits to three hours and polls every 20 seconds. Increase the timeout only when the project owner wants continued monitoring; never shorten it merely to make a long packaging job fail sooner.
Phases
Candidate
Plan with the immutable release tag and full 40-character Unchain revision. Dispatch only after confirmation START_CANDIDATE.
node scripts/release-qa/release-operator.mjs plan --phase candidate --repo haoxiang-xu/PuPu --tag vX.Y.Z --unchain-ref <40-char-sha>
Qualification
For ordinary releases, use qualification with the exact successful candidate run ID and lower stable from-tag. For the frozen v0.1.10 baseline only, use bootstrap. Confirm with START_QUALIFICATION or START_BOOTSTRAP_QUALIFICATION respectively.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 132 lines · 55 tokens per session scan A 958f3c1bade4
release-run-pipeline is a skill published in the GitHub repository haoxiang-xu/PuPu (36 stars, last pushed 3d ago), licensed Apache-2.0. It adds 55 tokens to every session and 1,676 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-21.
Other skills, from other repositories
github-release-management
Comprehensive GitHub release orchestration with AI swarm coordination for automated versioning, testing, deployment, and rollback management.
xberg-release
Xberg release on top of the shared release-workflow: task version:sync to bindings and chart, CI/Publish/Benchmarks readiness. Use before a release.
factory-ship
Experimental workflow for publishing and completing configured software delivery work. Use when the user or an enabled factory policy asks to ship.
releasepr
Adopt, configure, run, or troubleshoot compozy/releasepr in a consuming repository, including Actions, beta/stable/legacy plans, notes, dry-runs, and publication. Excludes pr-release internals and general versioning advice.
gitlab-devops
GitLab DevOps operations — issues, merge requests, CI/CD pipelines, repository browsing, labels, milestones, releases, and wiki management. Use when querying GitLab project status, monitoring pipeline executions, browsing repository files, creating issues for network findings, opening merge requests for config…
cmux-release
Prefer the /release command. It determines the new version (minor by default), gathers the Changelog line from each PR merged since the last stable tag, updates CHANGELOG.md, runs ./scripts/bump-version.sh, commits, runs ./scripts/release-pretag-guard.sh, then tags and pushes.