Claude-skill-registry experiment-report
This skill should be used when generating integrated reports from lab notebooks, improving existing reports, or exporting reports to PDF/typst. Triggered by requests like "generate report", "create summary", "refine report", "improve report", "export to PDF", "typst出力", "PDFに変換", "レポートを作成", or "export report to PDF". For PDF export, use scripts/export_pdf.sh (pandoc + typst).
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/experiment-report" ~/.claude/skills/majiayu000-claude-skill-registry-experiment-report && rm -rf "$T"
skills/data/experiment-report/SKILL.mdExperiment Report Management
Overview
Provides comprehensive report generation and refinement capabilities. Following the skill-creator pattern, this plugin handles both:
- Init (Generation): Mechanical extraction and templating from lab notebooks
- Refine (Improvement): AI-guided improvement for scientific rigor and clarity
Core Capabilities
1. Report Generation
Create integrated reports from completed lab notebooks using
init_report.py.
Execution context: All commands assume execution from project root (where STEERING.md is located).
When to use: When ready to synthesize multiple experiments into a cohesive report.
Pre-Generation Checklist (MANDATORY)
Before running init_report.py, verify these requirements:
Step 1: Notebook Completeness
- All included notebooks have completed Results sections
- All included notebooks have completed Discussion sections
- All figures saved to
directoryresults/exp##/
Step 2: Project Alignment
- Report scope aligns with STEERING.md objectives
- Primary hypothesis/research question identified
- Notebooks collectively address the research question
Step 3: Evidence Verification
- List all figures needed for each finding
- Verify figure paths exist:
ls ../results/exp##/ - Identify key statistics for each claim
- Note any missing evidence to address
Pre-Generation Questions (ask user):
- "Which experiments are included?" (list Exp## numbers)
- "Is the Discussion section complete in each notebook?"
- "What is the main research question this report addresses?"
- "What are the 2-3 key claims you want to make?"
- "Are all figures saved to results/exp##/ directories?"
Workflow
- Complete pre-generation checklist above
- Run init script (from project root):
# If plugin repo is cloned via ghq: python ~/ghq/github.com/dakesan/bioinformatics-research-plugins/plugins/experiment-report/scripts/init_report.py \ --labnote notebook/labnote/Exp*.ipynb --output notebook/report/ # Or copy script to project and run locally: python scripts/init_report.py --labnote notebook/labnote/Exp*.ipynb --output notebook/report/ - Script generates template with claim-evidence structure
- Fill in evidence tables for each finding (verify paths exist)
- Complete quality gate checklists in each section
- Output:
notebook/report/Report_[title].md
Mapping rules (from lab notebooks to report):
| Lab Notebook Section | Report Section | Transformation |
|---|---|---|
| Hypothesis + Background | Background | Synthesize context |
| Materials & Methods | Methods Summary | Consolidate procedures |
| Results (observations) | Findings | Structure by theme |
| Discussion (interpretation) | Synthesis | Integrate interpretations |
| Limitations | Limitations | Consolidate caveats |
| Next Steps | Future Directions | Prioritize follow-ups |
| Key conclusion | Executive Summary | Distill to 3-5 sentences |
Command:
/research-report
2. Report Refinement
Improve existing reports using
references/refinement-guide.md criteria.
When to use: After initial report generation or when report needs improvement.
Workflow:
- User specifies existing report to refine
- Read current report content
- Evaluate against refinement criteria:
- Structure: Logical flow, clear sections
- Scientific rigor: Fact/interpretation separation, evidence-based claims
- Clarity: Concise writing, proper terminology
- Provide specific improvement suggestions
- Implement improvements (with user approval)
Refinement dimensions:
-
Structure & Organization:
- Executive Summary: 3-5 sentences, captures essence
- Logical flow: Each section builds on previous
- Redundancy: No unnecessary repetition
- Completeness: All findings addressed
-
Scientific Accuracy:
- Facts vs interpretation: Clearly separated
- Evidence: Every claim supported by data
- Limitations: Acknowledged appropriately
- Alternatives: Considered and discussed
- Statistics: Properly reported
-
Writing Quality:
- Clarity: Precise, unambiguous language
- Conciseness: Efficient communication
- Terminology: Consistent and appropriate
- Figures: Properly referenced
- Citations: Accurate and complete
Command:
/research-refine
3. Report Structure
Standard report structure:
# [Report Title] **Date**: YYYY-MM-DD **Report Type**: Integrated Analysis Report --- ## Executive Summary [3-5 sentences capturing key findings and implications] ## Background [Research question, context, and rationale] ## Materials and Methods [Consolidated methods from experiments] ## Findings ### Finding 1: [Title] - **Observation**: [Factual description] - **Evidence**: [Lab notebook references, figures] ### Finding 2: [Title] [Repeat structure] ## Synthesis [Integrated interpretation of findings] ## Limitations [Acknowledged constraints and caveats] ## Future Directions [Prioritized next steps] ## Conclusion [Final synthesis and key takeaways] ## References [Citations] --- ## Appendix ### Lab Notebooks - Exp01_[name].ipynb - Exp02_[name].md ### Supplementary Figures [Links]
4. Quality Standards
Reports maintain separation between facts and interpretation (from research-project quality-standards.md):
In Findings section (Level 1: Facts):
- Present observations directly
- Reference source notebooks
- Include exact measurements
- Avoid interpretation
In Synthesis section (Level 2: Interpretation):
- Connect observations to meaning
- Cite supporting evidence
- Acknowledge assumptions
- Consider alternatives
In Conclusion section (Level 3: Broader implications):
- Synthesize evidence
- State confidence appropriately
- Suggest applications
- Identify unknowns
5. Figure Integration
Integrate figures from lab notebooks and analysis outputs into reports.
Figure sources:
- Jupyter notebooks: Inline outputs saved to
results/exp##/ - Command-line tools: Output images in
results/exp##/ - External analysis: Imported figures with proper attribution
Directory structure:
notebook/ ├── labnote/ │ ├── Exp01_analysis.ipynb │ └── Exp02_validation.md ├── report/ │ └── Report_Exp01-02_integrated.md └── results/ ├── exp01/ │ ├── fig01_heatmap.png │ └── fig02_volcano.png └── exp02/ └── fig01_validation.png
Markdown figure syntax:
 *Figure 1: Heatmap showing top 50 differentially expressed genes (Exp01).*
Figure naming convention:
- Format:
fig##_description.{png,pdf,svg} - Examples:
,fig01_heatmap.pngfig02_volcano_plot.pdf - Use descriptive names for clarity
Best practices:
- Save all figures to
during experiment executionresults/exp##/ - Use relative paths from report location (
)../results/... - Include figure captions with experiment reference
- Prefer PNG for raster, PDF/SVG for vector graphics
- Number figures sequentially within each experiment
Extracting figures from Jupyter notebooks:
# In notebook cell, save figure explicitly import matplotlib.pyplot as plt fig.savefig('../results/exp01/fig01_heatmap.png', dpi=150, bbox_inches='tight')
6. PDF Export
Export final reports to PDF using the provided shell script.
When to use: When user requests PDF output from a report.
Script location:
scripts/export_pdf.sh
Usage:
# Basic export (output: Report_Exp01-02_integrated.pdf) /path/to/plugins/experiment-report/scripts/export_pdf.sh Report_Exp01-02_integrated.md # Custom output filename /path/to/plugins/experiment-report/scripts/export_pdf.sh Report_Exp01-02_integrated.md custom_output.pdf
The script automatically:
- Detects template location (
)assets/templates/report.typ - Validates prerequisites (pandoc, typst)
- Reports file size on success
Prerequisites: pandoc, typst
brew install pandoc typst
Export workflow:
- Complete and refine Markdown report
- Verify all figure paths are correct (relative paths)
- Run the shell script
- Review PDF output for formatting issues
- Iterate if needed
Troubleshooting:
- Missing figures: Check relative paths from report directory
- Font issues: Ensure typst has access to required fonts
- Long tables: Consider splitting or using landscape orientation
Workflow Patterns
Pattern 1: Single Experiment Report
Scenario: Document one completed experiment
Steps:
- Ensure lab notebook complete
- Run:
specifying single notebook/research-report - Review generated report
- Refine:
to improve clarity/research-refine
Use case: Individual experiment worthy of formal documentation
Pattern 2: Integrated Multi-Experiment Report
Scenario: Synthesize multiple related experiments
Steps:
- Identify notebooks to include (e.g., Exp01-Exp05)
- Run:
specifying all notebooks/research-report - Script extracts and consolidates content
- AI synthesizes findings across experiments
- Refine:
to improve integration/research-refine
Use case: Project milestone, manuscript preparation
Pattern 3: Iterative Refinement
Scenario: Improve existing report quality
Steps:
- Identify report needing improvement
- Run:
on existing report/research-refine - Review suggestions organized by category:
- Structure improvements
- Scientific rigor issues
- Writing clarity enhancements
- Approve and implement changes
- Iterate if needed
Use case: Preparing for presentation, submission, or review
Resources
scripts/
: Report generation script (executable)init_report.py
commands/
: Report generation command (research-report.md
)/research-report
: Report refinement command (research-refine.md
)/research-refine
references/
: Lab notebook → report section mappingmapping-rules.md
: Quality criteria for report improvementrefinement-guide.md
Usage Notes
Generation Best Practices
-
Timing: Generate reports when:
- Multiple related experiments complete
- Ready for project milestone
- Preparing manuscript
- Need formal documentation
-
Scope: Include notebooks that:
- Address related questions
- Build on each other
- Collectively tell a story
-
Preparation: Before generating:
- Ensure all lab notebooks complete
- Review notebook quality
- Identify key findings
Refinement Best Practices
-
Multiple passes: Refine in stages:
- First pass: Structure and organization
- Second pass: Scientific rigor
- Third pass: Writing quality
-
Specific feedback: Request targeted improvements:
- "Improve executive summary"
- "Check fact/interpretation separation"
- "Enhance clarity in Methods"
-
Version control: Commit before and after refinement
Common Improvements
Executive Summary:
- ❌ Too long (>5 sentences) or too vague
- ✅ Concise (3-5 sentences), captures essence
Findings:
- ❌ Mixed facts and interpretation
- ✅ Pure observations, references to notebooks
Synthesis:
- ❌ Unsupported claims, circular reasoning
- ✅ Evidence-based, acknowledges limitations
Limitations:
- ❌ Missing or too apologetic
- ✅ Honest, constructive, identifies solutions
Future Directions:
- ❌ Vague ("more research needed")
- ✅ Specific next experiments with rationale
Integration with Workflow
Typical flow:
- Complete experiments → Lab notebooks (lab-notebook)
- Refine hypotheses → Hypothesis validation (hypothesis-driven)
- Generate report → Synthesis (experiment-report: init)
- Improve quality → Refinement (experiment-report: refine)
- Update project → STEERING.md (research-project)
Report triggers phase transitions:
- Generating report often signals end of Execution phase
- Moving to Integration or Publication phase
- Update STEERING.md accordingly
Examples
Example 1: Quick Single-Experiment Report
User: "Create a report for Exp03"