| name | update |
| description | Check for updates and upgrade bestwork-agent — plugin cache + hooks + HUD all at once |
When this skill is invoked, IMMEDIATELY print:
[BW] checking for updates...
Step 1: Compare versions
CACHE_DIR=$(ls -d ~/.claude/plugins/cache/bestwork-tools/bestwork-agent/*/ 2>/dev/null | sort -V | tail -1)
CURRENT_VERSION=$(jq -r '.version' "${CACHE_DIR}package.json" 2>/dev/null || echo "unknown")
CURRENT_HASH=$(git -C "$CACHE_DIR" rev-parse --short HEAD 2>/dev/null || echo "unknown")
echo "installed: v${CURRENT_VERSION} (${CURRENT_HASH})"
LATEST_HASH=$(curl -s https://api.github.com/repos/rlaope/bestwork-agent/commits/main 2>/dev/null | jq -r '.sha[:7]' 2>/dev/null || echo "unknown")
LATEST_VERSION=$(curl -s https://raw.githubusercontent.com/rlaope/bestwork-agent/main/package.json 2>/dev/null | jq -r '.version' 2>/dev/null || echo "unknown")
echo "latest: v${LATEST_VERSION} (${LATEST_HASH})"
Step 2: If different, upgrade everything
If hashes differ, print:
[BW] update available: v{current} ({hash}) → v{latest} ({hash})
[BW] upgrading...
Then run ALL of these in sequence:
claude plugin update bestwork-agent@bestwork-tools
CACHE_DIR=$(ls -d ~/.claude/plugins/cache/bestwork-tools/bestwork-agent/*/ 2>/dev/null | sort -V | tail -1)
node "${CACHE_DIR}dist/index.js" install
CACHE_DIR=$(ls -d ~/.claude/plugins/cache/bestwork-tools/bestwork-agent/*/ 2>/dev/null | sort -V | tail -1)
cp "${CACHE_DIR}hooks/bestwork-hud.mjs" ~/.bestwork/hud.mjs 2>/dev/null
After all done, print:
[BW] done! v{latest} ({hash})
✓ plugin cache updated
✓ hooks re-registered
✓ HUD synced
restart session to apply.
Step 3: If same, no action
[BW] you're already on the latest (v{version}, {hash}). no action needed.