Subagents: Min and Max, one range with two handles, counting this agent (harness spec 3.3.0)
ci / check (push) Waiting to run
ci / check (push) Waiting to run
/effort's Subagents row and /team size are a two-handle range from 1 to the cap (left/right move the handle in focus, tab the other, enter sets both); the dialog gains a range row. Every text says Min and Max, never fewest/most, and that the count includes this agent: "Subagents: Min 1, Max 4 - 1 is this agent alone". /settings shows the same beside agents.min / agents.max; config schema and the bounds refusal likewise. CHANGELOG in the 2.0.0-beta.5 section. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
11 files changed
+183
-42
No files matched your search
@@ -9,6 +9,7 @@ import { existsSync, readFileSync } from "node:fs"
|
||||
import { join } from "node:path"
|
||||
import { parse, parseDocument } from "yaml"
|
||||
import { z } from "zod"
|
||||
import LOOP_JSON from "../../harness/loop.json"
|
||||
import { paths } from "./paths.ts"
|
||||
import { asMode, Config, EFFORTS, MODES, PERSONALITIES, UPDATE_CHANNELS } from "./schema.ts"
|
||||
|
||||
@@ -29,8 +30,13 @@ export interface SettingDef {
|
||||
reload?: boolean
|
||||
/** What it is when nothing sets it. */
|
||||
fallback?: string
|
||||
/** What a person reads beside the key in /settings. */
|
||||
hint?: string
|
||||
}
|
||||
|
||||
// The Subagents setting's names and what its numbers count (harness loop.json subagents.setting).
|
||||
const SUB = LOOP_JSON.subagents.setting
|
||||
|
||||
const ALL: Scope[] = ["session", "global", "project"]
|
||||
const USER: Scope[] = ["session", "global"]
|
||||
|
||||
@@ -38,8 +44,8 @@ export const SETTINGS: SettingDef[] = [
|
||||
{ key: "model", kind: "model", agent: true, scopes: ALL },
|
||||
{ key: "effort", kind: "effort", agent: true, scopes: ALL, fallback: "the model's start level" },
|
||||
// The team's size is the person's: the agent never sets how many agents it may have.
|
||||
{ key: "agents.min", kind: "number", agent: false, scopes: ALL, fallback: "1" },
|
||||
{ key: "agents.max", kind: "number", agent: false, scopes: ALL, fallback: "4" },
|
||||
{ key: "agents.min", kind: "number", agent: false, scopes: ALL, fallback: "1", hint: `${SUB.label}: ${SUB.min} — ${SUB.short}` },
|
||||
{ key: "agents.max", kind: "number", agent: false, scopes: ALL, fallback: "4", hint: `${SUB.label}: ${SUB.max} — this agent included; 4 is this agent and up to 3 subagents` },
|
||||
{ key: "mode", kind: "enum", values: MODES, agent: true, scopes: ALL, fallback: "manual" },
|
||||
{ key: "small_model", kind: "model", agent: true, scopes: ALL, fallback: "the session's model" },
|
||||
{ key: "knowledge", kind: "list", agent: true, scopes: ALL, fallback: "every base" },
|
||||
|
||||
Reference in new issue
Block a user