Sandbox
@patoles/agent-flow

Real-time agent visualization for Claude Code and Codex

Agent Flow watches Claude Code and Codex sessions and renders them as an interactive node graph. You can see tool calls, branches, timing, transcripts, and file attention as the session runs. It works as a browser app, a standalone dev setup, or a VS Code extension, and it can also tail JSONL event logs. Claude Code hooks and Codex session files feed the visualizer through an event relay.

1,636 stars191 forksTypeScriptUpdated 2mo ago
Agent flow, agent visualization
craftmygame6.3k views • 5 months ago
Who it's for

Builders who want to inspect agent runs in Claude Code, Codex, or a VS Code-compatible editor.

What it delivers

You can understand, debug, and compare agent behavior without replaying the whole session in your head.

What it does

Live node graph

Shows agent execution as an interactive graph with branching, return flows, and tool calls.

Claude Code and Codex support

Detects sessions from both runtimes and can show them side by side.

Claude Code hooks

Uses a hook server for live event streaming from Claude Code.

Codex session tailing

Reads `~/.codex/sessions/**/rollout-*.jsonl` and surfaces Codex event data.

Timeline and transcript panels

Lets you review the run timeline, transcript, and file attention heatmap.

JSONL replay support

Can watch or replay any JSONL event log file.

VS Code extension

Adds commands, settings, and an editor panel for opening and connecting to sessions.

How to get it

  1. 1Run
    npx agent-flow-app
  2. 2Run
    git clone https://github.com/patoles/agent-flow.git
    cd agent-flow
    pnpm i
    pnpm run setup      # configure Claude Code hooks (one-time)
    pnpm run dev        # start the web app + event relay

README

Agent Flow

Real-time visualization of Claude Code and Codex agent orchestration. Watch your agents think, branch, and coordinate as they work. Demo video here.

Agent Flow visualization

Why Agent Flow?

I built Agent Flow while developing CraftMyGame, a game creation platform driven by AI agents. Debugging agent behavior was painful, so we made it visual. Now we're sharing it.

Claude Code is powerful, but its execution is a black box — you see the final result, not the journey. Agent Flow makes the invisible visible:

  • Understand agent behavior — See how Claude breaks down problems, which tools it reaches for, and how subagents coordinate
  • Debug tool call chains — When something goes wrong, trace the exact sequence of decisions and tool calls that led there
  • See where time is spent — Identify slow tool calls, unnecessary branching, or redundant work at a glance
  • Learn by watching — Build intuition for how to write better prompts by observing how Claude interprets and executes them

Features

  • Live agent visualization: Watch agent execution as an interactive node graph with real-time tool calls, branching, and return flows
  • Claude Code + Codex: Auto-detects sessions from both runtimes concurrently and shows them side-by-side, or restrict to one via the agentVisualizer.runtime setting
  • Claude Code hooks: Lightweight HTTP hook server receives events directly from Claude Code for zero-latency streaming
  • Codex rollout tailing: Reads ~/.codex/sessions/**/rollout-*.jsonl (respects CODEX_HOME) and surfaces tool calls, reasoning, and authoritative token counts from Codex's own event stream
  • Multi-session support: Track multiple concurrent agent sessions with tabs
  • Interactive canvas: Pan, zoom, click agents and tool calls to inspect details
  • Timeline & transcript panels: Review the full execution timeline, file attention heatmap, and message transcript
  • JSONL log file support: Point at any JSONL event log to replay or watch agent activity

Getting Started

Quick Start (no VS Code required)

npx agent-flow-app

This starts the visualizer in your browser. Start a Claude Code session in another terminal — events will stream in real-time.

Options:

  • --port <number> — change the server port (default: 3001)
  • --no-open — don't open the browser automatically
  • --verbose — show detailed event logs

Standalone Web App (from source)

git clone https://github.com/patoles/agent-flow.git
cd agent-flow
pnpm i
pnpm run setup      # configure Claude Code hooks (one-time)
pnpm run dev        # start the web app + event relay

Open http://localhost:3000 and start a Claude Code session in another terminal — events will stream to the browser in real-time.

VS Code Extension

  1. Install the extension
  2. Open the Command Palette (Cmd+Shift+P) and run Agent Flow: Open Agent Flow
  3. Start a Claude Code or Codex session in your workspace — Agent Flow will auto-detect it

Agent Flow automatically configures Claude Code hooks the first time you open the panel. To manually reconfigure, run Agent Flow: Configure Claude Code Hooks from the Command Palette.

Runtime selection

