AgentStack
SKILL verified MIT Self-run

Exp Lens Exploratory Confirmatory

skill-trecek-useful-claude-skills-exp-lens-exploratory-confirmatory · by Trecek

Assess whether analytic decisions were pre-specified or post-hoc and whether exploratory/confirmatory norms are aligned. Boundary lens answering "Is this discovery or test, and are norms aligned?

No reviews yet
0 installs
2 views
0.0% view→install

Install

$ agentstack add skill-trecek-useful-claude-skills-exp-lens-exploratory-confirmatory

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Exp Lens Exploratory Confirmatory? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Exploratory-Confirmatory Experimental Design Lens

Philosophical Mode: Boundary Primary Question: "Is this discovery or test, and are norms aligned?" Focus: Pre-specification, Analytic Flexibility, HARKing Detection, Garden of Forking Paths, Transparent Reporting

When to Use

  • Study mixes exploration and confirmation without clear boundaries
  • Post-hoc hypotheses presented as pre-specified
  • Many analyses run but only significant ones reported
  • User invokes /exp-lens-exploratory-confirmatory or /make-experiment-diag exploratory

Critical Constraints

NEVER:

  • Modify any source code files
  • Do not litter the codebase with useless comments, TODO markers, or explanatory annotations — the skill output and diagram speak for themselves

ALWAYS:

  • Map the full analytic timeline — what was decided before vs. after seeing data
  • Count forking paths honestly — every analysis choice is a potential fork
  • Distinguish genuine exploration (hypothesis-generating) from HARKing (hypothesis-after-results)
  • Flag absent preregistration as a finding without assuming bad faith
  • BEFORE creating any diagram, LOAD the /mermaid skill using the Skill tool - this is MANDATORY

Analysis Workflow

Step 1: Launch Parallel Exploration Subagents

Spawn Explore subagents to investigate:

Pre-specified Plans

  • Find evidence of pre-registration, protocols, or analysis plans written before seeing data
  • Look for: preregister, protocol, plan, a_priori, predetermined, registered, osf

Analytic Flexibility

  • Find how many analysis choices could have been made differently
  • Look for: choice, option, alternative, try, different, also, additionally, robustness

Selective Reporting Signals

  • Find whether all planned analyses are reported
  • Look for: mainresult, primary, secondary, supplementary, appendix, notshown, datanotshown

Post-Hoc Rationalization

  • Find hypotheses that appear to have been generated from the data
  • Look for: we found, unexpectedly, interestingly, surprising, post_hoc, exploratory, we noticed

Exploration-Confirmation Separation

  • Find whether there is an explicit boundary between exploration and test
  • Look for: holdout, validation, traindevtest, discoveryset, confirmationset, split

Step 2: Map Analytic Timeline

Map the analytic timeline:

  • What was decided before seeing data?
  • What was decided after?
  • Where is the boundary between exploration and confirmation?

Count the "forking paths" — decision points where a different choice would have led to a different result.

Step 3: Analyze Boundary Integrity

CRITICAL — Analyze Boundary Integrity: For every reported result:

  • Was the analysis plan fixed before seeing the outcome?
  • If not, how many alternative analyses could have been run?
  • Does the reporting distinguish exploratory findings from confirmatory tests?

Assess whether the reported results have survivorship bias.

Step 4: Create the Diagram (Optional)

This is primarily an argumentative lens. Create an optional timeline diagram only when the timeline is complex enough to benefit from visualization.

Use the mermaid skill conventions with:

Direction: LR (time flows left to right from planning through analysis to reporting)

Minimal diagram structure:

  • Pre-data decisions → Data collection → Post-data decisions → Reporting

Node Styling:

  • stateNode class: Pre-specified decisions
  • handler class: Data collection
  • phase class: Post-data decisions
  • gap class: Undisclosed flexibility
  • detector class: Exploration/confirmation boundary
  • output class: Reported results

Step 5: Write Output

Write the output to: temp/exp-lens-exploratory-confirmatory/exp_diag_exploratory_confirmatory_{YYYY-MM-DD_HHMMSS}.md


Output Template

# Exploratory-Confirmatory Analysis: {Experiment Name}

**Lens:** Exploratory-Confirmatory (Boundary)
**Question:** Is this discovery or test, and are norms aligned?
**Date:** {YYYY-MM-DD}
**Scope:** {What was analyzed}

## Analytic Timeline

