ClosedLoop.ai
Resources

Implementation Plan Template

A reusable plan shape for breaking work into execution-ready tasks.

Implementation plans are the bridge between intent and execution. In ClosedLoop a plan is stored as plan.json with a human-readable mirror plan.md. The template below is the shape plan-draft-writer produces and plan-writer finalizes.

Canonical JSON shape

{
  "content": "<plan summary>",
  "pendingTasks": [
    {
      "id": "T-001",
      "title": "<task title>",
      "description": "<what must happen>",
      "acceptanceCriteria": ["<criterion 1>", "<criterion 2>"],
      "repository": "primary",
      "filesOfInterest": ["src/..."]
    }
  ],
  "completedTasks": [],
  "acceptanceCriteria": ["<overall plan acceptance>"],
  "openQuestions": ["<question waiting for human answer>"],
  "answeredQuestions": [],
  "gaps": [],
  "manualTasks": [],
  "amendments": [],
  "repositories": {
    "primary": { "path": "/abs/path", "isPrimary": true }
  }
}

Human-readable template

# Objective
<one paragraph describing the goal>

# Scope
- In:
  - <what is in>
- Out:
  - <what is explicitly out>

# Tasks
## T-001 <task title>
- Description: <what must happen>
- Acceptance criteria:
  - <criterion 1>
  - <criterion 2>
- Files of interest: <paths>

# Acceptance Criteria
- <plan-wide criterion 1>
- <plan-wide criterion 2>

# Open Questions
- <question>

# Risks
- <risk>. Mitigation: <plan>.

# Validation
- Tests to add or extend: <summary>
- Manual checks: <summary>

Rules of thumb

  • Each task should be implementable in a single implementation-subagent iteration (typically ≤ 4 internal gates).
  • Acceptance criteria are how the judges score you. Keep them independent and measurable.
  • Use [CROSS-REPO: <peer>] in a task title to route work to a peer repository in multi-repo mode.
  • Put open questions in openQuestions, not in task descriptions. That is where the plan review checkpoint picks them up.

What the planner will add

plan-draft-writer and plan-writer will also populate:

  • task IDs (stable across amendments)
  • dependency ordering implicit in the task array
  • filesOfInterest harvested from code-map.json
  • the repositories map in multi-repo mode

On this page