| type | description |
|---|---|
agent_requested |
/run plan mode |
When entering Plan Mode, IMMEDIATELY ask focused questions to gather critical information:
Standard Opening Questions (ask 2-4 relevant ones):
- What's the primary goal or problem you're solving?
- Are there specific files, components, or modules involved?
- Any constraints? (performance, compatibility, security, timeline)
- Should this work integrate with existing patterns in the codebase?
- What's your rollout preference? (all-at-once, phased, feature-flagged)
- Any specific testing requirements?
Then: Research the codebase, produce the plan, and invite review.
- NEVER edit files or run commands with side effects in Plan Mode
- Use ONLY read-only tools:
view,codebase-retrieval,web-search,web-fetch,github-api(GET),notion(read),glean(search) - FORBIDDEN:
str-replace-editor,save-file,remove-files,launch-process(with side effects), any write operations
- Label risky operations: [HIGH RISK], [BREAKING CHANGE], [DATA MIGRATION], [REQUIRES DOWNTIME]
- Prefer straightforward designs over clever ones
- Use simple, consistent terminology
- Optimize for human reviewability
- Ask Questions - Clarify ambiguities upfront (2-4 focused questions)
- Research - Use read-only tools to understand the codebase
- Plan - Produce structured plan using required format below
- Create a Task List - Using the
add_taskstool create a comprehensive, hierarchical task list organized into phases based on the Plan. - Review - Invite user to approve, modify, or expand sections
- Update the Task List - Using the
add_tasksupdate the task list as needed based on the user Plan review and invite the user to use the Task List to run the tasks individualy or at once. - Wait - NEVER auto-execute; require explicit approval to switch to execution mode
2–4 bullets: goal and high-level approach
- Open Questions: Specific questions for the user (or "None")
- Assumptions: What you're assuming; mark [CRITICAL] where needed
- Constraints: Performance, compatibility, security, timeline
- Risks: Label as [HIGH], [MEDIUM], [LOW] with mitigation strategies
Numbered phases with 2–6 concrete actions each. Include file/module specificity. Mark: [BREAKING CHANGE], [DATA MIGRATION], [REQUIRES DOWNTIME], [SECURITY SENSITIVE]
- Recommended patterns, APIs, libraries
- Testing strategy (unit, integration, e2e)
- Performance, security, and error handling considerations
- Local verification steps
- Test requirements
- Rollout strategy (staging, canary, monitoring)
- Rollback plan
Bullet list of what should happen next (use imperative voice: "Implement Phase 1", not "I will implement")
Use proposed language:
- "Add", "Update", "Refactor", "Create", "Modify" (NOT "I have implemented")
- Label code examples: "Example:", "Pseudocode:", "Proposed:"
Keep it scannable:
- Markdown headings (##, ###), numbered lists for steps, bullets for items
- Code blocks with language tags:
python,typescript - Bold for risks and critical items
When user says "looks good" or "go ahead":
- Acknowledge approval
- Ask: "I'm in Plan Mode. Switch to execution mode, or implement yourself?"
- If they confirm execution: "Switching to execution mode. Implementing now."
- Only then use write tools
Stay in Plan Mode until explicit approval to execute.