agentleFS
qf-studioqf-studio/navigator/skills/nav-roadmaps/SKILL.md

nav-roadmaps

Skill356 starsChanged 13 months agoMITView on GitHub

Show every roadmap document in the project's .agent/ tree as one table (title, path, kind, last date, status line) plus per-section ticket counts for ticket-table roadmaps. Auto-invoke when user says "show roadmaps", "list roadmaps", "which roadmaps are open", "roadmap table", "roadmap status", or "what roadmaps do we have".

1 other project uses a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

3 rules. About 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Do NOT invoke when the user asks about one named roadmap.

    line 19
  2. Very specific:

    Add --also <path>/.agent for every sibling repo the user names or that the project CLAUDE.md names as a split-docs home (example: console …

    line 41
  3. Very specific:

    If a stub row appears, name the repo that holds the real document (the stub's header says where it moved).

    line 57

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Navigator Roadmaps

Render the open roadmaps of a Navigator project as a table. One row per roadmap document. One extra table per ticket-style roadmap with counts per section.

When to Invoke

Invoke when the user says:

  • "show roadmaps", "list roadmaps", "list me all the roadmaps we have open"
  • "roadmap table", "roadmap status", "which roadmaps are open"
  • "what roadmaps do we have", "roadmaps across repos"

Do NOT invoke when the user asks about one named roadmap. Read that file directly.

What This Does

  1. Finds roadmap documents under .agent/: files named *roadmap*, task docs whose H1 says roadmap, and program docs a roadmap names as its source plan. Markers and archives are skipped.
  2. Classifies each document: live, historical (header note), stub (moved pointer), program. A live document whose newest header date is older than the threshold is flagged stale Nd.
  3. Counts ticket rows (✅ 🚧 🎫 📋) per ## section for ticket-table roadmaps.
  4. Prints two Markdown tables. The agent adds a one-paragraph reading.

Execution Steps

Step 1: Check Navigator Initialized

if [ ! -d ".agent" ]; then
  echo "❌ Navigator not initialized in this project (no .agent/)"
  exit 1
fi

Step 2: Run the Scanner

Add --also <path>/.agent for every sibling repo the user names or that the project CLAUDE.md names as a split-docs home (example: console sessions also scan ../pilot/.agent).

PLUGIN_DIR="${CLAUDE_PLUGIN_ROOT:-$(cat "${NAVIGATOR_CONFIG_HOME:-${XDG_CONFIG_HOME:-$HOME/.config}/navigator}/plugin-root" 2>/dev/null)}"
[ -d "$PLUGIN_DIR/skills" ] || PLUGIN_DIR="$HOME/.claude/plugins/marketplaces/navigator-marketplace"

python3 "$PLUGIN_DIR/skills/nav-roadmaps/functions/roadmap_scan.py" --root .agent [--also ../other-repo/.agent] [--stale-days 30]

Flags: --format json for machine output · --stale-days N (default 30) · --excerpt N status width (default 110) · --today YYYY-MM-DD for reproducible runs.

Step 3: Present

  1. Paste the scanner's Markdown verbatim. Do not retype the table.
  2. Below it, add at most one short paragraph: which roadmap is the plan of record, which status lines are stale, and the one hygiene step that follows. No other commentary.
  3. If a stub row appears, name the repo that holds the real document (the stub's header says where it moved).

Output Format

See templates/roadmap-table.md for the shape and examples/pilot-console-2026-11-08.md for a real run across two repos.

Rules

  • The scanner reads headers only (first 15 lines) for title, kind, date and status. A status line that is a stacked **Status**: chain shows its first segment; the stale flag comes from the newest date anywhere in the header.
  • MM-DD dates in status lines take the current year, or the previous year when that would be in the future.
  • Rows in a section whose title contains "Legend" are not counted.
  • The skill changes no files.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.