Worktrunk Release Workflow
max-sixty/worktrunk
Walks a maintainer through cutting a Worktrunk release: sync the release branch, pass two test gates, review the changes, then publish.
Releases the current Coffee GB Maven snapshot through the GitHub Maven release workflow, then verifies and curates the tag and GitHub release.
$ npx skills add trekawek/coffee-gb --skill release-new-version -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install trekawek/coffee-gb release-new-version --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/trekawek/coffee-gb.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/release-new-version .claude/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .claude/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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/trekawek/coffee-gb/tree/master/.agents/skills/release-new-versionType 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 trekawek/coffee-gb --skill release-new-version -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install trekawek/coffee-gb release-new-version --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/trekawek/coffee-gb.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/release-new-version .agents/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .agents/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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 trekawek/coffee-gb --skill release-new-version -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install trekawek/coffee-gb release-new-version --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/trekawek/coffee-gb.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/release-new-version .cursor/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .cursor/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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/trekawek/coffee-gb.git --path .agents/skills/release-new-version--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 trekawek/coffee-gb --skill release-new-version -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install trekawek/coffee-gb release-new-version --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/trekawek/coffee-gb.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/release-new-version .gemini/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .gemini/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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 trekawek/coffee-gb release-new-versionInstalls 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 trekawek/coffee-gb --skill release-new-version -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/trekawek/coffee-gb.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/release-new-version .github/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .github/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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 trekawek/coffee-gb --skill release-new-version -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install trekawek/coffee-gb release-new-version --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/trekawek/coffee-gb.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/release-new-version .opencode/skills/release-new-version && 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-new-version" agent skill from https://github.com/trekawek/coffee-gb/tree/master/.agents/skills/release-new-version into .opencode/skills/release-new-version/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "release-new-version", 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.
release-new-versionReleases the current Coffee GB Maven snapshot through the GitHub Maven release workflow, then verifies and curates the tag and GitHub release.
From a clean, synchronized default branch, the agent runs scripts/versions.py to get the authoritative release version (the root Maven version without -SNAPSHOT), the next development version (last numeric part incremented plus -SNAPSHOT), the coffee-gb tag and the release title. It stops if the version is not a numeric snapshot, the tag or release already exists unexpectedly, or the branch cannot be fast-forwarded cleanly, and it never releases unpushed or divergent work.
It then dispatches the Maven release workflow with those values and watches it to completion before touching the release. Afterwards it verifies the annotated tag, the next-development commit on the default branch and that the GitHub release carries the executable Swing JAR, non-empty and named after the version, while internal validation files stay unattached. The skill goes on to build complete release notes, with an issue screenshot when one is available.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 554ea56. 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.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
ghgitpython3From 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.
Coffee GB Release loads about 1.4k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 713 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); the scripts in this folder are not scanned.
The full file from trekawek/coffee-gb at commit 554ea56, republished under its MIT licence (© trekawek). 713 words, ~1,358 tokens.
.claude/skills/release-new-version/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Publish from the repository default branch and leave a verified GitHub release with the executable Swing JAR, complete notes, and an issue screenshot when one is available.
git pull --ff-only origin <default-branch> and verify it now matches. Do not release unpushed commits, a branch with divergent history, or an unmerged branch.python3 .agents/skills/release-new-version/scripts/versions.py from the repository root.-SNAPSHOT;-SNAPSHOT;coffee-gb-<release_version>;Coffee GB <release_version> (exact capitalization and spacing, with no
trailing punctuation);Dispatch .github/workflows/maven-release.yml on the remote default branch with the calculated values:
gh workflow run "Maven release" --ref <default-branch> \
-f release_version=<release_version> \
-f development_version=<development_version>Find the newly dispatched run, watch it to completion, and inspect failed logs if necessary. Do not create or edit the release while the workflow is still running. The workflow prepares coffee-gb-<release_version>, advances the Maven version, publishes to Maven Central, and currently creates an initial GitHub release.
After success, fetch and verify:
<development_version>;target/checkout/swing/target/coffee-gb-<release_version>.jar is attached as coffee-gb-<release_version>.jar and is non-empty.NATIVE-PACKAGE-MATRIX.properties and SHA256SUMS were used only for internal validation and are
not attached to the GitHub release.Find the immediately preceding coffee-gb-* release tag. Use the range from that tag (exclusive) through the new tag (inclusive).
Collect all three views before writing the notes:
Use GitHub's generated notes as a starting point, then reconcile them against the collected commits, merged PRs, and fixed issues. Include a concise change summary followed by explicit Merged pull requests and Fixed issues lists; write None when a list is genuinely empty. Link PR and issue numbers, credit contributors, and omit mechanical release commits. Do not invent fixed issues or infer a fix from timing alone.
Inspect fixed issues and their linked PRs for an existing screenshot that demonstrates a visible fix. Prefer the clearest single after-fix image.
Because the workflow creates the initial release, edit that release rather than creating a duplicate. Set its exact title to Coffee GB <release_version> and replace its body with the curated notes. Do not use the lowercase/hyphenated tag form as the title, and do not append a period or other punctuation. If the executable JAR is missing after a successful run, stop and investigate the workflow inconsistency instead of silently substituting an unrelated local build.
Verify with gh release view <tag> --json name,tagName,url,assets,body that:
name exactly matches Coffee GB <release_version>, including capitalization and spacing,
with no trailing punctuation;tagName matches the new tag;coffee-gb-<release_version>.jar is present exactly once;NATIVE-PACKAGE-MATRIX.properties nor SHA256SUMS is present;Native package signing evidence section;Report the workflow run, tag, release URL, released version, next development version, and executable asset.
© trekawek, 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 2 other files (scripts) in .agents/skills/release-new-version of trekawek/coffee-gb.
Open the folder on GitHubat commit 554ea56
Coffee GB 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 |
|---|---|---|---|---|---|---|
| Coffee GB Release this skilltrekawek/coffee-gb | 1.2k | — | ~1.4k | Automated safety check: Pass | MIT | |
| Worktrunk Release Workflowmax-sixty/worktrunk | 9.2k | — | ~6.9k | Automated safety check: Pass | Custom licence | |
| Kt Search Releasejillesvangurp/kt-search | 155 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Codex Proxy RS Releasezyycn/codex-proxy-rs | 780 | — | ~327 | Automated safety check: Pass | Apache-2.0 | |
| CI Automationjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~1.4k | Automated safety check: Notes | MIT | |
| ClickUp CLI Release Processkrodak/clickup-cli | 123 | — | ~906 | Automated safety check: Warn | MIT |
max-sixty/worktrunk
Walks a maintainer through cutting a Worktrunk release: sync the release branch, pass two test gates, review the changes, then publish.
jillesvangurp/kt-search
A skill your agent uses when the user wants to cut, publish, tag, or create a GitHub release for kt-search, especially when the task includes version bumping, validating that commits are pushed…
zyycn/codex-proxy-rs
Plans versions, writes release notes, publishes stable or pre-release builds and recovers from failed releases for Codex Proxy RS, without covering deploys or tag cleanup.
jeremylongshore/tons-of-skills-marketplace
A skill your agent uses when running GitHub Actions locally, creating task runner recipes, generating changelogs from git history, managing GitHub PRs/issues/releases programmatically, or creating…
krodak/clickup-cli
Walks through releasing a new version of clickup-cli: pre-release checks, version bump, tagging, CI watch, release notes and the Homebrew update.
different-ai/openwork
Cuts an OpenWork desktop release through a tag-driven GitHub Actions workflow that makes no commits, with pre-tag checks on open fix PRs and verification afterward.
trekawek/coffee-gb
Plays an authorized Game Boy or Game Boy Color ROM in one persistent headless Coffee GB session, inspecting frames and keeping an action trace for replay or tests.
trekawek/coffee-gb
Uploads screenshots and other images from the terminal and returns markdown-ready URLs to embed in GitHub pull requests, issues and comments.
trekawek/coffee-gb
Validates a GitHub pull request, rebases away conflicts, waits for required CI on the final commit, merges with rebase and cleans up the topic branch.
trekawek/coffee-gb
Takes a Coffee GB compatibility issue from reproduction through a tested fix to an isolated pull request, with issue follow-up and screenshot evidence when possible.
Categories
Releases the current Coffee GB Maven snapshot through the GitHub Maven release workflow, then verifies and curates the tag and GitHub release. py to get the authoritative release version (the root Maven version without -SNAPSHOT), the next development version (last numeric part incremented plus -SNAPSHOT), the coffee-gb tag and the release title. It stops if the version is not a numeric snapshot, the tag or release already exists unexpectedly, or the branch cannot be fast-forwarded cleanly, and it never releases unpushed or divergent work.
Coffee GB Release fits situations like: publishing a new Coffee GB version; verifying the tag and artifacts after the Maven release workflow runs; curating the GitHub release notes for a Coffee GB release.
Run `npx skills add trekawek/coffee-gb --skill release-new-version -a claude-code`. Or copy the skill folder (.agents/skills/release-new-version in trekawek/coffee-gb) into .claude/skills/release-new-version in your project. Claude Code loads it when a task matches its description.
Run `npx skills add trekawek/coffee-gb --skill release-new-version -a codex`. Or copy the skill folder (.agents/skills/release-new-version in trekawek/coffee-gb) into .agents/skills/release-new-version 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 trekawek/coffee-gb --skill release-new-version -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-new-version, .gemini/skills/release-new-version, .github/skills/release-new-version and .opencode/skills/release-new-version in your project.
Going by SKILL.md and its folder, Coffee GB Release needs Python for the scripts in its folder and the command-line tools its instructions call (gh, git and python3). Our summary lists: The gh CLI, authenticated, with permission to dispatch the Maven release workflow; Python 3 to run scripts/versions.py.
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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Coffee GB Release is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.4k 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 Coffee GB Release: Worktrunk Release Workflow (max-sixty/worktrunk, 9.2k stars), Kt Search Release (jillesvangurp/kt-search, 155 stars), Codex Proxy RS Release (zyycn/codex-proxy-rs, 780 stars) and CI Automation (jeremylongshore/tons-of-skills-marketplace, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
trekawek (a GitHub user) maintains it in trekawek/coffee-gb, which has 1,171 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 1, 2026.
Source: trekawek/coffee-gb on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.