From 76e4d88d217ee67c25ed58bb37c4233a0d7f3691 Mon Sep 17 00:00:00 2001 From: "opencode-agent[bot]" <219766164+opencode-agent[bot]@users.noreply.github.com> Date: Thu, 6 Aug 2026 20:47:51 -0500 Subject: [PATCH] fix(core): default custom agents to primary (#40880) Co-authored-by: Aiden Cline --- packages/core/test/agent.test.ts | 1 + packages/schema/src/agent.ts | 2 +- packages/www/content/docs/(Configure)/agents.mdx | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/core/test/agent.test.ts b/packages/core/test/agent.test.ts index a00554ca4fd..50e484b3c98 100644 --- a/packages/core/test/agent.test.ts +++ b/packages/core/test/agent.test.ts @@ -126,6 +126,7 @@ describe("Agent", () => { yield* agent.transform((editor) => editor.update(id, () => {})) const info = yield* agent.get(id) + expect(info?.mode).toBe("primary") expect(info?.permissions.slice(0, Agent.Info.default(id).permissions.length)).toEqual( Agent.Info.default(id).permissions, ) diff --git a/packages/schema/src/agent.ts b/packages/schema/src/agent.ts index cdc95bb77e3..422be62da6b 100644 --- a/packages/schema/src/agent.ts +++ b/packages/schema/src/agent.ts @@ -41,7 +41,7 @@ export const Info = Schema.Struct({ id, name: Name.make(id), request: { settings: {}, headers: {}, body: {} }, - mode: "all", + mode: "primary", hidden: false, permissions: [ { action: "*", resource: "*", effect: "allow" }, diff --git a/packages/www/content/docs/(Configure)/agents.mdx b/packages/www/content/docs/(Configure)/agents.mdx index ab11c6470cd..74b82c6fe3e 100644 --- a/packages/www/content/docs/(Configure)/agents.mdx +++ b/packages/www/content/docs/(Configure)/agents.mdx @@ -46,9 +46,9 @@ An agent's `mode` controls where it can run: | Mode | Behavior | | --- | --- | -| `primary` | Can be selected as the main agent for a session. It cannot be launched as a subagent. | +| `primary` | Can be selected as the main agent for a session. It cannot be launched as a subagent. This is the default for a custom agent when `mode` is omitted. | | `subagent` | Can run in a child session through the `subagent` tool, but cannot be selected as the main agent. | -| `all` | Can be used either way. This is the default for a custom agent when `mode` is omitted. | +| `all` | Can be used either way. | In the TUI, press Tab and Shift+Tab to cycle through visible primary and `all` agents, or use `/agents` to choose one.