/** * Custom agent templates (reusable spawn presets). * * A template captures everything needed to stamp out a fresh root thread: * client, working directory, an optional identity/system prompt, and optional * per-thread MCP servers. Stored as an array in settings.json (no DB schema * change). The dashboard "Agents" tab manages them; a Start action spawns a * normal root thread from a template. Templates never touch running threads. */ import { type AgentType } from "./agent-settings.js"; import { type ThreadMcpServer } from "./mcp-settings.js"; export interface AgentTemplate { id: string; name: string; client: AgentType; workingDirectory: string; systemPrompt?: string; mcpServers?: Record; } /** All stored agent templates (malformed entries dropped). */ export declare function getAgentTemplates(): AgentTemplate[]; /** Single template by id, or null. */ export declare function getAgentTemplate(id: string): AgentTemplate | null; /** * Upsert a template. A blank id creates a new one (server-assigned id); an * existing id replaces in place. Validates required fields and the MCP map; * throws on violation so the dashboard can surface a 400. */ export declare function saveAgentTemplate(input: { id?: string; name: string; client: string; workingDirectory: string; systemPrompt?: string | null; mcpServers?: Record | null; }): AgentTemplate; /** Remove a template by id. Returns true if one was removed. */ export declare function deleteAgentTemplate(id: string): boolean; //# sourceMappingURL=agent-templates.d.ts.map