Help us improve
Share bugs, ideas, or general feedback.
From science-superpowers
Guides the final step of an analysis: verifying reproducibility, presenting merge/share/keep/discard options, then archiving code, data, and environment.
npx claudepluginhub k-dense-ai/science-superpowers --plugin science-superpowersHow this skill is triggered — by the user, by Claude, or both
Slash command
/science-superpowers:reporting-and-archiving-findingsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Complete an investigation by confirming reproducibility, presenting clear options, handling the chosen one, and archiving everything needed to reproduce the result.
Writes structured post-experiment research reports after analysis artifacts are ready. Produces decision-oriented narratives with statistical validation and next actions, writing into an Obsidian vault.
Enforces fresh verification of analysis results before making claims. Requires running the analysis from raw data and reading actual output before reporting any finding.
Verifies data science analysis reproducibility and completion with automated guard hooks and a structured checklist. Useful when confirming analysis results or validating output.
Share bugs, ideas, or general feedback.
Complete an investigation by confirming reproducibility, presenting clear options, handling the chosen one, and archiving everything needed to reproduce the result.
Core principle: Confirm reproducibility -> separate confirmatory from exploratory -> present options -> execute choice -> archive code + data + environment + pre-registration.
Announce at start: "I'm using the reporting-and-archiving-findings skill to complete this work."
Before reporting anything, confirm the whole analysis reproduces from immutable raw data with the fixed seed in the pinned environment.
# From a clean state: re-run the pipeline end to end
# Confirm headline numbers match what you intend to report
Use science-superpowers:verifying-results-before-claiming. If it doesn't reproduce, stop — fix reproducibility (possibly via science-superpowers:investigating-anomalous-results) before reporting. Don't report a number you can't regenerate.
GIT_DIR=$(cd "$(git rev-parse --git-dir)" 2>/dev/null && pwd -P)
GIT_COMMON=$(cd "$(git rev-parse --git-common-dir)" 2>/dev/null && pwd -P)
BRANCH=$(git branch --show-current)
GIT_DIR == GIT_COMMON: normal repo, no worktree cleanup neededGIT_DIR != GIT_COMMON, named branch: worktree, provenance-based cleanup (Step 5)git merge-base HEAD main 2>/dev/null || git merge-base HEAD master 2>/dev/null
Or ask: "This branch split from main — correct?"
Normal repo / named-branch worktree — present exactly these 4 options:
Analysis complete and reproducible. What would you like to do?
1. Merge the analysis back to <base-branch> locally
2. Write up and share (report / preprint / pull request)
3. Keep the branch as-is (I'll handle it later)
4. Discard this work
Which option?
Detached HEAD — present these 3 (no local merge):
Analysis complete and reproducible (externally managed workspace).
1. Push as a new branch and open a pull request / share
2. Keep as-is
3. Discard this work
Which option?
Don't add explanation — keep options concise.
MAIN_ROOT=$(git -C "$(git rev-parse --git-common-dir)/.." rev-parse --show-toplevel)
cd "$MAIN_ROOT"
git checkout <base-branch> && git pull && git merge <feature-branch>
# Re-run the pipeline on the merged result; confirm it still reproduces
Then cleanup worktree (Step 6), then git branch -d <feature-branch>.
Produce the report (see "Report Content" below). If sharing via PR:
git push -u origin <feature-branch>
gh pr create --title "<title>" --body "$(cat <<'EOF'
## Question
<the research question>
## What was done
<the pre-registered analysis, and any documented deviations>
## Findings
<confirmatory results with effect sizes + intervals>
## Exploratory (not confirmatory)
<clearly separated leads>
## Reproducibility
- Pre-registration: <path/commit>
- Environment: <lockfile>
- Seed: <value>
- Re-run: <command>
EOF
)"
Do NOT clean up the worktree — it's needed for iteration on feedback.
Report: "Keeping branch . Worktree preserved at ." No cleanup.
Confirm first:
This will permanently delete:
- Branch <name>
- All commits: <list>
- Worktree at <path>
Type 'discard' to confirm.
Wait for the exact word. Then cleanup worktree (Step 6) and git branch -D <feature-branch>.
Only for Options 1 and 4. Options 2 and 3 preserve the worktree.
WORKTREE_PATH=$(git rev-parse --show-toplevel)
GIT_DIR == GIT_COMMON: normal repo, nothing to clean up..worktrees/, worktrees/, or ~/.config/superpowers/worktrees/: we own it.
MAIN_ROOT=$(git -C "$(git rev-parse --git-common-dir)/.." rev-parse --show-toplevel)
cd "$MAIN_ROOT"
git worktree remove "$WORKTREE_PATH"
git worktree prune
Every report MUST:
Whatever the option, ensure the archive contains everything needed to regenerate the result:
Never:
Always: