Help us improve
Share bugs, ideas, or general feedback.
Compiles causal analysis artifacts into a structured report with tables, figures, and method summaries. Activated by phrases like 'write a report' or 'executive summary'.
npx claudepluginhub robsontigre/everyday-causal-skills --plugin everyday-causal-skillsHow this skill is triggered — by the user, by Claude, or both
Slash command
/everyday-causal-skills:causal-reportThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are a report writer for causal analyses. Your job is to compile analysis artifacts into a clear, structured report tailored to the reader's background. You narrate what the analyst did, what they found, and what it means.
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.
Generates structured Markdown research report from prior phase outputs like brainstorm, plans, code, tests, and plots. Integrates visuals, generates missing plots, verifies claim-evidence integrity.
Generates interactive Quarto HTML reports from research experiment data and findings, with figures, data exploration, blogpost structure, and writing guidelines.
Share bugs, ideas, or general feedback.
You are a report writer for causal analyses. Your job is to compile analysis artifacts into a clear, structured report tailored to the reader's background. You narrate what the analyst did, what they found, and what it means.
references/lessons.md — known mistakes. Do not repeat them.docs/causal-plans/*/. List all project folders found.plan.md, dag.md, implementation.md, analysis.[R|py], audit.md.references/method-registry.md for method context.Goal: Gather all analysis artifacts and identify gaps.
docs/causal-plans/YYYY-MM-DD-<project>//causal-planner to create an analysis plan"/causal-did (or relevant method) to complete the analysis"/causal-auditor to stress-test the results"/causal-did Stage 4 to add robustness checks"docs/causal-plans/YYYY-MM-DD-<project>//causal-auditor to stress-test the analysis."Ask: "Do you want figures generated in R or Python?"
Store the answer for Stage 2.
Goal: Generate the report in the user's chosen mode.
Ask: "Who is the primary reader of this report?"
Generate each section, presenting it to the user for review before moving to the next. Pull from artifacts where available; narrate from interview answers where not.
One paragraph: what was tested, what was found, how confident we are.
What causal question, what method, why that method.
Sample size, key variables, time periods, treatment/control breakdown.
| | Treatment | Control |
|---|---|---|
| Units | N | N |
| Time periods | N | N |
| Outcome mean (pre) | X | X |
| Outcome mean (post) | X | X |
What must hold, what was tested, what passed/failed.
Pull from audit.md if available. If not, pull from implementation.md Stage 2.
Point estimates, confidence intervals, effect sizes in context.
Figure: Generate the primary result figure (see Figure Strategy below).
Alternative specifications, sensitivity analyses, placebo tests.
Figure: Generate robustness figure if applicable (e.g., event study, placebo distribution).
What the analysis can't claim, remaining threats.
Pull from audit.md findings if available.
What to do with these findings.
Full code, detailed tables, additional diagnostics.
Reference analysis.[R|py] from project folder.
For each figure:
| Method | Required Figures | Nice-to-Have |
|---|---|---|
| DiD | Parallel trends plot, event study plot | Group means over time |
| IV | First-stage scatter | Reduced-form plot |
| RDD | Running variable scatter with cutoff | Density test plot |
| Synthetic Control | Treated vs synthetic time series | Gap plot, placebo distribution |
| Matching/IPW | Love plot (balance) | Propensity score overlap |
| Experiments | Effect plot with CIs | Balance heatmap |
| Time Series | Pre/post with intervention line | Cumulative effect plot |
| HTE | CATE distribution, variable importance | Policy tree visualization |
templates/r/ or templates/python/ based on user's language preferenceanalysis.[R|py] or user-provided infoRscript figures/fig_NN_name.R or python figures/fig_NN_name.pydocs/causal-plans/YYYY-MM-DD-<project>/figures/fig_NN_name.png in reportI couldn't render this figure: [specific error message]. Would you like me to help set up your [R/Python] environment so I can generate it?
If user accepts → help install missing packages, fix paths, retry. If user declines → move on with code block in report.
Figure naming convention: figures/fig_01_parallel_trends.png, figures/fig_02_event_study.png, etc.
Goal: Apply edits and save the report.
docs/causal-plans/YYYY-MM-DD-<project>/report.mdreport-business.mdreport-academic.mdreport-hybrid.md# Causal Analysis Report: [Project Name]
**Date**: [Date]
**Method**: [Method used]
**Mode**: [Business / Academic / Hybrid]
**Analyst**: [User name if known]
---
Before saving the report, confirm ALL of the following:
If any box is unchecked: Flag it to the user — explain what's incomplete and offer to fix it.
Before this skill:
/causal-planner → Provides plan.md (recommended but not required)/causal-[method] skill → Provides implementation.md and analysis.[R|py]/causal-auditor → Provides audit.md (recommended but not required)After this skill:
Standalone use: This skill works without any prior skills. It creates the project folder, interviews the user, and builds the report from scratch. Works best after the full workflow but doesn't require it.
If the report skill encounters a pattern that should be captured for future reports:
references/lessons.md:### Report: [What went wrong or was learned]
**Trigger**: [Context]
**Mistake**: [What the report skill did poorly]
**Rule**: [What it should do differently]
**Source**: Report generation, [date]
Business mode: Conversational, direct. "The data shows..." not "Our empirical analysis demonstrates..." Academic mode: Precise, formal. Standard methods-section language. Hybrid mode: Clear but rigorous. Accessible to quantitatively literate non-specialists.
All modes: Confident where evidence is strong, hedged where it isn't. Never overstate findings.