Skip to content
Automation
Skill

/deep-plan

Structured deep discussion for Plan Mode. Runs inside EnterPlanMode to ensure thorough questioning before writing a plan. Covers motivation, assumptions, design, acceptance criteria. Call this immediately after entering Plan Mode for any non-trivial task.

From plugin
autoworker
1811 skills1 command

Claude Code

$ npx -y skills add phj128/autoworker --skill deep-plan --agent claude-code

SKILL.md

deep-plan.SKILL.md
name: deep-plan
description: |
  Structured deep discussion for Plan Mode. Runs inside EnterPlanMode to ensure thorough
  questioning before writing a plan. Covers motivation, assumptions, design, acceptance criteria.
  Call this immediately after entering Plan Mode for any non-trivial task.

autoworker:deep-plan — Structured Deep Discussion (Inside Plan Mode)

Invoke immediately after entering Plan Mode. Ensures discussion depth through 5 structured phases, producing a structured plan file for autoworker:subtask-init to extract from.

**Core idea**: Plan depth determines the quality ceiling of the execution chain. autoworker:subtask-init **extracts** from the plan file, autoworker:subtask-plan **derives** the verification plan from it. If the discussion is shallow, the entire chain — no matter how well-structured — is verifying an insufficiently thought-through solution.

Execution Flow

Phase 1: Motivation Exploration

**Goal**: Understand what problem the user truly needs to solve, rather than rushing to think about how.

**Pre-action**: Check if the project has a `task_plan.md`. If so, read the overall goals and phase list; subsequent questioning should address the relationship to the overall plan.

**Questioning approach** (use AskUserQuestion, 2-3 questions per round):