By default Agent Flow watches both Claude Code (~/.claude/projects/) and Codex (~/.codex/sessions/) concurrently in all three entry points (VS Code extension, pnpm run dev, npx agent-flow-app). Sessions are shown side-by-side and tagged by runtime. If you only use one, the other is a harmless no-op — no visible effect, no user action needed.

To restrict to one runtime:

  • VS Code extension: set agentVisualizer.runtime to "auto" / "claude" / "codex" in your settings
  • pnpm run dev and npx agent-flow-app: set the AGENT_FLOW_RUNTIME environment variable to claude or codex (defaults to watching both)

For non-default Codex installs, set the CODEX_HOME environment variable.

JSONL Event Log

You can also point Agent Flow at a JSONL event log file:

  1. Set agentVisualizer.eventLogPath in your VS Code settings to the path of a .jsonl file
  2. Agent Flow will tail the file and visualize events as they arrive

Commands

CommandDescription
Agent Flow: Open Agent FlowOpen the visualizer panel
Agent Flow: Open Agent Flow to SideOpen in a side editor column
Agent Flow: Connect to Running AgentManually connect to an agent session
Agent Flow: Configure Claude Code HooksSet up Claude Code hooks for live streaming

Keyboard Shortcut

ShortcutAction
Cmd+Alt+A (Mac) / Ctrl+Alt+A (Win/Linux)Open Agent Flow

Settings

SettingDefaultDescription
agentVisualizer.runtime"auto"Which agent runtime(s) to watch: "auto" (both), "claude", or "codex"
agentVisualizer.devServerPort0Development server port (0 = production mode)
agentVisualizer.eventLogPath""Path to a JSONL event log file to watch
agentVisualizer.autoOpenfalseAuto-open when an agent session starts

Requirements

Development

pnpm i              # install dependencies for all packages
pnpm run setup      # configure Claude Code hooks (one-time)
pnpm run dev        # start dev server + event relay

pnpm run dev starts both the Next.js dev server and an event relay that receives Claude Code events and streams them to the browser via SSE.

Other scripts:

ScriptDescription
pnpm run dev:demoStart with demo/mock data
pnpm run dev:relayRun the event relay server standalone
pnpm run dev:extensionWatch-build the extension
pnpm run build:allProduction build (webview + extension)
pnpm run build:webBuild the Next.js web app
pnpm run build:extensionBuild the extension
pnpm run build:webviewBuild the webview assets

Star History

Star History Chart

Author

Created by Simon Patole, for CraftMyGame.

Privacy & Telemetry

Agent Flow ships opt-out anonymous usage telemetry, enabled by default only in the published npx agent-flow-app binary. pnpm run dev and the VS Code extension emit nothing. Only aggregate events are sent — session count, duration, event count, OS/arch, Agent Flow version, distinct model IDs observed, which runtimes were watched, and error class names. Prompts, file paths, tool calls, user info, and environment variables are never sent.

  • Turn off: export AGENT_FLOW_TELEMETRY=false or export DO_NOT_TRACK=1 (disabled installs write zero state to disk — no ~/.agent-flow/ directory)
  • Inspect the payload: cat ~/.agent-flow/telemetry/events.jsonl
  • Full schema + exact fields: see the v0.8.1 entry in extension/CHANGELOG.md or the serialize() function in scripts/telemetry.ts
  • Reset your anonymous identity: delete ~/.agent-flow/installation-id — a fresh random UUIDv4 will be generated on next run

License

Apache 2.0 — see LICENSE for details.

The name "Agent Flow" and associated logos are trademarks of Simon Patole. See TRADEMARK.md for usage guidelines.

Files in the repo

Repository payload16 top-level entries
  • .github
  • .vscode
  • app
  • extension
  • scripts
  • web
  • .gitignore
  • CLA.md
  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md
  • LICENSE
  • package.json
  • pnpm-lock.yaml
  • pnpm-workspace.yaml
  • README.md
  • TRADEMARK.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More tools

JuliusBrussee/
caveman

🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman

105k
1 add
MemPalace/
mempalace

The best-benchmarked open-source AI memory system. And it's free.

59k
stablyai/
orca

Orca is the ADE for working with a fleet of parallel agents. Run any coding agent with your own subscription. Available on desktop, mobile and remote runtime.

66k

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

132k

Never stop coding. Free MIT AI gateway: one endpoint, 352 providers (150+ free), 1200+ models Kimi, Claude, GPT, Gemini, GLM, DeepSeek, MiniMax. Works with Claude Code, Codex, Cursor, OpenCode, Cline & Copilot. Quota-aware auto-fallback, RTK+Caveman compression saves 15-95% tokens, MCP/A2A, Desktop/PWA. Built by 550+ contributors

64k
headroomlabs-ai/
headroom

Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.

71k