Sitetracker · Scout, agentic AI platform for critical infrastructure
Making enterprise AI agents legible enough to trust
Agents run with nobody watching, and people step in where it matters.
Try the prototype
Role
Design lead, agents workstream
Team
Tech lead, engineer, product director
Timeline
2026
Failures surfaced only when someone was watching
Before Agent Control, a run never left the session that started it, and neither did its output. A failure only surfaced when someone was watching, a customer reported it, or an engineer audited Grafana.
During a July 2026 demo, the same agent was scheduled dozens of times. A database bug compounded the load and production went down. The missing controls did not cause the bug, but they left no product-level way to see or halt the repeated work.
From engineering that afternoon: "There's really no way to see all your agents that are scheduled… we don't have any UI to stop that agent." A person could stop the active run inside its session, but not disable the schedule firing it again.

In the prototype’s agent detail, a schedule with its off switch and a scheduled run that failed unseen.
Schedules were the only trigger we had then, but webhooks and record changes were coming. I designed for any run that starts with nobody watching.
The tickets described screens, not jobs
Scheduling, the Agents tab, run history, connector setup, and builder access had accumulated across overlapping tickets, and the requests described screens rather than which surface should own each job. I mapped each one against what a person was trying to do, cut the duplicate setup work, and kept the builder out of this release.

An urgent click lands in the session at that run. Managing an agent is a deliberate step. The hub lists every run, whichever surface started it.
Nothing writes back until a person approves
The hub made failures easier to find, but people still needed to understand what an agent was doing and step in safely. One card pattern carries a run through every moment.
When a run needs a file or a source, the card asks for that input and waits. Sometimes the gate is a pick: three invoices could match one PO, so the run pauses and asks which one writes back.

Once an agent is about to write, the write waits at a gate. The agent proposes records, the reviewer edits them in place, and nothing lands until Approve.

Ten proposed records, editable before any of them is saved.

Running, finished with its output, and paused on a dead connector, in one card system.
Reconnected, then resumed: two consents, two clicks.

Behind Show thinking: two decisions asked, both approved.
Leadership wanted a health view; I led with what's blocked
Admins had a real reason to want it: org-wide adoption was their number. In the first pilot review, the customer kept landing on the attention tile instead. So the metrics stayed above, and blocked work came first.
In May we set the KPIs for agents: runs in production, active agents, success rate. Those became the metrics above the table. One goal from that work never got a number: catching a broken run before the customer reports it. That is the first thing I would measure.
Nine times out of ten, people want to know where the issues are first. — Project manager
Red means a run failed, amber means something needs you, and unseen work lands with a teal dot. The table opens in that order: failures, then runs waiting on a person, then work nobody has read. An early version shared the amber, and the table read as a wall of "needs you." A signal that always fires is not a signal.

The Needs attention filter puts runs waiting on a person ahead of completed work.
Visibility shipped before the agent builder
The approval gate shipped first, and pilots ran it in their production Scout org all spring. Per-agent run history followed in June. Engineering then built the hub from my React prototype and shipped it to production in August 2026.
Schedule-level Stop was still open. The agent builder came next, and I argued for that order: multiplying agents before anyone could see them would multiply the outage.

The React prototype’s All company view. Engineering built the production hub from this prototype.


