From aradotso-trending-skills-37
Visualizes Claude Code agent orchestration in VS Code as interactive node graphs showing tool calls, branching, subagents, and timing for debugging and monitoring sessions.
npx claudepluginhub joshuarweaver/cascade-ai-ml-agents-misc-1 --plugin aradotso-trending-skills-37This skill uses the workspace's default tool permissions.
> Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
Skill by ara.so — Daily 2026 Skills collection.
Agent Flow is a VS Code extension that provides real-time visualization of Claude Code agent orchestration. It renders agent execution as an interactive node graph, showing tool calls, branching, subagent coordination, and timing — turning Claude Code's black-box execution into a transparent, debuggable flow.
Cmd+Shift+X)Or install directly: marketplace.visualstudio.com/items?itemName=simon-p.agent-flow
# 1. Open Command Palette
Cmd+Shift+P (Mac) / Ctrl+Shift+P (Win/Linux)
# 2. Run the command
> Agent Flow: Open Agent Flow
# 3. Start a Claude Code session in your workspace
# Agent Flow auto-detects it and begins streaming
Or use the keyboard shortcut:
Cmd+Alt+ACtrl+Alt+A| Command | Description |
|---|---|
Agent Flow: Open Agent Flow | Open visualizer in current editor column |
Agent Flow: Open Agent Flow to Side | Open in a side editor column |
Agent Flow: Connect to Running Agent | Manually connect to a specific agent session |
Agent Flow: Configure Claude Code Hooks | Set up Claude Code hooks for live event streaming |
Settings available in VS Code settings (settings.json):
{
// Path to a JSONL event log file to watch/replay
"agentVisualizer.eventLogPath": "/path/to/agent-events.jsonl",
// Auto-open the visualizer when an agent session starts
"agentVisualizer.autoOpen": true,
// Development server port (0 = production mode, use built assets)
"agentVisualizer.devServerPort": 0
}
// settings.json
{
"agentVisualizer.autoOpen": true
}
Agent Flow uses Claude Code's hook system for zero-latency event streaming. Hooks are configured automatically on first open, but you can reconfigure manually.
Run from Command Palette:
> Agent Flow: Configure Claude Code Hooks
If you need to configure hooks manually, Agent Flow starts a local HTTP server that receives events. The hooks forward Claude Code lifecycle events (tool calls, responses, session start/end) to the extension.
Claude Code hooks are configured in ~/.claude/settings.json or project-level .claude/settings.json:
{
"hooks": {
"PreToolUse": [
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "curl -s -X POST http://localhost:PORT/hook -H 'Content-Type: application/json' -d @-"
}
]
}
],
"PostToolUse": [
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "curl -s -X POST http://localhost:PORT/hook -H 'Content-Type: application/json' -d @-"
}
]
}
]
}
}
Agent Flow manages this configuration automatically — prefer using the command palette command.
For replaying past sessions or watching log files generated outside VS Code:
// settings.json
{
"agentVisualizer.eventLogPath": "${workspaceFolder}/logs/agent-session.jsonl"
}
Agent Flow tails the file and visualizes events as they arrive. Use this for:
Each line in the log file is a JSON event object:
{"type":"session_start","sessionId":"abc123","timestamp":"2026-03-21T10:00:00Z","model":"claude-opus-4-5"}
{"type":"tool_use","sessionId":"abc123","toolName":"bash","input":{"command":"ls -la"},"timestamp":"2026-03-21T10:00:01Z"}
{"type":"tool_result","sessionId":"abc123","toolName":"bash","output":"total 48\n...","timestamp":"2026-03-21T10:00:02Z"}
{"type":"message","sessionId":"abc123","role":"assistant","content":"I can see the files...","timestamp":"2026-03-21T10:00:03Z"}
Agent Flow tracks multiple concurrent Claude Code sessions with tabs. Each session gets its own visualization canvas.
# Start multiple Claude Code sessions in different terminals
# Each appears as a separate tab in Agent Flow
# Click tabs to switch between session graphs
| Node Type | Visual | Description |
|---|---|---|
| Agent/Subagent | Circle | Claude instance making decisions |
| Tool Call | Rectangle | Individual tool invocation (bash, read_file, etc.) |
| Tool Result | Rectangle (dashed) | Output returned from tool |
| Branch | Diamond | Decision point spawning subagents |
| Return | Arrow | Subagent returning result to parent |
git clone https://github.com/patoles/agent-flow
cd agent-flow
npm install
# Build the extension
npm run build
# Watch mode for development
npm run watch
# Run with dev server (hot reload)
# Set in settings: "agentVisualizer.devServerPort": 3000
npm run dev
agent-flow/
├── src/
│ ├── extension.ts # VS Code extension entry point
│ ├── hookServer.ts # HTTP server receiving Claude Code hook events
│ ├── sessionManager.ts # Manages multiple agent sessions
│ ├── webviewProvider.ts # Webview panel management
│ └── logWatcher.ts # JSONL file tail watcher
├── webview/
│ ├── src/
│ │ ├── App.tsx # Main React app
│ │ ├── Graph.tsx # Node graph canvas (likely D3 or React Flow)
│ │ ├── Timeline.tsx # Timeline panel
│ │ └── Transcript.tsx # Message transcript panel
│ └── package.json
└── package.json # Extension manifest
Cmd+Alt+A)# Save Claude Code output to JSONL during a run
# (depends on your Claude Code version/config)
claude --output-format jsonl > session-$(date +%s).jsonl
# Point Agent Flow at it
// .vscode/settings.json (project-level)
{
"agentVisualizer.eventLogPath": "./logs/session-1234567890.jsonl"
}
// settings.json
{
"agentVisualizer.autoOpen": true
}
Now every time a Claude Code session starts in your workspace, Agent Flow opens automatically.
# Open Agent Flow to side so you can code and watch simultaneously
Cmd+Shift+P > Agent Flow: Open Agent Flow to Side
This opens the visualizer in a split editor, keeping your code files accessible in the main editor group.
Agent Flow: Configure Claude Code HooksView > Output > Agent Flow)Agent Flow: Connect to Running Agent to manually specify the session# Test the hook server manually
curl -X POST http://localhost:PORT/hook \
-H 'Content-Type: application/json' \
-d '{"type":"test","sessionId":"test123"}'
Check VS Code Output panel for the correct PORT value.
agentVisualizer.eventLogPath — if set, Agent Flow reads from file instead of hooks{ "agentVisualizer.eventLogPath": "" }
Cmd+Shift+P > Developer: Reload Window)# Check VS Code version meets requirement
code --version
# Must be 1.85 or later
# Check extension is enabled
# Extensions panel > search "Agent Flow" > verify enabled
Each session is identified by a unique session ID from Claude Code. If sessions are merging incorrectly, check that each claude process is started fresh (not reusing an existing session ID).