agentleFS
awjackson2awjackson2/phase-skills/phase-decompose/SKILL.md

phase-decompose

Skill0 starsChanged 3 months agoMITView on GitHub

Use to turn a large goal into a well-chunked umbrella roadmap before any phase work starts. Trigger when the user hands over a big feature or project and says "break this down", "decompose this", "chunk this into phases", "plan out this whole thing", "make a roadmap", or when phase-loop needs an umbrella to drive. Produces the MAJOR.0.0 umbrella plan — the ordered roadmap of Minors and Patches — applying a quality bar (tiny independently-testable steps, dependency ordering, risk tags, right-sizing) and leaving numbering room so future work can append near its theme. Hands off to phase-loop (multi-phase) or phase-tracker (single Minor).

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 5 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Vertical over horizontal where possible: Prefer slices that deliver end-to-end value ("user can log in") over horizontal layers ("all the …

    line 21
  2. Very specific:

    Recap first: Run phase-recap (ambient) so existing numbering, shipped work, and reserved slots are known.

    line 28
  3. Very specific:

    Keep the checklist as the advisory mirror phase-loop expects — progress is read from phase_index.md, not the boxes.

    line 42
  4. Very specific:

    Do not write any plan/log for the concrete phases — that's phase-tracker's job, one phase at a time, at implementation time.

    line 54
  5. Distinctive:

    Do not implement anything.

    line 55
  6. Distinctive:

    Do not pack the roadmap to the last number.

    line 56
  7. Distinctive:

    Do not invent scope or "while we're at it" Minors the user didn't ask for — surface them as candidates, not commitments.

    line 57
  8. Distinctive:

    Do not renumber shipped phases when re-decomposing.

    line 58

≈ “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

Phase Decompose

This skill produces the umbrella plan (MAJOR.0.0) that phase-loop consumes: an ordered roadmap that chunks a large goal into the smallest sensible Minors and Patches. Chunk quality is the single biggest determinant of whether a loop succeeds, so this skill exists to apply a real standard to the breakdown rather than improvising it inline.

Model tip (optional). This skill is planning-only — a good candidate for a stronger-reasoning model (e.g. /model opus) for the whole session, since chunk quality is what determines whether the loop it feeds succeeds.

It is not a coding phase. The umbrella it writes is a planning artifact (MAJOR.0.0), created on a docs/<major>-umbrella branch and merged to the default branch before looping — the same handling phase-loop describes. Terminology follows TERMINOLOGY.md.

The quality bar

A good roadmap satisfies all of these:

  • Tiny and independently testable. Each Minor is one shippable feature that can be implemented and verified on its own. If a Minor can't be tested without another unshipped Minor, it's mis-cut.
  • Dependency-ordered. Sequence so every phase builds only on already-shipped phases. Note each Minor's dependencies explicitly; if two are mutually dependent, they're really one Minor (or the seam is wrong).
  • Vertical over horizontal where possible. Prefer slices that deliver end-to-end value ("user can log in") over horizontal layers ("all the database models") — vertical slices are testable and shippable; horizontal ones aren't until the last one lands. Use judgment; some foundational work is genuinely horizontal.
  • Right-sized. A Minor that needs many unrelated changes → split. A "Minor" that's a one-line tweak → it's a Patch, or folds into a neighbor.
  • Risk-tagged. Mark phases that are uncertain, spiky, or exploratory. Sequence high-risk/high-uncertainty work early to de-risk the effort, or flag it for a checkpoint in phase-loop.
  • Appendable. Leave numbering room. Do not pack the roadmap so densely that related future work has nowhere to land — the whole system depends on later work being able to append near its theme (see TERMINOLOGY.md → Core principle). Reserve Minor slots for foreseeable follow-on themes rather than consuming every number now.

Procedure

  1. Recap first. Run phase-recap (ambient) so existing numbering, shipped work, and reserved slots are known. Decomposition that ignores current state produces colliding numbers.
  2. Capture the goal. End-goal, hard constraints, and an explicit definition of done for the whole effort. Ask if any are unclear — do not invent scope.
  3. Pick the Major. The next free Major for a new milestone, or — honoring appendability — an existing Major's theme if the work is a continuation. State which and why.
  4. Draft the roadmap. List the Minors in dependency order, each with: a one-line goal, its dependencies, a risk tag, and any obvious Patches under it. First version of each Minor is MAJOR.MINOR.0.
  5. Pressure-test the chunking against the quality bar above. For each Minor ask: independently shippable? independently testable? right-sized? correctly ordered? Re-cut anything that fails. This is the step that earns the skill its keep — don't skip it.
  6. Write the umbrella at development/phase_log/phase_<MAJOR>.0.0_plan.md (using the plan template) with the roadmap checklist. It is a phase record like any other, so it keeps the template's front matter and ## OKF relationships footer — an umbrella needs at least one intended impact relationship just as a normal plan does:

    ## Roadmap checklist
    - [ ] <MAJOR>.1.0 — <feature>            deps: none        risk: low
    - [ ] <MAJOR>.1.1 — <patch on .1>        deps: .1.0        risk: low
    - [ ] <MAJOR>.2.0 — <feature>            deps: .1.0        risk: med

    Keep the checklist as the advisory mirror phase-loop expects — progress is read from phase_index.md, not the boxes.

  7. Confirm with the user (🟦 Plan Confirmation on the umbrella) and confirm the Major number, the cadence, and the branch strategy. Merge the umbrella via its docs-lane PR.
  8. Hand off:
    • Multi-phase effort → phase-loop (it reads this umbrella and loops the cycles).
    • A single Minor → phase-tracker directly.

Re-decomposing mid-effort

If an in-flight effort's roadmap turns out wrong (a Minor too big, a missing dependency, a whole branch of work that's now unnecessary), use this skill to re-chunk the remaining roadmap: edit the umbrella's checklist (split/merge/reorder/abandon unstarted items only), narrate the change, and re-confirm. Never rewrite the numbers of phases that already shipped — append new Minors/Patches instead, per appendability.

What this skill should not do

  • Do not write any plan/log for the concrete phases — that's phase-tracker's job, one phase at a time, at implementation time. This skill only writes the umbrella.
  • Do not implement anything. Decomposition is planning.
  • Do not pack the roadmap to the last number; leave room to append.
  • Do not invent scope or "while we're at it" Minors the user didn't ask for — surface them as candidates, not commitments.
  • Do not renumber shipped phases when re-decomposing; only unstarted items may move.

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.