home / skills / lerianstudio / ring / executing-plans
This skill helps coordinate autonomous or batch plan execution with mandatory human checkpoints, ensuring safe, auditable progress and rapid feedback.
npx playbooks add skill lerianstudio/ring --skill executing-plansReview the files below or copy the command above to add this skill to your agents.
---
name: ring:executing-plans
description: |
Controlled plan execution with human review checkpoints - loads plan, executes
in batches, pauses for feedback. Supports one-go (autonomous) or batch modes.
trigger: |
- Have a plan file ready to execute
- Want human review between task batches
- Need structured checkpoints during implementation
skip_when: |
- Same session with independent tasks → use ring:subagent-driven-development
- No plan exists → use ring:writing-plans first
- Plan needs revision → use ring:brainstorming first
sequence:
after: [ring:writing-plans, ring:pre-dev-task-breakdown]
related:
similar: [ring:subagent-driven-development]
---
# Executing Plans
## Overview
Load plan, review critically, choose execution mode, execute tasks with code review.
**Core principle:** User chooses between autonomous execution or batch execution with human review checkpoints.
**Two execution modes:**
- **One-go (autonomous):** Execute all batches continuously with code review, report only at completion
- **Batch (with review):** Execute one batch, code review, pause for human feedback, repeat
**Announce at start:** "I'm using the ring:executing-plans skill to implement this plan."
## The Process
### Step 1: Load and Review Plan
1. Read plan file
2. Review critically - identify any questions or concerns about the plan
3. If concerns: Raise them with your human partner before starting
4. If no concerns: Create TodoWrite and proceed to Step 2
### Step 2: Choose Execution Mode (MANDATORY)
**⚠️ THIS STEP IS NON-NEGOTIABLE. You MUST use `AskUserQuestion` before executing ANY tasks.**
Ask: "How would you like to execute this plan?" Options: (1) **One-go (autonomous)** - all batches with code review, no human review until completion (2) **Batch (with review)** - pause for human review after each batch
**Based on response:** One-go → Steps 3-4 loop until done | Batch → Steps 3-5 loop
### Why AskUserQuestion is Mandatory (Not "Contextual Guidance")
**This is a structural checkpoint, not optional UX polish.**
User saying "don't wait", "don't ask questions", or "just execute" does NOT skip this step because:
1. **Execution mode affects architecture** - One-go vs batch determines review checkpoints, error recovery paths, and rollback points
2. **Implicit intent ≠ explicit choice** - "Don't wait" might mean "use one-go" OR "ask quickly and proceed"
3. **AskUserQuestion takes 3 seconds** - It's not an interruption, it's a confirmation
4. **Emergency pressure is exactly when mistakes happen** - Structural gates exist FOR high-pressure moments
**Common Rationalizations That Mean You're About to Violate This Rule:**
| Rationalization | Reality |
|-----------------|---------|
| "User intent is crystal clear" | Intent is not the same as explicit selection. Ask anyway. |
| "This is contextual guidance, not absolute law" | Wrong. It says MANDATORY. That means mandatory. |
| "Asking would violate their 'don't ask' instruction" | AskUserQuestion is a 3-second structural gate, not a conversation. |
| "Skills are tools, not bureaucratic checklists" | This skill IS the checklist. Follow it. |
| "Interpreting spirit over letter" | The spirit IS the letter. Use AskUserQuestion. |
| "User already chose by saying 'just execute'" | Verbal shorthand ≠ structured mode selection. Ask. |
**If you catch yourself thinking any of these → STOP → Use AskUserQuestion anyway.**
### Step 2.5: Context Switching for Multi-Module Plans
**If plan has tasks with `target:` and `working_directory:` fields:**
1. **Track current module:**
```
current_module = None
current_directory = "."
```
2. **Before each task, check for context switch:**
```
IF task.target != current_module AND current_module != None:
# Prompt user for confirmation
AskUserQuestion:
question: "Switching to {task.target} module at {task.working_directory}. Continue?"
header: "Context"
options:
- label: "Continue"
description: "Switch to {task.target} and execute task"
- label: "Skip task"
description: "Skip this task and continue with next"
- label: "Stop"
description: "Stop execution for manual review"
IF answer == "Continue":
current_module = task.target
current_directory = task.working_directory
ELIF answer == "Skip":
Mark task as skipped → proceed to next
ELSE:
Stop execution → report progress
```
3. **Load module-specific PROJECT_RULES.md:**
```
IF {task.working_directory}/PROJECT_RULES.md exists:
Instruct agent to read module-specific rules
Module rules override root rules
```
4. **Pass working directory to agent:**
```
Task(
subagent_type=task.agent,
model="opus",
prompt="Working directory: {task.working_directory}
Before executing, cd to the working directory:
cd {task.working_directory}
If PROJECT_RULES.md exists in this directory, read and follow it.
{task.prompt}"
)
```
**Optimization:** To minimize context switches, batch tasks by module when possible:
- Original: [backend, frontend, backend, frontend]
- Optimized: [backend, backend, frontend, frontend]
- **Only reorder if no dependencies between modules**
---
### Step 3: Execute Batch
**Default: First 3 tasks**
**Agent Selection:** Backend Go → `ring:backend-engineer-golang` | Backend TS → `ring:backend-engineer-typescript` | Frontend → `ring:frontend-bff-engineer-typescript` | Infra → `ring:devops-engineer` | Testing → `ring:qa-analyst` | Reliability → `ring:sre`
For each task: Check context switch (Step 2.5) → Mark in_progress → Dispatch to agent with working_directory → Follow plan steps exactly → Run verifications → Mark completed
### Step 4: Run Code Review
**After each batch, REQUIRED:** Use ring:requesting-code-review (all 5 reviewers in parallel)
**Handle by severity:**
- **Critical/High/Medium:** Fix immediately (no TODO) → re-run all 5 reviewers → repeat until resolved
- **Low:** Add `TODO(review): [Issue] ([reviewer], [date], Low)`
- **Cosmetic:** Add `FIXME(nitpick): [Issue] ([reviewer], [date], Cosmetic)`
**Proceed when:** Zero Critical/High/Medium remain + all Low/Cosmetic have comments
### Step 5: Report and Continue
**One-go mode:** Log internally → proceed to next batch → report only at completion
**Batch mode:** Show implementation + verification + review results → "Ready for feedback." → wait → apply changes → proceed
### Step 6: Complete Development
Use finishing-a-development-branch to verify tests, present options, execute choice.
## When to Stop
**STOP immediately:** Blocker mid-batch | Critical gaps | Unclear instruction | Verification fails repeatedly. **Ask rather than guess.**
## Remember
- **MANDATORY:** `AskUserQuestion` for execution mode - NO exceptions
- Use `*` agents over `general-purpose` when available
- Run code review after each batch (all 5 parallel)
- Fix Critical/High/Medium immediately (no TODO)
- Low → TODO, Cosmetic → FIXME
- Stop when blocked, don't guess
- **If rationalizing why to skip AskUserQuestion → You're wrong → Ask anyway**
This skill enforces controlled plan execution with human review checkpoints. It loads a plan, validates it, and runs tasks in either autonomous one-go mode or interactive batch mode with mandatory user confirmations. The workflow emphasizes code review, module-aware context switching, and strict quality gates.
The skill reads and critically reviews the plan, then obligates the user to choose execution mode via AskUserQuestion before any task runs. It executes tasks in batches (default first 3) while checking for module context switches and dispatching each task to the appropriate specialist sub-agent. After each batch it runs a parallel five-reviewer code review and enforces fixes for critical issues before continuing.
Can I skip asking the user and infer execution mode from context?
No. The AskUserQuestion step is mandatory to set architecture, recovery, and rollback semantics and cannot be skipped.
What happens if a batch has a Critical review finding?
Critical/High/Medium issues must be fixed immediately with re-review; execution halts on blockers until resolved.