Skip to content

Instantly share code, notes, and snippets.

@malston
Last active December 10, 2025 20:26
Show Gist options
  • Select an option

  • Save malston/517adef7a6a3f20207437207cf4071b2 to your computer and use it in GitHub Desktop.

Select an option

Save malston/517adef7a6a3f20207437207cf4071b2 to your computer and use it in GitHub Desktop.
Explain the two execution options for the superpowers implementation phase

Two Execution Options

  1. Subagent-Driven (this session) - I dispatch fresh subagent per task, review between tasks, fast iteration

  2. Parallel Session (separate) - Open new session with executing-plans, batch execution with checkpoints

Which approach, Mark?

Mark wants more detail on the two execution options. Let me explain them clearly based on what the writing-plans skill says and my understanding of the superpowers skills.

Option 1: Subagent-Driven (this session)

  • Uses superpowers:subagent-driven-development
  • I stay in this session with Mark
  • For each task, I dispatch a fresh subagent to do the work
  • After each task completes, I review the code
  • Mark sees progress in real-time
  • Can course-correct between tasks
  • More interactive

Option 2: Parallel Session (separate)

  • Uses superpowers:executing-plans
  • Mark opens a NEW Claude session in the same directory/worktree
  • That session loads the plan and executes tasks in batches
  • Executes multiple tasks, then pauses for review
  • Less interactive, more autonomous
  • Mark can do other things while it runs

Let me give Mark a detailed breakdown of both with pros/cons.

Option 1: Subagent-Driven Development (This Session)

How it works:

  1. I stay in this current session with you
  2. For each task (e.g., "Task 2: Metadata Types"), I spawn a fresh subagent
  3. The subagent executes that one task following the plan exactly
  4. When task completes, I review the code against the plan
  5. We discuss any issues, then move to next task
  6. Repeat for all 13 tasks

Flow example: You: "Let's start" Me: "Dispatching subagent for Task 1: Project Dependencies" [subagent runs go get, commits] Me: "Task 1 complete ✓ - reviewed code, looks good" Me: "Dispatching subagent for Task 2: Metadata Types" [subagent writes test, fails it, implements, passes, commits] Me: "Task 2 complete ✓ - reviewed code, found one issue..." You: "Let's fix that before continuing" Me: "Fixed. Moving to Task 3..."

Pros:

  • ✅ Interactive - You see progress task-by-task
  • ✅ Quality gates - Code review between each task
  • ✅ Course correction - Can adjust approach if something doesn't work
  • ✅ Stay engaged - You're involved throughout
  • ✅ Fast iteration - Issues caught and fixed immediately

Cons:

  • ❌ Requires your attention - Can't walk away
  • ❌ Slower overall - Review overhead between tasks
  • ❌ More back-and-forth - More messages in this session

Best for:

  • When you want to stay involved
  • When you want to learn the codebase as it's built
  • When you might need to make decisions during implementation

Option 2: Parallel Session (Separate Claude Session)

How it works:

  1. You open a new Claude session (different browser tab/window)
  2. In that new session, you tell Claude: "Execute docs/plans/2025-12-10-phase-1-mvp.md"
  3. That Claude loads the plan and executes tasks in batches (e.g., Tasks 1-3, then pause)
  4. After each batch, it reports progress and waits for your approval to continue
  5. You review the batch of changes, then say "continue"
  6. Meanwhile, this session stays open for questions/discussion

Flow example: [New Session - Execution] You: "Execute docs/plans/2025-12-10-phase-1-mvp.md" Claude: "Loaded plan with 13 tasks. Executing Batch 1 (Tasks 1-4)..." [Executes Tasks 1-4 following plan exactly] Claude: "Batch 1 complete (4 tasks, 8 commits). Review? Type 'continue' or 'pause'" You: [Reviews git log, runs tests] You: "continue" Claude: "Executing Batch 2 (Tasks 5-8)..." ...

[This Session - Available for Questions] You: "Hey, question about the API client design..." Me: "Sure! Here's how it works..."

Pros:

  • ✅ Autonomous - Runs in background while you do other things
  • ✅ Faster overall - No review overhead between individual tasks
  • ✅ Batch review - Review multiple tasks at once (more efficient)
  • ✅ Parallel work - You can ask me questions here while execution happens there
  • ✅ Clear checkpoints - Pause points are well-defined (after batches)

Cons:

  • ❌ Less interactive - Don't see each task as it happens
  • ❌ Batch rollback - If something's wrong, might need to undo multiple commits
  • ❌ Context switching - Managing two Claude sessions
  • ❌ Less flexibility - Harder to course-correct mid-batch

Best for:

  • When you trust the plan and want efficient execution
  • When you have other work to do during implementation
  • When you prefer to review in larger chunks

Hybrid Option (Best of Both Worlds?)

You could also:

  1. Start with Subagent-Driven for Tasks 1-3 (setup + core types)
  2. Once confident the approach works, switch to Parallel Session for Tasks 4-13
  3. This gives you early validation + later efficiency

My Recommendation

Given that:

  • This is a new project (not modifying existing code)
  • The plan is comprehensive and well-tested mentally
  • You wrote detailed Go code in the plan already
  • Tasks are small and independent (2-5 minutes each)

I'd recommend Option 2 (Parallel Session) because:

  • Plan is solid, low risk of needing major course corrections
  • Faster overall execution
  • You can do other things while it runs
  • Natural checkpoint after every 3-4 tasks

But if you want to stay engaged and see the code being built step-by-step, Option 1 is great for learning and validation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment