Skip to main content
skill CX Codex

thinking-thought-experiment — Claude Code skill: controlled

A skill for when a real test is too rare, large or irreversible: the agent runs one counterfactual with an isolated variable and bounds what the result implies.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add tjboudreaux/cc-thinking-skills --skill thinking-thought-experiment -a claude-code
Open on GitHub

What thinking-thought-experiment does

The skill enforces a disciplined thought experiment. You name exactly one variable or change, freeze everything else as the control world, and the agent traces the mechanism step by step: what fails, what queues, where a retry fires. Every step has to hang off a known component or policy instead of a hand-wavy collapse.

The output is a record with question, isolated_variable, initial_conditions, consequence_chain, invariants, break_points, implication_bound and discriminating_check. That last field is the cheapest real observation that would confirm or kill the weak link. If such a test becomes available mid-analysis, the skill tells you to stop and run it.

Stop conditions are explicit. More than one free variable without a stated control makes the scenario invalid. A step with no causal link to a known component gets rewritten or dropped. Recommendations the chain does not entail are out of scope. Ordinary debugging you can reproduce, and threat modeling, are not what this is for — those want a real test and a red-team structure.

What it helps with

  • reason about behaviour during a region outage you cannot stage
  • check an architecture decision before an irreversible commit
  • find the first step where a capacity or correctness requirement breaks
  • separate conclusions the chain supports from speculation
  • pick the cheapest real check for the weakest link

Example prompts for the agent

  • run a thought experiment: what happens if one region goes down
  • trace the chain to the first capacity failure at 100x load
  • what is the cheapest check that would confirm or kill this weak link

How to install thinking-thought-experiment

1Skills CLI (Vercel)

npx skills add tjboudreaux/cc-thinking-skills --skill thinking-thought-experiment -a claude-code

2Manually: put the files in place

~/.claude/skills/thinking-thought-experiment/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/thinking-thought-experiment/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about thinking-thought-experiment

How do I install thinking-thought-experiment in Claude?

Run npx skills add tjboudreaux/cc-thinking-skills --skill thinking-thought-experiment -a claude-code. The skill lands at ~/.claude/skills/thinking-thought-experiment/SKILL.md.

What does thinking-thought-experiment do?

It runs a single counterfactual with one isolated variable and frozen conditions, traces the mechanism step by step, and limits recommendations to what the chain justifies.

When should I not use it?

When a cheap real test exists — a load test, a flag, a query — run that instead. For attack-path work you want a red-team structure, not open-ended scenarios.

Source text

SKILL.md · MIT
---
name: thinking-thought-experiment
description: 'When a real test is too rare, large, or irreversible, run a controlled counterfactual: isolate one variable, fix conditions, trace the mechanistic chain, and bound what the result implies.'
disable-model-invocation: true
---

# Thought Experiment

When empiricism is out of reach, run a disciplined counterfactual: one isolated change, fixed conditions, step-by-step mechanism, and a hard bound on implications.

## When to Use

- You need behavior under failure, scale, or policy you cannot cheaply trigger or measure (region outage, 100x load, one-way architecture).
- A decision is expensive or irreversible and a mental trace can surface break points before commit.
- Edge cases are too costly to stage, but a mechanistic chain can still expose missing controls.

## When NOT to Use

- A cheap real test exists (load test, flag, query, spike) → run the test; do not substitute imagination.
- Adversarial security attack-path work → use red-team structure, not free-form scenarios.
- You already know the mechanism and only need a decision under known facts → decide; do not dramatize.
- Vague "what if everything" brainstorming without a single isolated variable → tighten or stop.

## Procedure

1. **State the question and isolation.** Name exactly one primary variable or counterfactual change. Freeze all other conditions as the control world. Reject multi-variable "and also" scenarios.
2. **Fix initial conditions.** Specify system state, load, configuration, actors, and what is *not* changed. Write values concrete enough that another agent could replay the setup.
3. **Trace the mechanism step by step.** From t0, record what fails, queues, retries, or adapts next—and why—using known components and policies only. No hand-wavy "then everything collapses"; each step needs a causal link.
4. **Extract invariants and break points.** Note what still holds (invariants) and the first step where the system violates a requirement (capacity, correctness, safety, UX). Mark assumptions that, if false, void the chain.
5. **Bound implications.** Map insights only to actions or checks justified by the chain (limits, guards, monitoring, redesign). Label speculative leaps beyond the isolation as out of bound.
6. **Name a discriminating real check, then stop.** For the weakest link, state the cheapest observation or experiment that would confirm or kill it. Stop after one controlled chain with bounded implications; if a link is cheaply testable now, exit to that test instead of further imagination.

## Output

Emit a thought-experiment record:

- `question`: what behavior or decision is under test
- `isolated_variable`: single change vs control world
- `initial_conditions`: frozen state and non-changes
- `consequence_chain`: ordered mechanistic steps
- `invariants`: what still holds
- `break_points`: first requirement failures and critical assumptions
- `implication_bound`: actions/checks justified by the chain only
- `discriminating_check`: cheapest real observation to confirm or kill the weak link

## Verification

- **Isolation check:** more than one free variable without a stated control → invalid; reset.
- **Mechanism check:** any step without a causal link to a known component/policy → rewrite or drop.
- **Implication bound:** recommendations not entailed by the chain are out of scope.
- **Empiricism override:** if a real test became available mid-analysis, stop the thought experiment and test.
- **Over-application guard:** do not use this skill for ordinary debugging you can reproduce, or as a substitute for red-team threat modeling.
- **Stop:** one isolated counterfactual → full chain → bounded implications + discriminating check; no scenario sprawl.

© tjboudreaux · MIT · tjboudreaux/cc-thinking-skills

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set28

thinking-jobs-to-be-done Works out the progress a user hires a product for, then ranks features by it. Useful when you cannot tell what to cut and what to grow. CX Codex +1 568installs thinking-cynefin Sorts a problem into a Cynefin domain by cause and effect, then names the response mode: runbook, analysis, probe or stabilize. Useful when a method keeps failing. CX Codex +1 567installs thinking-bounded-rationality A skill that halts a search at the first option clearing a threshold you set beforehand, instead of comparing forever. CX Codex +1 563installs thinking-model-combination A skill that sequences 2–3 mental models with named roles when one model leaves a blind spot. Built for multi-domain decisions. CX Codex +1 563installs thinking-map-territory The skill makes the agent check live code or data whenever a doc, test, metric or assumption disagrees with observed behavior. CX Codex +1 559installs thinking-margin-of-safety Makes the agent add a buffer to capacity, timeouts and schedule estimates, scaled by leftover uncertainty and the cost of a breach instead of the optimistic edge. CX Codex +1 554installs thinking-effectuation A skill for decisions under genuine uncertainty: inventory your means, then take one step inside an affordable-loss cap. Useful when forecasts can't be trusted. CX Codex +1 556installs thinking-kepner-tregoe A skill for narrowing a defect with IS/IS-NOT analysis and for picking between options with MUST screening, weighted WANTs and downside checks. CX Codex +1 557installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor