ultrathink

ultrathink is a skill for Claude Code from marcusgoll/Spec-Flow. It costs 77 tokens per session (3,501 once invoked), scanned A, original, MIT.

A deep-planning guide for large or complicated software work. It questions assumptions, studies existing code patterns, and records decisions in planning documents.

In plain words
What is it for?
It is used for epics, large features, architectural changes, or planning runs started with a deep-planning option.
Why use it?
It helps prevent overcomplicated designs and exposes unclear assumptions before implementation begins.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is DEEP_MODE=$(bash .spec-flow/scripts/utils/load-preferences.sh --should-deep-plan --is-epic).

Good fit It is used for epics, large features, architectural changes, or planning runs started with a deep-planning option.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/marcusgoll/Spec-Flow
agentmods
npx agentmods add skills/marcusgoll/spec-flow/ultrathink

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ultrathink

README.md
[![agentmods](https://agentmods.dev/badge/skills/marcusgoll/spec-flow/ultrathink/github.svg)](https://agentmods.dev/skills/marcusgoll/spec-flow/ultrathink)
Your own site
<a href="https://agentmods.dev/skills/marcusgoll/spec-flow/ultrathink"><img src="https://agentmods.dev/badge/skills/marcusgoll/spec-flow/ultrathink/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ultrathink

Your own site · 80×15
<a href="https://agentmods.dev/skills/marcusgoll/spec-flow/ultrathink"><img src="https://agentmods.dev/badge/skills/marcusgoll/spec-flow/ultrathink.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 77 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,501 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00077 $0.03501
Opus 5.5 $0.00031 $0.01400
Sonnet 5.5 $0.00015 $0.00700
Haiku 4.5 $0.00008 $0.00350

Measured 1mo ago against content hash 17abe6587881, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

ultrathink scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/ultrathink/SKILL.md · 472 lines

How it starts

The opening of the file, as written. The whole thing — 472 lines — stays where its author put it; the contents beside it link to each section on GitHub.

"The people who are crazy enough to think they can change the world are the ones who do."

Core philosophy:

  • Think Different - Question every assumption before designing
  • Obsess Over Details - Understand the codebase's soul, not just its code
  • Plan Like Da Vinci - Architecture so elegant it feels inevitable
  • Simplify Ruthlessly - Remove complexity until nothing is left to take away
  • Iterate Relentlessly - First solution is never good enough

When activated:

  • --deep flag on any workflow command
  • All epic workflows (via deep_planning_triggers.epic_features)
  • Features with 30+ estimated tasks (via deep_planning_triggers.complexity_threshold)
  • New architectural patterns (via deep_planning_triggers.architecture_change)
  • planning.auto_deep_mode: true in user preferences

Outputs:

  • Enhanced plan.md with assumption inventory
  • craftsman-decision.md artifact documenting deep thinking
  • Simpler architecture than standard planning would produce

<quick_start> Execute craftsman planning workflow:

  1. Think Different - Create assumption inventory, challenge each one
  2. Obsess Over Details - Analyze codebase soul (patterns, philosophy)
  3. Plan Like Da Vinci - Sketch architecture before implementing
  4. Simplify Ruthlessly - Find minimum viable architecture
  5. Iterate - Compare alternatives, refine until inevitable

Key principle: One hour of deeper thinking saves ten hours of rework.

Trigger phrases: "ultrathink", "deep planning", "craftsman mode", "--deep" </quick_start>

Before designing anything, catalog and challenge every assumption.

Create assumption inventory:

## Assumption Inventory

| # | Assumption | Source | Challenge Question | Resolution |
|---|------------|--------|-------------------|------------|
| 1 | Users need X feature | Spec | Is this the real problem or a symptom? | [Validated/Changed/Removed] |
| 2 | We need a database table | Common pattern | Could we use existing data structures? | [Validated/Changed/Removed] |
| 3 | API endpoint required | Architecture | Could this be client-side only? | [Validated/Changed/Removed] |

Challenge questions for each assumption:

  1. Why does it have to work this way?
  2. What if we started from zero?
  3. What would break if this assumption is false?
  4. Is this solving the real problem or a symptom?
  5. What's the simplest thing that could possibly work?

Categories to examine:

  • Technical assumptions - Database, API, frontend framework
  • User assumptions - What users actually need vs what we think they need
  • Architectural assumptions - Why this pattern? Why these components?
  • Integration assumptions - Do we need this external service?

Output: Document in craftsman-decision.md under "Assumptions Questioned"

Read the codebase like you're studying a masterpiece. Understand patterns, philosophy, and the why behind decisions.

Analysis process:

# Find dominant patterns
grep -r "class.*Service" src/ | wc -l
grep -r "Repository" src/ | wc -l
grep -r "Controller" src/ | wc -l

# Analyze architecture style
ls -la src/
tree src/ -L 2

# Find design decisions in comments
grep -r "// NOTE:" src/
grep -r "// DECISION:" src/
grep -r "// WHY:" src/

Questions to answer:

  1. What patterns dominate this codebase? (Repository, Service, MVC, etc.)
  2. What's the philosophy? (Thin controllers? Fat services? Domain-driven?)
  3. Where does complexity live? (Services? Components? Database?)
  4. What conventions are sacred? (Naming, file structure, error handling)
  5. What anti-patterns should we avoid? (Found mistakes to not repeat)

Soul documentation:

## Codebase Soul

### Dominant Patterns
- Repository pattern for data access (12 instances)
- Service layer for business logic (18 instances)
- React hooks for state management

### Philosophy
- "Thin controllers, fat services" - Controllers are routing only
- "Composition over inheritance" - No deep class hierarchies
- "Explicit over implicit" - No magic, clear data flow

### Conventions
- PascalCase for components, camelCase for hooks
- Services return Result objects, never throw
- Validation at API boundary, trust internal calls

### Anti-Patterns Observed
- src/legacy/UserManager.ts - God object, 2000+ lines (don't repeat)
- Inconsistent error handling in older services

Read the full file on GitHub · 472 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 472 lines · 77 tokens per session scan A 17abe6587881

Subscribe to this mod's changes

ultrathink is a skill published in the GitHub repository marcusgoll/Spec-Flow (96 stars, last pushed 23d ago), licensed MIT. It adds 77 tokens to every session and 3,501 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.