Use when dealing with complex systems that need simplification, identifying bottlenecks or critical failure points, redesigning architecture or processes for better performance, breaking down problems that feel overwhelming, analyzing dependencies to understand ripple effects, user mentions "this is too complex", "where's the bottleneck", "how do we redesign this", "what are the key components", or when optimization requires understanding how parts interact.
View on GitHublyndonkl/claude
thinking-frameworks-skills
January 24, 2026
Select agents to install to:
npx add-skill https://github.com/lyndonkl/claude/blob/main/skills/decomposition-reconstruction/SKILL.md -a claude-code --skill decomposition-reconstructionInstallation paths:
.claude/skills/decomposition-reconstruction/# Decomposition & Reconstruction ## What Is It? Decomposition-reconstruction is a two-phase analytical technique: first, break a complex system into atomic components and understand their relationships; second, either recombine components in better configurations or identify critical elements that drive system behavior. **Quick example:** **System:** Slow web application (3-second page load) **Decomposition:** - Frontend: 1.2s (JS bundle: 0.8s, CSS: 0.2s, HTML render: 0.2s) - Network: 0.5s (API calls: 3 requests × 150ms each, parallel) - Backend: 1.3s (Database query: 1.0s, business logic: 0.2s, serialization: 0.1s) **Reconstruction (bottleneck identification):** Critical path: Database query (1.0s) + JS bundle (0.8s) = 1.8s of the 3.0s total Optimization target: Optimize DB query indexing and code-split JS bundle → Expected 1.5s page load ## Workflow Copy this checklist and track your progress: ``` Decomposition & Reconstruction Progress: - [ ] Step 1: Define the system and goal - [ ] Step 2: Decompose into components and relationships - [ ] Step 3: Analyze component properties and interactions - [ ] Step 4: Reconstruct for insight or optimization - [ ] Step 5: Validate and deliver recommendations ``` **Step 1: Define the system and goal** Ask user to describe the system (what are we analyzing), current problem or goal (what needs improvement, understanding, or redesign), boundaries (what's in scope vs out of scope), and success criteria (what would "better" look like). Clear boundaries prevent endless decomposition. See [Scoping Questions](#scoping-questions) for clarification prompts. **Step 2: Decompose into components and relationships** Break system into atomic parts that can't be meaningfully subdivided further. Identify relationships (dependencies, data flow, control flow, temporal ordering). Choose decomposition strategy based on system type. See [Decomposition Strategies](#decomposition-strategies) and [resources/template.md](resources/templat