skills/decomposition-reconstruction/SKILL.md
Breaks complex systems into atomic components, maps their relationships, and reconstructs them in optimized configurations to identify bottlenecks, critical failure points, and redesign opportunities. 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, or when optimization requires understanding how parts interact.
npx skillsauth add lyndonkl/claude decomposition-reconstructionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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 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 and resources/template.md for structured process.
Step 3: Analyze component properties and interactions
For each component, identify key properties (cost, time, complexity, reliability, etc.). Map interactions (which components depend on which). Identify critical paths, bottlenecks, or vulnerable points. For complex analysis → See resources/methodology.md for dependency mapping and critical path techniques.
Step 4: Reconstruct for insight or optimization
Based on goal, either: (a) Identify critical components (bottleneck, single point of failure, highest cost driver), (b) Redesign configuration (reorder, parallelize, eliminate, combine components), or (c) Simplify (remove unnecessary components). See Reconstruction Patterns for common approaches.
Step 5: Validate and deliver recommendations
Self-assess using resources/evaluators/rubric_decomposition_reconstruction.json (minimum score ≥ 3.5). Present decomposition-reconstruction.md with clear component breakdown, analysis findings (bottlenecks, dependencies), and actionable recommendations with expected impact.
To define the system:
To clarify the goal:
To understand constraints:
Choose based on system type:
When: Business processes, software features, workflows Approach: Break down by function or task Example: E-commerce checkout → Browse products | Add to cart | Enter shipping | Payment | Confirmation
When: Architecture, organizations, physical systems Approach: Break down by component or module Example: Web app → Frontend (React) | API (Node.js) | Database (PostgreSQL) | Cache (Redis)
When: Pipelines, ETL processes, information systems Approach: Break down by data transformations Example: Analytics pipeline → Ingest raw events | Clean & validate | Aggregate metrics | Store in warehouse | Visualize in dashboard
When: Processes with sequential stages, timelines, user journeys Approach: Break down by time or sequence Example: Customer onboarding → Day 1: Signup | Day 2-7: Tutorial | Day 8-30: First value moment | Day 31+: Retention
When: Budget analysis, resource allocation, optimization Approach: Break down by cost center or resource type Example: AWS bill → Compute ($5K) | Storage ($2K) | Data transfer ($1K) | Other ($500)
Depth guideline: Stop decomposing when further breakdown doesn't reveal useful insights or actionable opportunities.
After decomposition, map relationships:
1. Dependency (A requires B):
2. Data flow (A sends data to B):
3. Control flow (A triggers B):
4. Temporal ordering (A before B in time):
5. Resource sharing (A and B compete for C):
Goal: Find what limits system throughput or speed Approach: Measure component properties (time, cost, capacity), identify critical path or highest value Example: DB query takes 80% of request time → Optimize DB query first
Goal: Reduce complexity by removing unnecessary parts Approach: Question necessity of each component, eliminate redundant or low-value parts Example: Workflow has 5 approval steps, 3 are redundant → Remove 3 steps
Goal: Improve efficiency by changing sequence Approach: Identify dependencies, move independent tasks earlier or parallel Example: Run tests parallel to build instead of sequential → Reduce CI time
Goal: Increase throughput by doing work concurrently Approach: Find independent components, execute simultaneously Example: Fetch user data and product data in parallel instead of serial → Cut latency in half
Goal: Replace weak component with better alternative Approach: Identify underperforming component, find replacement Example: Replace synchronous API call with async message queue → Improve reliability
Goal: Reduce overhead by combining similar components Approach: Find redundant or overlapping components, merge them Example: Consolidate 3 microservices doing similar work into 1 → Reduce operational overhead
Goal: Improve maintainability by separating concerns Approach: Identify tightly coupled components, separate with clear interfaces Example: Extract auth logic from monolith into separate service → Enable independent scaling
Skip decomposition-reconstruction if:
Use instead:
Software Architecture:
Business Processes:
Problem Solving:
Cost Optimization:
User Experience:
System Reliability:
Process:
Decomposition strategies:
Reconstruction patterns:
Resources:
Deliverable: decomposition-reconstruction.md with component breakdown, analysis, and recommendations
testing
Cluster a conference's event records into a small set of coarse themes with finer sub-clusters, an explicit outlier bucket, and soft (multi-membership) affinities — using the hybrid embed-then-label pipeline (embed abstracts, reduce, density-cluster, then LLM-label the clusters) when embedding libraries are available, and an LLM-reasoned hierarchical fallback when they are not. Embeddings do the grouping; the LLM only names the groups. Conference-agnostic. Use when turning structured event records into a navigable theme map for preference elicitation and scheduling, when you need 6-8 reasonable themes rather than 20 muddy ones, or when overlapping talks must belong to more than one theme. Trigger keywords - theme clustering, cluster talks, embed then label, soft membership, outlier talks, conference themes, topic map.
development
Build a personal conference schedule as a constraint-optimization problem — hard constraints (no time overlap, room-to-room travel time, capacity/registration, the attendee's own must-attends and blackouts) plus a user-owned weighted objective trading interest against breadth, pacing (maximize contiguous free time), and serendipity. Surfaces unbreakable conflicts (two high-value overlapping talks the model cannot rank) as decisions for the human rather than silently picking, and reports what each choice traded away. Conference-agnostic. Use to turn a preference profile plus a theme map into a day-by-day plan, to resolve overlapping sessions, or to balance a packed vs paced schedule. Trigger keywords - schedule optimization, conference schedule, constraint optimization, overlapping talks, contiguous free time, conflict surfacing, packed vs paced.
development
Parse a heterogeneous conference program (markdown, HTML, PDF-derived text, or JSON) into normalized event records with per-field confidence scores and independent classification axes (topic, depth, format, prerequisites, recorded, capacity). Detects the program's format before extracting, treats every inferred field as uncertain (present vs inferred vs missing), and flags thin or missing abstracts so downstream enrichment can target them. Conference-agnostic. Use when ingesting a conference or event schedule into a structured store, normalizing a talk/session list, or extracting per-session metadata with calibrated confidence. Trigger keywords - program ingestion, parse schedule, session extraction, event records, conference program, talk metadata, per-field confidence.
development
Build a personalized preference profile from a small number of well-chosen, cluster-grounded questions instead of a long survey. Represents the person's interests as an uncertainty region over the theme map, picks the single highest-information-gain choice-based question (contrasting real talks from different clusters), balances exploiting known interests against exploring uncertain ones, deliberately injects outlier probes to fight selection bias, and stops as soon as the schedule would be stable. Also elicits the user-owned objective weights and hard constraints. Interactive — runs where it can actually ask the person. Conference-agnostic. Use to turn a theme map into a preference profile, to decide what to ask a conference attendee, or to elicit scheduling priorities. Trigger keywords - preference elicitation, ask few questions, information gain, choice-based questions, selection bias probe, objective weights, attendee preferences.