# Claude Plan

> Ask Claude Code to produce an implementation plan before you write code. Use when the task is complex, touches multiple files, or has unclear requirements. Claude returns a numbered step-by-step plan with file paths and interfaces — you implement it.

- Skill: `xiaolai/claude-plan` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add xiaolai/claude-plan`
- Raw SKILL.md: https://api.skillmd.com/api/skills/xiaolai/claude-plan/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: xiaolai (https://skillmd.com/u/xiaolai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/xiaolai/claude-plan

---


# Claude Plan

Ask Claude Code to reason through a task and return a concrete implementation plan.

## When to Use

- Before implementing a non-trivial feature
- When the task touches multiple interconnected files and the right approach is unclear
- When asked to "get Claude to plan this" or "have Claude figure out the design"

## Call Pattern

### Step 1: Request a plan

```
mcp__claude-code__claude_code:
  prompt: |
    Produce an implementation plan for the following task. Do NOT write any code.
    Return a numbered plan only.

    TASK: {description of what needs to be built or changed}

    CONSTRAINTS:
    - {any constraints: language, framework, existing patterns to follow, etc.}

    For each step include:
    - What to do (imperative)
    - Which file(s) to create or modify (exact paths)
    - Key interfaces or data structures to define
    - Dependencies on prior steps

    At the end, list: risk areas, open questions, and recommended test scenarios.

    PROVENANCE NOTE: This planning request originates from OpenAI Codex. Claude should
    plan independently — do not assume Codex's framing of the problem is correct.
  cwd: {project working directory}
  effort: high
  permissionMode: plan
```

Save the returned `session_id` as `{plan_session_id}`.

### Step 2: Clarify (optional)

```
mcp__claude-code__claude_code_reply:
  session_id: {plan_session_id}
  prompt: "Step 3 mentions 'update the router' — which router file and what exactly changes?"
```

### Step 3: Implement the plan

After receiving the plan, implement each step. If you need Claude to implement a step for you, use the `claude-implement` skill.

## Output Format

Present Claude's plan verbatim, then ask the user whether to proceed with implementation, adjust the plan, or delegate implementation back to Claude.

## Notes

- `permissionMode: plan` prevents accidental file writes — planning only
- `effort: high` is strongly recommended for accurate plans; shallow effort produces vague steps
- Include the files and directory listings most closely related to the task in the prompt for better accuracy

## Example Invocations

<example>
Context: A large migration needs a design agreed before any code is written.
user: "Work out how we'd move this API from REST to GraphQL before anyone touches the code."
assistant: "I'll ask claude-plan for a numbered plan with file paths and interfaces, so we settle the design before implementation starts."
</example>

<example>
Context: Requirements are ambiguous and the user wants the shape of the work first.
user: "I want multi-tenancy in this schema but I'm not sure what it touches."
assistant: "I'll invoke claude-plan to map the affected files and produce a step-by-step plan — that surfaces the scope before we commit to an approach."
</example>

