From workbench
Update every installed Eigenwise Toolshed plugin across user, project, and local scopes; refresh the marketplace; update codex-gateway's claude-code-proxy through its supported setup command; check gateway health; and say which Claude Code sessions must reload. Use when the user asks to update the toolshed, update all Toolshed plugins, refresh the Eigenwise marketplace, or check Toolshed versions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/workbench:update-toolshedThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run the portable updater from this plugin installation:
Run the portable updater from this plugin installation:
node "${CLAUDE_PLUGIN_ROOT}/bin/update-toolshed.js"
It reads Claude Code's installed-plugin registry, refreshes only eigenwise-toolshed, and updates only Toolshed plugins from that marketplace at their recorded scope and project directory. It does not inspect, refresh, or update third-party marketplaces or plugins. It then runs codex-gateway setup and
doctor when that plugin is installed. In the default local gateway mode it also writes every recorded
project's .claude/settings.local.json, moves only gateway-owned legacy keys out of settings.json, and
removes the old user block only after every project succeeds. Unrecorded projects stay unwired until
codex-gateway env --write-project runs there. Gateway wiring changes apply to new Claude Code sessions,
so restart affected sessions. It continues after individual failures and prints the failing commands.
Before changing anything, use this for a read-only report:
node "${CLAUDE_PLUGIN_ROOT}/bin/update-toolshed.js" --check
Use this to show every command without changing anything:
node "${CLAUDE_PLUGIN_ROOT}/bin/update-toolshed.js" --dry-run
Workbench runs the prompt freshness check for active Toolshed plugins. When it knows an active install is behind, it blocks the prompt before Claude sees it. Run this updater, then /reload-plugins or restart Claude Code and resubmit the prompt. The guard allows /update-toolshed, /reload-plugins, and exact /plugin maintenance commands so recovery works. For an emergency only, start Claude Code with EIGENWISE_TOOLSHED_FRESHNESS_BYPASS=1; remove that override once updates are possible.
An update does not replace the plugin code already loaded by an open Claude Code session. Tell the user
exactly what the updater reports: run /reload-plugins in each affected session, or restart Claude Code
if reload does not pick up the new version. User-scoped installs affect every open session; project and
local installs affect sessions open in their recorded project directories.
Marketplace auto-update is the normal path. In /plugin, open Marketplaces, select
eigenwise-toolshed, and choose Enable auto-update. Claude Code checks after session start with a
random delay of up to 10 minutes. Third-party marketplaces start with auto-update off, and an already-open
session still needs /reload-plugins or a restart after an update lands.
Do not add this updater to SessionStart. It intentionally changes installed plugins and downloads the codex gateway dependency, so automatic startup work stays non-mutating.
npx claudepluginhub eigenwise/eigenwise-toolshed --plugin workbenchCheck for and apply plugin updates using the official Claude Code plugin update mechanism.
Manages third-party Claude Code plugin updates: force immediate updates via empty arg or view status dashboard with 'status'. Auto-runs on session start.
Upgrade the local claude-ops ("ops") plugin to the latest published version in one command — refresh the marketplace catalogue, update the installed plugin (with stale-cache force-reinstall fallback), reapply local cache patches, prune every old cache version, rewrite stale version-pinned paths, run per-version migrations, then prompt to reload. Use when the box is on an older plugin version, after a release, or when the cache looks stale.