sequential-thinking
Sequential Thinking
A structured approach to complex problem-solving that breaks down challenges into iterative thought steps with built-in flexibility for revision and course correction.
When to Use This Skill
- Breaking down complex problems into manageable steps
- Planning and design requiring iterative refinement
- Analysis that might need course correction mid-stream
- Problems where the full scope emerges during analysis
- Multi-step solutions requiring context across steps
- Filtering out irrelevant information
- Hypothesis generation and verification workflows
Core Methodology
Sequential thinking follows a dynamic process:
- Initial estimation: Start with an estimate of thoughts needed, but remain flexible
- Iterative analysis: Work through thoughts sequentially while building context
- Revision capability: Question or revise previous thoughts as understanding deepens
- Branch exploration: Explore alternative approaches when needed
- Hypothesis cycle: Generate hypotheses, verify against thought chain, repeat
- Convergence: Continue until reaching a satisfactory solution
Instructions
Thought Structure
Each thought in the sequence should include:
- thought: Current thinking step content
- thoughtNumber: Position in sequence (1, 2, 3, ...)
- totalThoughts: Current estimate of total thoughts needed (adjustable)
- nextThoughtNeeded: Whether another thought step is required
Optional revision/branching metadata:
- isRevision: Boolean indicating if reconsidering previous thinking
- revisesThought: Which thought number is being revised
- branchFromThought: Branching point thought number
- branchId: Identifier for current branch
- needsMoreThoughts: Flag when reaching end but requiring more analysis
Process Guidelines
Starting out:
- Estimate initial thoughts needed based on problem complexity
- Begin with thought 1, establishing context and approach
- Set totalThoughts conservatively; you can adjust later
During analysis:
- Build on previous thoughts while maintaining context
- Filter out irrelevant information at each step
- Express uncertainty when present
- Don't hesitate to revise if you spot errors or better approaches
- Adjust totalThoughts up/down as the problem's scope becomes clearer
Revision pattern: When reconsidering previous thinking:
{
"thought": "On reflection, thought 3's assumption about X was incorrect because Y...",
"thoughtNumber": 6,
"totalThoughts": 10,
"isRevision": True,
"revisesThought": 3,
"nextThoughtNeeded": True
}
Hypothesis cycle:
- Generate hypothesis based on current understanding
- Verify against previous thought chain
- If verification fails, revise or branch
- Repeat until hypothesis is validated
Completion:
- Only set
nextThoughtNeeded: Falsewhen truly satisfied with the solution - Provide a single, clear final answer
- Ensure the answer directly addresses the original problem
Working with Context
Maintain continuity:
- Reference specific previous thoughts by number
- Build logical connections between thoughts
- Track which thoughts are still valid vs. revised
Filter information:
- Ignore details irrelevant to current thought step
- Focus on information that advances understanding
- Re-evaluate relevance as context evolves
Manage complexity:
- If a thought becomes too complex, break it into multiple thoughts
- Increase totalThoughts estimate accordingly
- Keep each individual thought focused
Output Format
Present your sequential thinking in a structured format:
Thought [N/Total]: [Current thought content]
[If revision: "This revises thought X because..."]
[If branching: "Branching from thought X to explore..."]
[Continue with next thought when nextThoughtNeeded is True]
Final output after all thoughts complete:
Solution: [Clear, direct answer to the original problem]
Examples
For concrete examples of sequential thinking in action, see resources/examples.md.
Key Principles
- Flexibility over rigidity: Adjust your approach as understanding deepens
- Revision is strength: Correcting course shows good reasoning
- Hypothesis-driven: Generate and test hypotheses iteratively
- Context-aware: Maintain awareness of previous thoughts while progressing
- Clarity at completion: Deliver a single, clear final answer
More from irahardianto/qurio
frontend-design
Generates distinctive, production-grade frontend interfaces and artifacts (React, Vue, HTML/CSS). Prioritizes bold aesthetics, unique typography, and motion to avoid generic designs. Use when building websites, landing pages, dashboards, posters, or when the user requests to style, beautify, or create visually striking UI.
2debugging-protocol
Comprehensive protocol for validating root causes of software issues. Use when you need to systematically debug a complex bug, flaky test, or unknown system behavior by forming hypotheses and validating them with specific tasks.
2knowledge-searching
Retrieves implementation knowledge, code examples, and documentation references. Use to inform technical decision-making when the user requires specific library usage, framework patterns, or syntax details. Trigger on requests to 'search docs', 'find code examples', or 'check implementation details'.
2technical-constitution
Generates technical implementation plans and architectural strategies that enforce the Project Constitution. Use when designing new features, starting implementation tasks, refactoring code, or ensuring compliance with critical standards like Testability-First Architecture, security mandates, testing strategies, and error handling.
1opensource-readme-generator
Generate high-quality, "All-Star" README files for open-source repositories. Use this skill when a user asks to create, update, or improve a README.md file for their project.
1