home / skills / huynguyen03dev / opencode-setup / sequential-thinking
npx playbooks add skill huynguyen03dev/opencode-setup --skill sequential-thinkingReview the files below or copy the command above to add this skill to your agents.
---
name: sequential-thinking
description: Dynamic problem-solving through structured sequential thoughts. Use when breaking down complex problems, planning multi-step solutions, analyzing ambiguous requirements, debugging intricate issues, exploring design alternatives, or tackling problems where the full scope is unclear. Enables thought revision, branching, and iterative refinement.
---
# Sequential Thinking
## Overview
This skill provides structured sequential thinking for complex problem-solving through a dynamic, reflective thought process. Each thought can build on, question, or revise previous insights as understanding deepens.
## When to Use
- Breaking down complex problems into manageable steps
- Planning and design with room for revision
- Analysis that might need course correction
- Problems where full scope is unclear initially
- Multi-step solutions requiring maintained context
- Filtering irrelevant information from complex scenarios
- Debugging intricate issues requiring systematic exploration
## Script Location
The script is located at: `~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts`
Use `$SKILL_DIR` or the full path when invoking from any directory.
## Core Workflow
### 1. Initialize Thinking
Start a thinking sequence by estimating total thoughts needed:
```bash
bun ~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts sequentialthinking \
--thought "Initial analysis of the problem..." \
--thought-number 1 \
--total-thoughts 5 \
--next-thought-needed true
```
### 2. Continue Sequence
Build on previous thoughts, adjusting estimates as needed:
```bash
bun ~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts sequentialthinking \
--thought "Building on insight from step 1..." \
--thought-number 2 \
--total-thoughts 5 \
--next-thought-needed true
```
### 3. Revise Previous Thinking
When reconsidering earlier conclusions:
```bash
bun ~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts sequentialthinking \
--thought "Reconsidering step 2, I realize..." \
--thought-number 4 \
--total-thoughts 6 \
--is-revision true \
--revises-thought 2 \
--next-thought-needed true
```
### 4. Branch Exploration
Explore alternative approaches:
```bash
bun ~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts sequentialthinking \
--thought "Alternative approach from step 3..." \
--thought-number 5 \
--total-thoughts 7 \
--branch-from-thought 3 \
--branch-id "alternative-approach" \
--next-thought-needed true
```
### 5. Complete Thinking
Conclude when solution is verified:
```bash
bun ~/.config/opencode/skills/sequential-thinking/scripts/sequential-thinking.ts sequentialthinking \
--thought "Final verified conclusion..." \
--thought-number 6 \
--total-thoughts 6 \
--next-thought-needed false
```
## Key Features
- **Adjustable estimates**: Modify `totalThoughts` up/down as understanding evolves
- **Thought revision**: Mark thoughts as revisions with `--is-revision` and `--revises-thought`
- **Branching**: Explore alternatives with `--branch-from-thought` and `--branch-id`
- **Non-linear thinking**: Branch or backtrack as needed
- **Hypothesis verification**: Generate and verify solution hypotheses iteratively
## Parameters Reference
| Parameter | Required | Description |
|-----------|----------|-------------|
| `--thought` | Yes | Current thinking step content |
| `--thought-number` | Yes | Current position in sequence (1-based) |
| `--total-thoughts` | Yes | Estimated total thoughts (adjustable) |
| `--next-thought-needed` | Yes | `true` to continue, `false` to conclude |
| `--is-revision` | No | `true` if revising previous thinking |
| `--revises-thought` | No | Which thought number being revised |
| `--branch-from-thought` | No | Branching point thought number |
| `--branch-id` | No | Identifier for the branch |
| `--needs-more-thoughts` | No | Signal more thoughts needed |
## Output Formats
Control output with `--output` flag:
- `text` (default): Human-readable text
- `json`: Structured JSON
- `markdown`: Markdown formatted
- `raw`: Raw response data
## Resources
### scripts/
- `sequential-thinking.ts` - MCP server wrapper for sequential thinking (requires Bun runtime)
### references/
- `thinking-patterns.md` - Common thinking patterns and examples for various problem types