aif-roadmap
Skill10 starsChanged 6 months agoMITView on GitHub
Create or update a project roadmap with major milestones. Generates the configured roadmap artifact (default .ai-factory/ROADMAP.md) — a strategic checklist of high-level goals. Use when user says "roadmap", "project plan", "milestones", or "what to build next".
4 other projects use a version of this, 3 of them edited.
Adopted by
Most recently taken up by
- letuhao/lore-weaveword for word, first seen Oct 17, 2026
- unxed/f4edited, first seen Oct 8, 2026
- lee-to/ai-factoryedited, first seen Sep 22, 2026
- hightemp/go_computer_use_mcp_serveredited, first seen Mar 21, 2026
Other versions4 projects use a version of this.
Word for word · 1
- letuhao/lore-weave★ 35100% same
Edited · 3
- lee-to/ai-factory★ 1.2k72% same
- unxed/f4★ 26194% same
- hightemp/go_computer_use_mcp_server★ 289% same
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository59 other files it gives its agents.
- AGENTS.mdAGENTS.md
- site-docs/AGENTS.mdAGENTS.md
- web/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- docs/CLAUDE.mdCLAUDE.md
- web/CLAUDE.mdCLAUDE.md
- aif-architectureSkill
- aif-best-practicesSkill
- aif-build-automationSkill
- aif-ciSkill
- aif-commitSkill
- aif-distillationSkill
- aif-dockerizeSkill
- aif-docsSkill
- aif-evolveSkill
- aif-exploreSkill
- aif-fixSkill
- aif-groundedSkill
- aif-implementSkill
- aif-improveSkill
- aif-loopSkill
- aif-planSkill
- aif-qaSkill
- aif-referenceSkill
- aif-reviewSkill
- aif-rules-checkSkill
- aif-rulesSkill
- aif-security-checklistSkill
- aif-skill-generatorSkill
- aifSkill
- aif-verifySkill
- generate-claudemdSkill
- aif-architectureSkill
- aif-best-practicesSkill
- aif-build-automationSkill
- aif-ciSkill
- aif-commitSkill
- aif-distillationSkill
- aif-dockerizeSkill
- aif-docsSkill
- aif-evolveSkill
- aif-exploreSkill
- aif-fixSkill
- aif-groundedSkill
- aif-implementSkill
- aif-improveSkill
- aif-loopSkill
- aif-planSkill
- aif-qaSkill
- aif-referenceSkill
- aif-reviewSkill
- aif-roadmapSkill
- aif-rules-checkSkill
- aif-rulesSkill
- aif-security-checklistSkill
- aif-skill-generatorSkill
- aifSkill
- aif-verifySkill
- generate-claudemdSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
29 rules. 19 are common, 0 are distinctive, and 10 are very specific to this project.
19
Common
Most of the 3 edited versions we read keep these.
0
Distinctive
This author's own choices. Worth a look.
10
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Common: line 11
Create and maintain a high-level project roadmap with major milestones.
- Very specific: line 17
FIRST: Read .ai-factory/config.yaml if it exists to resolve:
- Very specific: line 21
If config.yaml doesn't exist, use defaults:
- Very specific: line 30
Read the resolved architecture artifact: if it exists (paths.architecture, default: .ai-factory/ARCHITECTURE.md) to understand:
- Common: line 40
Treat them as project-level overrides for this skill's general instructions
- Very specific: line 41
When a skill-context rule conflicts with a general rule written in this SKILL.md,
- Very specific: line 43
When there is no conflict, apply both: general rules from SKILL.md + project rules from skill-context
- Common: line 44
Do NOT ignore skill-context rules even if they seem to contradict this skill's defaults — they exist because the project's experience …
- Common: line 51
Enforcement: After generating any output artifact, verify it against all skill-context rules.
- Common: line 52
If any rule is violated — fix the output before presenting it to the user.
- Very specific: line 56
If argument is check → Mode 3: Check Progress (requires the resolved roadmap path)
- Common: line 68
If user provided arguments (vision/description):
- Common: line 69
Use as primary input for milestones
- Common: line 101
Check git log for completed work: git log --oneline -20
- Very specific: line 105
Create the resolved roadmap artifact (default: .ai-factory/ROADMAP.md) with this format:
- Common: line 130
Use today's date for milestones detected as already done
- Common: line 154
Read the resolved roadmap path
- Very specific: line 155
Read .ai-factory/DESCRIPTION.md (use path from config) for context
- Common: line 160
If user provided arguments (new milestones/changes):
- Common: line 191
Add entry to Completed table with today's date
- Common: line 196
Ask user to describe new milestones
- Common: line 198
Update the resolved roadmap path
- Common: line 203
Ask user for new order or let them describe priority changes
- Common: line 208
Update the resolved roadmap path with all modifications.
- Very specific: line 234
Read .ai-factory/DESCRIPTION.md (use path from config) for tech stack context
- Very specific: line 240
Use Glob and Grep to search for that evidence
- Common: line 241
Check git log --oneline --all -30 for related commits
- Common: line 266
Add entries to Completed table with today's date
- Common: line 267
Leave partial and not-started milestones unchanged
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Roadmap - Strategic Project Planning
Create and maintain a high-level project roadmap with major milestones.
Workflow
Step 0: Load Project Context
FIRST: Read .ai-factory/config.yaml if it exists to resolve:
- Paths:
paths.description,paths.architecture,paths.rules_file,paths.roadmap,paths.research, andpaths.rules - Language:
language.uifor prompts,language.artifactsfor generated content
If config.yaml doesn't exist, use defaults:
- Paths:
.ai-factory/for all artifacts - Language:
en(English)
Read .ai-factory/DESCRIPTION.md (use path from config) if it exists to understand:
- Tech stack (language, framework, database, ORM)
- Project architecture and conventions
- Non-functional requirements
Read the resolved architecture artifact if it exists (paths.architecture, default: .ai-factory/ARCHITECTURE.md) to understand:
- Chosen architecture pattern and folder structure
- Module boundaries and communication patterns
Read .ai-factory/skill-context/aif-roadmap/SKILL.md — MANDATORY if the file exists.
This file contains project-specific rules accumulated by $aif-evolve from patches,
codebase conventions, and tech-stack analysis. These rules are tailored to the current project.
How to apply skill-context rules:
- Treat them as project-level overrides for this skill's general instructions
- When a skill-context rule conflicts with a general rule written in this SKILL.md, the skill-context rule wins (more specific context takes priority — same principle as nested CLAUDE.md files)
- When there is no conflict, apply both: general rules from SKILL.md + project rules from skill-context
- Do NOT ignore skill-context rules even if they seem to contradict this skill's defaults — they exist because the project's experience proved the default insufficient
- CRITICAL: skill-context rules apply to ALL outputs of this skill — including the ROADMAP.md template. The template in this SKILL.md is a base structure. If a skill-context rule says "roadmap MUST include X" or "milestones MUST have Y" — you MUST augment the template accordingly. Generating a roadmap that violates skill-context rules is a bug.
Enforcement: After generating any output artifact, verify it against all skill-context rules. If any rule is violated — fix the output before presenting it to the user.
Step 1: Determine Mode
If argument is check → Mode 3: Check Progress (requires the resolved roadmap path)
Otherwise check if the resolved roadmap path exists (paths.roadmap, default: .ai-factory/ROADMAP.md):
- Does NOT exist → Mode 1: Create Roadmap
- Exists → Mode 2: Update Roadmap
Mode 1: Create Roadmap (First Run)
1.1: Gather Input
If user provided arguments (vision/description):
- Use as primary input for milestones
If no arguments:
- Ask interactively:
AskUserQuestion: What are the major goals for this project?
Options:
1. Let me describe the vision
2. Analyze codebase and suggest milestones
3. Both — I'll describe, you'll add what's missingBased on choice:
- "Analyze codebase and suggest milestones" → proceed to Step 1.2
- "Let me describe the vision" or "Both" → collect user description (if "Both", also add codebase analysis in Step 1.2), then ask follow-up:
AskUserQuestion: Any priorities or deadlines?
Options:
1. Yes, let me specify
2. No, just order by logical sequence
3. Skip — I'll reprioritize later1.2: Explore Codebase
Scan the project to understand what's already built:
Globfor project structure (key directories, modules)Grepfor implemented features (routes, models, services)- Check git log for completed work:
git log --oneline -20
1.3: Generate ROADMAP.md
Create the resolved roadmap artifact (default: .ai-factory/ROADMAP.md) with this format:
# Project Roadmap
> <project vision — one-liner from DESCRIPTION.md or user input>
## Milestones
- [ ] **Milestone Name** — short description of what this achieves
- [ ] **Milestone Name** — short description of what this achieves
- [x] **Milestone Name** — short description (already done based on codebase analysis)
## Completed
| Milestone | Date |
|-----------|------|
| Milestone Name | YYYY-MM-DD |Rules for milestones:
- Each milestone is a high-level goal, not a granular task (that's
$aif-plan) - 5-15 milestones is the sweet spot — fewer means too vague, more means too granular
- Order by logical sequence (dependencies first)
- Mark already-completed milestones as
[x]and add them to the Completed table - Use today's date for milestones detected as already done
1.4: Confirm with user
Show the generated roadmap and ask:
AskUserQuestion: Here's the proposed roadmap. What would you like to do?
Options:
1. Looks good — save it
2. Add more milestones
3. Remove/modify some milestones
4. Rewrite — let me give better inputApply changes if requested, then save to the resolved roadmap path.
Mode 2: Update Roadmap (Subsequent Run)
2.1: Read Current State
- Read the resolved roadmap path
- Read
.ai-factory/DESCRIPTION.md(use path from config) for context - Explore codebase briefly to check what's changed since last update
2.2: Determine Action
If user provided arguments (new milestones/changes):
- Apply the requested changes directly
If no arguments:
- Analyze current state and present options:
AskUserQuestion: What would you like to do with the roadmap?
Options:
1. Review progress — check what's done, mark completed milestones
2. Add new milestones
3. Reprioritize — reorder existing milestones
4. Rewrite — major revision of the roadmap2.3: Review Progress (if chosen)
- Scan codebase for evidence of completed milestones
- For each unchecked milestone, check if the work appears done
- Propose marking completed milestones:
These milestones appear to be done:
- **Milestone Name** — [evidence: files exist, routes implemented, etc.]
Mark them as completed?If confirmed:
- Change
- [ ]to- [x]in the Milestones section - Add entry to Completed table with today's date
- Move completed milestones below unchecked ones (or keep in place — user preference)
2.4: Add New Milestones (if chosen)
- Ask user to describe new milestones
- Insert them in logical order among existing milestones
- Update the resolved roadmap path
2.5: Reprioritize (if chosen)
- Show current order
- Ask user for new order or let them describe priority changes
- Reorder milestones in the resolved roadmap path
2.6: Save Changes
Update the resolved roadmap path with all modifications.
Show summary:
## Roadmap Updated
Total milestones: N
Completed: X/N
Next up: **Milestone Name**
To start working on the next milestone:
$aif-plan <milestone description> → creates a plan and optional branch/worktree flow
$aif-implement → executes the planMode 3: Check Progress ($aif-roadmap check)
Automated scan — analyze the codebase and mark completed milestones without interactive questions.
Requires the resolved roadmap path to exist. If it doesn't — tell the user to run $aif-roadmap first.
3.1: Read roadmap and project context
- Read the resolved roadmap path
- Read
.ai-factory/DESCRIPTION.md(use path from config) for tech stack context
3.2: Analyze each unchecked milestone
For every - [ ] milestone:
- Determine what evidence would prove it's done (files, routes, models, configs, tests)
- Use
GlobandGrepto search for that evidence - Check
git log --oneline --all -30for related commits - Score: done (strong evidence), partial (some work started), not started
3.3: Report findings
## Roadmap Progress Check
✅ Done (ready to mark):
- **User Authentication** — found: src/auth/, JWT middleware, login/register routes
- **Database Setup** — found: migrations/, models/, seed scripts
🔨 In Progress:
- **Payment Integration** — found: src/payments/ exists but Stripe webhook handler missing
⏳ Not Started:
- **Admin Dashboard**
- **Email Notifications**
Mark completed milestones? (2 milestones)3.4: Apply changes (if confirmed)
- Mark done milestones
[x] - Add entries to Completed table with today's date
- Leave partial and not-started milestones unchanged
Show updated summary:
Completed: X/N milestones
Next up: **Milestone Name**ROADMAP.md Format
# Project Roadmap
> <project vision — one-liner>
## Milestones
- [ ] **Name** — short description
- [ ] **Name** — short description
- [x] **Name** — short description
## Completed
| Milestone | Date |
|-----------|------|
| Name | YYYY-MM-DD |Critical Rules
- Milestones are high-level — each represents a major feature or capability, not a task
- ROADMAP.md is the source of truth — always read before modifying
- Never remove milestones silently — always confirm with user before removing
- Completed table tracks history — every checked milestone gets a date entry
- NO implementation — this skill only plans, use
$aif-planto start a feature and$aif-implementto execute - Ownership boundary — this command owns roadmap structure/content;
$aif-implementmay only mark milestones completed when implementation evidence is clear
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

