geminithinking
Apply sequential, reflective reasoning to break down and solve complex problems using Gemini AI, with support for revision, branching, and session persistence.
Instructions
A detailed tool for dynamic and reflective problem-solving through Gemini AI. This tool helps analyze problems through a flexible thinking process powered by Google's Gemini model. Each thought can build on, question, or revise previous insights as understanding deepens.
When to use this tool:
Breaking down complex problems into steps
Planning and design with room for revision
Analysis that might need course correction
Problems where the full scope might not be clear initially
Problems that require a multi-step solution
Tasks that need to maintain context over multiple steps
Situations where irrelevant information needs to be filtered out
Key features:
Leverages Gemini AI for deep analytical thinking
Provides meta-commentary on the reasoning process
Indicates confidence levels for generated thoughts
Suggests alternative approaches when relevant
You can adjust total_thoughts up or down as you progress
You can question or revise previous thoughts
You can add more thoughts even after reaching what seemed like the end
You can express uncertainty and explore alternative approaches
Not every thought needs to build linearly - you can branch or backtrack
Session persistence: save and resume your analysis sessions
Parameters explained:
query: The question or problem to be analyzed
context: Additional context information (e.g., code snippets, background)
approach: Suggested approach to the problem (optional)
previousThoughts: Array of previous thoughts for context
thought: The current thinking step (if empty, will be generated by Gemini)
next_thought_needed: True if you need more thinking, even if at what seemed like the end
thought_number: Current number in sequence (can go beyond initial total if needed)
total_thoughts: Current estimate of thoughts needed (can be adjusted up/down)
is_revision: A boolean indicating if this thought revises previous thinking
revises_thought: If is_revision is true, which thought number is being reconsidered
branch_from_thought: If branching, which thought number is the branching point
branch_id: Identifier for the current branch (if any)
needs_more_thoughts: If reaching end but realizing more thoughts needed
metaComments: Meta-commentary from Gemini about its reasoning process
confidenceLevel: Gemini's confidence in the generated thought (0-1)
alternativePaths: Alternative approaches suggested by Gemini
Session commands:
sessionCommand: Command to manage sessions ('save', 'load', 'getState')
sessionPath: Path to save or load the session file (required for 'save' and 'load' commands)
You should:
Start with a clear query and any relevant context
Let Gemini generate thoughts by not providing the 'thought' parameter
Review the generated thoughts and meta-commentary
Feel free to revise or branch thoughts as needed
Consider alternative paths suggested by Gemini
Only set next_thought_needed to false when truly done
Use session commands to save your progress and resume later
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The question or problem to analyze | |
| context | No | Additional context information | |
| thought | No | Your current thinking step (if empty, will be generated by Gemini) | |
| approach | No | Suggested approach to the problem | |
| branchId | No | Branch identifier | |
| isRevision | No | Whether this revises previous thinking | |
| sessionPath | No | Path to save or load the session file | |
| metaComments | No | Meta-commentary about the reasoning process | |
| thoughtNumber | Yes | Current thought number | |
| totalThoughts | Yes | Estimated total thoughts needed | |
| revisesThought | No | Which thought is being reconsidered | |
| sessionCommand | No | Command to manage sessions ('save', 'load', 'getState') | |
| confidenceLevel | No | Confidence level in the generated thought (0-1) | |
| alternativePaths | No | Alternative approaches suggested | |
| previousThoughts | No | Array of previous thoughts for context | |
| branchFromThought | No | Branching point thought number | |
| needsMoreThoughts | No | If more thoughts are needed | |
| nextThoughtNeeded | Yes | Whether another thought step is needed |