/** * [WHO]: Provides PRESETS, executePreset(), executeAutoTeam(), selectAutoTeamPlan(), formatPresetResult() * [FROM]: Depends on ./team-types and ./team-runtime for spawning configured teammates * [TO]: Consumed by index.ts for /team:preset command handling * [HERE]: extensions/builtin/team/team-presets.ts - built-in AgentTeam preset definitions */ import type { TeamRuntime } from "./team-runtime.js"; import type { TeamRuntimeEvent } from "./team-runtime.js"; import type { PersistedTeammate, PresetName, PsycheWeights, TeammateMode, TeammateRole } from "./team-types.js"; export interface PresetTeammateSpec { role: TeammateRole; name?: string; mode?: TeammateMode; harnessEnabled: boolean; psycheOverrides?: Partial; } export interface PresetSpec { name: PresetName; description: string; teammates: PresetTeammateSpec[]; autoStart: boolean; } export interface PresetResult { preset: PresetSpec; teammates: PersistedTeammate[]; started?: { teammateName: string; success: boolean; error?: string; }; } export interface AutoTeamPlan { presetName: PresetName; rationale: string; startTargetRole: TeammateRole; } export interface AutoTeamResult extends PresetResult { plan: AutoTeamPlan; } export declare const PRESETS: Record; export declare function executePreset(runtime: TeamRuntime, presetName: PresetName, taskDescription: string, baseCwd: string, model?: Parameters[2], onEvent?: (event: TeamRuntimeEvent) => void, autoStartOverride?: boolean): Promise; export declare function executeAutoTeam(runtime: TeamRuntime, taskDescription: string, baseCwd: string, model?: Parameters[2], onEvent?: (event: TeamRuntimeEvent) => void, completeSimple?: (systemPrompt: string, userMessage: string) => Promise): Promise; export declare function selectAutoTeamPlan(taskDescription: string, completeSimple?: (systemPrompt: string, userMessage: string) => Promise): Promise; export declare function formatPresetResult(result: PresetResult): string[]; export declare function formatAutoTeamResult(result: AutoTeamResult): string[];