Add Bactopia Tool
bactopia/bactopia
Scaffold a complete Bactopia Tool across all three tiers -- module, subworkflow, and workflow entry point under workflows/bactopia-tools/.
Authors reproducible Nextflow DSL2 pipelines built on reactive dataflow, where processes communicate only through channels and execution order is not guaranteed.
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelines --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/workflow-management/nextflow-pipelines .claude/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .claude/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelinesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelines --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/workflow-management/nextflow-pipelines .agents/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .agents/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelines --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/workflow-management/nextflow-pipelines .cursor/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .cursor/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/GPTomics/bioSkills.git --path workflow-management/nextflow-pipelines--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelines --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/workflow-management/nextflow-pipelines .gemini/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .gemini/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelinesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .github/skills && cp -r skills-src/workflow-management/nextflow-pipelines .github/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .github/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install GPTomics/bioSkills bio-workflow-management-nextflow-pipelines --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/workflow-management/nextflow-pipelines .opencode/skills/bio-workflow-management-nextflow-pipelines && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "bio-workflow-management-nextflow-pipelines" agent skill from https://github.com/GPTomics/bioSkills/tree/main/workflow-management/nextflow-pipelines into .opencode/skills/bio-workflow-management-nextflow-pipelines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-workflow-management-nextflow-pipelines", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
bio-workflow-management-nextflow-pipelinesAuthors reproducible Nextflow DSL2 pipelines built on reactive dataflow, where processes communicate only through channels and execution order is not guaranteed.
Bio Workflow Management Nextflow Pipelines is an agent skill from GPTomics/bioSkills. Authors reproducible Nextflow DSL2 pipelines built on reactive dataflow, where processes communicate only through channels and execution order is not guaranteed. Use when deciding channel/dataflow (Nextflow) vs rule-based (Snakemake) authoring; wiring queue vs value channels and fixing shared-reference exhaustion with .first(); composing DSL2 modules and subworkflows with take/main/emit; selecting container/conda profiles and pinning images by digest for portability across local/SLURM/LSF/AWS Batch/Google…
Its SKILL.md is about 4.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `usage-guide.md`).
It sits in Research & Science, covering Reproducible research. It works with Nextflow, Amazon Web Services and Kubernetes. The repository describes itself as: a set of SKILLS.md for doing bioinformatics with agents like claude code. The licence is MIT.
Read from SKILL.md and the folder at commit d91ed3d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are groovy).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Bio Workflow Management Nextflow Pipelines loads about 4.4k tokens when it runs. Until then it costs about 222 tokens; SKILL.md has 1,802 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from GPTomics/bioSkills at commit d91ed3d, republished under its MIT licence (© GPTomics). 1,802 words, ~4,410 tokens.
.claude/skills/bio-workflow-management-nextflow-pipelines/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Reference examples tested with: Nextflow 24.04+, fastp 0.23+, Salmon 1.10+, MultiQC 1.21+
Before using code patterns, verify installed versions match. If versions differ:
<tool> --version then <tool> --help to confirm flagsIf code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying.
Note: Nextflow is DSL2-only (DSL1 was removed in 22.12) and calendar-versioned (24.x/25.x), so any single-script DSL1 tutorial is dead. The nf-validation plugin is deprecated in favor of nf-schema. A strict, statically-analyzable syntax (VS Code language server) is opt-in now and default in a later release; writing to it future-proofs a pipeline. Pin container images by immutable digest (@sha256:), never a moving tag such as :latest, or both reproducibility and -resume break.
"Build a scalable, reproducible pipeline with Nextflow" -> Wire containerized processes together with asynchronous channels (reactive dataflow), so the engine fires each task as soon as its inputs are ready, caches completed tasks for -resume, and moves unchanged across executors by swapping a profile.
nextflow run main.nf -profile docker -resumeprocess / workflow / channel-operator syntaxNextflow is push-model dataflow: processes are pure functions wired together by asynchronous channels, every channel item is a future, and a process fires a task the instant a complete set of inputs is available on ALL its input channels. There is no target file, no backward DAG, no filename-to-rule matching. This is the opposite of Snakemake/CWL/WDL, which are pull/goal-oriented (name a target output, the engine walks a dependency DAG backward to decide what runs). Almost every downstream trap traces back to this one axis:
SAMPLE_A may finish after SAMPLE_Z. Never write logic that assumes order; carry an explicit sample key through the tuple instead.-resume re-run everything?" are the two most common support questions, and both are direct symptoms of the dataflow model (see queue-vs-value channels and cache-miss diagnosis below).A second principle sits above the engine: the DAG buys reproducibility of workflow LOGIC and nothing else automatically (Wratten et al. 2021 Nat Methods 18:1161-1168). A clean pipeline over unpinned tools is NOT reproducible. Pin the software environment (container by digest, conda by lockfile), the reference data and params, and control thread/locale/arch leaks (Grüning et al. 2018 Cell Syst 6:631-635). The engine gives one layer; the author pins the rest.
| Axis | Nextflow (DSL2) | Snakemake | WDL (Cromwell/miniwdl) | CWL |
|---|---|---|---|---|
| Model | reactive dataflow (push, no target) | pull/goal (target -> backward DAG) | pull/goal (declared outputs) | pull/goal (typed, declared) |
| Dynamic DAG (shape depends on runtime data) | native, trivial | checkpoints (bolted on) | scatter (static-ish) | limited |
| Cloud/executor portability | best-in-class (swap by profile) | good (v8 plugins, catching up) | strong on GCP/Terra | via Toil/Arvados |
| Community pipelines | nf-core (largest, curated) | Workflow Catalog (smaller) | WARP (Broad) | limited |
| Best when | cloud/production, dynamic pipelines, want nf-core | Python shop, HPC, file-pattern logic | Terra/AnVIL, GATK best practices | vendor-neutral portability, regulated |
Honest take: Nextflow wins on executor portability, nf-core, and dynamic pipelines; Snakemake wins on approachability for Python users. Pick by the ecosystem to integrate with, not by benchmarks.
| Need | Channel type | Create with | Exhaustion behavior |
|---|---|---|---|
| One item consumed by one task (per-sample reads) | queue | Channel.of, .fromPath, .fromFilePairs, .splitCsv | consumed once, then empty forever |
| A shared value reused on EVERY task (a reference/index) | value (singleton) | Channel.value(x), .first(), .collect(), or a bare param | read unlimited times, never exhausted |
The firing rule to memorize: a process launches a new task only when EVERY input channel can supply an item; when a queue input drains, no more tasks fire even if other inputs still have items. So a shared reference passed as a queue channel is consumed by the first sample and every later sample silently never runs (exit 0, no error). Corollary: if all of a process's inputs are value channels its outputs are value channels too; if any input is a queue channel the outputs are queue channels.
| Operator | Does | Trap / when-wrong |
|---|---|---|
map | transform each item | pure only; no I/O side effects |
collect | ALL items -> one list item (queue -> value) | blocks until upstream closes; gathers inputs for one aggregating task (MultiQC) |
groupTuple | group by key into [key, [items]] | bare form WAITS for the whole channel to close (serialization/deadlock); pass size: N or groupKey(key, n); SORT the grouped list or resume breaks |
join | inner-join two channels by key | SILENTLY DROPS non-matching keys by default; use remainder: true or failOnMismatch: true |
combine | Cartesian product (optional by:) | intentional all-vs-all; distinct from join (1:1 merge) |
mix | interleave channels into one | order not preserved; pool outputs before a collect |
branch | route items to named sub-channels | the DSL2 idiom for conditional routing (single_end vs paired) |
first | first item as a VALUE channel | THE queue -> value fix for shared references |
ifEmpty | supply a default if empty | guards the "empty branch silently vanishes" trap |
| Target | executor | Best when | Watch |
|---|---|---|---|
| Laptop/dev | local | development, tiny data, -stub wiring tests | one machine only |
| On-prem HPC | slurm, lsf, sge, pbs | shared cluster, on-prem data | tune queueSize/submitRateLimit; scratch true on slow shared FS |
| Cloud batch | awsbatch, google-batch, azurebatch | elastic scale, no on-prem HPC | input localization copy dominates cost/time; Wave + Fusion cut it |
| Kubernetes | k8s | already running K8s | more setup overhead |
Never bake the executor into pipeline code; always set it in a profile so the same code moves across all of them.
A DSL2 module wraps one tool as a process and can be included and called multiple times (aliased), which DSL1 could not. Subworkflows compose modules with named inputs/outputs.
// modules/fastqc.nf -- one tool, reusable, tested in isolation
process FASTQC {
tag "${meta.id}" // meta map threads sample identity through every operator
container 'quay.io/biocontainers/fastqc:0.12.1--hdfd78af_0' // pin an immutable tag/digest, never :latest
label 'process_low' // maps to central resource config, decoupled from module code
input:
tuple val(meta), path(reads) // nf-core convention: [ meta, files ], meta = [id:'x', single_end:false]
output:
tuple val(meta), path('*.zip'), emit: zip // meta round-trips so downstream always knows the sample
script:
"""
fastqc -t ${task.cpus} ${reads}
"""
}// subworkflows/qc.nf -- take/main/emit names the interface
include { FASTQC } from '../modules/fastqc'
include { MULTIQC } from '../modules/multiqc'
workflow QC {
take:
reads
main:
FASTQC(reads)
MULTIQC(FASTQC.out.zip.collect()) // collect() gathers all samples' zips into ONE aggregating task
emit:
report = MULTIQC.out.report // access as QC.out.report from the caller
}workflow {
reads_ch = Channel.fromFilePairs(params.reads) // queue: [id, [r1, r2]] per sample -- consumed once each
index_ch = Channel.fromPath(params.index) // queue: ONE item, the shared index
// BUG if written ALIGN(reads_ch, index_ch): the index is consumed by sample 1,
// its queue is then empty, and samples 2..N silently never fire (exit 0, no error).
// .first() converts the queue to a VALUE channel, reusable on every task invocation.
ALIGN(reads_ch, index_ch.first())
}-resume reuses a task only on an EXACT hit of the task hash, computed from the input file identities, the resolved script text, the container reference, and input values/params. A single-bit change in any component busts the cache and re-runs the task. The notorious silent causes:
collect/groupTuple/glob expansion) -> the ordered list is part of the hash. Fix: toSortedList() or .map{ k, v -> [k, v.sort()] }.:latest, or a re-pushed version) -> pin by digest.-resume works locally but misses on the cluster. Fix: cache 'lenient' (hashes size + path, ignores mtime).$RANDOM, or hostname baked into the script string -> the script hash changes every run.work/ -> the hash hits the DB but the task dir is gone, forcing a re-run.process ALIGN {
// 'lenient' skips mtime -- the single most useful resume fix on HPC/cloud shared filesystems.
// 'deep' hashes full file CONTENT (slower, robust when metadata lies); 'false' never caches.
cache 'lenient'
// ...
}Definitive diagnosis: run both executions with -dump-hashes and diff which hash component differed, or nextflow log <run_name> -f hash,name,status,workdir to compare per-task hashes across runs. Everything else is guessing.
Every task runs in an isolated work/<hash>/ dir holding the real outputs plus the forensic trail (.command.sh resolved script, .command.log, .exitcode). That directory IS the pipeline's output store and the ONLY thing -resume reads. publishDir merely copies or symlinks SELECTED outputs to a human-friendly location, and its failure can be SILENT because the task itself exited 0 in work/. Consequences:
mode: 'symlink' (default) breaks if work/ is later deleted; mode: 'copy' is safe to delete afterward; mode: 'move' breaks -resume (the output leaves work/), so use it only for terminal outputs.rm -rf work/ if a resume might be wanted; use nextflow clean (which prunes the cache DB consistently). "Outputs missing but the pipeline succeeded" almost always means looking in publishDir instead of work/<hash>/.process BIG {
// 137=SIGKILL/OOM, 143=SIGTERM (SLURM wall-time kill); the 130..145 signal band + 104 (transient I/O) retry, fail fast otherwise.
errorStrategy { task.exitStatus in ((130..145) + 104) ? 'retry' : 'terminate' }
maxRetries 3
memory { 8.GB * task.attempt } // task.attempt is 1-based; escalates 8 -> 16 -> 24 -> 32 GB
time { 4.h * task.attempt } // a transient OOM auto-escalates instead of killing the run
script:
"""
memory_intensive_command
"""
}errorStrategy values are 'terminate' (default), 'retry', 'ignore' (drop the failed task's outputs and continue over survivors), and 'finish' (graceful drain). The nf-core process.resourceLimits directive (Nextflow 24.04+, which replaced the pre-3.0 check_max pattern) clamps the escalated request to the machine/queue ceiling so 8.GB * task.attempt never asks for more than a node has.
// nextflow.config -- executor lives in a profile, never in the pipeline code
profiles {
docker { docker.enabled = true }
singularity { singularity.enabled = true }
slurm {
process.executor = 'slurm'
executor { queueSize = 100; submitRateLimit = '10/1min' } // avoid hammering the scheduler
}
awsbatch {
process.executor = 'awsbatch'
aws.region = 'us-east-1'
}
}
process {
cpus = 2; memory = '4 GB'; time = '1h' // sane defaults
withLabel: 'process_high' { cpus = 16; memory = '64 GB'; time = '12h' } // labels centralize per-tier tuning
}Run with -profile slurm,singularity (comma-separated, NO spaces; later profiles override earlier).
For any mainstream analysis (RNA-seq, variant calling, ATAC, methylation, amplicon), a curated nf-core/<pipeline> already encodes years of QC, containerized modules, nf-test regression tests, and institutional configs. Reinventing it is months of work and worse QC. Pin the revision: nextflow run nf-core/rnaseq -r 3.14.0 -profile test,docker --outdir results. DIY is justified only for genuinely novel logic. See workflow-management/nf-core-pipelines for running, configuring, and building samplesheets against community pipelines; this skill covers AUTHORING.
| Symptom | Cause | Fix |
|---|---|---|
| Only the first sample processed, exit 0, no error | shared reference on a queue channel, exhausted after task 1 | .first() / Channel.value on the reference |
| Pipeline hangs at a grouping step | groupTuple with no size on a channel that never closes | size: N or groupKey(key, n) |
| Some samples silently disappear mid-pipeline | join dropped non-matching keys | remainder: true or failOnMismatch: true |
-resume re-runs everything | nondeterministic input order, or :latest tag, or mtime on network FS | sort inputs; pin container digest; cache 'lenient' |
| Resume works locally, misses on the cluster | mtime unreliable on Lustre/NFS | cache 'lenient' |
| Outputs missing but the pipeline "succeeded" | publishDir failed silently, or looked in publishDir not work/ | check work/<hash>/; use mode: 'copy' |
| Resume broken after cleanup | deleted work/ | never rm -rf work/; use nextflow clean |
| OOM kills a long run near the end | fixed memory, no escalation | memory { 8.GB * task.attempt } + conditional retry |
| Wrong result, no error, after a base image update | mutable tag served a stale cache hit | pin by digest; cache 'deep' for critical inputs |
| Huge cloud bill / slow S3 pipeline | explicit stage-in/out copies of large files | Wave + Fusion (POSIX over object store) |
-profile test docker ignores docker | space instead of comma | -profile test,docker |
© GPTomics, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in workflow-management/nextflow-pipelines of GPTomics/bioSkills.
Open the folder on GitHubat commit d91ed3d
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in GPTomics/bioSkills, which our catalogue first saw on October 7, 2026.
Bio Workflow Management Nextflow Pipelines next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Bio Workflow Management Nextflow Pipelines this skillGPTomics/bioSkills | 1.2k | 1 repos | ~4.4k | Automated safety check: Pass | MIT | |
| Add Bactopia Toolbactopia/bactopia | 522 | — | ~4.1k | Automated safety check: Pass | MIT | |
| Bump Versionsbactopia/bactopia | 522 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Merge Schemasbactopia/bactopia | 522 | — | ~1.3k | Automated safety check: Pass | MIT | |
| LaminDB Biological Data Managementdavila7/claude-code-templates | 33k | 12 repos | ~3.6k | Automated safety check: Pass | MIT | |
| Latchbio Integrationdavila7/claude-code-templates | 33k | 11 repos | ~2.4k | Automated safety check: Pass | MIT |
bactopia/bactopia
Scaffold a complete Bactopia Tool across all three tiers -- module, subworkflow, and workflow entry point under workflows/bactopia-tools/.
bactopia/bactopia
Propagate the Bactopia and nf-bactopia versions declared in versions.yml into the hand-maintained files that carry a literal version (conf/testbase.config, CITATION.cff, bin/bactopia…
bactopia/bactopia
Regenerate nextflow.config and nextflowschema.json for Bactopia workflows by running bactopia-merge-schemas.
davila7/claude-code-templates
Manages biological datasets with LaminDB: versioned artifacts, run lineage, ontology-based annotation, schema validation and links to workflow managers and ML tools.
davila7/claude-code-templates
Latch platform for bioinformatics workflows. An agent skill from davila7/claude-code-templates.
bactopia/bactopia
Review staleness of reference docs under .agents/docs/ using bactopia-docs --validate.
GPTomics/bioSkills
Read, write, and convert multiple sequence alignment files using Biopython Bio.AlignIO.
GPTomics/bioSkills
Installs the bioSkills collection of 425 bioinformatics skills in one step, or only chosen categories, so sequencing, RNA-seq, single-cell and variant tasks get specialized help.
GPTomics/bioSkills
Write biological sequences to files (FASTA, FASTQ, GenBank, EMBL) using Biopython Bio.SeqIO.
GPTomics/bioSkills
Soft- or hard-clips PCR primer footprints from aligned amplicon BAMs so primer bases stop masquerading as confirmed reference sequence.
GPTomics/bioSkills
Filters BAM alignments by FLAG bits, mapping quality and regions with samtools view or pysam, with recipes for common keep and drop cases.
GPTomics/bioSkills
Create and use BAI/CSI indices for BAM/CRAM files using samtools and pysam.
Works with
Categories
Authors reproducible Nextflow DSL2 pipelines built on reactive dataflow, where processes communicate only through channels and execution order is not guaranteed. Bio Workflow Management Nextflow Pipelines is an agent skill from GPTomics/bioSkills. Authors reproducible Nextflow DSL2 pipelines built on reactive dataflow, where processes communicate only through channels and execution order is not guaranteed.
Bio Workflow Management Nextflow Pipelines fits situations like: deciding channel/dataflow (Nextflow) vs rule-based (Snakemake) authoring; wiring queue vs value channels and fixing shared-reference exhaustion with .first(); composing DSL2 modules and subworkflows with take/main/emit; diagnosing why -resume misses the cache (nondeterministic input order.
Run `npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a claude-code`. Or copy the skill folder (workflow-management/nextflow-pipelines in GPTomics/bioSkills) into .claude/skills/bio-workflow-management-nextflow-pipelines in your project. Claude Code loads it when a task matches its description.
Run `npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a codex`. Or copy the skill folder (workflow-management/nextflow-pipelines in GPTomics/bioSkills) into .agents/skills/bio-workflow-management-nextflow-pipelines in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add GPTomics/bioSkills --skill bio-workflow-management-nextflow-pipelines -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bio-workflow-management-nextflow-pipelines, .gemini/skills/bio-workflow-management-nextflow-pipelines, .github/skills/bio-workflow-management-nextflow-pipelines and .opencode/skills/bio-workflow-management-nextflow-pipelines in your project.
SKILL.md names no scripts, command-line tools or credentials: Bio Workflow Management Nextflow Pipelines is instructions for the agent only. Our summary lists: Python 3; Docker.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Bio Workflow Management Nextflow Pipelines is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.4k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Bio Workflow Management Nextflow Pipelines: Add Bactopia Tool (bactopia/bactopia, 522 stars), Bump Versions (bactopia/bactopia, 522 stars), Merge Schemas (bactopia/bactopia, 522 stars) and LaminDB Biological Data Management (davila7/claude-code-templates, 33k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
GPTomics (a GitHub organization) maintains it in GPTomics/bioSkills, which has 1,218 GitHub stars. The repository holds 559 skills in this directory. The repository was last updated on August 15, 2026.
Source: GPTomics/bioSkills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.