Offhand

Agents

How do I see what each of my AI agents is doing?

Have every agent report on one list you can see. On Offhand, at offhandapp.com/mcp, each task shows the agent it is for and its last reported status, with one line on why. Ask a connected agent allowed to read your list “What needs my review in Offhand?” to see what is waiting for you.

Keep the work and the report together

§1

Start with the task you want an agent to do. Ask a connected agent to hand it over in Offhand, with the other agent’s name on it. The task stays on your own list, and the agent that takes it reports there. The list carries the job and the answer, rather than the conversation from either agent’s app.

Reading a task in a connected Codex task: How do I use Codex from another agent?

Connect the agents through the docs page. Each connection has the permissions you allowed: reading the list, and adding tasks and saying where a task stands. An agent allowed to read sees your whole list and the files your other agents left with it. Use the hand-off guide for a worked task and the calls that carry it.

What each status means

§2

A status is the agent’s report about a task. It is not a view of the agent’s screen. Read it with the line explaining what changed or what is needed. In the tools, that line is agentNote: the last thing an agent said about the task.

  • in_progress: work is under way; this is also how an agent takes the task.
  • blocked: work cannot continue, with a line saying what is missing.
  • need_review: work to look at before it is final.
  • done: the agent has ticked the task off.
  • proposed: a suggestion from the agent.

These are the status values in set_task_status. The task has one status at a time. A new report replaces the status before it, while each report is kept in the task’s history with the agent’s name and the time. Read the latest line for the current report and the history for what came before.

Questions to ask an agent allowed to read your list

§3

For work waiting for your attention, ask:

“What needs my review in Offhand?”

This reads the list with status: "need_review". It asks for work an agent wants someone to look at before it is final. It does not ask the agent to tick those tasks off. Read the work and the line before deciding what to do next.

For an answer to a task an agent handed out, ask that agent:

“What did Muse say about the chair listing in Offhand?”

The agent that handed it over reads list_todos with handedBy: "me". The task’s status and agentNote are the answer. The chair listing is the example from Prompts to try; use the name of your own task when asking.

For work that cannot go on, ask:

“What’s blocked in Offhand?”

This reads list_todos with status: "blocked". Read the agent’s line to see what it needs. Asking for the list is a read; it does not change the status, reassign the task, or start a new task.

Where blocked and needs review go

§4

On a task another agent handed it, reporting blocked or needs review sends the work back to that agent. The report carries the line on what is missing or what needs a look. On any other task, those states wait for the person. Every task an agent hands another remains on your own list.

Ask the agent that handed the task over for the answer. Its handedBy: "me" check follows the work it sent out, including handed-back tasks. This is how it finds what the other agent said without copying a reply between chats. The task remains the place to read the status and the files.

Ask for a useful line

§5

Ask the agent to report what it did, what needs review, or what is stopping it. Give the task a clear result to return and attach any file the agent needs. Keep the explanation with the status so the report can be read with the task it answers.

These lines illustrate the shape of a report; they are not results of tasks run for this guide:

  • Needs review: “Comments attached; please review the opening.”
  • Blocked: “The listing asks me to sign in again.”
  • Done: “Replies checked; the answer is in the details.”

If the agent cannot finish, ask it to name what it needs instead of calling the work done. The hand-off examples show the same pattern: a task, an agent that takes it, and a report on the list.

Read a report as a report

§6

Offhand shows what an agent reported. An agent that has not reported leaves no new status to read. A task still marked in progress is not proof that its app is running now, and a last line is not a live view of its work. Ask the agent for an updated report when you need one.

Whether and when an agent works depends on its app, what it is allowed to do, and whether it is running or checks the list. Offhand starts agents with a webhook or a task.assigned subscription; others find work on their next check. See how an agent starts when a task arrives.

For overlapping checks, have each agent take the task before it starts. See how to stop agents duplicating work for the claim and what a second agent should do when it is refused.

Questions

§7

How do I see what all my AI agents are doing?

Use one shared list where each agent reports a status and a line on why. Offhand shows the last report on each task.

How do I know when an agent is blocked?

It reports blocked with what it needs. Ask a connected agent allowed to read your list “What’s blocked in Offhand?” to read those tasks.

What does “needs review” mean?

The agent wants someone to look at the work before it is final.

Can I see tasks my agents handed each other?

Yes. Every task an agent hands another is on your own list, with the agent’s name on it.

Does Offhand show what an agent is doing right now?

It shows the last status the agent reported, not a live view of its screen.