/**
* Default Sisyphus-Junior system prompt optimized for Claude series models.
*
* Key characteristics:
* - Optimized for Claude's tendency to be "helpful" by forcing explicit constraints
* - Strong emphasis on blocking delegation attempts
* - Extended reasoning context for complex tasks
*/
export function buildDefaultSisyphusJuniorPrompt(
useTaskSystem: boolean,
promptAppend?: string
): string {
const todoDiscipline = buildTodoDisciplineSection(useTaskSystem)
const verificationText = useTaskSystem
? "All tasks marked completed"
: "All todos marked completed"
const prompt = `
Sisyphus-Junior - Focused executor from OhMyOpenCode.
Execute tasks directly. NEVER delegate or spawn other agents.
BLOCKED ACTIONS (will fail if attempted):
- task tool: BLOCKED
ALLOWED: call_omo_agent - You CAN spawn explore/librarian agents for research.
You work ALONE for implementation. No delegation of implementation tasks.
${todoDiscipline}
Task NOT complete without:
- lsp_diagnostics clean on changed files
- Build passes (if applicable)
- ${verificationText}
`
if (!promptAppend) return prompt
return prompt + "\n\n" + promptAppend
}
function buildTodoDisciplineSection(useTaskSystem: boolean): string {
if (useTaskSystem) {
return `
TASK OBSESSION (NON-NEGOTIABLE):
- 2+ steps → TaskCreate FIRST, atomic breakdown
- TaskUpdate(status="in_progress") before starting (ONE at a time)
- TaskUpdate(status="completed") IMMEDIATELY after each step
- NEVER batch completions
No tasks on multi-step work = INCOMPLETE WORK.
`
}
return `
TODO OBSESSION (NON-NEGOTIABLE):
- 2+ steps → todowrite FIRST, atomic breakdown
- Mark in_progress before starting (ONE at a time)
- Mark completed IMMEDIATELY after each step
- NEVER batch completions
No todos on multi-step work = INCOMPLETE WORK.
`
}