@dianel555/sequential-think
skillMulti-step reasoning engine for complex analysis and systematic problem solving. Use when: (1) Complex debugging scenarios with multiple layers, (2) Architectural analysis and system design, (3) Problems requiring hypothesis testing and validation, (4) Multi-component failure investigation, (5) Performance bottleneck identification. Triggers: "--think", "--think-hard", "--ultrathink", "analyze step by step", "break down this problem", "systematic analysis". IMPORTANT: Do NOT use for simple single-step tasks.
apm::install
apm install @dianel555/sequential-thinkapm::skill.md
---
name: sequential-think
description: |
Multi-step reasoning engine for complex analysis and systematic problem solving. Use when: (1) Complex debugging scenarios with multiple layers, (2) Architectural analysis and system design, (3) Problems requiring hypothesis testing and validation, (4) Multi-component failure investigation, (5) Performance bottleneck identification. Triggers: "--think", "--think-hard", "--ultrathink", "analyze step by step", "break down this problem", "systematic analysis". IMPORTANT: Do NOT use for simple single-step tasks.
---
# Sequential Think
Structured iterative thinking for complex problem-solving. Standalone CLI only (no MCP dependency).
## Execution Methods
Run `scripts/sequential_think_cli.py` via Bash:
```bash
# Process a thought
python scripts/sequential_think_cli.py think \
--thought "First, let me analyze the problem structure..." \
--thought-number 1 \
--total-thoughts 5
# Continue thinking chain
python scripts/sequential_think_cli.py think \
--thought "Based on step 1, I hypothesize that..." \
--thought-number 2 \
--total-thoughts 5
# Revise a previous thought
python scripts/sequential_think_cli.py think \
--thought "Reconsidering step 1, I realize..." \
--thought-number 3 \
--total-thoughts 5 \
--is-revision \
--revises-thought 1
# Branch into alternative path
python scripts/sequential_think_cli.py think \
--thought "Alternative approach: what if we..." \
--thought-number 4 \
--total-thoughts 6 \
--branch-from 2 \
--branch-id "alt-approach"
# Final thought (complete chain)
python scripts/sequential_think_cli.py think \
--thought "Conclusion: the solution is..." \
--thought-number 5 \
--total-thoughts 5 \
--no-next
# View thought history
python scripts/sequential_think_cli.py history [--format json|text]
# Clear thought history
python scripts/sequential_think_cli.py clear
```
## Core Principles
### Iterative Thinking Process
- Each tool call = one "thought" in the chain
- Build upon, question, or revise previous thoughts
- Express uncertainty when it exists
### Dynamic Thought Count
- Start with initial estimate of `totalThoughts`
- Adjust up/down as understanding evolves
- Add more thoughts even after reaching initial end
### Hypothesis-Driven Approach
1. Generate hypotheses as potential solutions emerge
2. Verify hypotheses based on chain-of-thought steps
3. Repeat until satisfied with solution
### Completion Criteria
- Only set `nextThoughtNeeded: false` when truly finished
- Must have satisfactory, verified answer
- Don't rush to conclusion
## When to Use
| Scenario | Use Sequential Think |
|----------|---------------------|
| Complex debugging (3+ layers) | ✅ Yes |
| Architectural analysis | ✅ Yes |
| Multi-component investigation | ✅ Yes |
| Performance bottleneck analysis | ✅ Yes |
| Root cause analysis | ✅ Yes |
| Simple explanation | ❌ No |
| Single-file change | ❌ No |
| Straightforward fix | ❌ No |
## Parameters
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thought` | string | Yes | Current thinking step content |
| `thoughtNumber` | int | Yes | Current position in sequence (1-based) |
| `totalThoughts` | int | Yes | Estimated total thoughts needed |
| `nextThoughtNeeded` | bool | No | Whether more thinking needed (default: true) |
| `isRevision` | bool | No | Whether this revises previous thinking |
| `revisesThought` | int | No | Which thought number is being reconsidered |
| `branchFromThought` | int | No | Branching point thought number |
| `branchId` | string | No | Identifier for current branch |
| `needsMoreThoughts` | bool | No | Signal that more thoughts needed beyond estimate |
## Output Format
```json
{
"thoughtNumber": 3,
"totalThoughts": 5,
"nextThoughtNeeded": true,
"branches": ["alt-approach"],
"thoughtHistoryLength": 3
}
```
## Workflow Pattern
### Phase 1: Problem Decomposition
```
Thought 1: Identify problem scope and constraints
Thought 2: Break into sub-problems
Thought 3: Identify dependencies between sub-problems
```
### Phase 2: Hypothesis Generation
```
Thought 4: Generate initial hypothesis
Thought 5: Identify evidence needed to verify
```
### Phase 3: Verification & Iteration
```
Thought 6: Test hypothesis against evidence
Thought 7: Revise if needed (isRevision=true)
Thought 8: Branch if alternative path promising
```
### Phase 4: Conclusion
```
Final Thought: Synthesize findings, provide answer (nextThoughtNeeded=false)
```
## Best Practices
1. **Start with estimate, adjust as needed**
- Initial `totalThoughts` is just a guess
- Increase if problem more complex than expected
- Decrease if solution found early
2. **Use revisions for course correction**
- Mark `isRevision=true` when reconsidering
- Reference `revisesThought` for clarity
3. **Branch for alternative approaches**
- Use `branchFromThought` to explore alternatives
- Give meaningful `branchId` names
4. **Filter irrelevant information**
- Each thought should advance toward solution
- Ignore tangential details
5. **Don't rush completion**
- Only `nextThoughtNeeded=false` when truly done
- Verify hypothesis before concluding
## Anti-Patterns
| Prohibited | Correct |
|------------|---------|
| Use for simple tasks | Reserve for complex multi-step problems |
| Skip thought numbers | Always increment correctly |
| Conclude without verification | Verify hypothesis before final thought |
| Ignore previous thoughts | Build upon or explicitly revise |
| Fixed totalThoughts | Adjust as understanding evolves |
## Integration with Other Tools
### With ACE-Tool
```
ACE-Tool → align current state → Sequential Think → analyze and plan
```
### With Context7
```
Sequential Think → coordinate analysis → Context7 → provide official patterns
```
### With Serena
```
Serena → symbol-level exploration → Sequential Think → systematic analysis
```