An engineering note from the team building Shepherd. Updated September 8, 2026.
One agent is easy to follow. You read its terminal, answer its questions, and inspect the result. With several agents, that habit turns into a loop: open a pane, look for a change, move to the next pane, repeat.
The work may be parallel, but your attention is still moving through it one task at a time. We built Shepherd’s agent monitor to make that attention useful. Its central question is simple: where would your involvement make a difference right now?
Activity is not the same as progress
A program producing output may still need help. A quiet terminal may be waiting for input, doing work that produces little output, or sitting at a prompt after finishing. The fact that a process exists does not explain which of those situations applies.
An agent monitor therefore needs more than a list of open terminals. It needs enough context to distinguish activity from a request for human involvement. At the same time, it cannot know whether an agent’s answer is correct just because the agent has stopped working.
We use status to guide attention. The terminal, the changes, and the checks remain the places where you inspect what actually happened.
Separate who is running from what is happening
Our monitoring design separates two questions: which agent belongs to this task, and what can we currently observe about its activity? Keeping those responsibilities distinct helps the workspace maintain a stable sense of the task as its state changes.
We interpret the signals available from the running environment and supported agent integrations, then bring them into a common set of states. Different agents do not expose their activity in identical ways, so the observation layer accounts for those differences before the interface presents a compact summary.
This shared representation lets the interface concentrate on meaning: work is underway, input is needed, or a completed turn has not yet been acknowledged. The overview does not need to expose the mechanics used to arrive at each observation.
Remember the transition, not just the moment
Imagine an agent finishes while you are reviewing another task. By the time you return, the agent is sitting quietly. If the monitor only describes that instant, the useful event has disappeared into an ordinary idle state.
We preserve the distinction between being idle and having completed activity you have not yet seen. That makes the monitor useful across an absence, rather than only while you watch it. A finished turn can remain something to visit until you acknowledge it.
“Completed” here is an attention signal. It does not certify that the code is correct, that tests passed, or that the broader task is finished. Those judgments require reviewing the result.
Every status needs somewhere to go
A warning without context makes the user do another search. We connect each monitor entry to its machine, workspace, and terminal location so that seeing a task and returning to it are part of one flow.
The compact view and the workspace draw on shared service state. They are different presentations of the same underlying work, rather than independent guesses maintained by each window. Connection status is also distinct from agent status: losing contact with a machine does not establish that its agent has stopped.
Observation still has limits. Agent interfaces evolve, and a signal can be incomplete. Our design does not treat monitoring as access to an agent’s reasoning or as a promise of perfect classification. Keeping the underlying terminal available gives the user a way to inspect the situation directly.
The monitor should cost less attention than it saves
Monitoring itself also does work. We separate discovering running tasks from refreshing activity for tasks already identified, and keep routine observation focused on the sessions being managed. The intention is to avoid repeatedly rebuilding the entire picture when only a small part has changed.
We do not attach a universal performance number to that design. Its product purpose is more immediate: help you stop checking every pane and spend your next moment where it is needed.
This depends on sessions that remain available and on remembering the context of each task. Together, those decisions make parallel work easier to return to.
Your next workspace
Put it to work.
Try Shepherd on an Apple silicon Mac. The iOS app is currently listed as coming soon.
Get Shepherd for Mac