bio-assembly-qc
Skill9 starsChanged 4 months agoMITView on GitHub
Assemble isolate genomes or metagenomes and run QUAST/MetaQUAST with a restartable driver. Use when turning QC-passed reads into contigs and checking assembly contiguity.
In this repository35 other files it gives its agents.
- AGENTS.mdAGENTS.md
- docs/agents.mdAGENTS.md
- ai-scientist-evaluatorSkill
- arxiv-searchSkill
- beautiful-data-vizSkill
- bio-annotationSkill
- bio-binning-qcSkill
- bio-fasta-database-curatorSkill
- bio-foundation-housekeepingSkill
- bio-gene-callingSkill
- bioinformatics-projectSkill
- bio-interdomain-hgtSkill
- bio-logicSkill
- bio-phylogenomicsSkill
- bio-prefect-dask-nextflowSkill
- bio-protein-clustering-pangenomeSkill
- bio-reads-qc-mappingSkill
- biorxiv-searchSkill
- bio-stats-ml-reportingSkill
- bio-structure-annotationSkill
- bio-viromicsSkill
- bio-workflow-methods-docwriterSkill
- crossref-lookupSkill
- csag-extractionSkill
- exploratory-data-analysisSkill
- manuscript-review-councilSkill
- notebooksSkill
- pdf-to-mdSkill
- plotly-dashboard-skillSkill
- polars-dovmedSkill
- proposal-reviewSkill
- public-db-lookupSkill
- scientific-impact-assessmentSkill
- scientific-writingSkill
- tracking-taxonomy-updatesSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 32
Run assembly with resource-aware settings and record exact CLI, version, thread count, and RAM ceiling.
- Distinctive: line 38
Use the QuickClade domain routing table to decide the next step:
- Very specific: line 78
Use fixtures/assemblies.tsv as the executable short-read, long-read, and metagenome planning fixture.
- Very specific: line 83
Solution: Check whether the script is doing a raw full-file preflight (gzip -t, raw seqkit stats) instead of productive filtering.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Bio Assembly QC
Assemble isolate genomes or metagenomes from QC-passed reads, normalize the assembler output to one contigs.fasta per sample, and run QUAST or MetaQUAST.
Instructions
Tool guides and versions: docs/README.md.
Validate the assembly manifest and inspect a restartable execution plan before starting expensive work:
uv run --script skills/bio-assembly-qc/scripts/run_assembly_qc.py \ assemblies.tsv --out results/bio-assembly-qc --threads 4 # Inspect run_manifest.json, then execute the same plan on a compute node: uv run --script skills/bio-assembly-qc/scripts/run_assembly_qc.py \ assemblies.tsv --out results/bio-assembly-qc --threads 16 --executeThe driver rejects samples whose upstream
read_qc_statusis notpassed. It runs SPAdes (--isolate), metaSPAdes, Flye/metaFlye, or metaMDBG by mode, passes--threadsto every tool (default 4; SPAdes otherwise uses 16), normalizes the assembler output to per-samplecontigs.fasta, and chooses QUAST or MetaQUAST from the mode. It reuses a stage only when its declared outputs are non-empty and its.donemarker exists. Run--executethrough the scheduler (sbatch) for anything beyond the fixtures, not on a login node.- Select an assembler based on read type, genome/metagenome scope, and sample diversity:
- Illumina short-read isolates and hybrid assemblies: SPAdes v4.0.0+ (v4.3.0 current). Use
metaSPAdesfor short-read metagenomes. - Long-read bacterial isolates (PacBio CLR, ONT): Flye v2.9.5+ for the draft assembly. Use Autocycler v0.6+ when a complete bacterial consensus genome is needed from several independent long-read assemblies; do not use it for mixed communities.
- Long-read metagenomes: Flye v2.9.5+ in
--metamode (metaFlye) as the baseline for ONT and CLR communities. - HiFi metagenomes: metaMDBG v1.1+. In its benchmark it recovered up to twice as many circularized high-quality MAGs as metaFlye on HiFi data (see docs/README.md). Keep metaFlye as a comparator when a per-sample failure is suspected.
- Very large or diverse long-read datasets where runtime limits the work: myloasm, when its read profile matches the dataset.
- The driver does not run Autocycler, hybrid SPAdes, or myloasm. Run those by hand and record the exact commands and versions.
- Illumina short-read isolates and hybrid assemblies: SPAdes v4.0.0+ (v4.3.0 current). Use
- Run assembly with resource-aware settings and record exact CLI, version, thread count, and RAM ceiling.
- For very large ONT/metagenome FASTQs, use
/bio-reads-qc-mappingguidance for filtering and avoid redundant full-file raw-read preflights before filtering. Record raw file metadata (statpath, size, mtime), optionally run a small sampled check, and writeseqkit statsafter each produced read set. - Use atomic output patterns for long-running filters and assemblies: write to
.tmp, verify non-empty/readable output, thenmvinto the final path. Resume mode should skip existing final outputs only after sanity checks; when checks fail, use a tool-supported overwrite option or remove the corrupt final output before rerunning. - For Flye/metaFlye failures or interrupted jobs, prefer
--resumeor--resume-fromin the existing output directory when the prior run is structurally intact. Do not delete a large partial assembly unless logs or missing stage files show it is corrupted.
- For very large ONT/metagenome FASTQs, use
- Summarize the QUAST v5.3+ or MetaQUAST
report.tsvper sample (contig count, total length, N50, largest contig) against project thresholds. - For every produced
contigs.fasta, invoke/tracking-taxonomy-updatesto run the BBTools-container QuickCladepercontigdomain screen before choosing downstream genome/MAG/viral/eukaryotic workflows. - Use the QuickClade domain routing table to decide the next step:
- Bacteria/Archaea ->
/bio-gene-calling,/bio-annotation, and GTDB-Tk taxonomy assignment. - Viral or virus-like ->
/bio-viromicsbefore prokaryotic MAG tooling. - Eukaryota -> eukaryote-aware gene/QC workflows and EukCC where bins or genomes are present.
- Mixed/low-confidence -> split or flag contigs before domain-specific analysis.
- Bacteria/Archaea ->
Input Requirements
Prerequisites:
- Tools declared in the project's pinned Pixi environment. See
docs/README.mdfor expected tools. - Sufficient disk and RAM for chosen assembler. Inputs:
- reads/.fastq.gz or reads/.fastq (raw or filtered reads; verify actual compression by content when suffixes are suspect).
assemblies.tsvwithsample_id,mode,read1,read2,read_qc_status, andread_platform; supported core modes areshort_isolate,long_isolate,short_metagenome,long_metagenome, andhifi_metagenome.read_platformis required forlong_isolateandlong_metagenome, and selects the Flye error model:ontgives--nano-hq,pacbio-clrgives--pacbio-raw,pacbio-hifigives--pacbio-hifi. Leave it empty for short-read modes;hifi_metagenomeaccepts onlypacbio-hifior an empty value.
Output
- results/bio-assembly-qc/run_manifest.json (validated rows, planned commands, and per-stage
statusafter--execute) - results/bio-assembly-qc/<sample_id>/assembler/ (raw assembler output)
- results/bio-assembly-qc/<sample_id>/contigs.fasta (normalized assembly)
- results/bio-assembly-qc/<sample_id>/quast/report.tsv (QUAST or MetaQUAST metrics)
- results/bio-assembly-qc/domain_routing.tsv (written by the
/tracking-taxonomy-updatesQuickClade step, not by the driver) - stdout: the last line is one JSON envelope
{ok, skill, out, manifest, warnings}(driver stdout contract in AGENTS.md)
Quality Gates
- Assembly size range and N50 distribution meet project thresholds.
- Every assembler output is normalized to a non-empty per-sample
contigs.fastabefore QC or downstream routing. - On execution failure, preserve logs and report the failed command; retry only after diagnosing the cause and recording the changed parameters. Report unmet biological thresholds as results; never tune parameters solely to pass a gate.
- Verify reads are present and readable. If
gzip -tfails on a.gz-named file, inspect magic bytes or file type before labeling it corrupt; it may be plain FASTQ with the wrong suffix. - Check available disk space before assembly.
- For large ONT/metagenome inputs, raw file metadata and post-filter
seqkit statsare recorded without redundant full-file raw preflight scans. - Long-running filter outputs use
.tmpplus atomic rename, and resume guards require a stage.donemarker before reusing non-empty outputs. - Flye/metaFlye logs are inspected before deciding whether to resume, rerun, or clean a partial output directory.
- For Autocycler isolate consensus, record each input assembler/run and confirm the sample is not a mixed community.
- QuickClade
percontigdomain screen completed or the reason for skipping it is explicitly recorded. - Domain routing table is reviewed before selecting MAG, viral, bacterial/archaeal, or eukaryotic downstream tools.
Examples
Use fixtures/assemblies.tsv as the executable short-read, long-read, and metagenome planning fixture.
Troubleshooting
Issue: Large ONT assembly workflow appears stalled before assembly
Solution: Check whether the script is doing a raw full-file preflight (gzip -t, raw seqkit stats) instead of productive filtering. For urgent routing/assembly, replace raw full scans with metadata plus sampled checks, then run filtering and post-filter stats.
Issue: Flye job timed out or was interrupted
Solution: Inspect flye.log and stage files. If the output directory is intact, resubmit with Flye resume options rather than restarting from scratch.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

