agentleFS
khuynh22khuynh22/agent-dev-team/skills/work-breakdown/SKILL.md

work-breakdown

Skill9 starsChanged 2 months agoMITView on GitHub

Splits a spec into an ordered list of tasks, each with a single verifiable outcome, an assigned tier, and a delegation brief. Use when a spec exists but there is no plan, when work must be divided across agents or people, or when a task is too large to verify in one step. Produces a plan file, not code.

4 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

5 rules. 0 are common, 4 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 3 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If there is no spec, use spec-writing first.

    line 16
  2. Distinctive:

    Prefer an order where each step leaves the system working.

    line 72
  3. Distinctive:

    Every task has a definition of done that is a runnable command.

    line 95
  4. Distinctive:

    Every task is assigned a tier, and the assignment clears that tier's ceiling.

    line 96
  5. Distinctive:

    No two parallel tasks edit the same file.

    line 99

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

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

Work Breakdown

A plan is right when each task has one outcome you can check with one command, and the order puts the riskiest thing first.

If there is no spec, use spec-writing first. Planning against unwritten requirements produces a plan that changes every day.

Process

  1. Read the repository before planning. Existing patterns constrain the plan more than preferences do. Note the conventions you found, with paths, and plan inside them or state the deliberate deviation.
  2. Cut along seams that already exist. A task spanning three modules is either three tasks or one badly-drawn boundary. Prefer boundaries the code already has.
  3. Order by risk, not by ease. The task that could invalidate the rest of the plan goes first. If an unknown could do that, task one is a spike whose output is an answer, not code you keep.
  4. Size to one verifiable outcome. A task is right-sized when its definition of done is a single command whose output you can read. Three commands means three tasks.
  5. Assign the lowest tier that clears the ceiling (references/escalation-ladder.md). Over-assignment hides a vague brief.
  6. Write a brief per task. A task without one comes back wrong, and that is the planner's defect.
  7. State dependencies explicitly. Tasks with no dependency between them can run in parallel, but two tasks that edit the same file are one task.

Task format

- [ ] **<id> · <title>** — `<agent>`
  - Goal: <one sentence in observable behavior>
  - Files in scope: <explicit paths>
  - Pattern to follow: <path:line>
  - Definition of done: `<the single command that must pass>`
  - Out of scope: <what to leave alone>
  - Stop condition: <what triggers an escalation>
  - Depends on: <ids, or none>

Sizing heuristics

SymptomFix
The definition of done needs three commandsSplit into three tasks
The task title contains "and"Split at the "and"
You cannot name the files in scopeYou do not understand it yet. Investigate first, as its own task.
The task touches more than one moduleEither split, or the boundary is wrong
Estimating it feels impossibleIt contains an unknown. Make removing that unknown task one.

Ordering

  • Riskiest first. The purpose of order is to find out early that the plan is wrong.
  • A task that unblocks several others outranks a task that unblocks none.
  • Group tasks that touch the same file so they do not run in parallel.
  • Prefer an order where each step leaves the system working. A plan with a broken middle cannot be paused, and plans always get paused.

Output

## Plan: <feature>

### Sequence rationale
<which task removes the most risk, and why this order>

### Parallelisable
<which ids can run at once, and which must not share files>

### Tasks
<the task list>

### Not in this plan
<what was deliberately left out>

Verification

  • Every task has a definition of done that is a runnable command.
  • Every task is assigned a tier, and the assignment clears that tier's ceiling.
  • The dependency graph has no cycle.
  • The first task is the riskiest, or the rationale says why not.
  • No two parallel tasks edit the same file.

Red flags

ThoughtReality
"I'll do the easy tasks first for momentum"You will discover the plan is wrong at the end instead of the start.
"This task is obvious, no brief needed"Obvious to you. The brief is for whoever picks it up.
"I'll assign it senior to be safe"Over-assignment is a symptom of a vague brief, not caution.
"The order does not matter much"Order is the plan. If it did not matter you would not need one.
"I'll write this task myself, it is small"Then it is a T0 task with a brief. Your output is the plan.
"We can plan the rest as we go"Plan to the next verifiable milestone at least. Beyond that, say so explicitly.

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.

Reviews can't be read right now.

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.