decompose
Skill6 starsChanged 14 days agoApache-2.0View on GitHub
Break a goal into subgoals, constraints, and acceptance criteria. Use when planning complex work, creating work breakdown structures, or defining requirements.
27 other projects use a version of this.
Adopted by
Most recently taken up by
- chippingway/chipping-orchestratortheir own version, first seen Nov 5, 2026
- TserenTserenov/FMT-exocortex-templatetheir own version, first seen Nov 2, 2026
- iwesys/IWEtheir own version, first seen Nov 1, 2026
- stoa-platform/stoatheir own version, first seen Nov 1, 2026
- mojopoly/three-loopstheir own version, first seen Oct 20, 2026
- fslzrr/skillstheir own version, first seen Oct 20, 2026
Used with
Projects with it also use idea, review and 6 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
szweibelSkillidea
Generate a wide field of options when the user is brainstorming, exploring, expanding, or pressure-testing — not recommending or implementing
Also in 3 projects that use this
SentrySkillreview
Fixture review skill.
Also in 9 projects that use this
MicrosoftSkilldiagnose
Use to systematically diagnose why scenarios fail — identifies root causes by analyzing agent traces, codebase, and behavioral patterns
Also in 4 projects that use this
GitHubSkillprd
Generate high-quality Product Requirements Documents (PRDs) for software systems and AI-powered features. Includes executive summaries, user stories, technical specifications, and risk analysis.
Also in 3 projects that use this
Hugging FaceSkillimplement
Make tests pass. Invoke after /write-tests produces failing tests.
Also in 6 projects that use this
MicrosoftSkillinit
Also in 3 projects that use this
Other versions27 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 27
- anyproto/anytype-swift★ 525same name
- TserenTserenov/FMT-exocortex-template★ 63same name
- drafthq/draft★ 40same name
- chippingway/chipping-orchestrator★ 18same name
- matt-k-wong/mkw-DAG-architect★ 15same name
- vulca-org/vulca-visual-control-sdk★ 15same name
- stoa-platform/stoa★ 9same name
- flpbalada/fb-skills★ 8same name
- tercel/spec-forge★ 8same name
- zcaceres/skills★ 7same name
17 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository42 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- attributeSkill
- auditSkill
- gap-analysis-workflowSkill
- checkpointSkill
- classifySkill
- compareSkill
- constrainSkill
- critiqueSkill
- debug-workflowSkill
- delegateSkill
- detectSkill
- digital-twin-bootstrapSkill
- digital-twin-sync-workflowSkill
- discover-capabilitiesSkill
- discoverSkill
- executeSkill
- explainSkill
- generateSkill
- groundSkill
- inquireSkill
- integrateSkill
- invokeSkill
- measureSkill
- mutateSkill
- observeSkill
- persistSkill
- perspective-validationSkill
- planSkill
- predictSkill
- recallSkill
- receiveSkill
- retrieveSkill
- rollbackSkill
- searchSkill
- sendSkill
- simulateSkill
- stateSkill
- synchronizeSkill
- transformSkill
- transitionSkill
- verifySkill
The file
We split this skill into the rules it gives an agent
10 rules. 0 are common, 9 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 25 edited versions we read keep these.
9
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
- Very specific: line 60
Create dependency graph (dependencies, one edge per blocking pair)
- Distinctive: line 68
Validate completeness: Check coverage
- Distinctive: line 69
Do subproblems cover entire goal?
- Distinctive: line 75
Check against target granularity
- Distinctive: line 78
Stop when atomic enough
- Distinctive: line 376
Verification tools: Read (for requirement analysis)
- Distinctive: line 389
Ensure acceptance criteria are testable
- Distinctive: line 406
Never decompose without understanding goal
- Distinctive: line 407
Never leave gaps unidentified
- Distinctive: line 408
Never skip acceptance criteria
“Common” is measured: kept by at least 6 in 10 of the 25 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.
Files
Intent
Break down a complex goal into smaller, manageable subproblems with clear boundaries, dependencies, and acceptance criteria. Enable parallel work and incremental progress.
Success criteria:
- Goal fully decomposed (no gaps)
- Subproblems are independently verifiable
- Dependencies are explicit
- Acceptance criteria are testable
- Decomposition depth is appropriate
Compatible schemas:
schemas/output_schema.yaml
Inputs
| Parameter | Required | Type | Description |
problem | Yes | string | Problem to decompose |
max_depth | No | integer | Maximum decomposition depth |
strategy | No | string | Decomposition strategy |
Inputs not listed here are outside the capability's contract: a workflow step that binds them gets W604 (STANDARD v1.1 §5.5).
Procedure
- Understand the goal: Clarify what needs to be achieved
- Parse the problem statement
- Identify success criteria
- Note implicit requirements
- Determine scope boundaries
- Identify major components: Find natural divisions
- Functional areas
- Phases or stages
- User journeys
- Technical layers
- Create subproblems: Define each component
- Clear, specific objective
- Bounded scope
- Measurable outcome
- Independent when possible
- Define dependencies: Map relationships
- Which subproblems block others?
- Which can proceed in parallel?
- Are there shared resources?
- Create dependency graph (
dependencies, one edge per blocking pair)
- Add acceptance criteria: Specify done conditions
- Testable conditions
- Measurable outcomes
- Quality requirements
- Edge case handling
- Validate completeness: Check coverage
- Do subproblems cover entire goal?
- Any gaps or overlaps?
- Are boundaries clear?
- Is granularity consistent?
- Recurse if needed: Decompose large subproblems
- Check against target granularity
- Decompose subproblems that are too large
- Maintain consistent depth
- Stop when atomic enough
Output Contract
Return a structured object:
decomposition:
goal: string # Original goal
depth: integer # Levels of decomposition
total_subproblems: integer
granularity: epic | story | task
subproblems:
- id: string
name: string
description: string
parent: string | null # Parent subproblem ID
level: integer # Depth in tree
dependencies: array[string]
acceptance_criteria:
- criterion: string
testable: boolean
priority: required | optional
estimated_effort: string | null
parallelizable: boolean
structure: # Problem hierarchy
goal: string # Root of the tree
children:
- id: string
name: string
children: array # Nested subproblems
dependencies: # Subproblem dependencies (edges of the DAG)
- from: string # Subproblem that must finish first
to: string # Subproblem that depends on it
constraints:
- type: scope | time | resource | technical
description: string
affects: array[string] # Subproblem IDs
gaps:
- description: string
suggestion: string
overlaps:
- subproblems: array[string]
description: string
resolution: string
confidence: 0..1
evidence_anchors: ["source:ref"]
assumptions: []Field Definitions
| Field | Type | Description |
decomposition | object | Summary of decomposition |
subproblems | array<object> | Flat list of all subproblems |
structure | object | Problem hierarchy: the goal and its tree of subproblems |
dependencies | array<object> | Subproblem dependency edges (from must finish before to) |
constraints | array | Boundaries affecting subproblems |
gaps | array | Missing coverage identified |
overlaps | array | Redundant coverage identified |
confidence | number | 0.0-1.0 based on completeness |
evidence_anchors | array | References to requirements or sources the decomposition rests on |
assumptions | array | Assumptions that affect the decomposition |
Examples
Example 1: Feature Decomposition
Input:
problem: "Implement user authentication system"
strategy: "by user story"The work is scoped to the web application only, on a 4-week timeline.
Output:
decomposition:
goal: "Implement user authentication system"
depth: 2
total_subproblems: 8
granularity: story
subproblems:
- id: "SG-1"
name: "User Registration"
description: "Allow new users to create accounts"
parent: null
level: 1
dependencies: []
acceptance_criteria:
- criterion: "User can register with email and password"
testable: true
priority: required
- criterion: "Email verification sent on registration"
testable: true
priority: required
- criterion: "Duplicate email rejected with clear message"
testable: true
priority: required
estimated_effort: "3d"
parallelizable: true
- id: "SG-2"
name: "User Login"
description: "Allow existing users to authenticate"
parent: null
level: 1
dependencies: ["SG-1"]
acceptance_criteria:
- criterion: "User can login with email and password"
testable: true
priority: required
- criterion: "Failed login shows error without revealing which field wrong"
testable: true
priority: required
- criterion: "Session created on successful login"
testable: true
priority: required
estimated_effort: "2d"
parallelizable: false
- id: "SG-3"
name: "Password Reset"
description: "Allow users to recover account access"
parent: null
level: 1
dependencies: ["SG-1"]
acceptance_criteria:
- criterion: "User can request password reset via email"
testable: true
priority: required
- criterion: "Reset link expires after 24 hours"
testable: true
priority: required
- criterion: "New password must meet complexity requirements"
testable: true
priority: required
estimated_effort: "2d"
parallelizable: true
- id: "SG-4"
name: "Session Management"
description: "Manage user sessions securely"
parent: null
level: 1
dependencies: ["SG-2"]
acceptance_criteria:
- criterion: "Sessions expire after 24 hours of inactivity"
testable: true
priority: required
- criterion: "User can logout, invalidating session"
testable: true
priority: required
- criterion: "Multiple sessions per user supported"
testable: true
priority: optional
estimated_effort: "2d"
parallelizable: false
- id: "SG-5"
name: "OAuth2 Integration"
description: "Allow login via Google/GitHub"
parent: null
level: 1
dependencies: ["SG-2"]
acceptance_criteria:
- criterion: "User can login via Google OAuth"
testable: true
priority: required
- criterion: "User can login via GitHub OAuth"
testable: true
priority: required
- criterion: "OAuth user linked to existing account if email matches"
testable: true
priority: required
estimated_effort: "3d"
parallelizable: true
- id: "SG-6"
name: "Rate Limiting"
description: "Prevent brute force attacks"
parent: null
level: 1
dependencies: ["SG-2"]
acceptance_criteria:
- criterion: "Max 5 failed login attempts per 15 minutes per IP"
testable: true
priority: required
- criterion: "CAPTCHA shown after 3 failed attempts"
testable: true
priority: required
estimated_effort: "1d"
parallelizable: true
- id: "SG-7"
name: "Security Audit Logging"
description: "Log all auth events for audit"
parent: null
level: 1
dependencies: ["SG-2"]
acceptance_criteria:
- criterion: "All login attempts logged with timestamp and IP"
testable: true
priority: required
- criterion: "Password changes logged"
testable: true
priority: required
- criterion: "Logs retained for 90 days"
testable: true
priority: required
estimated_effort: "1d"
parallelizable: true
- id: "SG-8"
name: "Two-Factor Authentication"
description: "Add optional 2FA for users"
parent: null
level: 1
dependencies: ["SG-2", "SG-4"]
acceptance_criteria:
- criterion: "User can enable TOTP-based 2FA"
testable: true
priority: required
- criterion: "Recovery codes provided on 2FA setup"
testable: true
priority: required
- criterion: "2FA prompt on login when enabled"
testable: true
priority: required
estimated_effort: "3d"
parallelizable: false
structure:
goal: "Implement user authentication system"
children:
- id: "SG-1"
name: "User Registration"
children: []
- id: "SG-2"
name: "User Login"
children: []
- id: "SG-3"
name: "Password Reset"
children: []
- id: "SG-4"
name: "Session Management"
children: []
- id: "SG-5"
name: "OAuth2 Integration"
children: []
- id: "SG-6"
name: "Rate Limiting"
children: []
- id: "SG-7"
name: "Security Audit Logging"
children: []
- id: "SG-8"
name: "Two-Factor Authentication"
children: []
dependencies:
- from: "SG-1"
to: "SG-2"
- from: "SG-1"
to: "SG-3"
- from: "SG-2"
to: "SG-4"
- from: "SG-2"
to: "SG-5"
- from: "SG-2"
to: "SG-6"
- from: "SG-2"
to: "SG-7"
- from: "SG-2"
to: "SG-8"
- from: "SG-4"
to: "SG-8"
constraints:
- type: scope
description: "Web application only, no mobile"
affects: ["SG-1", "SG-2", "SG-5"]
- type: time
description: "4 week timeline"
affects: ["SG-8"]
gaps: []
overlaps: []
confidence: 0.9
evidence_anchors:
- "requirement:auth-system"
assumptions:
- "Email service available for verification"
- "OAuth provider apps already created"
- "No existing user database to migrate"Evidence pattern: Each subproblem has testable acceptance criteria, dependencies mapped.
Verification
- All aspects of goal covered
- No gaps in coverage
- No significant overlaps
- Acceptance criteria testable
- Dependencies form valid DAG
Verification tools: Read (for requirement analysis)
Safety Constraints
mutation: falserequires_checkpoint: falserequires_approval: falserisk: low
Capability-specific rules:
- Always verify completeness
- Flag gaps explicitly
- Resolve overlaps
- Ensure acceptance criteria are testable
- Note assumptions that affect decomposition
Composition Patterns
Commonly follows:
retrieve- Gather requirementsinspect- Understand existing systemexplain- Clarify goal before decomposing
Commonly precedes:
plan- Plan decomposed subproblems (REQUIRED by plan)prioritize- Order subproblemsschedule- Time-order subproblemsdelegate- Assign subproblems
Anti-patterns:
- Never decompose without understanding goal
- Never leave gaps unidentified
- Never skip acceptance criteria
Workflow references:
- See
reference/composition_patterns.mdfor plan requiring decompose
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
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.

