Watch your agent walk your architecture.
Pathlight shows your LikeC4 diagram in a tmux pane beside Claude Code or OpenCode, and lights each component as the agent reads and edits it.
How it works
Map
No diagram yet? pathlight setup --yes draws a first one from your code’s imports. Already have a LikeC4 model? Map folders to its boxes with path globs, and pathlight check asks about files no box claims and imports no arrow declares.
Follow
Hooks record each read and edit. The viewer lights the matching box, counts the reads and edits on it, and can glide to wherever the agent is working. Press p to replay the session call by call.
Ask
Select a box and press t to send its files, connections and recent activity to your agent as a question, or d to have it trace how something works from there and draw the journey.
In the terminal
A pane beside your agent. No browser, no GPU, no image protocol: boxes, groups and connectors are drawn natively in the terminal.
◆ pathlight / Parcel / Checkout detail ⠋ live claude:demo parcel/checkout · 8 nodes now ■ edit services/checkout/src/payment.ts in Checkout API now ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── │ Checkout API service · ╭─Parcel─────────────────────────────────╮ · · · │ TypeScript / HTTP │ │ │ Validates carts, reserves stock, and │ ╭─── ✓ done ─╮ │ │ authorizes payment. │ │ webapp r1 │ │ │ o opens Parcel / Service architecture │ │ Storefront │──╮│ │ · │ · ·╰────────────╯ ││ · · · │ ▾ 1 Now ───────────────────────────── 3 │ ││ │ ⠋ edit payment.ts now │ ││ │ ✓ edit routes.ts now │ ╭─Commerce────────────────────────────╮│ │ ✓ read routes.ts <1m │ │ ╭╭───── ■ edit ─╮─││ │ │ │ ││ r1 e2 │ ││ │ ▾ 2 Connects ──────────────────────── 4 · │ │ · ▶│ Checkout API │─││ · · · │ ← Storefront Submits checkout │ │ ╰──────────────╯ ││ │ → Inventory Reserves stock │ │ ││ │ → Orders Commits order an… │ │ ││ │ → Payment provider Authorizes payme… │ │ ││ │ │ │╭───────────────────┬────────────────││ │ · │ ││╭──── ✓ done ─╮ │╭──── ✓ done ─╮ ││ ╭─────────────╮ · │ │ │││ service r1 │ ││ r1 │ ││ │ external │ │ │ │▶│ Inventory │─╮ ▶│ Orders │ ││─▶│ Payment pr… │ │ │ │ ╰─────────────╯ ┊ ╰─────────────╯ ││ ╰─────────────╯ │ │ │ ┊ ││ │ │ │ ┊ ││ │ · │ │ · ┊ · · ││ · · · │ │ │╭╭──── ✓ done ─╮┈╯ ││ │ │ │┊│ r1 │ ││ │ │ │▶│ Stock │ ││ │ │ │ ╰─────────────╯ ││ │ │ ╰─────────────────────────────────────╯│ │ ──────────────────────────────────────── · ╰────────────────────────────────────────╯ · · · │ e files 2 c session p replay │ › ask about Checkout API… t diagram Selected: parcel.commerce.api zoom 73% │ ? help
Install
Needs tmux. Built and tested on Linux x64; the macOS builds are published but untested.
npm i -g @dumbbunnyio/pathlight
Then add it to your agent once, for every project. In Claude Code:
claude plugin marketplace add dumbbunnyio/pathlight
claude plugin install pathlight@pathlight
In OpenCode:
pathlight init --global
Then, inside tmux, type /pathlight in your agent. It draws a map if the project has none, checks it, and opens the viewer beside the conversation. If anything is missing, pathlight doctor says how to fix it.