
update-yourself
by bacchus-labs
Claude Code plugin for keeping the ponies on their leads.
SKILL.md
name: update-yourself description: Update the wrangler plugin to the latest version by clearing all caching layers. Use when user says "update yourself", "update wrangler", or after pushing changes to the wrangler repo.
Update Wrangler Plugin
This skill updates the wrangler plugin to the latest version from GitHub by clearing all caching layers.
Skill Usage Announcement
MANDATORY: When using this skill, announce it at the start with:
Using Skill: update-yourself | Updating wrangler plugin to latest version
This creates an audit trail showing which skills were applied during the session.
When to Use
- User says "update yourself" or "update wrangler"
- After pushing changes to the wrangler GitHub repo
- When slash commands or skills aren't showing up after changes
- When plugin behavior doesn't match the latest code
Background: The Caching Problem
Claude Code's plugin system has three layers that can get out of sync:
| Layer | Location | Purpose |
|---|---|---|
| GitHub | Remote repository | Source of truth |
| Marketplace clone | ~/.claude/plugins/marketplaces/{marketplace}/ | Local git clone |
| Installed cache | ~/.claude/plugins/cache/{marketplace}/wrangler/ | Files Claude Code uses |
The /plugin command only reads from the marketplace clone, and only re-installs if version changes. Pushing to GitHub doesn't update the other layers.
Instructions
Step 1: Find the Marketplace Name
# Find which marketplace wrangler is installed from
grep -l wrangler ~/.claude/plugins/marketplaces/*/plugin.json 2>/dev/null | head -1 | xargs dirname | xargs basename
Or check ~/.claude/plugins/installed_plugins.json for the key containing "wrangler" (e.g., wrangler@samjhecht-plugins means marketplace is samjhecht-plugins).
Step 2: Update All Layers
Execute these commands (replace {marketplace} with actual name):
# 1. Update the marketplace clone
cd ~/.claude/plugins/marketplaces/{marketplace} && git fetch origin && git reset --hard origin/main && cd -
# 2. Clear the installed cache
rm -rf ~/.claude/plugins/cache/{marketplace}/wrangler/
# 3. Rebuild MCP bundle (CRITICAL - Claude Code doesn't run postinstall)
cd ~/.claude/plugins/marketplaces/{marketplace} && npm install && cd -
# 4. Reset installed_plugins.json entry (forces reinstall)
Step 3 rebuilds the MCP bundle. This is critical because Claude Code copies plugin files but doesn't run npm install or postinstall scripts. The MCP server requires mcp/dist/bundle.cjs which is built by the postinstall script.
For step 4, edit ~/.claude/plugins/installed_plugins.json and set the wrangler entry to an empty array:
"wrangler@{marketplace}": []
Step 3: Inform User
Tell the user:
Wrangler plugin cache cleared. Please restart Claude Code to complete the update.
The plugin will reinstall from the latest code on next startup.
Automated Script
Execute the script directly:
./scripts/update-wrangler.sh
Or offer to add it to the user's shell config for easy access:
# Add to ~/.zshrc or ~/.bashrc
source /path/to/wrangler/skills/update-yourself/scripts/update-wrangler.sh
# Then just run:
update-wrangler
The script (scripts/update-wrangler.sh) handles:
- Finding the marketplace name automatically
- Updating the marketplace clone from origin
- Clearing the plugin cache
- Resetting the installed_plugins.json entry
Requires: jq for JSON manipulation (falls back to manual instructions if not installed)
Manual Alternative
If the user prefers not to use the script, provide these manual steps:
- Find your marketplace name in
~/.claude/plugins/installed_plugins.json - Pull latest code:
cd ~/.claude/plugins/marketplaces/{marketplace} && git pull - Delete cache:
rm -rf ~/.claude/plugins/cache/{marketplace}/wrangler/ - Rebuild MCP bundle:
cd ~/.claude/plugins/marketplaces/{marketplace} && npm install - Edit
~/.claude/plugins/installed_plugins.json- set wrangler entry to[] - Restart Claude Code
Verification
After restart, verify the update worked:
# Check the installed commit
cat ~/.claude/plugins/installed_plugins.json | grep -A5 wrangler
# Check commands exist
ls ~/.claude/plugins/cache/{marketplace}/wrangler/*/commands/
Why This Is Necessary
- Version numbers alone don't trigger updates (same version = no reinstall)
- The marketplace clone is a local git repo that doesn't auto-fetch
installed_plugins.jsoncaches the commit SHA and won't reinstall unless cleared- All three layers must be updated for changes to take effect
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon