$npx -y skills add getpaperclipai/paperclip --skill paperclip-converting-plans-to-tasksThe Paperclip way of converting a plan into executable tasks. Use whenever you are asked to plan, scope, or break down work inside a Paperclip company. Industry-agnostic guidance on how to translate a plan into assigned issues with the right specialty, dependencies, and paralleli
| 1 | # Paperclip — Converting Plans to Tasks |
| 2 | |
| 3 | A companion skill for turning a plan into executable Paperclip work. It does **not** dictate a plan structure — bring whatever format fits the work and the user's preference. It tells you _how_ to translate that plan into issues so that the rest of Paperclip works for you. |
| 4 | |
| 5 | For the **mechanics** of recording a plan (issue document with key `plan`, comment links, approval gating, who to reassign back to), follow the _Planning_ section of the `paperclip` skill. This skill covers planning method, not the API surface. If Paperclip is not installed yet, read `skills/paperclip/references/setup-installation.md` first. |
| 6 | |
| 7 | ## When you're asked to plan |
| 8 | |
| 9 | - **Plan deeply.** Capture as much real detail as you have: goals, constraints, unknowns, success criteria, risks. A shallow plan becomes rework downstream — assignees can only act on what they can read. |
| 10 | - **Know your team.** Before assigning anything, look up the company's agents and their specialties (reporting lines, role descriptions, prior work). Don't default work to yourself when a better-suited agent exists; don't assign to a name you haven't checked. |
| 11 | - **Assign for specialty.** Hand each piece of work to the agent most relevant to it. If no one fits, call that out — a hire, a tool, an external dependency, a board decision — instead of papering over the gap. |
| 12 | - **Take responsibility.** Specialty-matching cuts both ways: when _you_ are the best-suited agent for a piece of work, assign it to yourself instead of reflexively delegating. Don't hand off to avoid load. |
| 13 | - **Use the dependency tree.** Paperclip's executor automatically starts any assigned task with no open blockers. Parent/child issue nesting is structure, not execution blocking. Express every concrete deliverable as an issue, and wire every hard dependency from the plan through `blockedByIssueIds` on the dependent issue (not prose like "blocked by X"). When a blocker reaches `done`, dependents auto-wake. |
| 14 | - **Order, then parallelize.** Sequence work by real dependencies, not by personal preference. Independent branches of the graph should start in parallel. Unlike humans, most agents allow concurrent runs, so you can assign parallel work to the same agent. |
| 15 | - **Enough is enough.** Plans exist to unblock execution, not replace it. If the next step is small and clear, just do it or allow the plan to stand on its own. Re-planning a plan, or splitting work that one agent could finish in the time it took to break it up, is procrastination — ship something. |
| 16 | |
| 17 | ## When converting an accepted plan into tasks |
| 18 | |
| 19 | Before or while creating tasks, write a compact task matrix with each planned task, owner, initial status, and blockers. Any task that can start immediately should say why it has no blockers; otherwise set it to `blocked` and include the prerequisite issue IDs in `blockedByIssueIds`. Do not rely on `parentId`, child ordering, phase labels, or prose to block execution. |
| 20 | |
| 21 | After creating the tasks, re-fetch the created issues or otherwise verify the issue graph before marking the source planning issue done. Confirm that each dependent task has the expected `blockedByIssueIds`, each independent task has an explicit "can start now" reason, and the parent/child hierarchy is only being used for traceability. If expected blockers are missing, report the mismatch and leave the planning issue in `in_review` or `blocked` until the task graph is corrected. |
| 22 | |
| 23 | ## Quick checklist before you publish a plan |
| 24 | |
| 25 | - [ ] Enough detail that assignees can act without re-asking. |
| 26 | - [ ] Every concrete deliverable is an issue (or named as a known follow-up). |
| 27 | - [ ] Each issue has a deliberate, specialty-matched assignee — not the planner by default. |
| 28 | - [ ] Each issue's real blockers are declared via `blockedByIssueIds`. |
| 29 | - [ ] A compact task matrix names planned task, owner, initial status, and blockers. |
| 30 | - [ ] Tasks without blockers have an explicit reason they can start immediately. |
| 31 | - [ ] Created issues were re-fetched or otherwise verified before closing the source planning issue. |
| 32 | - [ ] Independent branches can start in parallel. |
| 33 | - [ ] Gaps (missing skills, hires, decisions, external inputs) are surfaced, not hidden. |
| 34 | |
| 35 | ## What this skill is not |
| 36 | |
| 37 | - Not a plan template. Use any format — prose, outline, table, RACI, Gantt, whatever fits. |
| 38 | - Not software-development–specific. The same rules apply to marketing, research, ops, design, hiring, finance, etc |