Skip to content
Back to skills

Aid Create Roadmap

ASecurity

Realize a ready roadmap seed into `.aid/knowledge/roadmap.md` -- frontmatter, preamble, ## Contents index (including the forward ## MVP entry), and the three horizon sections ## Now, ## Next, ## Later. Use this skill when a roadmap seed is ready and the project needs its roadmap document written for the first time. Registers the document in `.aid/settings.yml` and `.aid/knowledge/README.md` on first creation. Routes to `/aid-update-roadmap` when the horizon sections already carry committed co...

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
documentationgoshellbash

Works with

  • terminal

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add AndreVianna/aid-methodology --skill aid-create-roadmap --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Aid Create Roadmap?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Aid Create Roadmap
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/andrevianna-aid-create-roadmap/badge)](https://www.skillsdirectory.com/skills/andrevianna-aid-create-roadmap)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: aid-create-roadmap
description: >
  Realize a ready roadmap seed into `.aid/knowledge/roadmap.md` -- frontmatter, preamble, ##
  Contents index (including the forward ## MVP entry), and the three horizon sections ##
  Now, ## Next, ## Later. Use this skill when a roadmap seed is ready and the project needs
  its roadmap document written for the first time. Registers the document in
  `.aid/settings.yml` and `.aid/knowledge/README.md` on first creation. Routes to
  `/aid-update-roadmap` when the horizon sections already carry committed content. The ##
  MVP section belongs entirely to `/aid-create-mvp` -- this skill writes only its ##
  Contents index entry.
allowed-tools: Read Glob Grep Bash Shell Terminal Write Edit Agent
argument-hint: "[<direction>] -- what to realize (fills horizon sections from the seed)"
---

# Create Roadmap (realize a seed into roadmap.md)

`/aid-create-roadmap` realizes a ready roadmap seed at `.aid/design/roadmap.md`
into the committed KB document at `.aid/knowledge/roadmap.md`. It is a `create`-stage
skill under the shared contract in `.aid/runtime/templates/design-lifecycle.md` (class 1),
consuming the seed `/aid-design-roadmap` produces and never touching `.aid/design/` for any
other purpose.

- **Boundary vs `/aid-create-mvp`:** this skill creates `roadmap.md` and owns every
  section **except** `## MVP`. It writes the `- [MVP](#mvp)` index entry in `## Contents`
  from the moment the document exists, but it never creates a `## MVP` heading -- that
  section belongs entirely to `/aid-create-mvp` (`feature-003 §3c`).
- **Boundary vs `/aid-update-roadmap`:** that skill revises existing horizon entries. When
  the owned region already carries committed content this skill routes to it rather than
  overwriting it.
- **Not a numbered pipeline phase**; does not route to `/aid-execute`.

State machine: **INTAKE -> GUARD -> REALIZE -> REGISTER -> VERIFY -> PRESENT -> DONE**.
Print the `[State: NAME] -- {purpose}` entry line on each state.

---

## State: INTAKE

1. **Require a subject.** Empty argument -> ask one bootstrapping question ("What direction
   do you want to realize into roadmap.md -- or run `/aid-design-roadmap` first?") and wait.
2. **Allocate, exactly per `design-lifecycle.md § Skill shape -- Allocation`** -- the Work
   Initiation Gate, then `initiator: aid-create-roadmap`, `active_skill:
   aid-create-roadmap`, `pipeline.path: lite`, `lifecycle: Running`. `phase` is not
   driven.
3. **Read the seed** at `.aid/design/roadmap.md`. If no seed exists, inform the user and
   ask whether to proceed without one (direction entered interactively) or to run
   `/aid-design-roadmap` first; do not proceed silently.
4. **Read the destination** at `.aid/knowledge/roadmap.md` if it exists. Classify its state:
   absent | present-horizon-empty | present-horizon-populated.
5. **Classify complexity (model + effort)** for the `aid-architect` dispatch below;
   verifier tier >= producer tier (`agent-dispatch-tiering.md`).

**Advance:** GUARD.

---

## State: GUARD

**Readiness gate (class-1 contract, feature-002 §3b).** Inspect the seed for a non-empty
`## Open questions` section per `design-lifecycle.md`'s detection rule.

- **Unresolved questions present, no override** → refuse. Name each unresolved question
  **and** the override flag `--override-open-questions` the user must supply to bypass the gate. Write nothing; leave
  seed and destination byte-identical. Set `lifecycle: Paused-Awaiting-Input`.
- **No unresolved questions, or override supplied** → advance.

**Advance:** REALIZE.

---

## State: REALIZE

Dispatch **`aid-architect`** (clean context, tiered) to realize the seed. Apply the case
determined in INTAKE:

| Destination state | Action |
|---|---|
| `roadmap.md` absent | **Create** the document: write frontmatter (§3a values below, verbatim), `# Roadmap` title, one-paragraph preamble (what this document holds and what it does not -- no items live here), `## Contents` with all four entries in heading order, then `## Now`, `## Next`, `## Later`. **Delete the seed.** |
| Present, horizon sections empty or absent | Fill `## Now`, `## Next`, `## Later` from the seed; leave every byte outside those sections identical, including `## MVP` if present. **Delete the seed.** |
| Present, horizon sections already carry committed content | **Route** to `/aid-update-roadmap`; write nothing; leave the seed in place for that run (CC-3). Set `lifecycle: Paused-Awaiting-Input`. Advance to DONE without calling REGISTER or VERIFY. |

**`## Contents` index** -- the fixed four-entry form (`feature-003 §3a`), always written
at creation and always left intact on the fill path:

    - [MVP](#mvp)
    - [Now](#now)
    - [Next](#next)
    - [Later](#later)

**Never creates `## MVP`.** The `- [MVP](#mvp)` entry is a forward reference: the dead
in-document anchor is accepted and is what makes REQUIREMENTS AC-6a literally true.

**Entry schema** for each direction in a horizon section:

    ### <Direction, as a noun phrase>

    - **What:** the direction committed to, at roadmap altitude.
    - **Why:** the constraint or trade-off that drove it.
    - **Rejected:** each alternative considered, with the reason it lost.
    - **Status:** Accepted | Superseded by <entry> -- followed by a durable evidence
      anchor (path plus a grep-recoverable heading or search string), or the literal
      `intent` when nothing has been built yet.

**No summary table. No item ids anywhere.** (`feature-003 §3a`)

**Frontmatter** (write verbatim on creation; `feature-003 §3a`):

```yaml
---
kb-category: primary
source: hand-authored
objective: Present commitment and future direction for {project} — what it has decided to do next, why, and what it deliberately did not choose.
summary: Read this to know where the project is going and what the first committed slice is; specific defined-and-prioritized items live in backlog.md and shipped work in release-tracking.md.
sources: []
tags: [D, roadmap, commitment, direction, mvp]
see_also: [backlog.md, decisions.md, release-tracking.md]
owner: architect
audience: [architect, pm, developer]
---
```

`source: hand-authored` -- no as-built counterpart exists for the Conformance Lane to
compare a direction entry against (`decisions.md` carries the same value for the same
reason; `feature-003 §3a` records the divergence from feature-004's `forward-authored`).

**Advance:** REGISTER (creation or fill path). Route path: advance to DONE directly.

---

## State: REGISTER

**On creation only** (destination was absent in INTAKE). Write two surfaces atomically
in the same run, per `feature-003 §6b` (REQUIREMENTS CC-1, CC-2):

1. **`.aid/settings.yml` `knowledge.doc_set`** -- append exactly one line:
   `    - roadmap.md|skill-self|required`
   using the R13 append-block idiom (append to the existing `doc_set:` list; never rewrite
   the block; never touch `term_exclusions`).
2. **`.aid/knowledge/README.md` Completeness table** -- append exactly one row:
   `Concern` = `D`, `Owner` = `skill-self`, `Status` = `Created (skill-self)`;
   and increment the `**Doc-set:** N documents` count line by 1.

Both writes must succeed in the same run. If either fails, report and halt.

**Advance:** VERIFY.

---

## State: VERIFY

**Full verify** -- exactly as `design-lifecycle.md § Skill shape -- "Full verify"`
defines it. Not clean -> loop to REALIZE; the circuit-breaker there governs escalation
to IMPEDIMENT + `lifecycle: Blocked`.

**Advance:** PRESENT.

---

## State: PRESENT (hard stop -- the user decides)

Set `lifecycle: Paused-Awaiting-Input`. Present the realized document clearly. Assert:

- `## MVP` heading is absent (the `- [MVP](#mvp)` index entry is present).
- On the creation path: both registration surfaces were written.
- To revise horizon entries later, use `/aid-update-roadmap`.
- To draw the MVP line, use `/aid-create-mvp`.

**Advance:** DONE.

---

## State: DONE

Set `lifecycle: Completed`, `updated` now, append a `## Lifecycle History` row.

---

## Constraints

- **Never creates `## MVP`** -- only the `## Contents` index entry (`feature-003 §3c`).
- **`phase` is not driven** by this skill (`design-lifecycle.md § Skill shape --
  Allocation`).
- **Full verify**, per `design-lifecycle.md`, unlike a light single-pass check.
- **Seed consumed on the realizing path** (creation or fill); left in place only on
  the route path (CC-3).
- **Registration is atomic with creation** -- both surfaces in the same run (CC-2);
  presence value is `required`, never `conditional` (CC-1).
- **C-3 compliance**: `roadmap.md` carries no `## Change Log`, no `## Revision History`,
  no `changelog:` frontmatter field, no work id, and no work-folder path.
- **Clean context**; **verification always a sub-agent dispatch** (`aid-reviewer`).
- **Tracking:** write STATE `lifecycle` at every transition.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.