Sequential Thinking Tool: Enable Wide Exploration + Hierarchical Delegation
Sequential Thinking Tool: Enable Wide Exploration + Hierarchical Delegation
Summary
The mcp__sequential-thinking__sequentialthinking tool has powerful branching and revision capabilities that are completely unused (0% usage in 490 data points). Evidence shows the tool forces linear thinking due to hidden features and rigid parameters. Propose adding wide exploration (3-5x alternatives per layer) and hierarchical delegation to unlock the tool's potential.
Goal: INCREASE tokens per thought by 1.3x, but structured as wide exploration (3-5 parallel alternatives) instead of linear re-thinking.
---
Evidence (Data-Driven Analysis)
Usage Statistics (1,148 recent sessions)
- Adoption rate: 0.26% (3 sessions out of 1,148) - severely underutilized
- Total thoughts: 28 across all sessions
- Branching usage: 0/28 (0.0%) - NEVER USED ❌
- Revision usage: 0/28 (0.0%) - NEVER USED ❌
- User corrections: 4 gold nuggets (14% of chains) - users had to interrupt linear thinking
Chain Characteristics
- Single-thought chains: 11 (73%) - tool barely used
- Average chain length: 1.9 thoughts
- Max observed length: 5 thoughts
- Pattern: 100% linear (1→2→3→4→5), ZERO branching or revisions
Inefficiency Patterns
Pattern 1: Linear Lock-In
Thought 1/5 → 2/5 → 3/5 → 4/5 → 5/5
All 5 executed even when answer likely found at thought 3
Evidence: total_thoughts becomes rigid commitment, no early exit
Pattern 2: Re-Thinking on Same (Should Be Branch)
Thought 1: "User wants to understand..."
Thought 2: "Reconsidering: What if V3's architecture..."
This is a NEW thought when it should be a BRANCH exploring alternative.
Pattern 3: Narrow Exploration
Current: 1 idea per thought level (deep narrow)
Desired: 3-5 ideas per level (wide shallow)
Pattern 4: No Delegation
Current: Layer 1 must evaluate and commit
Desired: Layer 1 proposes 3 options → Layer 2 (smarter agent) picks best
---
Current Tool Design (Problems)
Parameters
# REQUIRED
thought: str # Current thinking step
next_thought_needed: bool # ❌ PROBLEM: Binary, forces linear
thought_number: int # Current step number
total_thoughts: int # ❌ PROBLEM: Rigid commitment
# OPTIONAL (NEVER USED ❌)
is_revision: bool # Reconsidering previous thought
revises_thought: int # Which thought to reconsider
branch_from_thought: int # Explore alternative from this thought
branch_id: str # Branch identifier
Critical Issues
- Binary Continuation -
next_thought_needed: boolonly allows "continue" or "stop", no options for "explore alternatives", "delegate", or "I'm done"
- Hidden Branching - System prompt says "Optional (rarely used)" with zero guidance on WHEN/HOW to use → Result: 0% usage
- Rigid Commitment -
total_thoughtsestimate becomes contract (plan 5 → execute all 5)
- No Wide Exploration - Can't say "generate 3-5 alternatives at this level"
- No Hierarchical Delegation - Can't say "here are 3 approaches, next layer decides"
- No Early Exit - Can't say "I'm confident, done" even when solution is clear
---
Proposed Improvements
1. Add Exploration States (Replace Binary)
NEW:
continuation_mode: Literal["explore", "done", "delegate", "branch", "merge"]
Meanings:
explore: Generate 3-5 alternatives at this level (useexplore_count)done: Answer is sufficient, no more thinking needed ("yeah I'm all done")delegate: Propose options to next layer (smarter agent/layer decides)branch: Create alternative path from previous thoughtmerge: Combine insights from multiple branches
2. Add Wide Lanes
NEW:
explore_count: int # How many parallel alternatives (default: 3, max: 7)
Usage Example:
{
"thought": "Layer 1: Understanding problem, exploring 3 approaches...",
"continuation_mode": "explore",
"explore_count": 3,
"thought_number": 1,
"proposals": [
"Approach A: API-first - fast to implement, harder to change",
"Approach B: Database-first - flexible schema, slower dev",
"Approach C: Hybrid - best of both, more complexity"
]
}
3. Add Hierarchical Delegation
NEW:
layer: int # Which abstraction layer (1=problem, 2=approach, 3=details)
delegate_to_next_layer: bool # Let smarter agent/layer choose
proposals: List[str] # Lightweight option descriptions
Benefit: Layer 1 does wide exploration (3-5 alternatives), Layer 2 selects best and drills down.
4. Promote Branching to First-Class
OLD: "Optional (rarely used)"
NEW: Primary exploration mechanism
branch_from_thought: int # PROMOTED: When to branch
branch_id: str # PROMOTED: Branch identifier
branch_strategy: Literal["parallel", "sequential", "converge"] # NEW: How to handle
System Prompt Update:
BRANCHING IS PRIMARY: Use branching liberally to explore alternatives.
When to branch:
- Multiple valid approaches exist
- Reconsidering previous decision
- Exploring "what if" scenarios
How to branch:
1. Set continuation_mode="branch"
2. Set branch_from_thought=<thought_number>
3. Set branch_id=<descriptive_name>
5. Add Early Exit with Confidence
NEW:
confidence: float # 0.0-1.0, how confident in answer
done_reason: Literal["complete", "sufficient", "blocked", "delegate"]
Usage:
{
"thought": "Found optimal solution...",
"continuation_mode": "done",
"confidence": 0.9,
"done_reason": "sufficient"
}
# System respects this, doesn't force continuation
6. Add Context Window Control
NEW:
context_window: Literal["compact", "normal", "expanded"]
compact: Show only last 2 thoughts (save tokens)normal: Show last 5 thoughts (default)expanded: Show all thoughts (deep debugging)
---
Token Budget Analysis
IMPORTANT: Goal is to INCREASE tokens per thought by 1.3x, but structured as wide exploration.
Current Model (Linear, Narrow)
Thought 1: Understand (100 tokens)
Thought 2: Approach A (120 tokens)
Thought 3: Refine A (110 tokens)
Thought 4: Validate (90 tokens)
Total: 420 tokens
Exploration: 1 approach
Quality: May miss better approaches B, C, D
Proposed Model (Wide, Delegated)
Layer 1: Understand (100 tokens)
Layer 1: Explore 3 alternatives (3 × 60 tokens = 180 tokens)
- Approach A (60 tokens)
- Approach B (60 tokens)
- Approach C (60 tokens)
Layer 1: Delegate (40 tokens)
Layer 2: Select B, explore 3 details (3 × 60 tokens = 180 tokens)
- Detail 1 (60 tokens)
- Detail 2 (60 tokens)
- Detail 3 (60 tokens)
Layer 2: Done (20 tokens)
Total: 520 tokens (1.24x increase ✓)
Exploration: 3 approaches × 3 details = 9 alternatives
Quality: Much better, systematic exploration
Key Insight: Wide shallow exploration (3×60) is MORE EFFECTIVE than deep narrow (1×120) for same token cost, and finds better solutions.
---
Proposed New Schema (Backwards Compatible)
{
"thought": "Current thinking step with analysis...",
"thought_number": 1,
"continuation_mode": "explore", // NEW (optional, defaults to boolean behavior)
"explore_count": 3, // NEW (optional, defaults to 1)
"layer": 1, // NEW (optional, defaults to flat)
"confidence": 0.7, // NEW (optional)
"proposals": [ // NEW (optional)
"Approach A: pros/cons",
"Approach B: pros/cons",
"Approach C: pros/cons"
],
"delegate_to_next_layer": false, // NEW (optional, defaults to false)
"branch_from_thought": null, // EXISTING (promote to first-class)
"branch_id": null, // EXISTING (promote to first-class)
"branch_strategy": "parallel", // NEW (optional, defaults to parallel)
"context_window": "normal", // NEW (optional, defaults to normal)
"done_reason": null, // NEW (optional)
"_backwards_compat": {
"next_thought_needed": true, // EXISTING (keep for compat)
"total_thoughts": 5 // EXISTING (keep for compat)
}
}
---
Migration Strategy
Phase 1: Additive (No Breaking Changes)
- Add all new parameters as optional
- Keep
next_thought_neededandtotal_thoughtsworking - If
continuation_modenot provided, usenext_thought_neededbehavior - Fully backwards compatible
Phase 2: System Prompt Update
- Update system prompt to show wide exploration examples
- Promote branching from "Optional" to "Primary mechanism"
- Add explicit guidance: "Use explore_count=3-5 at each layer"
- Add explicit guidance: "Use delegate_to_next_layer for architectural decisions"
- Add explicit guidance: "Use done with confidence when answer is sufficient"
Phase 3: Deprecation (Future)
- Mark
total_thoughtsas deprecated (too rigid) - Mark
next_thought_neededas deprecated (too binary) - But keep working for backwards compat
---
Expected Impact
Quantitative
- Token usage: +1.3x per thought (520 vs 420 tokens) - GOAL MET ✓
- Exploration depth: 9x alternatives considered (vs 1) - MASSIVE INCREASE ✓
- Adoption rate: Target 5-10% of sessions (from 0.26%) - 20-40x increase
- User corrections: Reduce from 14% to <5% (fewer frustrated interrupts)
Qualitative
- Better solutions: More alternatives considered → higher quality decisions
- Smart delegation: Right level of abstraction for decisions
- Transparency: User sees branches, understands exploration
- Efficiency: Early exit when confident → no forced continuation
---
References
- Data Source: 490 sequential thinking tool calls from Claude history (~/.claude/)
- Harvester: Custom script analyzing JSONL logs
- Analysis Date: 2025-11-27
- Full Report: 2,700-line analysis document available if needed
---
Requested Action
- Review this analysis - validate the evidence and proposed improvements
- Implement Phase 1 - add new parameters as optional (backwards compatible)
- Update system prompt - Phase 2 guidance for wide exploration
- Test with real users - measure adoption rate and quality improvements
- Iterate - refine based on usage patterns
Priority: HIGH - tool is severely underutilized (0.26% adoption), has untapped potential
User Quote: "ultrathink - don't just burn thinking tokens uselessly, but this is supposed to be the smartest way right?"
---
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