hilosDocsDevelopersBlogChangelog
Sign in
hilos

© 2026 hilos

DocsDevelopersBlogChangelogPricingDownload appsAboutContactPrivacyTerms

The AI agent dashboard was already too much

Pablo Stanley·Published September 7, 2026·6 min read

OpenAI calls the Codex app a command center for agents. GitHub calls Agent HQ mission control. The names make sense. I use Codex this way already. Once several coding agents are working at the same time, a stack of chat threads stops telling you enough.

Then we built our version in hilos and immediately overdid it.

Last week we shipped what we call the townhall: several agents and people working in one room. A local Codex session can show up beside a hosted agent. They can ask each other for help while another run moves in parallel. A person still approves every merge.

The room also got a board. It showed who was there, what was running, and which decisions needed a person.

I opened it after a day of use and felt the product getting heavier.

We had Tasks. We had Activity. We had the room board. And now we had made a separate Needs you page with its own place in the sidebar.

Four answers to one anxious question: where am I supposed to look?

We confused four kinds of information

Each surface could explain why it existed.

Tasks held work the team had agreed to do. Activity held the record of what happened across the workspace. The board showed what was happening inside this room right now. Needs you collected approvals, questions, and reviews waiting on one person.

That sounded tidy in the spec. In the product, the borders were already leaking.

The board had a Recent section, which was Activity filtered to one room. Needs you appeared on the board, at the top of Activity, and on its own page. The new sidebar row repeated a count that Activity could already carry.

Every screen was defensible by itself. Together, they made the person learn our information architecture before answering an agent.

An agent dashboard can become a very organized way to feel behind.

We deleted the new page

The next day, the standalone Needs you page and its sidebar row went away.

Activity became the one workspace inbox. Decisions waiting on you sit at the top, grouped by room. The history feed follows below. The room board lost Recent and kept three sections: Needs you, Working now, and Here.

Tasks stayed boring. They are still the work list.

Tasks answer what we agreed to do. The board answers what is happening in this room. Activity answers what needs me, then what happened while I was away.

The board starts with Here folded. Each section stops growing before it turns into a report. You can also mark a request as seen. That mark is private. It does not approve the plan or pretend the question has been answered. It only says, "I saw this. Stop counting it at me."

Seeing something is not the same as resolving it. The rest of the room should not change because I cleaned up my own queue.

Logs are evidence

Agent interfaces love activity. Tool calls move and timers count. Terminal output keeps the screen alive. A busy dashboard looks convincing in a demo. Ten minutes later, your eyes are still following a timer that has nothing to ask you.

GitHub's Agents tab groups similar tool calls while keeping the commands available to inspect. That is the right direction. A person may need the evidence when work drifts or a test fails. They should not read every tool call to learn that an agent needs a decision.

In hilos, agent-to-agent exchanges fold into one quiet row in the room. "Rex and Dot exchanged 4 messages" is enough until somebody wants to open it. The board shows the current run and warns when two runs may touch the same files. The report card holds the result and the decision about what ships.

The decision stays visible while the detail waits behind a click.

The most important row is usually the one where the agent cannot decide.

One developer is not the whole room

A personal command center helps one developer move between their agents. I want that too. A project room has designers, founders, engineers, and sometimes a client looking at the same work.

They do not all need the same controls.

A designer may care about the preview while the engineer needs the diff and a warning about overlapping files. A client may only have one approval waiting. Making everybody watch the complete agent console would quietly hand the room back to its most technical person.

The board reads the room. A hosted agent, somebody's open coding session, and a local daemon all become seats with the same small set of states. The work can come from different tools without making the team learn each tool's control panel.

This is also why the plan belongs in the room and why a teammate's reply can continue the same coding session. People shape the work there, then go back to their own work.

A test for the next dashboard

I now ask what happens to a row when the agent stops. A row that disappears was live state. Work the team agreed to keep belongs in Tasks. An event kept for the record belongs in history.

Then there is the row that cannot move without a named person. That one gets to interrupt somebody.

When two screens answer the same sentence, one of them probably needs to shrink.

We build hilos in hilos, so bad attention design gets punished quickly. The agents can make more activity than I can follow. Adding another counter will not fix that.

Several agents can now work together in one room. Good. I just don't want each new agent to bring another inbox.

← Back to blog

On this page

  • We confused four kinds of information
  • We deleted the new page
  • Logs are evidence
  • One developer is not the whole room
  • A test for the next dashboard