Workflow leaderboard / General / Coding assistant
Automate a research pipeline with provenance
自动化科研流程并保留来源记录
Replace an undocumented sequence of analysis commands with a restartable workflow that records inputs, outputs and software configuration.
Variants
Free & local / 免费本地
~40 min setup
Any laptop that can run the underlying analysis. Snakemake itself has modest requirements.
| Component | Role | Price | Link |
|---|---|---|---|
| Snakemake 9.24.0 | dependency-aware research workflow execution | Free / 免费MIT-licensed workflow softwarechecked 2026-08-02 | https://github.com/snakemake/snakemake/releases/tag/v9.24.0 |
Save as Snakefile
rule all:
input: 'results/summary.csv', 'results/report.html'
rule clean:
input: 'data/raw.csv'
output: 'work/clean.csv'
conda: 'envs/analysis.yml'
shell: 'python scripts/clean.py {input} {output}'
rule analyze:
input: 'work/clean.csv'
output: 'results/summary.csv'
conda: 'envs/analysis.yml'
shell: 'python scripts/analyze.py {input} {output}'
rule report:
input: data='results/summary.csv', source='report.qmd'
output: 'results/report.html'
conda: 'envs/analysis.yml'
shell: 'quarto render {input.source} --output-dir results'
Save as envs/analysis.yml
channels:
- conda-forge
dependencies:
- python=3.12
- pandas
- quarto=1.10
- jupyter
Dry-run, execute and record provenance
snakemake --dry-run --printshellcmds
snakemake --cores 1 --use-conda --software-deployment-method conda
snakemake --report results/workflow-report.html
sha256sum data/raw.csv Snakefile envs/analysis.yml scripts/*.py > results/SHA256SUMS
Known pitfalls
- A workflow only tracks dependencies declared in its rules.
- Never make raw data an output target.
- Shell commands must fail on errors rather than leave partial outputs.
- Review generated workflow code before running it on restricted data or expensive compute.
Evidence
- Snakemake 9.24.0 is the latest release returned by the official GitHub repository on the verification date. source (2026-08-02)