feat(athena): split into athena (interactive) and athena-junior (subagent)
Split the Athena council orchestrator into two distinct agents: - athena: primary mode, interactive prompt with Question tool and switch_agent - athena-junior: subagent mode, non-interactive prompt with structured JSON output Key changes: - Create athena-junior-agent.ts factory (mode=subagent, denies question+call_omo_agent) - Revert athena agent.ts to primary mode (no env var switching) - Make buildAthenaRuntimeGuidance mode-aware (strips action_paths for non-interactive) - Add mode parameter to council_finalize tool - Register athena-junior in builtin-agents, tool-config, model-requirements - Replace "athena" with "athena-junior" in call_omo_agent ALLOWED_AGENTS - Update all tests for new architecture Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -136,6 +136,16 @@ export function applyToolConfig(params: {
|
||||
question: questionPermission,
|
||||
};
|
||||
}
|
||||
const athenaJunior = agentByKey(params.agentResult, "athena-junior");
|
||||
if (athenaJunior) {
|
||||
athenaJunior.permission = {
|
||||
...athenaJunior.permission,
|
||||
task: "allow",
|
||||
prepare_council_prompt: "allow",
|
||||
council_finalize: "allow",
|
||||
question: "deny",
|
||||
};
|
||||
}
|
||||
|
||||
params.config.permission = {
|
||||
webfetch: "allow",
|
||||
|
||||
Reference in New Issue
Block a user