Three agent tasks are running. One completes, one needs input, and one fails. If the interface communicates that only through color, reordered cards, or transient toasts, keyboard and screen-reader users can lose the task they were reviewing.
Parallel agent-session interfaces are a current developer-tool hotspot. Here is an accessibility audit for MonkeyCode SaaS, not a claim that its current UI has a defect.
type TaskState =
| "queued" | "running" | "needs-input"
| "completed" | "failed" | "cancelled";
Every card needs stable identity, current state, and a next action. “Review authentication flow, needs input, open requirement” is useful. “Yellow status” is not.
<article aria-labelledby="task-auth-title">
<h3 id="task-auth-title">Review authentication flow</h3>
<p>Status: <span>Needs input</span></p>
<button>Review requirement</button>
</article>
<div class="sr-only" aria-live="polite" aria-atomic="true"></div>
Visible state remains normal text. A restrained live region announces meaningful transitions without moving focus.
| Action | Expected evidence |
|---|---|
| Tab through tasks | Focus follows a stable, visible order |
| Another task completes | Focus does not move |
| Focused task needs input | State announced once; action reachable |
| Task list reorders | Focus remains on the same task identity |
| Cancel a task | Confirmation names the exact target |
| Failure occurs | Error and recovery belong to that task |
| Retry | Identity and prior error remain understandable |
Repeat at 200% zoom, with reduced motion, keyboard only, and at least one named browser/screen-reader combination. Record exact versions.
The audit fails when state is color-only, live regions read every progress tick, completed cards vanish before review, cancellation targets are ambiguous, or retry creates unlabeled duplicate work.
Retain a transition log:
task: "Review authentication flow"
from: "running"
to: "needs-input"
focus_before: "Open task details"
focus_after: "Open task details"
announcement: "Review authentication flow needs input"
MonkeyCode is a relevant candidate because its README documents online use plus task, model, and requirement management. Those facts make state transitions important; they do not establish conformance or parity across browser, mobile, SaaS, and self-hosted interfaces.
Sources: MonkeyCode repository and SaaS.
Limitations: this is a source-based protocol with no measured accessibility result. Behavior varies by UI version, browser, OS, and assistive technology.
Disclosure: I'm a MonkeyCode user sharing my own experience, not affiliated with the project. This is one of several independently useful technical articles published by accounts managed by the same operator; it is not an independent endorsement.
Which exact task transition first loses focus or a useful announcement in your environment?