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.
Updates the wrangler plugin by clearing all caching layers and rebuilding from source.
/plugin marketplace add bacchus-labs/wrangler/plugin install bacchus-labs-wrangler@bacchus-labs/wranglerThis skill inherits all available tools. When active, it can use any tool Claude has access to.
scripts/update-wrangler.shThis skill updates the wrangler plugin to the latest version from GitHub by clearing all caching layers.
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.
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.
# 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).
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}": []
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.
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:
Requires: jq for JSON manipulation (falls back to manual instructions if not installed)
If the user prefers not to use the script, provide these manual steps:
~/.claude/plugins/installed_plugins.jsoncd ~/.claude/plugins/marketplaces/{marketplace} && git pullrm -rf ~/.claude/plugins/cache/{marketplace}/wrangler/cd ~/.claude/plugins/marketplaces/{marketplace} && npm install~/.claude/plugins/installed_plugins.json - set wrangler entry to []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/
installed_plugins.json caches the commit SHA and won't reinstall unless clearedBuild robust backtesting systems for trading strategies with proper handling of look-ahead bias, survivorship bias, and transaction costs. Use when developing trading algorithms, validating strategies, or building backtesting infrastructure.