Parallel Investigation
Scannednpx machina-cli add skill rohitg00/skillkit/parallel-investigation --openclawParallel Investigation
You are coordinating parallel investigation threads to explore multiple hypotheses or approaches simultaneously. This is effective for complex problems where the root cause is unclear.
Core Principle
When uncertain, explore multiple paths in parallel. Converge when evidence points to an answer.
Parallel investigation reduces time-to-solution for complex problems by eliminating serial bottlenecks.
When to Use Parallel Investigation
Use this methodology when:
- Root cause is unknown with multiple plausible theories
- Problem is complex with many interacting components
- Time pressure requires faster resolution
- Multiple team members are available
- Initial investigation hasn't narrowed down the cause
Don't use when:
- Problem is straightforward
- Only one likely cause
- Resources are constrained
Investigation Structure
Phase 1: Problem Decomposition
Break the problem into independent investigation threads:
Problem: API responses are slow
Investigation Threads:
├── Thread A: Database performance
│ └── Check slow queries, indexes, connection pool
├── Thread B: Application code
│ └── Profile endpoint handlers, check for N+1
├── Thread C: Infrastructure
│ └── Check CPU, memory, network latency
└── Thread D: External services
└── Check third-party API response times
Each thread should be:
- Independent (can be investigated without blocking others)
- Focused (clear scope and success criteria)
- Time-boxed (defined duration before sync)
Phase 2: Thread Assignment
Assign threads with clear ownership:
## Thread A: Database Performance
**Investigator:** [Name/Agent A]
**Duration:** 30 minutes
**Scope:**
- Query execution times
- Index utilization
- Connection pool metrics
**Report Format:** Summary + evidence
## Thread B: Application Code
**Investigator:** [Name/Agent B]
...
Phase 3: Parallel Execution
Each thread follows this pattern:
1. Gather evidence specific to thread scope
2. Document findings as you go
3. Identify if thread is leading to answer or dead end
4. Prepare summary for sync point
Thread Log Template:
## Thread: [Name]
**Start:** [Time]
### Findings
- [Timestamp] [Finding 1]
- [Timestamp] [Finding 2]
### Evidence
- [Screenshot/Log/Metric]
### Preliminary Conclusion
[What this thread suggests about the problem]
Phase 4: Sync Points
Regular convergence to share findings:
Sync Point Agenda:
1. Thread A report (2 min)
2. Thread B report (2 min)
3. Thread C report (2 min)
4. Thread D report (2 min)
5. Discussion & correlation (5 min)
6. Decision: Continue, pivot, or converge (3 min)
Sync Point Decisions:
- Continue: Threads are progressing, continue parallel
- Pivot: Redirect threads based on new evidence
- Converge: One thread found the answer, others join
Phase 5: Convergence
When a thread identifies the likely cause:
- Validate - Other threads verify the finding
- Deep dive - Focused investigation on identified cause
- Document - Compile findings from all threads
Coordination Patterns
Hub and Spoke
One coordinator, multiple investigators:
┌─────────┐
│ Hub │
│(Coord) │
└────┬────┘
│
┌────────┼────────┐
▼ ▼ ▼
┌───────┐┌───────┐┌───────┐
│Thread ││Thread ││Thread │
│ A ││ B ││ C │
└───────┘└───────┘└───────┘
Coordinator responsibilities:
- Assigns threads
- Tracks progress
- Calls sync points
- Makes convergence decisions
Peer Network
Equal investigators sharing findings:
┌───────┐ ┌───────┐
│Thread │◄───▶│Thread │
│ A │ │ B │
└───┬───┘ └───┬───┘
│ │
▼ ▼
◄─────────────►
Shared
Channel
Each investigator:
- Posts findings to shared channel
- Reviews others' findings
- Volunteers to converge when pattern emerges
Communication Protocol
During Investigation
[Thread A] [Status] Starting query analysis
[Thread B] [Finding] No N+1 patterns in user endpoint
[Thread A] [Finding] Slow query: SELECT * FROM orders WHERE...
[Thread C] [Dead End] CPU and memory within normal
[Thread A] [Hot Lead] Missing index on orders.user_id
At Sync Point
## Thread A Summary
**Status:** Hot Lead
**Key Finding:** Missing index on orders.user_id
**Evidence:** Query taking 3.2s, explain shows table scan
**Recommendation:** This is likely the cause, suggest converge
Decision Framework
At each sync point:
| Thread Status | Action |
|---|---|
| All exploring | Continue parallel |
| One hot lead | Validate lead, others support |
| Multiple leads | Prioritize by evidence strength |
| All dead ends | Reframe problem, new threads |
| Confirmed cause | Converge, begin fix |
Time Management
Hour 1:
├── 0:00 - Problem decomposition
├── 0:10 - Thread assignment
├── 0:15 - Parallel investigation begins
├── 0:45 - Sync point #1
├── 0:50 - Continue/pivot/converge decision
Hour 2 (if needed):
├── 1:00 - Continue investigation
├── 1:30 - Sync point #2
├── 1:35 - Final convergence
Documentation
Final Report Structure
# Investigation: [Problem]
## Summary
[Brief description and resolution]
## Threads Explored
### Thread A: [Area]
- Investigator: [Name]
- Findings: [Summary]
- Outcome: [Lead/Dead End/Root Cause]
### Thread B: [Area]
...
## Root Cause
[Detailed explanation of what was found]
## Evidence
- [Evidence 1]
- [Evidence 2]
## Resolution
[What was done to fix]
## Lessons Learned
- [Learning 1]
- [Learning 2]
Integration with Other Skills
- debugging/root-cause-analysis: Each thread follows RCA principles
- debugging/hypothesis-testing: Threads test specific hypotheses
- handoff-protocols: When passing thread to another person
Source
git clone https://github.com/rohitg00/skillkit/blob/main/packages/core/src/methodology/packs/collaboration/parallel-investigation/SKILL.mdView on GitHub Overview
Parallel Investigation coordinates multiple investigation threads to explore hypotheses in parallel, speeding root-cause analysis for complex problems. It avoids serial bottlenecks by running independent threads and converging when evidence points to an answer.
How This Skill Works
It breaks the problem into independent threads with clear scopes, assigns ownership, and runs them in parallel. Regular sync points collect findings to decide whether to continue, pivot, or converge on the likely cause.
When to Use It
- Root cause is unknown with multiple plausible theories
- Problem is complex with many interacting components
- Time pressure requires faster resolution
- Multiple team members are available
- Initial investigation hasn't narrowed down the cause
Quick Start
- Step 1: Decompose the problem into independent investigation threads with clear scopes
- Step 2: Assign threads with ownership, duration, and explicit success criteria
- Step 3: Execute in parallel and conduct regular sync points to converge evidence
Best Practices
- Break the problem into independent threads with clear scope
- Time-box each thread and assign a dedicated investigator
- Document findings continuously within each thread
- Schedule regular sync points to correlate evidence
- Converge on the likely cause and deep-dive if needed
Example Use Cases
- Example 1: Problem API responses are slow with threads for Database performance, Application code, Infrastructure, and External services
- Example 2: Microservice outage triage across components using parallel threads and hub-and-spoke coordination
- Example 3: E-commerce checkout latency investigated across database, service layers, and payment gateway
- Example 4: Data pipeline backlog analyzed with parallel threads for DB, ETL, and message broker throughput
- Example 5: Cloud migration bottlenecks across compute, storage, and networking layers