designing-the-analysis
Use when you have an approved research question and need a concrete analysis plan, before touching outcome data or fitting any…
Use before running any confirmatory analysis or looking at outcome data, when testing a hypothesis, computing a p-value, or about to claim an effect - locks predictions and decision rules before results are seen
$ npx -y skills add K-Dense-AI/science-superpowers --skill preregistering-analysis --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/preregistering-analysisContext preview
The summary Claude sees to decide when to auto-load this skill.
Use before running any confirmatory analysis or looking at outcome data, when testing a hypothesis, computing a p-value, or about to claim an effect - locks predictions and decision rules before results are seen
name: preregistering-analysis description: Use before running any confirmatory analysis or looking at outcome data, when testing a hypothesis, computing a p-value, or about to claim an effect - locks predictions and decision rules before results are seen
Write down the hypotheses, the exact analysis, the directional predictions, and the decision rules — and freeze them — *before* you look at the outcomes. Then run exactly that.
**Core principle:** If you decided the analysis after seeing the data, you cannot tell whether the data shaped the answer. A prediction is only evidence if it was made before the result.
**Violating the letter of this rule is violating the spirit of this rule.**
This is the pre-registration discipline — the science analog of test-driven development. In TDD you write the test before the code so you know the test tests something. Here you write the prediction before the result so you know the result confirms something.
NO CONFIRMATORY CLAIM WITHOUT A PRE-REGISTERED PREDICTION FIRST
Looked at the outcomes before locking the analysis? That analysis is now **exploratory**. You cannot relabel it confirmatory. To make a confirmatory claim, pre-register and test on data you have not yet used.
**No exceptions:**
Looked? It's exploratory. Period.
**Always, before:**
**Exploratory work is allowed and valuable** — but it must be *labeled* exploratory and never dressed up as confirmation. Exploratory findings are hypotheses for the next pre-registration.
**Exceptions (decide with your human partner):**
A registration whose configurations have never executed is not protection — it is rework waiting to happen. Before freezing, confirm:
That last one matters most. If a run costing seconds could disconfirm the prediction you are about to freeze, run it first. A validation benchmark on different data or a different geometry cannot contaminate the confirmatory test — it is a separate measurement — so there is no rigor argument for freezing before it. Freezing a prediction that a cheap run would have falsified costs a re-registration and buys nothing.
Where feasibility is genuinely unknown, that is the signal to offer feasibility mode rather than freeze early.
Thinking "I'll just check the result first, then pre-register"? Stop. That's the rationalization this skill exists to stop.
digraph prereg_cycle {
rankdir=LR;
lock [label="LOCK\nhypotheses, analysis,\npredictions, decision rules", shape=box, style=filled, fillcolor="#ffcccc"];
falsifiable [label="Disconfirming\nresult specified?", shape=diamond];
freeze [label="FREEZE\ncommit + timestamp", shape=box];
execute [label="EXECUTE\nexactly as registered", shape=box, style=filled, fillcolor="#ccffcc"];
separate [label="SEPARATE\nlabel anything else\nexploratory", shape=box, style=filled, fillcolor="#ccccff"];
lock -> falsifiable;
falsifiable -> freeze [label="yes"];
falsifiable -> lock [label="no - unfalsifiable,\nreframe"];
freeze -> execute;
execute -> separate;
}Specify, in writing:
A registration is only real if some possible result would disconfirm the prediction. State that result explicitly. If no result could disconfirm it, the prediction is unfalsifiable — reframe before freezing. This mirrors verifying a test fails for the right reason before trusting it.
Write the pre-registration to `docs/science-superpowers/preregistrations/YYYY-MM-DD-<topic>.md`, then freeze it with `prereg.sh` (it ships alongside this skill's SKILL.md) — **before** touching outcomes:
# <skill-dir> = this skill's directory, e.g. $CLAUDE_PLUGI
Science Superpowers is a complete computational-science methodology for your research agents, built on a set of composable skills plus initial instructions that make sure your agent actually uses them.
Use when you have an approved research question and need a concrete analysis plan, before touching outcome data or fitting any…
Use when facing 2+ independent investigations that can proceed without shared state - parallel literature survey, multi-dataset…
Use when your human partner has explicitly opted into exploratory or feasibility mode - a compute-heavy simulation, an unproven…
Use when you have a pre-registered analysis plan to execute inline in this session with review checkpoints, on a platform without…
You MUST use this before any data analysis or investigation - before exploring a dataset, loading or profiling data, running a…
Use when a result is surprising, impossible, contradicts a sanity check, a pipeline fails, a model won't converge, or a…