From galeharness-cli
Check if the GaleHarnessCLI plugin is up to date and recommend the update command if not. Use when the user says "update gale harness", "check gale harness version", "gh update", "is gale harness up to date", "update gh plugin", or reports issues that might stem from a stale GaleHarnessCLI plugin version. This skill only works in Claude Code — it relies on the plugin harness cache layout.
npx claudepluginhub wangrenzhu-ola/galeharnesscodingcli --plugin galeharness-cliThis skill uses the workspace's default tool permissions.
Verify the installed GaleHarnessCLI plugin version matches the upstream
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Verify the installed GaleHarnessCLI plugin version matches the upstream
plugin.json on main, and recommend the update command if it doesn't.
Claude Code only.
Note: This skill updates the plugin cache only. To update the CLI binary itself, run
gale-harness updatefrom your terminal.
Only the Skill directory determines whether this session is Claude Code — if empty or unresolved, the skill requires Claude Code. The other sections may contain error sentinels even in valid Claude Code sessions; the decision logic below handles those cases.
${CLAUDE_SKILL_DIR} is a Claude Code-documented substitution that resolves
at skill-load time. For a marketplace-cached install it looks like
~/.claude/plugins/cache/<marketplace>/galeharness-cli/<version>/skills/gh-update,
so the currently-loaded version is the basename two dirname levels up.
The upstream version comes from plugins/galeharness-cli/.claude-plugin/plugin.json
on main rather than the latest GitHub release tag, because the marketplace
installs plugin contents from main HEAD. Comparing against release tags
false-positives whenever main is ahead of the last tag (the normal state
between releases).
Skill directory:
!echo "${CLAUDE_SKILL_DIR}"
Latest upstream version:
!version=$(gh api repos/wangrenzhu-ola/GaleHarnessCLI/contents/plugins/galeharness-cli/.claude-plugin/plugin.json --jq '.content | @base64d | fromjson | .version' 2>/dev/null) && [ -n "$version" ] && echo "$version" || echo '__CE_UPDATE_VERSION_FAILED__'
Currently loaded version:
!case "${CLAUDE_SKILL_DIR}" in */plugins/cache/*/galeharness-cli/*/skills/gh-update) basename "$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")" ;; *) echo '__CE_UPDATE_NOT_MARKETPLACE__' ;; esac
Marketplace name:
!case "${CLAUDE_SKILL_DIR}" in */plugins/cache/*/galeharness-cli/*/skills/gh-update) basename "$(dirname "$(dirname "$(dirname "$(dirname "${CLAUDE_SKILL_DIR}")")")")" ;; *) echo '__CE_UPDATE_NOT_MARKETPLACE__' ;; esac
If Skill directory is empty or unresolved: tell the user this skill requires Claude Code and stop. No further action.
If Latest upstream version contains __CE_UPDATE_VERSION_FAILED__: tell
the user the upstream version could not be fetched (gh may be unavailable or
rate-limited) and stop.
If Currently loaded version contains __CE_UPDATE_NOT_MARKETPLACE__: this
session loaded the skill from outside the standard marketplace cache (typical
when using claude --plugin-dir for local development, or for a non-standard
install). Tell the user (substituting the actual path):
"Skill is loaded from
{skill-directory}-- not the standard marketplace cache at~/.claude/plugins/cache/. This is normal when usingclaude --plugin-dirfor local development. No action for this session. Your marketplace install (if any) is unaffected -- run/gh:updatein a regular Claude Code session (no--plugin-dir) to check that cache."
Then stop.
Up to date — {currently loaded} == {latest upstream}:
"GaleHarnessCLI v{version} is installed and up to date."
Out of date — {currently loaded} != {latest upstream}:
"GaleHarnessCLI is on v{currently loaded} but v{latest upstream} is available.
Update with:
claude plugin update galeharness-cli@{marketplace-name}Then restart Claude Code to apply."
The claude plugin update command ships with Claude Code itself and updates
installed plugins to their latest version; it replaces earlier manual cache
sweep / marketplace-refresh workarounds. The marketplace name is derived from
the skill path rather than hardcoded because this plugin may be distributed
under multiple marketplace names.
To also update the CLI binary, run gale-harness update from your terminal.