← ClaudeAtlas

silverupdatelisted

This skill should be used when the user runs `/silver:update` or asks to update Silver Bullet — checks GitHub for the latest release, shows the changelog since the installed version, and installs the update after confirmation.
alo-exp/silver-bullet · ★ 5 · AI & Automation · score 73
Install: claude install-skill alo-exp/silver-bullet
# /silver:update — Update Silver Bullet Check GitHub for the latest Silver Bullet release, display what changed since your installed version, and install the update. ## Process ### Step 1: Read installed version Read `$HOME/.claude/plugins/installed_plugins.json`. Try the `silver-bullet@alo-labs` key first; if absent, fall back to the `silver-bullet@silver-bullet` key (legacy installation): - `version` — currently installed version (e.g. `0.24.1`) - If neither key exists, treat installed version as `0.0.0`. Display: ``` ## Silver Bullet Update Checking for updates... **Installed:** vX.Y.Z ``` ### Step 2: Check latest version from GitHub ```bash curl -fsSL https://api.github.com/repos/alo-exp/silver-bullet/releases/latest \ | jq -r '.tag_name' | sed 's/^v//' ``` If the curl fails or returns empty, output: ``` Couldn't check for updates (offline or GitHub unavailable). To update manually: reinstall via the active host's plugin manager or package refresh path, or clone from https://github.com/alo-exp/silver-bullet ``` Then exit. **Validate the version string before proceeding.** After extracting `$LATEST`, verify it is a valid semver (`MAJOR.MINOR.PATCH` — digits only, no pre-release suffix): ```bash if [[ -z "$LATEST" ]] || ! [[ "$LATEST" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then echo "GitHub returned an unexpected version string: '${LATEST:-<empty>}'" echo "Expected semver format (e.g. 0.23.6). Aborting to prevent path/ref corruption." exit fi ``` If validatio