AgentsPreview
Agents
Each workspace keeps its own saved ACP sessions and has one active session at a time. Sign in with that agent's subscription, never an API key.
Desktop chrome for the live session is the Agent tab. Mobile chrome for the picker is the Agents tab. Agent-Up does not collect API keys.
Pick an available agent to bind it to the workspace
Complete subscription sign-in if the agent asks
Prompt in the live session, or watch an unattended loop
Chrome
Desktop Agent ยท Mobile Agents
Where it differs
Desktop
Mobile


Workspace agent CLIsโ
Saved sessions from every enabled ACP agent appear together within the current workspace. Each row shows the agent, the agent-generated short description, and the branch last associated with the session. Select a row to resume it; sessions from another workspace never appear in this list.
Workspace agent chat uses ACP packages enabled on the Server. The picker lists those modules by id. The Server wraps those launches in Nix. Enable the package from Desktop capability-module chrome or Mobile Settings. Clients never call the remote registry.
Sign in with the corresponding CLI's subscription login from Desktop or Mobile when the agent asks. Agent-Up runs that vendor's no-browser or device-code flow on the Server, shows the sign-in link (and Codex device code) in the client, and then starts ACP. An unavailable executable is disabled in the Desktop and Mobile agent picker.
Workspace-bound agentโ
Choosing an agent on Desktop or Mobile binds that module to the workspace, then starts the session. The picker stays hidden while the bind is set. A workspace with no bound agent is normal interactive chat, not an error.
Unattended loopโ
Autonomy is experimental and off by default. When it is enabled on the Server and activated for a workspace, that bound agent works through assigned host issues under a permission policy without waiting on each prompt. Desktop shows the current task and how the loop stopped. A message typed while a turn is running is steering for the next turn; it does not cancel the loop.