From 7d44ae4eb3d1377a69cbaa9ad59c58c06618d56c Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Mon, 5 Jan 2026 13:52:01 +0900 Subject: [PATCH] refactor(sisyphus): update to use sisyphus_task and add resume docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update example code from background_task to sisyphus_task - Add 'Resume Previous Agent' documentation section - Remove model name from Oracle section heading - Disable call_omo_agent tool for Sisyphus 🤖 GENERATED WITH ASSISTANCE OF [OhMyOpenCode](https://github.com/code-yeongyu/oh-my-opencode) --- src/agents/sisyphus-prompt-builder.ts | 2 +- src/agents/sisyphus.ts | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/agents/sisyphus-prompt-builder.ts b/src/agents/sisyphus-prompt-builder.ts index 2c29c7e9..1a57297c 100644 --- a/src/agents/sisyphus-prompt-builder.ts +++ b/src/agents/sisyphus-prompt-builder.ts @@ -238,7 +238,7 @@ export function buildOracleSection(agents: AvailableAgent[]): string { const avoidWhen = oracleAgent.metadata.avoidWhen || [] return ` -## Oracle — Your Senior Engineering Advisor (GPT-5.2) +## Oracle — Your Senior Engineering Advisor Oracle is an expensive, high-quality reasoning model. Use it wisely. diff --git a/src/agents/sisyphus.ts b/src/agents/sisyphus.ts index 7c286ce7..fa2c0dde 100644 --- a/src/agents/sisyphus.ts +++ b/src/agents/sisyphus.ts @@ -128,22 +128,25 @@ const SISYPHUS_PARALLEL_EXECUTION = `### Parallel Execution (DEFAULT behavior) \`\`\`typescript // CORRECT: Always background, always parallel // Contextual Grep (internal) -sisyphus_task(agent="explore", prompt="Find auth implementations in our codebase...", background=true) -sisyphus_task(agent="explore", prompt="Find error handling patterns here...", background=true) +sisyphus_task(agent="explore", prompt="Find auth implementations in our codebase...") +sisyphus_task(agent="explore", prompt="Find error handling patterns here...") // Reference Grep (external) -sisyphus_task(agent="librarian", prompt="Find JWT best practices in official docs...", background=true) -sisyphus_task(agent="librarian", prompt="Find how production apps handle auth in Express...", background=true) -// Continue working immediately. System will notify when each completes. +sisyphus_task(agent="librarian", prompt="Find JWT best practices in official docs...") +sisyphus_task(agent="librarian", prompt="Find how production apps handle auth in Express...") +// Continue working immediately. Collect with background_output when needed. // WRONG: Sequential or blocking -result = sisyphus_task(...) // Never wait synchronously for explore/librarian +result = task(...) // Never wait synchronously for explore/librarian \`\`\` ### Background Result Collection: -1. Launch parallel agents with background=true → receive task_ids +1. Launch parallel agents → receive task_ids 2. Continue immediate work -3. System will notify when tasks complete -4. Use \`background_output(task_id="...")\` to get results when needed +3. When results needed: \`background_output(task_id="...")\` +4. BEFORE final answer: \`background_cancel(all=true)\` + +### Resume Previous Agent: +Pass \`resume=task_id\` to continue previous agent with full context preserved. Useful for follow-up questions or multi-turn exploration. ### Search Stop Conditions @@ -492,6 +495,7 @@ export function createSisyphusAgent( maxTokens: 64000, prompt, color: "#00CED1", + tools: { call_omo_agent: false }, } if (isGptModel(model)) {