import { type AgentConfig } from "./agent-loader.js"; import type { SessionCatalog } from "./cms.js"; import type { OrchestrationInput, SerializableSessionConfig } from "./types.js"; export interface SystemAgentSessionPlan { agent: AgentConfig & { id: string; }; sessionId: string; parentSessionId?: string; depth: number; } export interface SystemAgentStartResult { agentId: string; agentName: string; sessionId: string; parentSessionId?: string; status: "started" | "existing" | "raced"; } export declare function buildSystemAgentBootstrapPayload(agent: AgentConfig, defaultModel: string, opts: { sessionId: string; blobEnabled?: boolean; dehydrateThreshold: number; parentSessionId?: string; defaultReasoningEffort?: SerializableSessionConfig["reasoningEffort"]; defaultContextTier?: SerializableSessionConfig["contextTier"]; }): { serializableConfig: SerializableSessionConfig; input: OrchestrationInput; }; export declare function loadSystemAgentConfigs(opts?: { pluginDirs?: string[]; disableManagementAgents?: boolean; systemAgents?: AgentConfig[]; }): AgentConfig[]; export declare function resolveSystemAgentSessionPlans(agents: AgentConfig[]): SystemAgentSessionPlan[]; export declare function startSystemAgents(opts: { catalog: Pick; duroxideClient: any; agents: AgentConfig[]; defaultModel: string; defaultReasoningEffort?: SerializableSessionConfig["reasoningEffort"]; defaultContextTier?: SerializableSessionConfig["contextTier"]; modelResolutionSource?: string; blobEnabled?: boolean; dehydrateThreshold: number; agentId?: string; /** * Called before starting an orchestration for a RETAINED session id. * The provider ledger's exactly-once claim is (session_id, turn_index) * and the fresh lifetime counts turns from zero again — the callback * advances the session's ledger base past every existing row so the * settle proc lands the new lifetime's turns on fresh keys instead of * silently dropping them as replays. */ prepareRetainedSessionLedger?: (sessionId: string) => Promise; log?: (message: string) => void; warn?: (message: string) => void; }): Promise; //# sourceMappingURL=system-agents.d.ts.map