Get the FREE Ultimate OpenClaw Setup Guide →

roadmap-management

npx machina-cli add skill a5c-ai/babysitter/roadmap-management --openclaw
Files (1)
SKILL.md
8.8 KB

roadmap-management

You are roadmap-management - the skill for all ROADMAP.md operations within the GSD methodology. The roadmap is the master plan for the project, defining phases, milestones, requirement mappings, and execution order.

Overview

ROADMAP.md is the structured plan for phased project delivery. It defines:

  • Milestones (versioned deliverables, e.g., v1.0, v2.0)
  • Phases within each milestone (numbered execution units)
  • Requirements mapped to phases (100% coverage guarantee)
  • Phase dependencies and ordering
  • Phase status tracking (planned/in-progress/completed/verified)

This skill combines the original lib/roadmap.cjs and lib/phase.cjs modules. It handles all roadmap mutations: adding phases, inserting decimal phases for urgent work, removing phases with renumbering, and marking phases complete.

Capabilities

1. Parse Roadmap

Parse ROADMAP.md into structured data:

# Roadmap

## Milestone v1.0: MVP Launch

### Phase 70: Project Setup
- **Status**: completed
- **Requirements**: R1 (project scaffolding), R2 (dev environment)
- **Deliverables**: Package.json, tsconfig, eslint config, CI pipeline

### Phase 71: Database Layer
- **Status**: completed
- **Requirements**: R3 (data model), R4 (migrations)
- **Deliverables**: Schema definitions, migration scripts, seed data

### Phase 72: Authentication
- **Status**: in-progress
- **Requirements**: R5 (user auth), R6 (OAuth2)
- **Deliverables**: Login flow, token management, middleware

### Phase 73: API Endpoints
- **Status**: planned
- **Requirements**: R7 (REST API), R8 (validation)
- **Deliverables**: CRUD endpoints, input validation, error handling

## Milestone v2.0: Enhanced Features
...

Parsed result:

{
  "milestones": [
    {
      "version": "v1.0",
      "title": "MVP Launch",
      "phases": [
        { "number": 70, "title": "Project Setup", "status": "completed", "requirements": ["R1", "R2"] },
        { "number": 71, "title": "Database Layer", "status": "completed", "requirements": ["R3", "R4"] },
        { "number": 72, "title": "Authentication", "status": "in-progress", "requirements": ["R5", "R6"] },
        { "number": 73, "title": "API Endpoints", "status": "planned", "requirements": ["R7", "R8"] }
      ]
    }
  ]
}

2. Add Integer Phase

Append a new phase to the end of the current milestone:

add_phase(
  milestone: "v1.0",
  title: "Admin Dashboard",
  requirements: ["R12", "R13"],
  deliverables: "Admin UI, user management, analytics"
)
-> Phase 74: Admin Dashboard (appended after Phase 73)

3. Insert Decimal Phase

Insert a phase between existing phases for urgent work:

insert_phase(
  after: 72,
  title: "Fix Auth Token Refresh",
  requirements: ["R5.1"],
  deliverables: "Token refresh logic, session persistence"
)
-> Phase 72.1: Fix Auth Token Refresh (inserted between 72 and 73)

Decimal phases:

  • 72.1 is between 72 and 73
  • 72.2 is between 72.1 and 73
  • Multiple decimals can exist between any two integer phases

4. Remove Phase and Renumber

Remove a future phase and renumber subsequent phases:

remove_phase(73)
-> Phase 73 removed
-> Phase 74 renumbered to Phase 73
-> All references updated

Only future (planned) phases can be removed. Completed and in-progress phases cannot be removed.

5. Mark Phase Complete

Update phase status in the roadmap:

complete_phase(72)
-> Phase 72 status: completed
-> If all phases in milestone completed -> milestone ready for audit

Status transitions:

  • planned -> in-progress (when planning begins)
  • in-progress -> completed (when execution finishes)
  • completed -> verified (when verification passes)

6. Requirements Coverage Analysis

Verify 100% requirement coverage across phases:

coverage_analysis()
-> Total requirements: 13
-> Mapped to phases: 13
-> Unmapped: 0
-> Coverage: 100%

-> R1: Phase 70 (completed)
-> R2: Phase 70 (completed)
-> R5: Phase 72 (in-progress)
-> R5.1: Phase 72.1 (planned)
...

7. Phase Dependency Resolution

Determine execution order based on dependencies:

dependency_graph()
-> Phase 70: no dependencies (can start immediately)
-> Phase 71: depends on Phase 70
-> Phase 72: depends on Phase 71
-> Phase 72.1: depends on Phase 72
-> Phase 73: depends on Phase 71 (not 72, can parallelize)

8. Milestone Scope Determination

Determine which phases belong to a milestone:

milestone_scope("v1.0")
-> Phases: [70, 71, 72, 72.1, 73]
-> Total: 5 phases
-> Completed: 2
-> In Progress: 1
-> Planned: 2
-> Progress: 40%

9. Phase Status Queries

Query phases by status:

phases_by_status("completed") -> [70, 71]
phases_by_status("in-progress") -> [72]
phases_by_status("planned") -> [72.1, 73]
next_phase() -> 72.1 (first planned phase after current)

Tool Use Instructions

