From 48194753eee9c6cb8995cf52afcbd615cf115491 Mon Sep 17 00:00:00 2001 From: Adam Malczewski Date: Fri, 29 May 2026 15:38:35 +0900 Subject: feat: subagent summon — catalog filter, error hints, system prompt, AgentBuilder default, SubAgent mode display MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Filter summon tool catalog to is_subagent-flagged agents only - Return fresh subagent list in error when slug not found - Add subagent hint to system prompt when summon tool available - Default is_subagent checkbox to true in AgentBuilder - Fix tab-created event to include agentSlug and agentModels - Add SubAgent read-only mode to ModelSelector with model slider --- packages/core/src/tools/summon.ts | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'packages/core/src/tools') diff --git a/packages/core/src/tools/summon.ts b/packages/core/src/tools/summon.ts index ed4b080..34109f3 100644 --- a/packages/core/src/tools/summon.ts +++ b/packages/core/src/tools/summon.ts @@ -215,18 +215,20 @@ export function toAvailableAgents( globalDir: string, projectDir: string | null, ): AvailableAgent[] { - return defs.map((d) => { - const baseDir = - d.scope === "global" - ? globalDir - : projectDir - ? `${projectDir.replace(/\/$/, "")}/.dispatch/agents` - : globalDir; - return { - slug: d.slug, - name: d.name, - description: d.description, - path: `${baseDir}/${d.slug}.toml`, - }; - }); + return defs + .filter((d) => d.is_subagent) + .map((d) => { + const baseDir = + d.scope === "global" + ? globalDir + : projectDir + ? `${projectDir.replace(/\/$/, "")}/.dispatch/agents` + : globalDir; + return { + slug: d.slug, + name: d.name, + description: d.description, + path: `${baseDir}/${d.slug}.toml`, + }; + }); } -- cgit v1.2.3