| Decision Point | Pre/Post Data | Flexibility | Impact on Results |
|---------------|---------------|-------------|-------------------|
| {decision} | {Pre/Post} | {Low/Medium/High} | {description} |

## Forking Paths Inventory

| Analysis Choice | Alternatives Not Taken | Estimated Impact |
|----------------|------------------------|-----------------|
| {choice made} | {alternative 1, 2...} | {Low/Medium/High} |

## HARKing Risk Assessment

| Finding | Framing | HARKing Indicators | Assessment |
|---------|---------|-------------------|------------|
| {finding} | {how presented} | {indicators found} | {Low/Medium/High risk} |

## Timeline Diagram (Optional)

```mermaid
%%{init: {'flowchart': {'nodeSpacing': 50, 'rankSpacing': 60, 'curve': 'basis'}}}%%
graph LR
    %% CLASS DEFINITIONS %%
    classDef cli fill:#1a237e,stroke:#7986cb,stroke-width:2px,color:#fff;
    classDef stateNode fill:#004d40,stroke:#4db6ac,stroke-width:2px,color:#fff;
    classDef handler fill:#e65100,stroke:#ffb74d,stroke-width:2px,color:#fff;
    classDef phase fill:#6a1b9a,stroke:#ba68c8,stroke-width:2px,color:#fff;
    classDef newComponent fill:#2e7d32,stroke:#81c784,stroke-width:2px,color:#fff;
    classDef output fill:#00695c,stroke:#4db6ac,stroke-width:2px,color:#fff;
    classDef detector fill:#b71c1c,stroke:#ef5350,stroke-width:2px,color:#fff;
    classDef gap fill:#ff6f00,stroke:#ffa726,stroke-width:2px,color:#000;
    classDef integration fill:#c62828,stroke:#ef9a9a,stroke-width:2px,color:#fff;

    PRESPEC["Pre-specified Decisions━━━━━━━━━━Hypothesis, primaryoutcome, analysis plan"]

    COLLECT["Data Collection━━━━━━━━━━Observation periodand data gathering"]

    BOUND["E/C Boundary━━━━━━━━━━Explicit split betweenexploration and test"]

    POSTDATA["Post-data Decisions━━━━━━━━━━Analysis choices madeafter seeing results"]

    HIDDEN["Undisclosed Flexibility━━━━━━━━━━Unreported forksand alternatives"]

    REPORTED["Reported Results━━━━━━━━━━Published findingsand conclusions"]

    PRESPEC --> COLLECT
    COLLECT --> BOUND
    BOUND --> POSTDATA
    POSTDATA --> HIDDEN
    POSTDATA --> REPORTED
    HIDDEN -.->|"survivorship bias"| REPORTED

    %% CLASS ASSIGNMENTS %%
    class PRESPEC stateNode;
    class COLLECT handler;
    class BOUND detector;
    class POSTDATA phase;
    class HIDDEN gap;
    class REPORTED output;

Preregistration Compliance Checklist

  • [ ] Hypothesis stated before data collection
  • [ ] Primary outcome pre-specified
  • [ ] Analysis plan documented before analysis
  • [ ] Deviations from plan disclosed
  • [ ] Exploratory analyses labelled as such

Transparent Reporting Scorecard

| Criterion | Met? | Notes | |-----------|------|-------| | All planned analyses reported | {Yes/No/Partial} | {notes} | | Exploratory/confirmatory distinction explicit | {Yes/No/Partial} | {notes} | | Forking paths disclosed | {Yes/No/Partial} | {notes} | | Null results reported | {Yes/No/Partial} | {notes} |

Key Findings

  • {Description of boundary integrity assessment and most significant HARKing or flexibility risks}

---

## Pre-Diagram Checklist

Before creating the diagram, verify:

- [ ] LOADED `/mermaid` skill using the Skill tool
- [ ] Using ONLY classDef styles from the mermaid skill (no invented colors)
- [ ] Diagram will include a color legend table

---

## Related Skills

- `/make-experiment-diag` - Parent skill for lens selection
- `/mermaid` - MUST BE LOADED before creating diagram
- `/exp-lens-severity-testing` - For statistical severity and error probability analysis
- `/exp-lens-sensitivity-robustness` - For robustness of conclusions across analytic choices

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Trecek](https://github.com/Trecek)
- **Source:** [Trecek/useful-claude-skills](https://github.com/Trecek/useful-claude-skills)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.