Parsing Roadmap

  1. Use Read to load .planning/ROADMAP.md
  2. Parse markdown headings to identify milestones (## level) and phases (### level)
  3. Extract status, requirements, and deliverables from bullet points under each phase
  4. Return structured milestone/phase hierarchy

Adding a Phase

  1. Parse current roadmap to find last phase number in target milestone
  2. Generate new phase number (last + 1)
  3. Format phase section following existing pattern
  4. Use Edit to insert before the next milestone heading or end of file

Inserting a Decimal Phase

  1. Parse roadmap to find the target phase and next phase
  2. Calculate decimal number (e.g., 72.1 if inserting after 72)
  3. Format phase section
  4. Use Edit to insert between the two phases

Requirements Coverage

  1. Parse ROADMAP.md for all phase requirement mappings
  2. Use Read to load .planning/REQUIREMENTS.md for full requirement list
  3. Compare mapped requirements against full list
  4. Report coverage percentage and any gaps

Process Integration

  • new-project.js - Create initial ROADMAP.md with milestone and phase structure
  • progress.js - Read roadmap for progress display and next-action routing
  • complete-milestone.js - Determine milestone scope, verify all phases complete
  • audit-milestone.js - Read phase scope for audit, requirements coverage check
  • plan-phase.js - Read phase requirements and deliverables for planning context
  • add-phase command - Add integer phase via this skill
  • insert-phase command - Insert decimal phase via this skill
  • remove-phase command - Remove phase via this skill

Output Format

{
  "operation": "parse|add|insert|remove|complete|coverage|dependencies|scope|query",
  "status": "success|error",
  "roadmap": {
    "milestoneCount": 2,
    "totalPhases": 8,
    "currentMilestone": "v1.0"
  },
  "phase": {
    "number": 72,
    "title": "Authentication",
    "status": "completed",
    "requirements": ["R5", "R6"]
  },
  "coverage": {
    "total": 13,
    "mapped": 13,
    "percentage": 100,
    "gaps": []
  }
}

Configuration

SettingDefaultDescription
roadmapFile.planning/ROADMAP.mdPath to ROADMAP.md
requirementsFile.planning/REQUIREMENTS.mdPath for coverage analysis
startingPhaseNumber70First phase number for new projects
allowDecimalPhasestrueEnable decimal phase insertion
autoStatusTransitiontrueAuto-update phase status on events

Error Handling

ErrorCauseResolution
ROADMAP.md not foundPlanning directory not initializedRun new-project first
Phase not foundReferenced phase does not existCheck phase number, list available phases
Cannot remove active phaseTrying to remove in-progress/completed phaseOnly planned phases can be removed
Duplicate phase numberPhase number already existsUse next available number or decimal
Coverage gap detectedRequirements not mapped to any phaseAdd phase or update existing phase to cover requirement
Circular dependencyPhase depends on itself or cycle existsReview dependency graph, break cycle

Constraints

  • ROADMAP.md must remain human-readable markdown at all times
  • Phase numbers must be positive (integer or decimal with one decimal place)
  • Requirements coverage must be 100% before milestone can be audited
  • Phase removal triggers automatic renumbering of subsequent phases
  • Status transitions are one-directional (cannot go from completed back to planned)
  • Decimal phases are temporary (should be consolidated into integer phases at milestone completion)
  • All roadmap mutations must be committed via git-integration skill

Source

git clone https://github.com/a5c-ai/babysitter/blob/main/plugins/babysitter/skills/babysit/process/methodologies/gsd/skills/roadmap-management/SKILL.mdView on GitHub

Overview

ROADMAP.md is the master plan for phased project delivery, defining milestones, phases, dependencies, and requirement mappings. Roadmap-management parses ROADMAP.md into structured data and mutates phases (add, insert decimals, remove) and statuses, with requirements coverage checks.

How This Skill Works

It combines the original lib/roadmap.cjs and lib/phase.cjs modules into a mutating toolkit. It parses ROADMAP.md into milestones and phases, applies mutations (add, insert decimal, remove, complete) and then revalidates dependencies and requirements coverage after changes.

When to Use It

  • Parse ROADMAP.md to extract milestones, phases, statuses, and requirements.
  • Append a new phase to the end of a milestone.
  • Insert a decimal phase between existing phases for urgent work.
  • Remove a future phase and renumber subsequent phases.
  • Mark a phase complete and trigger milestone audit readiness if all phases are done.

Quick Start

  1. Step 1: Parse ROADMAP.md into a structured object with milestones and phases.
  2. Step 2: Apply a mutation (e.g., add_phase, insert_phase, remove_phase, complete_phase).
  3. Step 3: Validate requirements coverage and milestone readiness.

Best Practices

  • Maintain stable milestone identifiers (e.g., v1.0, v2.0).
  • Prefer decimal inserts (e.g., 72.1) for urgent tasks and document why.
  • Only remove future (planned) phases; avoid altering completed/in-progress phases.
  • Renumbering should update all references and deliverables.
  • After changes, verify requirements coverage is complete for the milestone.

Example Use Cases

  • Parse ROADMAP.md for v1.0 MVP Launch and its phases 70-73.
  • Append Phase 74: Admin Dashboard to v1.0.
  • Insert Phase 72.1: Fix Auth Token Refresh between 72 and 73.
  • Remove Phase 73 and renumber Phase 74 to 73 to preserve order.
  • Mark Phase 72 as completed and trigger milestone audit if all are done.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers