diff --git a/src/agents/athena/index.ts b/src/agents/athena/index.ts index 624f553e..f5087ade 100644 --- a/src/agents/athena/index.ts +++ b/src/agents/athena/index.ts @@ -1,4 +1,3 @@ -export * from "./types" export * from "./agent" export * from "./council-member-agent" diff --git a/src/agents/athena/types.ts b/src/agents/athena/types.ts deleted file mode 100644 index 55c5454f..00000000 --- a/src/agents/athena/types.ts +++ /dev/null @@ -1,10 +0,0 @@ -export interface CouncilMemberConfig { - model: string - variant?: string - name: string - temperature?: number -} - -export interface CouncilConfig { - members: CouncilMemberConfig[] -} diff --git a/src/agents/builtin-agents.ts b/src/agents/builtin-agents.ts index 89fc1f1d..28a51a5b 100644 --- a/src/agents/builtin-agents.ts +++ b/src/agents/builtin-agents.ts @@ -31,7 +31,7 @@ import { maybeCreateAtlasConfig } from "./builtin-agents/atlas-agent" import { buildCustomAgentMetadata, parseRegisteredAgentSummaries } from "./custom-agent-summaries" import { registerCouncilMemberAgents } from "./builtin-agents/council-member-agents" import { appendMissingCouncilPrompt } from "./builtin-agents/athena-council-guard" -import type { CouncilConfig } from "./athena/types" +import type { CouncilConfig } from "../config/schema/athena" type AgentSource = AgentFactory | AgentConfig diff --git a/src/agents/builtin-agents/council-member-agents.ts b/src/agents/builtin-agents/council-member-agents.ts index 6a364e9c..5ec6e6f9 100644 --- a/src/agents/builtin-agents/council-member-agents.ts +++ b/src/agents/builtin-agents/council-member-agents.ts @@ -1,5 +1,5 @@ import type { AgentConfig } from "@opencode-ai/sdk" -import type { CouncilConfig, CouncilMemberConfig } from "../athena/types" +import type { CouncilConfig, CouncilMemberConfig } from "../../config/schema/athena" import { createCouncilMemberAgent } from "../athena/council-member-agent" import { parseModelString } from "../../tools/delegate-task/model-string-parser" import { log } from "../../shared/logger" diff --git a/src/config/schema/athena.ts b/src/config/schema/athena.ts index 21ea2f1d..c0ad3e19 100644 --- a/src/config/schema/athena.ts +++ b/src/config/schema/athena.ts @@ -21,6 +21,9 @@ export const CouncilConfigSchema = z.object({ members: z.array(CouncilMemberSchema).min(2), }).strict() +export type CouncilMemberConfig = z.infer +export type CouncilConfig = z.infer + export const AthenaConfigSchema = z.object({ model: z.string().optional(), council: CouncilConfigSchema,