Assistant and agents

An agent is a model given a job: a standing set of instructions, a list of tools it is allowed to use, and optionally its own model. The Assistant is where you talk to one without leaving what you are doing.

The Assistant panel

Pick Assistant on the right-hand strip and the panel becomes a chat. It sits beside your work instead of taking a tab, so you can ask about the file in front of you and keep looking at it.

From the panel you can start a new conversation, reopen an earlier one from the history, and switch which agent you are talking to. Zero ships with a built-in agent, so the panel works before you have written any of your own.

These conversations are ordinary chats — they appear in the Assistant folder on the Chats page, and you can open one there in a full tab whenever the panel gets cramped. The only thing that makes a chat an assistant chat is that it has an agent attached.

A turn is written down as it happens, not when it ends. Closing Zero while an agent is halfway through a long piece of work no longer loses the conversation — the files it had already written were never at risk, but the discussion about them used to be.

Writing an agent

The Agents page holds your agents, one file each.

Instructions are the heart of it — the brief the agent works under, written in plain language, in a full editor rather than a one-line field. This is where you say what it is for, what it should never do, and how it should answer.

Tools are what it is allowed to reach for. Each tool in the list has a description; grant the ones the job needs and leave the rest off. An agent with no tools can still think and write — it just cannot act.

Sub-agents let one agent hand work to another. Tick the agents this one may delegate to; it cannot pick itself.

Model is optional. Left empty, the agent uses your project defaults, which is usually what you want — an agent is defined by its instructions, not by which model happens to be current. Set it when the job genuinely needs a particular model.

Any model from any provider you have enabled can be picked here, including one running on a server of your own — useful for an agent that does bulk, unglamorous work you would rather not pay per token for.

If you later disable a model in settings that an agent was pinned to, the saved choice stays visible on the agent rather than quietly reverting, so you can see what it was and decide.

The built-in agent

The agent that ships with Zero is read-only: you can use it and read it, but not edit it. To make your own version, copy it and edit the copy. This way an update to Zero can improve the built-in agent without overwriting something you changed.

Agents are files

Each agent is a plain file in the project, so agents are versioned with everything else, diff readably in git, and can be copied between projects by copying a file. If a project is open in two places at once and the same agent is being edited elsewhere, Zero tells you rather than letting one edit quietly win.