Advanced reasoning skill integrating Atom of Thoughts (AoT) and Chain of Verification (CoVe) frameworks. Use when facing complex problems requiring rigorous reasoning, systematic decomposition, or factual verification. Activation triggers: - "be thorough", "analyze carefully", "make sure this is right" - Complex multi-part questions - Architecture or security decisions - "verify", "double-check", "are you sure" - High-stakes technical decisions - Debugging complex issues
Scanned 9/2/2026
Install to Claude Code
npx -y skills add majiayu000/claude-skill-registry --skill questionably-ultrathink-snowmead-questionably-ultrath-3a1edb34 --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Questionably Ultrathink Snowmead Questionably Ultrath 3a1edb34?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-questionably-ultrathink-snowmead-questionably-ultr-claude-skill-registry)More formats (shields.io, HTML) on the badges page.
---
name: questionably-ultrathink
description: |
Advanced reasoning skill integrating Atom of Thoughts (AoT) and Chain of Verification (CoVe) frameworks.
Use when facing complex problems requiring rigorous reasoning, systematic decomposition, or factual verification.
Activation triggers:
- "be thorough", "analyze carefully", "make sure this is right"
- Complex multi-part questions
- Architecture or security decisions
- "verify", "double-check", "are you sure"
- High-stakes technical decisions
- Debugging complex issues
allowed-tools: [Task, Read, Grep, Glob, WebSearch, WebFetch, AskUserQuestion, Bash, Write]
---
# UltraThink Reasoning Framework
You orchestrate advanced reasoning through isolated, verified atomic solving.
<architecture_overview>
## Architecture: Isolated Solving with Question Contraction
### The Problem with Traditional Decomposition
Traditional approaches have a critical flaw: the same agent that generates questions also sees all answers. This creates bias contamination - knowledge of other questions/answers influences each response.
### The Solution: True Factored Execution
1. **Graph Generator** creates ONLY the DAG of questions (no solving)
2. **Atomic Solver** answers ONE question per spawn (complete isolation)
3. **Graph Maintainer** rewrites dependent questions with solved answers (contraction)
4. Each solver sees ONLY its contracted question - nothing else
### Flow Diagram
```
SKILL → Graph Generator (DAG only, no solving)
↓
For each level:
→ Fresh Solver per atom (isolated, only sees question)
→ Graph Maintainer (contracts dependent questions)
↓
Repeat until FINAL solved
↓
Synthesize response
```
</architecture_overview>
<clarification_first>
## Phase 0: Clarify Intent First (MANDATORY)
**ALWAYS start by assessing if clarification is needed.** Before invoking any agents, consider:
* Does the problem have multiple valid interpretations?
* Are scope, constraints, or success criteria unclear?
* Could different priorities lead to different analyses?
If ANY of these apply, use `AskUserQuestion` BEFORE proceeding.
Skip clarification ONLY when the user's intent is unambiguous.
</clarification_first>
<rigor_selection>
## Phase 0.5: Select Analysis Rigor
After clarifying intent, determine the analysis depth:
```
question: "What level of analysis rigor do you need?"
header: "Rigor"
options:
- label: "Standard (Recommended)"
description: "Single pass through the DAG. Good for most questions."
- label: "Thorough"
description: "Re-solves atoms with LOW confidence. Takes longer but more reliable."
- label: "High-Stakes"
description: "Maximum rigor. Re-solves any atom below HIGH confidence. Use for security, architecture, or production decisions."
```
**Skip this question if:**
* User already specified rigor in their request (e.g., "be thorough", "this is high-stakes")
* Query is simple enough that standard analysis is obviously sufficient
</rigor_selection>
<available_agents>
## Available Agents
**CRITICAL WARNING:** You are the orchestrator. NEVER invoke yourself.
### aot-graph-generator
**Purpose:** Build the DAG structure of atomic questions (NO solving)
**Invoke:** `Task` tool with `subagent_type: "questionably-ultrathink:aot-graph-generator"`
**Input:** Session ID, rigor level, clarified query
**Output:** metadata.md + atom files with questions only (status: unsolved)
### aot-graph-maintainer
**Purpose:** Contract unsolved atom questions with solved answers
**Invoke:** `Task` tool with `subagent_type: "questionably-ultrathink:aot-graph-maintainer"`
**Input:** Session ID, list of solved atoms with answers
**Output:** Rewrites dependent atom questions with "Given..." context
### cove-atomic-solver
**Purpose:** Answer ONE atomic question in complete isolation with self-verification
**Invoke:** `Task` tool with `subagent_type: "questionably-ultrathink:cove-atomic-solver"`
**Input:** The question text ONLY (extracted from atom file)
**Output:** Verified answer with sources, verification trace, and confidence (numerical + categorical)
**CRITICAL:** Pass ONLY the question text to cove-atomic-solver. Do NOT pass session ID, atom ID, or any other context.
### aot-judge (Optional - High-Stakes Only)
**Purpose:** Evaluate answer quality across atoms at a level (coherence, contradictions, completeness)
**Invoke:** `Task` tool with `subagent_type: "questionably-ultrathink:aot-judge"`
**Input:** Session ID, level number, list of solved atoms to evaluate
**Output:** Evaluation report with specific atoms flagged for re-solve (if issues found)
**Use when:**
* Rigor level is High-Stakes
* After solving all atoms at a level
* When you want additional quality assurance beyond self-verification
**Note:** The judge does NOT re-answer questions. It evaluates existing answers for quality issues.
</available_agents>
<full_pipeline>
## Full Pipeline Orchestration
You orchestrate the full pipeline by chaining agent calls. Follow these phases exactly.
<phase_1>
### Phase 1: Generate Session & Build Graph
**Step 1.1: Generate Session ID**
Generate a short session ID (8 characters, alphanumeric):
```
Example: a1b2c3d4
```
**Step 1.2: Invoke Graph Generator**
```
Task tool:
- subagent_type: "questionably-ultrathink:aot-graph-generator"
- prompt: "Session ID: {session-id}. Rigor: {rigor-level}. Build the question DAG for this query: {clarified query}"
```
**What this produces:**
* `.questionably-ultrathink/{session-id}/metadata.md` with DAG structure
* `.questionably-ultrathink/{session-id}/atoms/*.md` with questions only (status: unsolved)
**Step 1.3: Read Metadata**
Read the metadata file to get the solve order:
```
Read: .questionably-ultrathink/{session-id}/metadata.md
```
Extract `solve_order` - the list of atoms grouped by level.
</phase_1>
<phase_2>
### Phase 2: Iterative Solve Loop
Process each level in order:
**For each level in solve_order:**
**Step 2a: Read atom questions at this level**
For each atom at the current level:
```
Read: .questionably-ultrathink/{session-id}/atoms/{atom-id}.md
```
Extract the question text (may be contracted if level > 0).
**Step 2b: Spawn FRESH solver for each atom (PARALLEL)**
For each atom at this level, invoke a fresh solver with ONLY the question:
```
Task tool:
- subagent_type: "questionably-ultrathink:cove-atomic-solver"
- prompt: "{the question text only, nothing else}"
```
**CRITICAL:**
* Pass ONLY the question text
* NO session ID, NO atom ID, NO "verify atom X" language
* The solver must be completely isolated
**Invoke ALL atoms at the same level in parallel** (single message with multiple Task calls).
**Step 2c: Extract answers and update atom files**
For each solved atom, YOU (the orchestrator) update the atom file:
Read the solver's output and extract:
* The initial answer (before verification)
* The self-verification section (all claims and their verification status)
* The final answer (after any revisions)
* Sources
* Confidence level (both numerical 0-1 and categorical)
Write the updated atom file with FULL verification trace:
```markdown
---
atom_id: {atom-id}
level: {level}
dependencies: [{deps}]
status: solved
contracted: {true if was contracted}
solved_at: {ISO timestamp when solving completed}
solve_attempts: {number, starting at 1}
parallel_group: [{list of atom IDs solved in same parallel batch}]
confidence_score: {0.0-1.0 numerical score}
---
# Question
{the question}
# Verification Trace
## Initial Answer
{The solver's first formulation before self-verification}
## Self-Verification
**Claim 1:** "{specific claim from initial answer}"
- Verification Q: {independent question the solver asked}
- Independent Answer: {answer without bias}
- Status: ✓ VERIFIED | ⚠️ REVISED | ❓ UNCERTAIN
**Claim 2:** ...
{Include ALL claims the solver verified}
# Answer
{the final verified/revised answer}
# Sources
- {source 1}
- {source 2}
# Confidence
{0.XX} ({HIGH | MEDIUM | LOW}) - {explanation}
```
**IMPORTANT:** Preserve the FULL verification trace from the solver's output. This provides:
* Audit trail for how answers were derived
* Ability to diagnose LOW confidence atoms
* Evidence for re-solve decisions
**Step 2d: Contract dependent atoms**
If there are more levels to process, invoke the graph maintainer:
```
Task tool:
- subagent_type: "questionably-ultrathink:aot-graph-maintainer"
- prompt: "Session ID: {session-id}. Solved atoms:
- A1: {answer summary}
- A2: {answer summary}"
```
This rewrites next-level atom questions with the solved answers as "Given..." context.
**Step 2e: Continue to next level**
Repeat 2a-2d for each level until FINAL is solved.
</phase_2>
<phase_3>
### Phase 3: Synthesize Final Response
After FINAL is solved:
1. Read all solved atom files
2. Combine answers into coherent response
3. Apply appropriate confidence markers
The FINAL atom's answer IS your synthesis - it was designed as the synthesis question.
</phase_3>
<rigor_based_iteration>
### Rigor-Based Re-Solving
After completing all levels, check confidence based on rigor:
| Rigor Level | Re-solve When | Confidence Threshold |
|-------------|---------------|---------------------|
| Standard | Never (single pass) | N/A |
| Thorough | Any atom has LOW confidence | score < 0.4 |
| High-Stakes | Any atom below HIGH confidence | score < 0.7 |
**Confidence Score Mapping:**
* 0.0 - 0.4 = LOW
* 0.4 - 0.7 = MEDIUM
* 0.7 - 1.0 = HIGH
**Status Lifecycle:**
```
unsolved → in_progress → solved → (needs_re_solve → in_progress → solved) → verified
```
1. `unsolved` - Initial state from graph generator
2. `in_progress` - Currently being solved (mark BEFORE spawning solver)
3. `solved` - Solver completed (mark after extracting answer)
4. `needs_re_solve` - Confidence below threshold for rigor level
5. `verified` - Passed rigor check (final state)
**If re-solving needed:**
1. Mark atoms needing re-solve with `status: needs_re_solve`
2. Increment `solve_attempts` counter
3. For each, spawn a fresh solver with the same question
4. Update atom files with new answers (preserve previous attempt in trace)
5. If dependencies changed, re-contract and re-solve dependents
**Early Stop Conditions:**
* No confidence improvement after re-solve (converged)
* `solve_attempts` reaches 3 (prevent infinite loops)
**For High-Stakes rigor (optional judge step):**
After solving all atoms at a level, you MAY invoke the optional judge agent:
```
Task tool:
- subagent_type: "questionably-ultrathink:aot-judge"
- prompt: "Session ID: {session-id}. Level: {level}. Evaluate answers for coherence, contradictions, and completeness."
```
The judge evaluates answer quality without re-answering. If issues found, mark specific atoms for re-solve with judge feedback.
</rigor_based_iteration>
</full_pipeline>
<pipeline_output_format>
## Pipeline Output Format
Use this structure for your final output:
```
## UltraThink Analysis
### Original Query
{The user's question}
### Analysis Settings
- **Rigor Level**: {Standard | Thorough | High-Stakes}
- **Session ID**: {session-id}
### Phase 1: Graph Construction
**Dependency Graph:**
```
Level 0: A1, A2 (independent)
Level 1: A3 ← [A1, A2]
Level 2: FINAL ← [A3]
```
### Phase 2: Iterative Solving
**Level 0** (parallel):
- [A1] {question} → {answer} (confidence: HIGH)
- [A2] {question} → {answer} (confidence: MEDIUM)
*Contracting A3 with A1, A2 answers...*
**Level 1**:
- [A3] "Given {A1}, {A2}, {question}?" → {answer} (confidence: HIGH)
*Contracting FINAL with A3 answer...*
**Level 2**:
- [FINAL] "Given {A3}, {synthesis question}?" → {answer}
### Phase 3: Synthesis
{The FINAL atom's verified answer}
### Final Response
{Clean presentation of the answer}
### Confidence Assessment
| Atom | Confidence | Notes |
|------|------------|-------|
| A1 | HIGH | {notes} |
| A2 | MEDIUM | {notes} |
| A3 | HIGH | {notes} |
| FINAL | HIGH | {notes} |
**Overall Confidence:** {HIGH | MEDIUM | LOW}
### Uncertainty Flags
{Any remaining areas of uncertainty}
```
</pipeline_output_format>
<quick_reference>
## Quick Reference
| Situation | Action |
|-----------|--------|
| Multi-part question | Run full pipeline |
| User requests verification | Run full pipeline |
| High-stakes decision | Run full pipeline with high-stakes rigor |
| Simple factual question | Skip UltraThink, answer directly |
</quick_reference>
<skip_ultrathink>
## When to Use Standard Responses
Skip UltraThink for:
* Simple, direct questions with single answers
* Opinion/recommendation requests (no facts to verify)
* Quick lookups where user prioritizes speed
* Questions where you have high confidence already
</skip_ultrathink>
<confidence_markers>
## Confidence Markers
After using UltraThink, mark your confidence:
* **[VERIFIED]** - All atoms passed self-verification
* **[HIGH CONFIDENCE]** - Most atoms HIGH, no LOW
* **[NEEDS EXTERNAL VERIFICATION]** - User should confirm externally
* **[UNCERTAIN]** - Significant LOW confidence atoms remain
</confidence_markers>
You must execute the questionably-ultrathink workflow.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!