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:
# 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
- Generate hypotheses as potential solutions emerge
- Verify hypotheses based on chain-of-thought steps
- Repeat until satisfied with solution
Completion Criteria
- Only set
nextThoughtNeeded: falsewhen 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
{
"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
-
Start with estimate, adjust as needed
- Initial
totalThoughtsis just a guess - Increase if problem more complex than expected
- Decrease if solution found early
- Initial
-
Use revisions for course correction
- Mark
isRevision=truewhen reconsidering - Reference
revisesThoughtfor clarity
- Mark
-
Branch for alternative approaches
- Use
branchFromThoughtto explore alternatives - Give meaningful
branchIdnames
- Use
-
Filter irrelevant information
- Each thought should advance toward solution
- Ignore tangential details
-
Don't rush completion
- Only
nextThoughtNeeded=falsewhen truly done - Verify hypothesis before concluding
- Only
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