Code

⚡⚡⚡ Start coding & testing an existing plan

thieenjdev03 updated 4mo ago
Claude CodeGeneric
View source ↗
---
description: ⚡⚡⚡ Start coding & testing an existing plan
argument-hint: [plan] [--model claude|gemini|auto]
---

## Arguments Parser
Parse $ARGUMENTS to extract:
- `$PLAN`: Plan file path or name (default: auto-detect latest)
- `$MODEL`: Execution model (default: `auto`)
  - Extract from flags: `--model=<value>` or `--model <value>`
  - Valid values: `claude`, `gemini`, `auto`
  - If not specified, use `auto` (auto-select based on task type)

**Example inputs:**
- `/code` → plan=auto, model=auto
- `/code plan-auth` → plan=plan-auth, model=auto
- `/code --model gemini` → plan=auto, model=gemini
- `/code plan-auth --model claude` → plan=plan-auth, model=claude

---

## Model Selection Logic

**If $MODEL is `auto`:**
- Analyze plan content to determine complexity
- **Use Claude**: For implementation tasks with precise file editing, complex refactoring, strict type systems
- **Use Gemini**: For large codebase analysis (2M context), research-heavy tasks, visual/multimodal needs
- Default: `claude` for most implementation tasks

**If $MODEL is `claude`:**
- Execute with Claude Code subagents (current behavior)
- Precise editing tools, structured workflow, subagent orchestration

**If $MODEL is `gemini`:**
- Delegate to Gemini CLI via `.claude/scripts/ai-delegate.sh`
- Large context window, fast analysis, good for exploration

**Output model selection:** `🤖 Model: [claude|gemini] (Reason: [auto-selected|user-specified])`

---

**MUST READ** `CLAUDE.md` then **THINK HARDER** to start working on the following plan follow the Orchestration Protocol, Core Responsibilities, Subagents Team and Development Rules:
<plan>$PLAN</plan>

---

---

## Execution Router

**IF $MODEL is `gemini`:**

Execute using Gemini CLI delegation:

```bash
./.claude/scripts/ai-delegate.sh implement \
  "Implement plan: $PLAN following workflow steps 0-6" \
  --model gemini \
  --context "$PLAN" \
  --output "plans/reports/gemini-implementation-$(date +%Y%m%d-%H%M%S).md"

After Gemini completes:

  1. Review output report
  2. Verify implementation against plan
  3. Ask user if they want to continue with testing/review steps using Claude subagents
  4. STOP - Do not proceed with Claude workflow below

IF $MODEL is claude (or auto-selected as claude):

Proceed with Claude Code workflow below (Steps 0-6).


Role Responsibilities

  • You are a senior software engineer who must study the provided implementation plan end-to-end before writing code.
  • Validate the plan's assumptions, surface blockers, and confirm priorities with the user prior to execution.
  • Drive the implementation from start to finish, reporting progress and adjusting the plan responsibly while honoring YAGNI, KISS, and DRY principles.

IMPORTANT: Remind these rules with subagents communication:

  • Sacrifice grammar for the sake of concision when writing reports.
  • In reports, list any unresolved questions at the end, if any.
  • Ensure token efficiency while maintaining high quality.

Step 0: Plan Detection & Phase Selection

If $ARGUMENTS is empty:

  1. Find latest plan.md in ./plans | find ./plans -name "plan.md" -type f -exec stat -f "%m %N" {} \; 2>/dev/null | sort -rn | head -1 | cut -d' ' -f2-
  2. Parse plan for phases and status, auto-select next incomplete (prefer IN_PROGRESS or earliest Planned)

If $ARGUMENTS provided: Use that plan and detect which phase to work on (auto-detect or use argument like "phase-2").

Output: ✓ Step 0: [Plan Name] - [Phase Name]

Subagent Pattern (use throughout):

Task(subagent_type="[type]", prompt="[task description]", description="[brief]")

Workflow Sequence

Rules: Follow steps 1-6 in order. Each step requires output marker starting with "✓ Step N:". Mark each complete in TodoWrite before proceeding. Do not skip steps.


Step 1: Analysis & Task Extraction

Read plan file completely. Map dependencies between tasks. List ambiguities or blockers. Identify required skills/tools and activate from catalog. Parse phase file and extract actionable tasks.

TodoWrite Initialization & Task Extraction:

  • Initialize TodoWrite with Step 0: [Plan Name] - [Phase Name] and all command steps (Step 1 through Step 6)
  • Read phase file (e.g., phase-01-preparation.md)
  • Look for tasks/steps/phases/sections/numbered/bulleted lists
  • MUST convert to TodoWrite tasks:
    • Phase Implementation tasks → Step 2.X (Step 2.1, Step 2.2, etc.)
    • Phase Testing tasks → Step 3.X (Step 3.1, Step 3.2, etc.)
    • Phase Code Review tasks → Step 4.X (Step 4.1, Step 4.2, etc.)
  • Ensure each task has UNIQUE name (increment X for each task)
  • Add tasks to TodoWrite after their corresponding command step

Output: ✓ Step 1: Found [N] tasks across [M] phases - Ambiguities: [list or "none"]

Mark Step 1 complete in TodoWrite, mark Step 2 in_progress.


Step 2: Implementation

Implement selected plan phase step-by-step following extracted tasks (Step 2.1, Step 2.2, etc.). Mark tasks complete as done. For UI work, activate shadcn-ui-designing skill: "Implement [feature] UI following shadcn/ui principles and ./docs/design-guidelines.md". Use ai-multimodal skill for image assets, imagemagick for editing. Run type checking and compile to verify no syntax errors.

Output: ✓ Step 2: Implemented [N] files - [X/Y] tasks complete, compilation passed

Mark Step 2 complete in TodoWrite, mark Step 3 in_progress.


Step 3: Testing

Write tests covering happy path, edge cases, and error cases. Call tester subagent: "Run test suite for plan phase [phase-name]". If ANY tests fail: STOP, call debugger subagent: "Analyze failures: [details]", fix all issues, re-run tester. Repeat until 100% pass.

Testing standards: Unit tests may use mocks for external dependencies (APIs, DB). Integration tests use test environment. E2E tests use real but isolated data. Forbidden: commenting out tests, changing assertions to pass, TODO/FIXME to defer fixes.


Maintain Code?

Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.

[Code on getagentictools](https://getagentictools.com/loops/thieenjdev03-code?ref=badge)
npx agentictools info loops/thieenjdev03-code

The second line is the CLI lookup for this page — handy in READMEs and docs.