plugins/devflow/skills/sync-roadmap/SKILL.md
Reconcile ROADMAP.md checkbox state against on-disk SUMMARY.md presence. Default: silently corrects drift; --dry-run previews; --interactive prompts per change. Triggers on: "sync roadmap", "reconcile roadmap", "fix roadmap drift", "is the roadmap accurate".
npx skillsauth add ao-cyber-systems/devflow-claude sync-roadmapInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
<id>-SUMMARY.md on disk → mark [x]Self-Check: FAILED in SUMMARY → mark [ ] and append (failed) annotationPlus objective-level rollup: when ALL TRDs in an objective are [x], flip the objective's **Status:** line to complete YYYY-MM-DD (and update Progress table row if present).
Default behavior: walk + write atomically (tmp + rename). --dry-run shows the diff without writing. --interactive prompts y/N per drift (TTY only; non-TTY falls back to write mode).
Idempotent: running twice produces zero second-run changes. </objective>
<execution_context> @.planning/ROADMAP.md </execution_context>
<process> **Run the sync-roadmap CLI with arg passthrough:**node ~/.claude/devflow/bin/df-tools.cjs sync-roadmap $ARGUMENTS
The CLI:
--dry-run, --interactive, --raw.reconcile({ projectRoot: cwd, mode }) from lib/roadmap-reconcile.cjs.--dry-run: emits structured changes JSON + warnings; never writes.--interactive: dry-run first → prompt y/N per drift → write only accepted changes.After the command runs, present the output to the user — show changes table (kind / objective / TRD / before → after), warnings if any, and a one-line summary.
If no drift found, say "No drift detected. ROADMAP matches disk truth." and exit. </process>
<context> This skill is for manual recovery + post-TRD-ship cleanup. Future enhancement: post-execute hook auto-invocation (out of v1.1 scope). For now, run manually after a TRD ships if you want the ROADMAP checkbox updated automatically instead of editing by hand.The reconciliation rules (from 09-CONTEXT.md decision #2):
trd_summary_exists: TRD has SUMMARY → [x]trd_summary_failed: SUMMARY contains Self-Check: FAILED → [ ] + (failed)trd_orphan_warning: TRD in ROADMAP but no TRD file → warning, no auto-flipPlus objective-level rollup (decision #3) when ALL TRDs are [x].
Limitations:
df:gh-sync for GH state sync.complete, the reconciler doesn't auto-revert even if a TRD becomes [ ] (failed). Edit manually.Note: The skill takes effect on next session restart (sync-runtime hook mirrors it to ~/.claude/devflow/skills/sync-roadmap/SKILL.md).
Use when the user wants to update ROADMAP after a TRD ships, audit drift between ROADMAP claims and disk truth, or perform a one-off cleanup. Also fires on: "update roadmap checkboxes". </context>
development
Resolve a parked decision and resume autonomous execution. Use when you see a pending DECISION-NNN.md in .planning/decisions/pending/, when the user wants to choose an option for a blocked checkpoint:decision, or when you need to tell the executor which option to take. Triggers on: "resolve decision", "decide DECISION-", "pick option for DECISION-", "unblock DECISION-", "answer DECISION-", "choose option for decision", "I want option-a", "go with option-b", "my answer is".
development
Orchestrate a multi-step DevFlow workflow by chaining skills. Use when the user wants to invoke a sequence of skills as one ask (e.g., "build and sync to github", "research, plan, then build", "ship and announce"). Triggers on: "ship X to Y", "build and X", "plan and X", "X then Y", "in one go", "as a chain", "all in sequence", "chain", "ship-and-sync", "research-plan-build"
testing
Stamp a new polyglot monorepo using the AO Cyber Systems scaffold — root CLAUDE.md with Layout table, per-area CLAUDE.md, path-filtered CI workflows, comprehensive .gitignore, and the no-binaries pre-commit hook config. Use this for new product monorepos (the 5-monorepo architecture: aodex, aosentry, eden-biz, politihub, aohealth, plus future ones). Triggers on: "new monorepo", "scaffold a monorepo", "set up a monorepo", "create a new product monorepo".
development
Validate that a monorepo follows the AO Cyber Systems layout convention — root CLAUDE.md declares every area, every area has its own CLAUDE.md, no compiled binaries are tracked in git. Reads the root `CLAUDE.md` Layout table, walks the working tree, and reports drift in a single Markdown summary. Standalone — works on any repo. Triggers on: "audit monorepo layout", "monorepo doctor", "is this monorepo healthy?", "check the layout", "find binaries in the repo".