Files
AgentHub/plugins/agenthub/commands/agenthub-update.md
T
nntrivi2001 17d56d0e01 refactor!: rebrand CCAM to AgentHub
Clean break, no compatibility alias. Renames the product name, the CLI
binary (`ccam` -> `agenthub`), the env var prefix (`CCAM_` ->
`AGENTHUB_`), the Prometheus metric namespace (`ccam_*` ->
`agenthub_*`), the tmux session prefix (`ccam-lane-<id>` ->
`agenthub-lane-<id>`), the per-repo runtime profile directory
(`.ccam/profile` -> `.agenthub/profile`), the lanes state root
(`~/.claude/ccam-lanes` -> `~/.claude/agenthub-lanes`), the bundled
plugins (`plugins/ccam*` -> `plugins/agenthub*`) and their slash
commands (`/ccam-doctor` -> `/agenthub-doctor`, `/ccam:*` ->
`/agenthub:*`).

Because there is no alias, an existing install has to be updated by
hand: rename its `.ccam/profile` directory and any `CCAM_*` variables,
and reinstall the plugin under its new name.

Two other name families are deliberately left alone here, since they are
not just strings: the `Claude-Code-Monitor` repository/marketplace name,
and the `agent-dashboard` npm package plus its `~/.claude/agent-dashboard`
runtime directory, which holds the live database and needs a migration
rather than a rename.

Verified: server 1406/1406, client 459/459, `grep -i ccam` clean across
tracked files, `openapi.yaml` regenerated (95 paths, unchanged count).
2026-09-07 12:09:15 +07:00

2.0 KiB

description
description
Pull the latest agenthub plugin version and refresh the dashboard runtime

Pull the newest agenthub release from its marketplace, then reinstall the runtime dependencies and restart the dashboard server against it. Use this to get a new dashboard build, or when /agenthub-doctor reports missing dependencies or a dead server.

First, find which marketplace this install's agenthub came from and pull the latest version into the plugin cache:

INSTALLED=$(claude plugin list 2>/dev/null | grep -o 'agenthub@[^ ]*' | head -1)
MARKETPLACE="${INSTALLED#agenthub@}"
if [ -z "$MARKETPLACE" ]; then
  echo "agenthub is not installed as a plugin (checkout install?) - nothing to update this way."
else
  claude plugin marketplace update "$MARKETPLACE"
  claude plugin update "agenthub@$MARKETPLACE" -y
fi

That downloads the new version into ~/.claude/plugins/cache/ but does not take effect in this session — Claude Code only re-resolves ${CLAUDE_PLUGIN_ROOT} on /reload-plugins (a REPL-only action, not scriptable from a command). Say so plainly: tell the user to run /reload-plugins now, then either re-run /agenthub-update (this time the bootstrap step below runs against the new version) or just start a new session — plugin-bootstrap.js compares the recorded state against the current plugin version on every SessionStart and rebuilds automatically if they differ.

Then, whether or not a plugin update was just pulled, refresh the runtime against whatever ${CLAUDE_PLUGIN_ROOT} currently resolves to. This stops the running dashboard server before starting the new one. Say so, then run:

node "${CLAUDE_PLUGIN_ROOT}/scripts/plugin-bootstrap.js" --force

It runs in the foreground and can take a few minutes on a cold cache. When it finishes, verify:

node "${CLAUDE_PLUGIN_ROOT}/scripts/plugin-doctor.js"

Report the final state in a few lines. If the bootstrap failed, quote the decisive line from ~/.claude/agent-dashboard/runtime/bootstrap.log.