Agents
Helper agents take a self-contained part of a task off DCode's hands and report back: built-in ones, your own, and helpers in the background.
On this page
While DCode works on a task, it can hand a piece that stands on its own, a broad search, a review, a side investigation, to a helper agent. The helper works with its own context and tools and brings back what it found, so the main conversation stays focused. When many parts can run at the same time, DCode starts a crew instead.
Built-in agents
| Agent | What it is for |
|---|---|
general-purpose | Researching complex questions, searching for code and carrying out tasks of several steps. It has every tool. |
explore | Searching wide and fast across many files, folders and naming patterns, when only the conclusion matters. It reads and never changes anything. |
DCode reads each agent's description and hands it work that fits. You can also ask for an agent by name in your message.
The Agents view
In the desktop app, open Agents in the sidebar. It lists every task and helper running now, in all open projects, with its project, task, status, what it is doing now and how long it has run.
- Status. Working, Starting, Queued, In the background, or Needs you when it waits for your permission or your answer.
- Kind. A Helper, or a Crew member of a crew.
- Stop. Stopping a task stops it and its helpers, and you can continue the task later. Stopping a helper stops only that helper; the task keeps going.
- Open task takes you to its conversation. A task that runs in its own worktree shows its branch.
Work in the background
In the CLI, /bg <task> starts a task as a background helper, so the prompt stays free for you. You get one line when it finishes. It works while another turn runs, but a turn that is already running cannot move to the background.
/bg Find every call to the old payments API and list the files/agents shows every helper and background task of the session: Enter watches one, with its live steps and its transcript, and S stops it. In the desktop app, a custom agent with Run in background on may run as a background task when DCode asks for one, and shows as In the background in the Agents view.
Custom agents
A custom agent is a Markdown file: a short header with its name and description, then the instructions it follows. Agents live in two folders:
| Folder | Whose |
|---|---|
~/.dcode/agents | Yours, in every project. |
.dcode/agents in the project | The project's, shared with your team through git. A project agent wins over one of yours with the same name. |
Create one in the CLI
- Type
/agentsand press N for a new agent. - Give its name, what it is for, the tools it may use (leave empty for all), and whether it is yours or the project's.
- Press E on an agent to open its file in
$VISUALor$EDITORand write its instructions.
A name uses letters, numbers, - or _, with no spaces, up to 64 characters. general-purpose and explore are taken.
Create one in the desktop app
- Open Settings, Subagents, and choose New subagent.
- Fill in the name, the description, the system prompt and the tools; set the model, the permission mode, the most turns and a colour if you want them.
- Save. The agent is written to your own agents folder and listed under Installed.
The list also shows Plugin subagents, from your enabled plugins, whose model and reasoning effort you can change, and the Built-in subagents, which cannot be edited. A switch turns each agent on or off. The app edits your own agents; edit the project's in their files.
The agent file
---name: code-reviewerdescription: Reviews a change for bugs, risky edits and missing tests. Use after code is changed.tools: - Read - Grep - Glob---You are code-reviewer, a helper agent.Read the changed files, list each problem with its file and line, and suggest a fix.Do not change any file.| Field | What it does |
|---|---|
name | Required. The agent's name. |
description | Required. What the agent is for. DCode reads it to decide when to use the agent, so say when to use it. |
tools | The tools it may use. Leave it out for every tool. |
disallowedTools | Tools it may not use. |
skills | Skills the agent loads. |
permissionMode | Leave it out, or default, to work in the session's mode. acceptEdits lets file changes in the project run without asking; auto and plan are Auto and Plan mode; bypassPermissions or dontAsk is Full access, or Fewer questions when the session is in Fewer questions. Read from your own agents only: a project agent always works in the session's mode. |
maxTurns | Stop the agent after this many turns. |
background | true lets DCode run the agent in the background. |
injectAgentsMd | Whether the agent also gets the AGENTS.md instructions. |
memory | Give the agent a memory of its own: user (in ~/.dcode/agent-memory), project (in .dcode/agent-memory of the project) or local (in .dcode/agent-memory-local). |
mcpServers | The names of the session's MCP servers the agent may use. |
color | red, blue, green, yellow, purple, orange, pink or cyan. |
Everything under the header is the agent's instructions. To give an agent its own model and reasoning effort, set them in the app's form.