plan

Decompose accepted proposals into assignable tasks with dependencies and done-whens.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/mattschwartz/systemos --skill plan-mattschwartz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: plan
Source: https://github.com/mattschwartz/systemos/tree/main/.claude/skills/plan
Command: npx skills add https://github.com/mattschwartz/systemos --skill plan-mattschwartz

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Converts an accepted design or proposal into a concrete set of assignable work items so engineers and agents can start work without guessing about scope, data shapes, or dependencies.

Core Features & Use Cases

  • Decompose accepted proposals or conversation artifacts into discrete tasks with owners, complexities, and testable done-whens.
  • Map data shapes and component boundaries, surface open questions, and create blocking design tasks where architecture gaps exist.
  • Emit a JSON plan file written to /tmp and submit tasks to the task tool, and update proposal frontmatter to planned when applicable.

Quick Start

Ask the plan skill to decompose the accepted proposal file path into a JSON array of assignable tasks with done-whens, assignees, and dependencies.

Frequently Asked Questions about plan

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decompose an accepted design proposal into assignable engineering tasks?

Task decomposition breaks accepted proposals into discrete work items by mapping component boundaries, defining acceptance criteria, and identifying dependencies. You provide the proposal file path, and the system outputs a structured JSON array of tasks with assignees, complexities, and testable done-whens.

What is the best way to generate a project plan with clear task dependencies and done-whens?

Generating a project plan with clear dependencies involves analyzing accepted design artifacts to surface open questions and blocking design tasks. The process maps data shapes and component boundaries to produce concrete deliverables, writing the resulting task array to a JSON file for submission.

How do I create testable acceptance criteria for project planning from a conversation artifact?

Creating testable acceptance criteria from conversation artifacts requires extracting component boundaries and data shapes defined during the design phase. The decomposition process translates these design decisions into discrete tasks with clear done-whens, ensuring engineers and agents understand exact scope without guessing.

Can I automate task management by submitting planned work items directly from a proposal file?

Automating task management from proposal files is supported by writing a JSON array of tasks to a temporary directory and submitting them via the task tool. This automation updates proposal frontmatter to a planned state and assigns work items with complexities, related items, and blocking dependencies.

Does this task decomposition approach work for surfacing architecture gaps and open questions?

Task decomposition actively surfaces architecture gaps by mapping data shapes and creating blocking design tasks where dependencies exist. The generated output includes open questions and blocked-on fields within the JSON array, ensuring unresolved architectural constraints are tracked before engineering work begins.

What format does the task plan output use for assignees and related items?

The task plan output uses a JSON array format containing structured fields for alias, assignee, complexity, overview, related items, and acceptance criteria. This file is written to a temporary directory path and submitted via the task tool to integrate with existing project workflows.