Meet Decision Inbox: approve agent actions without hunting through run logs
Decision Inbox turns every Agentis question and approval into a focused, real-time queue on desktop and Android. Respond in seconds, keep the full decision history and let agents continue without giving up human control.
Ondřej Novák
Founder
An agent is ready to deploy, change production data or choose a migration strategy. It does the responsible thing and asks a human. Then the run sits idle because the request is buried between tool calls in a task timeline nobody is currently watching. Human oversight worked, but the delivery loop still stopped. Decision Inbox fixes that last mile: every question and approval that needs you becomes one focused action queue, available on desktop and Android.
Decision Inbox is a companion to Agentis, not another workflow system. Agentis remains the source of truth for tasks, runs and decisions. The inbox gives the moments that require human judgment their own fast surface, then sends the answer back to the original run so the agent can continue.
One queue for every decision blocking an agent
The pending inbox mixes two kinds of work without flattening them into generic notifications. Structured questions preserve the choices the agent supplied, including single-choice, multiple-choice and freeform answers. Approval requests expose a direct Approve or Reject action with an optional comment. Required answers are validated before submission, and all answers to a multi-part question are sent together.
- See every pending question and approval in one paginated inbox instead of opening runs one by one.
- Answer structured questions using the choices and context prepared by the agent.
- Approve or reject an action immediately and add a comment when the decision needs a reason or condition.
- Open the originating Agentis task and run directly when the decision needs deeper investigation.
“The agent should pause for judgment, not make the human search for the pause.”
Desktop when you are working, Android when you are not
The Electron desktop app lives in the system tray, can start at login and can stay available when its window is closed. A pending count changes the tray state, while native notifications and an optional sound bring new work to your attention. You can suppress notifications while the inbox is focused, so the app signals only when a signal is useful.
The Android client carries the same pending inbox, history and resolution flow. Firebase Cloud Messaging can alert you while the app is backgrounded or terminated; tapping the alert opens the pending queue and performs an authenticated refresh. If your desktop is active, Decision Inbox suppresses the mobile push for the same user, avoiding the familiar double notification across every device on your desk.
Realtime hints, authoritative decisions
Agentis emits a decision.changed event when a request is created, answered or cancelled. The Decision Inbox service fans that hint out over a tenant-scoped Server-Sent Events stream, and clients refresh their view immediately. Reconnect handling and a periodic pending-count check repair missed hints, but neither a webhook nor a push message is treated as the decision itself. The client always reloads authoritative state from Agentis before presenting the current queue.
Agent asks or requests approval
-> Agentis records the pending decision
-> Decision Inbox receives a realtime hint
-> Human answers, approves or rejects
-> Agentis resolves the decision
-> The original run continuesThat distinction protects against races. If someone resolves or cancels a request elsewhere while you are looking at it, Agentis returns a conflict rather than accepting an obsolete response. The card is marked as changed and the inbox refreshes instead of showing a false success. During an outage, the most recent in-memory snapshot remains readable, but resolution controls are disabled. Decision Inbox never queues an old approval offline and submits it later by surprise.
History makes oversight useful after the click
A decision is not finished when the button disappears. The history view records whether an approval was approved, rejected or cancelled, the response comment, the resolution time and who resolved it. Question history preserves selected options and text answers. Each item remains connected to its project, task and run, turning a quick interruption today into evidence a reviewer can understand later.
This is the practical difference between a notification button and a control surface. A notification helps one person act once. Decision Inbox also preserves the context needed to explain what happened, who made the call and where the agent continued from it.
Private by design
Approval requests often contain exactly the information that should not appear on a lock screen or in an intermediary database. Decision Inbox keeps notification payloads deliberately generic: no prompt, summary, answer or comment is sent through push. The desktop token is encrypted with the operating system’s secure storage, Android uses Keystore-backed storage, and the sandboxed desktop renderer never receives the credential.
- The service forwards the current user token to Agentis but does not persist or log it.
- Tenant and user identity are derived from the authenticated Agentis session, never accepted from client-supplied IDs.
- Decision content stays in Agentis; the service stores only Android installation and push registration metadata.
- Production mobile traffic requires HTTPS, and secure credential storage fails closed when the operating system cannot provide it.
Autonomy with a reachable brake pedal
Human-in-the-loop control should not mean keeping the Agentis task page open all day. It should mean agents run independently until they reach a boundary that deserves judgment, then the right person can make that judgment quickly, from the device already in front of them. Decision Inbox makes the safe path the fast path: a visible queue, a precise response, an immediate continuation and a durable record in Agentis.
If your agents already know when to ask, Decision Inbox makes sure those requests no longer wait in the wrong window. Keep the desktop app in the tray, carry the Android inbox with you and let agent work move at machine speed until the exact moment human judgment matters.
Explore the Decision Inbox project on GitHub: https://github.com/ondrejnov/decision-inbox
See Agentis in action on your own task
Sign in, describe a task and watch an agent deliver reviewed, ready-to-ship work in minutes.
Try Agentis now