Hunk Release Workflow
modem-dev/hunk
Maintainer workflow for preparing, publishing, verifying and curating Hunk releases, with confirmation gates before tags, publishes and public edits.
Apply when reverting commits, undoing merges, or recovering from branch contamination.
$ npx skills add ZaxbyHub/opencode-swarm --skill git-revert-safety -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ZaxbyHub/opencode-swarm git-revert-safety --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/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .claude/skills/git-revert-safety && 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 "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .claude/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safetyType 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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ZaxbyHub/opencode-swarm git-revert-safety --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .agents/skills/git-revert-safety && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .agents/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ZaxbyHub/opencode-swarm git-revert-safety --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .cursor/skills/git-revert-safety && 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 "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .cursor/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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/ZaxbyHub/opencode-swarm.git --path .opencode/skills/generated/git-revert-safety--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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ZaxbyHub/opencode-swarm git-revert-safety --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .gemini/skills/git-revert-safety && 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 "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .gemini/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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 ZaxbyHub/opencode-swarm git-revert-safetyInstalls 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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .github/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .github/skills/git-revert-safety && 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 "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .github/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ZaxbyHub/opencode-swarm git-revert-safety --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ZaxbyHub/opencode-swarm.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.opencode/skills/generated/git-revert-safety .opencode/skills/git-revert-safety && 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 "git-revert-safety" agent skill from https://github.com/ZaxbyHub/opencode-swarm/tree/main/.opencode/skills/generated/git-revert-safety into .opencode/skills/git-revert-safety/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "git-revert-safety", 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.
git-revert-safetyApply when reverting commits, undoing merges, or recovering from branch contamination.
Git Revert Safety is an agent skill from ZaxbyHub/opencode-swarm. Apply when reverting commits, undoing merges, or recovering from branch contamination. Covers collateral damage verification (manifest, package.json, CHANGELOG, lockfiles), cherry-pick vs revert decision matrix, partial-revert detection, merge-parent handling, and post-revert CI verification. Prevents the most common revert failure mode: version metadata regression from git reverse-apply.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file.
It sits in Development, covering Git workflow, Dependency management and Changelog and release notes. It works with Git and npm. The repository describes itself as: Architect-centric agentic swarm plugin for OpenCode. Hub-and-spoke orchestration with SME consultation, code generation, and QA review. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit b63a4bd. 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:
gitbunghnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, 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.
Git Revert Safety loads about 2.2k tokens when it runs. Until then it costs about 102 tokens; SKILL.md has 800 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 ZaxbyHub/opencode-swarm at commit b63a4bd, republished under its MIT licence (© ZaxbyHub). 800 words, ~2,164 tokens.
.claude/skills/git-revert-safety/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Two internal workflows: Safe Git Revert (Steps 1-4) and Branch Contamination Recovery (Steps 5-6). Use the first when reverting known commits. Use the second when the wrong code was merged and you need a clean slate.
Before reverting, list ALL files touched by each commit being reverted. Use the correct command for the situation:
Single commit:
git show --name-only --format= <sha>Multiple commits (contiguous range):
git diff --name-only <commit-before-first>..<last-commit-sha>Merge commit — inspect all parents (handles octopus merges with 3+ parents):
git show --format="%H %P" <merge-sha> # Shows ALL parent SHAs
git log --oneline <merge-sha>^1 # First parent (usually main)
git log --oneline <merge-sha>^2 # Second parent (feature branch)
# For octopus merges: also inspect ^3, ^4, etc.Identify which files in the diff are NOT part of the feature being reverted:
.release-please-manifest.json — version statepackage.json — version field + dependency additions/removalsCHANGELOG.md — release historybun.lock, package-lock.json) — dependency graphdist/ is generated and NOT committed, so it never appears in a revert diff and
needs no rebuild+commit as part of a revert — reverting the source is enough.
Gate: If ANY version metadata or dependency file appears in the diff, you MUST verify post-revert state (Step 3).
| Scenario | Strategy | Caveat |
|---|---|---|
| Single commit that does NOT touch release/build artifacts | git revert <sha> | Still verify metadata diff after |
| Single commit that DOES touch release artifacts | Verify post-revert metadata manually | May need corrective commit |
| Multi-commit revert, no releases between | git revert <sha1> <sha2>... | Verify each commit's file scope |
| Multi-commit revert, releases between | Cherry-pick fix onto fresh branch | Avoids collateral damage from reverse-apply |
| Merge commit revert | git revert -m <parent-number> <merge-sha> | Must specify correct parent (usually -m 1 for main) |
| Branch contamination (wrong code merged) | Fresh branch + cherry-pick | See Workflow B |
| Revert of revert (re-apply feature) | git revert <revert-sha> | ⚠️ Code may have drifted — check for conflicts |
| Squash merge revert | Fresh branch + cherry-pick preferred | Squash merges have no merge-parent metadata |
| Octopus merge (3+ parents) | Fresh branch + cherry-pick unless parent is unambiguous | -m parent selection is error-prone; prefer clean slate |
Rule: If commits to revert span across release-please merge commits, ALWAYS prefer cherry-pick over revert.
After reverting, verify these files match expected state:
.release-please-manifest.json — version must match the latest non-draft, non-prerelease GitHub release
# List releases excluding drafts and prereleases
gh release list --limit 5 --json tagName,isDraft,isPrerelease --jq '.[] | select(.isDraft==false and .isPrerelease==false) | .tagName'
node -e "console.log(require('./.release-please-manifest.json')['.'])"package.json version field — must match the manifest
node -e "console.log(require('./package.json').version)"CHANGELOG.md — must still contain entries for all released versions
# Cross-platform: count version headings
node -e "const c=require('fs').readFileSync('CHANGELOG.md','utf8'); console.log((c.match(/^## \[/gm)||[]).length)"
# Compare against GitHub releases
gh release list --limit 10Dependencies — if package.json dependencies changed, verify lockfile is consistent
bun install --frozen-lockfile # Must succeedBundle size — if dependencies were added/removed, verify smoke test thresholds still pass. dist/ is generated and NOT committed; run bun run build locally only when you need the bundle to verify.
bun run build
bun test tests/smoke --timeout 120000If any check fails: Do NOT hand-edit release-please versions. Restore metadata from the known-good state of the latest release commit or re-run release-please. Apply a corrective commit restoring from the last known-good state before pushing.
After pushing the revert:
gh run list --branch main --limit 10 --json databaseId,conclusion,createdAt --jq '.[] | select(.conclusion=="success")'Use when the wrong code was merged to main and you need a clean recovery.
Create a fresh branch from origin/main:
git fetch origin main
git checkout -b fix/<name> origin/mainCherry-pick ONLY the fix/feature commits that should be on the branch:
git cherry-pick <fix-sha>Verify the cherry-picked branch has exactly the files you expect:
git diff --name-only origin/main..HEADRun full QA gates before pushing (lint, build, tests, smoke tests). dist/ is generated and NOT committed — do not stage it; run bun run build locally only when you need the bundle to verify.
Do NOT attempt incremental cleanup (removing bad files one by one from a contaminated branch) when release metadata, generated bundles, or dependency graphs are involved. Clean-slate cherry-pick guarantees no contamination leaks.
After resolving any revert or cherry-pick conflicts:
git diff to review ALL resolved files — not just the conflicted onesbun run build (dist/ is generated and NOT committed — do not stage it)SKILLS: file:.opencode/skills/generated/git-revert-safety/SKILL.md© ZaxbyHub, MIT. 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 .opencode/skills/generated/git-revert-safety of ZaxbyHub/opencode-swarm.
Open the folder on GitHubat commit b63a4bd
Git Revert Safety 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 |
|---|---|---|---|---|---|---|
| Git Revert Safety this skillZaxbyHub/opencode-swarm | 494 | — | ~2.2k | Automated safety check: Pass | MIT | |
| Hunk Release Workflowmodem-dev/hunk | 9.6k | — | ~3.8k | Automated safety check: Pass | MIT | |
| AionUi Version BumpiOfficeAI/AionUi | 33k | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| ZCF Release AutomationUfoMiao/zcf | 6.1k | — | ~3.4k | Automated safety check: Pass | MIT | |
| Git Changes ReporterNo-Trade-No-Life/Yuan | 352 | — | ~1.2k | Automated safety check: Pass | MIT | |
| ClawRouter Release ChecklistBlockRunAI/ClawRouter | 6.6k | — | ~1.4k | Automated safety check: Pass | MIT |
modem-dev/hunk
Maintainer workflow for preparing, publishing, verifying and curating Hunk releases, with confirmation gates before tags, publishes and public edits.
iOfficeAI/AionUi
Automates an AionUi release: checks the latest AionCore release and its artifacts, updates package.json, writes the changelog, opens a PR and tags the release.
UfoMiao/zcf
Automates a version release with changesets: analyzes code changes, writes a bilingual CHANGELOG, bumps the version and commits through a release branch and pull request.
No-Trade-No-Life/Yuan
生成结构化 git 变更报告(JSON + Markdown)。使用此技能当用户提到"git 变更"、"commit 摘要"、"代码审查"、"release note"、"近期改动"、"每日摘要",或需要分析指定 commit 区间的代码变更。包含三元组结构(设计意图、核心代码、影响范围)的语义化报告,适用于代码审查、发布说明、团队同步、CI/CD 等场景。
BlockRunAI/ClawRouter
Walks the agent through every ClawRouter release step in order, from the version bump and changelog entry to build, tests, npm publish, git tag and GitHub release.
dcb/homeassistant-claude-kit
Cut a new homeassistant-claude-kit version. An agent skill from dcb/homeassistant-claude-kit.
ZaxbyHub/opencode-swarm
Runs an evidence-gated, quote-grounded audit of a codebase for security, QA, accessibility, performance and more, and writes a verified report without changing source files.
ZaxbyHub/opencode-swarm
Drives a bug report from validation and root-cause tracing through a critic-reviewed plan, an approved minimal fix and a PR-ready closure, never merging without recorded human approval.
ZaxbyHub/opencode-swarm
Codex adapter for opencode-swarm that governs commits, pushes, draft PRs, PR body updates and CI closeout, deferring to the repo's canonical commit-pr protocol.
ZaxbyHub/opencode-swarm
Keeps plans, decisions, evidence and reviewer verdicts in small files so long multi-phase tasks survive context compaction and session resumes.
ZaxbyHub/opencode-swarm
Ingests existing pull request feedback such as review comments and CI failures, verifies each claim, fixes confirmed issues and reports closure status for every item.
ZaxbyHub/opencode-swarm
Monitor a pull request after creation and act autonomously on pushed PR activity.
Categories
Apply when reverting commits, undoing merges, or recovering from branch contamination. Git Revert Safety is an agent skill from ZaxbyHub/opencode-swarm. Apply when reverting commits, undoing merges, or recovering from branch contamination.
Git Revert Safety fits situations like: tasks that involve Git workflow; tasks that involve Dependency management; tasks that involve Changelog and release notes.
Run `npx skills add ZaxbyHub/opencode-swarm --skill git-revert-safety -a claude-code`. Or copy the skill folder (.opencode/skills/generated/git-revert-safety in ZaxbyHub/opencode-swarm) into .claude/skills/git-revert-safety in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ZaxbyHub/opencode-swarm --skill git-revert-safety -a codex`. Or copy the skill folder (.opencode/skills/generated/git-revert-safety in ZaxbyHub/opencode-swarm) into .agents/skills/git-revert-safety 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 ZaxbyHub/opencode-swarm --skill git-revert-safety -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/git-revert-safety, .gemini/skills/git-revert-safety, .github/skills/git-revert-safety and .opencode/skills/git-revert-safety in your project.
Going by SKILL.md and its folder, Git Revert Safety needs the command-line tools its instructions call (git, bun, gh and node).
SKILL.md contains no URLs. Its commands use git and gh, 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.
Git Revert Safety is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.7k 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 Git Revert Safety: Hunk Release Workflow (modem-dev/hunk, 9.6k stars), AionUi Version Bump (iOfficeAI/AionUi, 33k stars), ZCF Release Automation (UfoMiao/zcf, 6.1k stars) and Git Changes Reporter (No-Trade-No-Life/Yuan, 352 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ZaxbyHub (a GitHub organization) maintains it in ZaxbyHub/opencode-swarm, which has 494 GitHub stars. The repository holds 91 skills in this directory. The repository was last updated on October 10, 2026.
Source: ZaxbyHub/opencode-swarm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.