Use when the user wants to enable, disable, toggle, or check the Claude Agents Visualizer auto-open — both the HTTP server (workflow-docs-server.sh) and the Chrome tab (open-workflow-docs.sh) are gated by the same serverEnabled flag in ~/.claude/workflow-docs/config.json. Triggers include "turn off the workflow server", "stop opening workflow docs", "disable the visualizer", "stop the workflow chrome tab from opening", "kill the workflow-docs server", "is the workflow server running", "re-enable the workflow server", "/workflow-server".
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-agents-visualizer:workflow-server-toggleThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A thin natural-language wrapper around `~/.claude/hooks/workflow-server-toggle.sh`
A thin natural-language wrapper around ~/.claude/hooks/workflow-server-toggle.sh
and the /workflow-server slash command. Lets the user toggle the whole
automatic Claude Agents Visualizer experience in plain English.
Two hooks fire on every Claude Code session start:
~/.claude/hooks/workflow-docs-server.sh ensures a python3 -m http.server
is running on http://127.0.0.1:47318/ serving ~/.claude/workflow-docs/.
That's what powers the Live agents pane, activity stream, and
1-second flows.json poll.~/.claude/hooks/open-workflow-docs.sh regenerates index.html from the
template + flows.json and opens a Chrome tab to it.Both hooks read the same flag in ~/.claude/workflow-docs/config.json:
{ "serverEnabled": false }
When the flag is false, both hooks no-op — no server, no Chrome tab.
The toggle script also tears down a currently-running server when disabling,
so the change is immediate.
Detect the user's intent from their phrasing and run the appropriate Bash command. Do not ask follow-up questions — these phrases are unambiguous.
| User phrase | Intent | Run |
|---|---|---|
| "disable the workflow server", "turn off workflow-docs", "stop the workflow docs server", "kill the visualizer server", "disable serverEnabled" | disable | bash $HOME/.claude/hooks/workflow-server-toggle.sh disable |
| "enable the workflow server", "turn on workflow-docs", "start the workflow docs server", "bring the visualizer back online" | enable | bash $HOME/.claude/hooks/workflow-server-toggle.sh enable |
| "toggle the workflow server", "flip workflow-docs server" | toggle | bash $HOME/.claude/hooks/workflow-server-toggle.sh toggle |
| "is the workflow server running", "workflow-docs server status", "check the workflow visualizer server", "what port is the workflow server on" | status | bash $HOME/.claude/hooks/workflow-server-toggle.sh status |
Print the script's stdout verbatim. It already shows the config path, enabled flag, and the running pid/port (if any). Don't issue a second tool call to "verify" — the script reports status as part of every action.
flows.json or document a workflow → use
[[workflow-visualizer]] / the workflow-doc-generator subagent.SessionStart.additionalContext payload that gives Claude project
background). That's a separate hook — bootstrap-flows.sh — with no flag.
Tell the user to delete the script or remove its entry from
~/.claude/settings.json.The server + Chrome auto-open is a polite background convenience — but on
machines where multiple Claude Code installs share ~/.claude, or where the
user just doesn't want a tab popping every session, having a one-liner kill
switch is friendlier than deleting hook files. Mirrors the autoUpdate flag
pattern from
Understand-Anything: the
hooks themselves read the config so disabling survives reinstalls.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub vianch/workflow-docs --plugin claude-agents-visualizer