1. **Why do this?** Do not accept tautological answers like "because we need X". Probe to root causes at the business/experience/efficiency level. 2. **Relationship to overall goal?** (when task_plan exists) Which phase does this correspond to? Is it planned or ad-hoc? If ad-hoc, why is it higher priority than planned phases? 3. **What if we don't do it?** What's the worst consequence? Can we tolerate it? The lighter the consequence, the simpler the solution should be. 4. **Is this really needed?** Is there a simpler way (don't do it, do it manually, approach from a different angle)?

**Anti-patterns**:

  • User says "add caching" → immediately designing cache solution → should first ask "why is it slow?"
  • User says "refactor to X" → immediately designing X architecture → should first ask "what problem does refactoring solve?"
  • User gives detailed solution → skip motivation and discuss implementation → the solution might be the user's guess, not optimal

**Depth gate**: Motivation expressible in 1-3 clear sentences (WHY + consequence of not doing it). Can't write it = don't understand it = keep asking.

---

Phase 2: Assumption Challenge

**Goal**: Make implicit assumptions explicit and challenge each one.

**Steps**:

1. **List assumptions**: Extract all implicit premises from Phase 1 discussion

  • Technical assumptions (API available, data format stable, dependencies reliable...)
  • Requirement assumptions (user actually needs this, frequency is high enough, priority is correct...)
  • Environment assumptions (has GPU, network works, permissions sufficient...)

2. **Challenge each one** (AskUserQuestion):

  • "You assumed X — what happens if X doesn't hold?"
  • "Can this assumption be verified? With what command?"
  • "Is there anything you consider 'obviously true' but haven't actually confirmed?"

3. **Explore code** (Glob/Grep/Read):

  • When assumptions involve existing code, actually read the code to confirm — don't rely on memory

**Depth gate**: Each assumption either has a verification method (one-line command) or is flagged as risk ("cannot pre-verify, monitor during execution").

---

Phase 3: Solution Derivation

**Goal**: Derive solution from motivation, not apply from experience.

**Steps**:

1. **Start from motivation**: What's the minimum-change solution to the problem confirmed in Phase 1? 2. **At least 1 alternative**: What are the trade-offs of different approaches? 3. **Use AskUserQuestion for user to choose**: Present solution comparison, let user decide based on trade-offs

**Solution review — four questions** (any unsatisfactory → redesign):

0. **Is the direction right?** Derived from problem essence, or pattern-matched from similar scenarios? 1. **Is the abstraction level right?** Does the caller naturally possess this capability, letting us do only structured operations? 2. **10x robustness**: Still robust if input diversity increases 10x? Can enumeration scale? 3. **Does a simpler solution exist?** Same effect, less code/assumptions?

**Depth gate**: User explicitly chose a solution + can articulate the reason.

---

Phase 4: Acceptance Criteria

**Goal**: Define how to judge "done", giving the execution phase clear expectations.

**Steps** (AskUserQuestion):

1. **Categorized discussion**:

  • **Quantitative** (data precision, performance, coverage): specific values + tolerance
  • **Behavioral** (workflow changes, instruction files): "Scenario X → expected behavior Y"

2. **Every metric must have a measurement method**:

  • Quantitative: what command to test? Expected output?
  • Behavioral: how to simulate the scenario? How to observe behavior?

3. **Confirm completeness with user**:

  • "Besides these metrics, what other situation counts as 'not done'?"
  • "If all these metrics pass, will you accept it?"

**Depth gate**: Every metric can directly become an L4 test case (has input, has operation steps, has expected output).

**Standard for "discussed thoroughly"**: Goals, motivation, core assumptions, acceptance criteria all clear — during execution, when actual results deviate, you can logically analyze the cause rather than guess blindly.

---

Phase 5: Plan Output

**Goal**: Consolidate Phase 1-4 discussion output into the plan file.

**95% confidence self-check**: If you write the plan now and the user accepts it, would they overturn it due to misunderstanding? No = ready to output. Yes = return to the relevant Phase and continue discussing.

**Plan file format** (fixed structure, autoworker:subtask-init extracts by section):

# Plan: <task name>

## task_plan Positioning
Corresponds to Phase: <Phase number and name from
Read more
@phj128
Ships withautoworker

An auto-loop execution workflow with quality gates for Claude Code. Give Claude a task. Autoworker decomposes it, implements code, runs tests, and iterates through quality gates — autonomously looping until the job is done right.

Stars on GitHub

Momentum

stars in total
18
Star history of phj128/autoworker on GitHub, a chart by star-history.com

Other skills on autoworker.

autoworker

autoworker

Auto-loop execution workflow with quality gates. Use when starting any non-trivial implementation task. Provides automatic task…

@phj128@phj128Install Skill
checkpoint

checkpoint

Record progress to subtask: Phase completion (from autoworker:code) or test results (from autoworker:test). Auto-detects upstream…

@phj128@phj128Install Skill
code

code

Implement ONE pending Phase from subtask plan. Only write code, do not mark checkboxes or run tests. Called by…

@phj128@phj128Install Skill
dispatch

dispatch

Read subtask.md checkbox state and route to next skill. The ONLY routing point in the execution loop. Called after…

@phj128@phj128Install Skill
gate-check

gate-check

Final quality gate before reporting task completion (Gate 3). Fills confidence assessment, runs supplementary verification for…

@phj128@phj128Install Skill
subtask-init

subtask-init

Create subtask document (first half): user confirmation, goals, assumptions. Auto-runs assumption verification experiments and…

@phj128@phj128Install Skill

More skills from other plugins.

agent-builder

agent-builder

Load immediately after an Agent intent, before the first agent_builder_* call. Governs how you create, configure, test, and…

n8n2w209k
@n8n-io@n8n-ioInstall Skill
browser-use

browser-use

Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…

@browser-use@browser-useInstall Skill
agent-browser

agent-browser

Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…

@vercel-labs-2@vercel-labs-2Install Skill
add-anydoc

add-anydoc

Add local office-document-to-Markdown conversion to NanoClaw agent containers with the pinned Firecrawl AnyDoc CLI. Use when…

@nanocoai@nanocoaiInstall Skill

Questions about deep-plan.

Which coding agents can use deep-plan?
deep-plan installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.