Skip to content
Documentation
Skill

/rollup

Generate the federation roll-up catalogue for a multi-repo product — aggregate every member repo's ADR metadata into one derived, product-wide view, run from the home repo. Use when the user says "roll up the federation", "generate the product-wide ADR view", "aggregate ADRs

From plugin
docflow
1614 skills

Claude Code

$ npx -y skills add EvolveHQ/docflow --skill rollup --agent claude-code

SKILL.md

rollup.SKILL.md
name: rollup
description: Generate the federation roll-up catalogue for a multi-repo product — aggregate every member repo's ADR metadata into one derived, product-wide view, run from the home repo. Use when the user says "roll up the federation", "generate the product-wide ADR view", "aggregate ADRs across the repos", "refresh the roll-up", or invokes /rollup. NOT for regenerating a single repo's own INDEX (that happens in place during authoring/ship) and NOT for linting consistency (use the audit skill).

rollup

Aggregate the ADR catalogues of every repo in a multi-repo product into one **derived, read-only** product-wide view. The roll-up is regenerated from source, never hand-edited — treat it exactly like a repo's own `INDEX.md`.

Step 0 — Preconditions

1. This skill runs in the **index-holding repo** of a federation — the one that carries `federation-index.md` (its `Role` is `central` for topology A, `coordinator` for B, or `home` for C). Confirm `federation-index.md` and a `federation.md` whose `Role` is `central`, `home`, or `coordinator` exist. If they do not, stop: either this repo is standalone (nothing to roll up) or it is a plain member — point the user at the index-holding repo. 2. Read `federation.md` to learn the **identity scheme** (default repo-prefixed slug `<repo-id>/NNNN-slug`); roll-up rows use it.

Step 1 — Enumerate members

Read `federation-index.md`. For each row, take the `Repo id` and the `Pointer` (the path/URL of that member's checkout). The member index is the **only** source of membership — do not auto-discover repos.

Step 2 — Collect each member's catalogue

For every member whose checkout is **locally available** at its pointer:

  • Read that member's `INDEX.md` (its authoritative local catalogue).
  • For each ADR row, capture the number, title, status, date, and

dependencies, and attach the **owning repo id** and the **federation identity** (the scheme from Step 0 applied to the local number).

A member's own `INDEX.md` stays authoritative for that member; this skill only reads it.

For the **aggregate status** of a product-wide decision (one with owning per-repo plan items across several members), also scan each member's `plan/todo/` (pending) and `plan/done/` (shipped) for items naming that decision's federation identity — that per-repo state feeds the aggregate column in Step 4.

Step 3 — Handle unreachable members

A member named in the index whose checkout is **not locally available** is **not** dropped and **not** a failure. Record it in a clearly separated "Not aggregated this run" list with its repo id and pointer, so the gap is visible rather than silent.

Step 4 — Write the roll-up

Write the aggregate to **`ROLLUP.md`** at the configured artefact root (the same root as `INDEX.md`), so every re-run overwrites the same file:

  • A header stating it is **generated — do not hand-edit**, with the run

date and the set of members aggregated.

  • One table across the whole product: federation identity, title, status,

owning repo, date. Group or sort by owning repo for readability.

  • For product-wide decisions, an **aggregate status** column **derived**

from per-repo plan-item state: `Implemented` only when every owning per-repo plan item is in a member's `plan/done/`, otherwise `N of M repos` shipped. This column is derived — never written back into any ADR.

  • The "Not aggregated this run" list from Step 3.

Do not alter any member's `INDEX.md` and do not write into any other repo.

Step 5 — Report

Tell the user how many members were aggregated, how many were skipped as unreachable (and which), and the total ADR count in the roll-up. Remind them the file is derived: re-run this skill to refresh it rather than editing it by hand.

Name catalogue coverage and unavailable members; partial coverage is not verification.

<!-- docflow:closing-report -->

Closing report

End every run, including blocked, failed and stopped runs, with a section headed exactly **Status at a glance**, containing these three labels:

  • **This run:** only actions actually attempted and their outcomes; quote each verify gate's exact output and exit code, including timeouts or interruptions.
  • **Overall:** implemented, partially verified, verified, blocked, failed or unknown. A passing sub-step is not an overall pass; incomplete or missing evidence never becomes success.
  • **Yet to do:** every remaining action, unresolved finding, verification, cleanup or required input. Write None only when the whole task is verifiably complete; never omit work because a budget ended.

Routine progress messages need no block. Keep final results brief and distinguish work prepared on a PR from work confirmed shipped. <!-- /docflow:closing-report -->

Read more
@evolvehq
Ships withdocflow

New to Docflow? Start here explains the terms, helps you choose one repository or several, and shows setup for your coding agent. Follow the prompt-first guides for a first task and expected result.

Stars on GitHub

Momentum

stars in total
16
Star history of EvolveHQ/docflow on GitHub, a chart by star-history.com

Other skills on docflow.

add-convention

add-convention

Assess and add a CONVENTION (a reusable rule, practice, or naming/process standard) to a documentation-led repo — decides FIRST…

@evolvehq@evolvehqInstall Skill
agent-wave

agent-wave

Run a bounded wave over the plan/todo queue in a documentation-led repo, using available parallel agents or sequential execution.…

@evolvehq@evolvehqInstall Skill
audit

audit

Audit a documentation-led repo against its own conventions — contiguous ADR numbering, INDEX sync, plan/ coverage, required…

@evolvehq@evolvehqInstall Skill
bootstrap

bootstrap

Scaffold or retrofit documentation-led conventions (AGENTS.md, CLAUDE.md, CONVENTIONS.md, ADR catalogue, plan/ queue, _agent/…

@evolvehq@evolvehqInstall Skill
brainstorm

brainstorm

Decompose a problem, feature, or goal into candidate ADRs and plan items for a documentation-led repo — one decision per ADR,…

@evolvehq@evolvehqInstall Skill
new-adr

new-adr

Author a new ADR — record a DECISION (what the system must do, or how it is built) in a documentation-led repo. Picks the next…

@evolvehq@evolvehqInstall Skill

More skills from other plugins.

context7-cli

context7-cli

Use the ctx7 CLI to fetch library documentation and configure Context7 MCP. Activate when the user mentions "ctx7" or "context7",…

context712d64k
@upstash@upstashInstall Skill
docs-components

docs-components

Comprehensive MDX component patterns (Note, Pitfall, DeepDive, Recipes, etc.) for all documentation types. Authoritative source…

@reactjs@reactjsInstall Skill
codebase-wiki

codebase-wiki

How to work in a Codebase Wiki project (the `codebase-wiki` starter pack): an agent-authored, source-grounded wiki of the…

@inkeep@inkeepInstall Skill

Questions about rollup.

Which coding agents can use rollup?
rollup installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.