Project assistant (chief of staff)

  • Desktop app
  • All plans

Called "Chief of Staff" until 2026-10-15; renamed because the name did not say what it is for. The role id stays chief-of-staff.

What it does

Every project gets its own assistant: one saved agent, created automatically the first time you open the project, shown as the very first row of the agent list. It runs the project for you without writing code: you tell it what you want, it turns the request into a backlog ticket, hands it to the best suited agent as a tracked assignment (Delegation ledger), follows it up on the next step the ledger computes, has the result checked by someone other than its author, and answers the requests sent to the project inbox. It is also the place to start after a messy session: ask it where things stand and it reads its delegations, the live agents, the backlog and the inbox first.

Where to find it

Inside a project, at the very top: the first row of the project card in the left column, in a foldable "Project assistant" section above "Ideas and planning" and "Running agents" (since 2026-10-16). When the project card is not on screen (projects list expanded), the same block heads the agent list, so the assistant is always in one place and never shown twice. On the phone, it is the first row of the project's list, under the same foldable heading. Its card is named after the project ("MyApp assistant") while it has no task title of its own, has its own portrait, and wears the project's round logo in the top-right corner of its avatar (where other agents show their ticket type). Hovering the card for a moment shows what it does. Right-click it (long press on the phone) for the hide options; the phone's sheet also explains what it does. The project inbox box, when requests wait, heads the agent list. The card keeps its full size even before you open its console.

The card has no close, delete, duplicate, fork, pin to top or "Done" action (desktop and phone, since 2026-10-16): hiding is the only way to put the assistant away.

From the projects home (since 2026-10-20, desktop and phone): the "Project assistant" bar of each card opens its console without opening the project first; back (title bar Home, phone back arrow) returns to the list, see Projects Home.

How to use it

  1. Open a project: the assistant appears at the top of the project card (inactive until you open it, so it costs nothing until then).
  2. Click it to open its console and tell it what you want done, or ask "where are we?".
  3. It hands the work to the right agent through agent messaging, then reports back in its own console. You keep deciding: it asks you before creating a new agent, and brings real trade-offs back to you.

Hide it in one project: right-click its card > "Hide in this project". Hide it everywhere: right-click > "Hide in all projects", or the setting below. An agent can do the same for you with the MCP tool settings_set, key chiefOfStaffVisible (scope: "global" for every project, scope: "project" for one).

Settings

  • chiefOfStaffVisible (global, Settings > Agent behavior > "Assistant in every project"): shows and creates the assistant in every project. Default on. Off: no section and no automatic creation; an assistant already created stays in the list as an ordinary agent. Stored on your account, so every computer and the phone follow it.
  • chiefOfStaffVisible (project override, Project settings > Capabilities & permissions > "Project assistant"): this project's own choice, instead of the global one. Deleting the assistant sets it to off for that project.

Both are readable and writable by agents with settings_get / settings_set (scope global or project).

Agent tools (MCP)

The chief of staff uses the ordinary tools, with the role of coordinator: assignments_create / assignments_list / assignment_update (since 2026-10-23: hand work over, read each delegation's next step, verify, return, follow up), agents_list_live (who is there, live status, since when), agents_send / agents_reply (a question or a fact, answer), agents_message_status (where a message stands), agents_read_inbox with projectInbox (the project inbox), agents_resume (bring back a closed console), backlog_create / backlog_list / backlog_update (tickets). It is marked as the project's coordinator, which gives it the raised messaging budget and the project inbox notices; the loop guards (12 messages per conversation, checkpoint, no resend) apply to it unchanged.

As coordinator it also gets agents_questions_list / agents_question_answer (since 2026-10-23): it reads the questions the other agents of its project are waiting on (AgentsRoom cards and Claude Code's own question dialog) and hands over the answer you gave it. Mail to an agent waiting on your answer stays held, so this is how an answer you gave the chief reaches that agent. It never picks an answer itself, and any agent you mark as coordinator gets the same two tools.

Providers

All providers, no difference. It is created on the provider and model of the project's quick agent profile; change them from its card like any agent.

Mobile

Same first row of the project's agent list on the phone (same name, portrait and project logo), and a long press opens its actions sheet with what it does and the two hide options (hide in this project, which needs the computer to be connected, or in all projects), plus the same "Assistant in every project" switch in Settings. Opening a project on the phone creates its assistant through the computer, like opening it there. The cards of the Projects tab carry the same "Project assistant" bar as the desktop home.

Limits

  • It coordinates and never takes tickets on its own: since 2026-10-19 the automatic assignment of a ticket (AI suggestion or default agent, on the desktop and on the phone) never picks the project assistant. You can still assign it a ticket by hand.
  • One chief of staff per project (per repository: copies of the same repository share it). A second agent with the role stays an ordinary agent.
  • It is created inactive: nothing runs until you open it.
  • It does not watch the project on its own between turns: it follows up when you talk to it or when a teammate's reply or a project inbox request reaches it.
  • The Open space "Anomalies" button uses the chief of staff of a project rather than creating a second agent; that scan only reads and reports.

Common questions

  • Can it talk to other projects? Yes. It can hand work to another project of your account, preferably through that project's inbox, which reaches that project's own assistant; it can also write directly to an agent there when it knows who owns the subject. Requests from other projects reach it through its own project's inbox. Same message limits as inside a project.

  • Can I open it without opening the project first? Yes, with the "Project assistant" bar of each card on the projects home, see Projects Home.

  • Can I get rid of it? Yes: hide it in one project or in all of them (right-click / long press on its card, or Settings). There is no delete or close button on it.

  • I hid it and want it back. Project settings > Capabilities & permissions > "Project assistant", switch it on (or Settings for every project): it is created again if it no longer exists.

  • Can an agent hide or show it? Yes, settings_set with the key chiefOfStaffVisible, globally or for one project.

  • Does it write code or commit? No. It routes, follows up and reports.

  • Will it create agents on its own? No, it asks you first.

  • Why is it in every project? It is the starting point of a project; hide it where you do not want it.