From Dashboard to Workspace: The Shift That Made AGX Usable
Dashboards cap out at status pages. When agx started owning the runtime — built-in terminal, live activity cards — it stopped being a window onto work and became the place work happens.
For a year I’ve been running multiple coding agents in parallel — Claude on one objective, Codex on a Linear ticket, a chat thread debugging something else. The models got good enough. The orchestration never did.
The problem wasn’t that agents couldn’t do the work. It was that I couldn’t see where the work was happening. Four terminals in iTerm, three browser tabs, a Linear window, a Slack channel for myself. Two minutes after kicking off parallel runs I had no idea which window contained which agent. “Where am I supposed to look?” is not a question you should have to ask about your own tools.
The dashboard trap
Most agent-management tools — ours included, until recently — frame themselves as a dashboard. A window onto work happening somewhere else. That framing has a ceiling. Dashboards assume the real work lives in terminals and APIs; they just aggregate status. Which means every meaningful action involves leaving the dashboard.
Once you notice that pattern, you can’t unsee it. Every context switch between “agx tab” and “terminal where Claude is actually running” is a tiny failure of the tool.
Two PRs that crossed the line
Over the last week two changes landed that, taken together, changed what agx is:
#48 — Built-in terminal. We replaced next dev with a custom WebSocket server so agx owns its runtime. Now xterm.js + node-pty run full shell sessions inside the project view. Your agent runs where you read about it.
#44 — Working Now card. Every live agent process, grouped by where it’s acting — objective, Linear ticket, chat thread. Color-coded pulses match the participant. You see five agents’ activity in one glance instead of tab-hunting.
Neither PR alone is a new category. Terminal emulators in web apps exist. Activity indicators exist. What matters is that both now live in the same surface, so the surface stops being a dashboard.
What changes when you stop being a dashboard
The obvious thing is that context switches drop. Four windows collapse to one. But the real shift is positional: agx becomes the default place the work happens, not the default place you check on the work.
That reframes everything downstream. Thread routing, session recovery, scheduled workers — features that felt like dashboard conveniences become workspace primitives. You don’t “check agx” the way you check Linear. You work in agx the way you work in an IDE.
If you’re building in this space
The lesson I’d pull for anyone building agent tooling: dashboards are a trap. You can ship dashboard-shaped features for a long time before realising you’ve capped your own usefulness at “status page.” The move that matters is owning the runtime — the place the agent actually runs — so your tool isn’t competing with a terminal window for the user’s attention.
agx is local-first, works with Claude / Codex / Gemini / Ollama, and keeps all state on your machine.