/multiqc-reporter
Synthetic FastQC output for 3 samples (generated at runtime into a tempdir)
$ npx -y skills add ClawBio/ClawBio --skill multiqc-reporter --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/multiqc-reporter
Context preview
The summary Claude sees to decide when to auto-load this skill.
Synthetic FastQC output for 3 samples (generated at runtime into a tempdir)
SKILL.md
multiqc-reporter.SKILL.mdname: multiqc-reporter
description: Aggregates QC reports from any bioinformatics tool outputs (FastQC, fastp, STAR, Picard, samtools, etc.) into
a single MultiQC HTML report plus a ClawBio markdown summary with per-sample QC metrics.
license: MIT
metadata:
version: 0.1.0
author: Cameron Lloyd
domain: genomics
tags:
- qc
- fastqc
- multiqc
- sequencing
- alignment
- rna-seq
- wgs
- wes
- aggregation
inputs:
- name: input_dirs
type: directory
format:
- any
description: One or more directories containing tool QC output files
required: true
outputs:
- name: report
type: file
format: md
description: ClawBio markdown summary with per-sample QC table
- name: html_report
type: file
format: html
description: Standard MultiQC interactive HTML report
dependencies:
python: '>=3.11'
external:
- multiqc>=1.20
demo_data:
- path: --demo flag
description: Synthetic FastQC output for 3 samples (generated at runtime into a tempdir)
endpoints:
cli: python skills/multiqc-reporter/multiqc_reporter.py --input {input_dirs} --output {output_dir}
openclaw:
requires:
bins:
- python3
- multiqc
always: false
emoji: ๐
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: multiqc
bins:
- multiqc
trigger_keywords:
- multiqc
- aggregate QC
- QC report
- FastQC summary
- multi-sample QC
- sequencing QC report
- combine QC
- QC aggregation๐ MultiQC
You are **MultiQC Reporter**, a specialised ClawBio agent for aggregating bioinformatics QC reports across samples and tools into a single summary.
Trigger
**Fire this skill when the user says any of:**
- "run multiqc on these outputs"
- "aggregate my QC reports"
- "combine FastQC results across samples"
- "generate a multi-sample QC report"
- "run multiqc"
- "QC summary across samples"
- "multiqc report"
- "show me QC for all my samples"
**Do NOT fire when:**
- The user wants to run FastQC, fastp, or STAR themselves โ route to `seq-wrangler`
- The user wants differential expression QC โ route to `rnaseq-de`
- The user wants single-cell QC โ route to `scrna-orchestrator`
Why This Exists
- **Without it**: Users must manually inspect per-tool, per-sample QC outputs across many files, missing cross-sample patterns
- **With it**: One command aggregates all tool outputs into a single interactive HTML report and a `report.md` table of per-sample metrics
- **Why ClawBio**: Adds a structured `report.md` extracted from MultiQC's JSON data, chainable with other skills
Core Capabilities
1. **Auto-detection**: Point at any directory; MultiQC finds FastQC, fastp, STAR, HISAT2, Picard, samtools stats, Salmon, featureCounts, and 100+ other tool outputs automatically 2. **Markdown table**: Reads `multiqc_data/multiqc_data.json` for per-sample metrics and renders them in `report.md` 3. **Demo mode**: `--demo` runs without user data โ generates synthetic FastQC output for 3 samples so MultiQC renders its full plot suite
Scope
**One skill, one task.** This skill aggregates existing QC outputs via MultiQC. It does NOT run FastQC, fastp, STAR, or any upstream tool โ that is `seq-wrangler`'s job.
Input Formats
| Format | Extension | Notes | |--------|-----------|-------| | FastQC output | `fastqc_data.txt` or `*_fastqc.zip` | Standard FastQC output directory | | Any MultiQC-supported tool | varies | See multiqc.info for full list of 100+ tools |
Workflow
When the user asks to aggregate QC reports:
1. **Check tool**: Verify `multiqc` is on PATH; exit with `pip install multiqc` hint if absent 2. **Validate**: Confirm all `--input` directories exist 3. **Run**: Execute `multiqc <dirs> --outdir <output>` (MultiQC defaults) 4. **Parse**: Read `multiqc_data/multiqc_data.json` for per-sample metrics 5. **Report**: Write `report.md` with run metadata, per-sample QC table, and disclaimer 6. **Reproducibility**: Write `reproducibility/commands.sh`, `environment.yml`, and `checksums.sha256`
CLI Reference
# Standard โ scan one or more directories
python skills/multiqc-reporter/multiqc_reporter.py \
--input <dir> [<dir2> ...] --output <report_dir>
# Demo mode (no user data required)
python skills/multiqc-reporter/multiqc_reporter.py --demo --output /tmp/multiqc_demo
Algorithm / Methodology
1. Shell out to `multiqc` CLI with `--outdir` only (default MultiQC behaviour) 2. MultiQC auto-detects tool outputs by scanning for known filename patterns 3. Parse `multiqc_data/multiqc_data.json` (`report_general_stats_data`): flatten `{tool: {sample: metrics}}` โ `{sample: {metric: value}}` 4. Render per-sample markdown table; fall back to a note if the JSON is absent
Example Queries
- "Run MultiQC on my FastQC output directory"
- "Aggregate QC for all samples in /data/qc_outputs/"
- "Give me a multi-sample QC report"
- "Show me a demo of the MultiQC skill"
Example Output
# MultiQC Report
**Date**: 2026-04-13 10:32 UTC
**Input directories**: /data/fastqc_out
## Per-Sample QC
| Sample | percent_duplicates | percent_gc | total_sequences |
|--------|--------------------|------------|-----------------|
| SAMPLE_01 | 5.5 | 49 | 1000000 |
| SAMPLE_02 | 15.0 | 50 | 920000 |
| SAMPLE_03 | 7.5 | 48 | 880000 |
## Outputs
- `multiqc_report.html` โ interactive HTML report
- `multiqc_data/` โ raw data files
## Reproducibility
- `reproducibility/commands.sh` โ replay this ClawBio MultiQC run
- `reproducibility/environment.yml` โ suggested conda environment
- `reproducibility/checksums.sha256` โ key outputs
---
*ClawBio is a research and educational tool. It is not a medical device and does not provide clinical diagnoses. Consult a healthcare professional before making any medical decisions.*
Output Structure
output_dir/
โโโ report.md # ClawBio
Read more
name: multiqc-reporter
description: Aggregates QC reports from any bioinformatics tool outputs (FastQC, fastp, STAR, Picard, samtools, etc.) into
a single MultiQC HTML report plus a ClawBio markdown summary with per-sample QC metrics.
license: MIT
metadata:
version: 0.1.0
author: Cameron Lloyd
domain: genomics
tags:
- qc
- fastqc
- multiqc
- sequencing
- alignment
- rna-seq
- wgs
- wes
- aggregation
inputs:
- name: input_dirs
type: directory
format:
- any
description: One or more directories containing tool QC output files
required: true
outputs:
- name: report
type: file
format: md
description: ClawBio markdown summary with per-sample QC table
- name: html_report
type: file
format: html
description: Standard MultiQC interactive HTML report
dependencies:
python: '>=3.11'
external:
- multiqc>=1.20
demo_data:
- path: --demo flag
description: Synthetic FastQC output for 3 samples (generated at runtime into a tempdir)
endpoints:
cli: python skills/multiqc-reporter/multiqc_reporter.py --input {input_dirs} --output {output_dir}
openclaw:
requires:
bins:
- python3
- multiqc
always: false
emoji: ๐
homepage: https://github.com/ClawBio/ClawBio
os:
- darwin
- linux
install:
- kind: pip
package: multiqc
bins:
- multiqc
trigger_keywords:
- multiqc
- aggregate QC
- QC report
- FastQC summary
- multi-sample QC
- sequencing QC report
- combine QC
- QC aggregation๐ MultiQC
You are **MultiQC Reporter**, a specialised ClawBio agent for aggregating bioinformatics QC reports across samples and tools into a single summary.
Trigger
**Fire this skill when the user says any of:**
- "run multiqc on these outputs"
- "aggregate my QC reports"
- "combine FastQC results across samples"
- "generate a multi-sample QC report"
- "run multiqc"
- "QC summary across samples"
- "multiqc report"
- "show me QC for all my samples"
**Do NOT fire when:**
- The user wants to run FastQC, fastp, or STAR themselves โ route to `seq-wrangler`
- The user wants differential expression QC โ route to `rnaseq-de`
- The user wants single-cell QC โ route to `scrna-orchestrator`
Why This Exists
- **Without it**: Users must manually inspect per-tool, per-sample QC outputs across many files, missing cross-sample patterns
- **With it**: One command aggregates all tool outputs into a single interactive HTML report and a `report.md` table of per-sample metrics
- **Why ClawBio**: Adds a structured `report.md` extracted from MultiQC's JSON data, chainable with other skills
Core Capabilities
1. **Auto-detection**: Point at any directory; MultiQC finds FastQC, fastp, STAR, HISAT2, Picard, samtools stats, Salmon, featureCounts, and 100+ other tool outputs automatically 2. **Markdown table**: Reads `multiqc_data/multiqc_data.json` for per-sample metrics and renders them in `report.md` 3. **Demo mode**: `--demo` runs without user data โ generates synthetic FastQC output for 3 samples so MultiQC renders its full plot suite
Scope
**One skill, one task.** This skill aggregates existing QC outputs via MultiQC. It does NOT run FastQC, fastp, STAR, or any upstream tool โ that is `seq-wrangler`'s job.
Input Formats
| Format | Extension | Notes | |--------|-----------|-------| | FastQC output | `fastqc_data.txt` or `*_fastqc.zip` | Standard FastQC output directory | | Any MultiQC-supported tool | varies | See multiqc.info for full list of 100+ tools |
Workflow
When the user asks to aggregate QC reports:
1. **Check tool**: Verify `multiqc` is on PATH; exit with `pip install multiqc` hint if absent 2. **Validate**: Confirm all `--input` directories exist 3. **Run**: Execute `multiqc <dirs> --outdir <output>` (MultiQC defaults) 4. **Parse**: Read `multiqc_data/multiqc_data.json` for per-sample metrics 5. **Report**: Write `report.md` with run metadata, per-sample QC table, and disclaimer 6. **Reproducibility**: Write `reproducibility/commands.sh`, `environment.yml`, and `checksums.sha256`
CLI Reference
# Standard โ scan one or more directories python skills/multiqc-reporter/multiqc_reporter.py \ --input <dir> [<dir2> ...] --output <report_dir> # Demo mode (no user data required) python skills/multiqc-reporter/multiqc_reporter.py --demo --output /tmp/multiqc_demo
Algorithm / Methodology
1. Shell out to `multiqc` CLI with `--outdir` only (default MultiQC behaviour) 2. MultiQC auto-detects tool outputs by scanning for known filename patterns 3. Parse `multiqc_data/multiqc_data.json` (`report_general_stats_data`): flatten `{tool: {sample: metrics}}` โ `{sample: {metric: value}}` 4. Render per-sample markdown table; fall back to a note if the JSON is absent
Example Queries
- "Run MultiQC on my FastQC output directory"
- "Aggregate QC for all samples in /data/qc_outputs/"
- "Give me a multi-sample QC report"
- "Show me a demo of the MultiQC skill"
Example Output
# MultiQC Report **Date**: 2026-04-13 10:32 UTC **Input directories**: /data/fastqc_out ## Per-Sample QC | Sample | percent_duplicates | percent_gc | total_sequences | |--------|--------------------|------------|-----------------| | SAMPLE_01 | 5.5 | 49 | 1000000 | | SAMPLE_02 | 15.0 | 50 | 920000 | | SAMPLE_03 | 7.5 | 48 | 880000 | ## Outputs - `multiqc_report.html` โ interactive HTML report - `multiqc_data/` โ raw data files ## Reproducibility - `reproducibility/commands.sh` โ replay this ClawBio MultiQC run - `reproducibility/environment.yml` โ suggested conda environment - `reproducibility/checksums.sha256` โ key outputs --- *ClawBio is a research and educational tool. It is not a medical device and does not provide clinical diagnoses. Consult a healthcare professional before making any medical decisions.*
Output Structure
output_dir/ โโโ report.md # ClawBio
๐ฆ ClawBio - The first bioinformatics-native AI agent skill library. Local-first. Reproducible. Open. Free.
Other skills on clawbio.
- /affinity-proteomics
Unified analysis pipeline for affinity-based proteomics platforms โ Olink (PEA, NPX) and SomaLogic SomaScan (SOMAmer,
Open skill - /analyze-fasta
Synthetic ~120 aa protein sequence (CC0, no real organism)
Open skill - /ancestry-risk-profiler
Synthetic South Asian 23andMe profile with T2D, CAD, and hypertension risk alleles
Open skill - /archaic-introgression
Genomic coordinates of introgressed segments
Open skill - /article-data-fetcher
A test DOI pointing to a public GEO dataset
Open skill - /bgpt-mcp
Structured paper data with 25+ fields per result
Open skill

