Check whether public NGS tools and packages already exist before downloading, installing, or running a sequencing pipeline.
64
76%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./plugins/ngs-analysis/skills/ngs-runtime-env/SKILL.mdUse this skill whenever an NGS workflow needs package checks, install planning, or runtime validation.
PATH with command -v or shutil.which.conda list, mamba list, micromamba list, or pip show.Do not modify system Python. Prefer isolated conda/mamba environments or containers.
From the repo root:
python plugins/ngs-analysis/scripts/ngs_preflight.py --list
python plugins/ngs-analysis/scripts/ngs_preflight.py --tool fastqc --emit-install-plan
python plugins/ngs-analysis/scripts/ngs_preflight.py --profile local_light --emit-install-plan
python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline dna_variant_calling --network-checks --emit-install-plan
python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline shotgun_metagenomics --manager micromamba --install-plan-outdir runtime_readiness/shotgun_installUse --install-plan-outdir when a user needs a reviewable permission handoff. It writes install_plan.json as the canonical machine-readable plan and install_commands.sh as a guarded shell companion generated from the same plan. The shell companion is review-only by default; it exits without installing unless NGS_RUN_INSTALL_COMMANDS=1 is set after explicit user approval.
Check reference and database bundle readiness separately from executable readiness:
python plugins/ngs-analysis/scripts/ngs_reference_manager.py list
python plugins/ngs-analysis/scripts/ngs_reference_manager.py check --kind reference --bundle grch38_core --root /refs/GRCh38
python plugins/ngs-analysis/scripts/ngs_reference_manager.py explain-missing --kind database --bundle kraken2_standard --root /db/kraken2/standard
python plugins/ngs-analysis/scripts/ngs_reference_manager.py plan --pipeline shotgun_metagenomics --include-optional --outdir resource_readiness/shotgun
python plugins/ngs-analysis/scripts/ngs_reference_manager.py setup-plan --pipeline shotgun_metagenomics --include-optional --outdir resource_readiness/shotgun_setup
python plugins/ngs-analysis/scripts/ngs_reference_manager.py plan --pipeline atacseq --genome-build GRCh38 --bundle-root grch38_core=/refs/GRCh38 --outdir resource_readiness/atac
python plugins/ngs-analysis/scripts/ngs_reference_manager.py inventory --outdir resource_readiness/inventory
python plugins/ngs-analysis/scripts/ngs_reference_manager.py lock --outdir resource_readiness/lock --include-checksums
python plugins/ngs-analysis/scripts/ngs_reference_manager.py verify-lock --lockfile resource_readiness/lock/resource_lock.json --outdir resource_readiness/lock_verify --fail-on-mismatch
python plugins/ngs-analysis/scripts/ngs_reference_manager.py check-all --kind database --output resource_readiness/database_audit.jsonUse plan before claiming that a reference- or database-heavy workflow is runnable. The plan output writes resource_plan.json, resource_manifest.tsv, resource_env.sh, resource_readiness.md, and setup-plan artifacts; missing required bundles are blocking, while optional bundles such as Bracken/HUMAnN or HOMER motif resources should stay explicit.
Use setup-plan when the user needs an actionable resource/database setup checklist without running an assay. It writes resource_setup_plan.json, resource_setup_plan.tsv, resource_setup_plan.md, and resource_setup_commands.sh. The shell skeleton keeps setup hints commented by default, so large reference/database downloads remain deliberate and reviewable.
Use inventory when the user needs a broader resource/database audit across the plugin. It writes resource_inventory.json, resource_inventory.tsv, resource_env.sh, and resource_dashboard.md, including missing files, env vars, setup hints, license notes, and pipeline usage for every known bundle.
Use lock after resources are ready for a project or handoff. It snapshots the resource inventory into resource_lock.json, resource_lock.tsv, and resource_lock.md; verify-lock compares the lockfile against current local paths and writes a drift report before reruns.
The nf-core adapter performs the same resource gate automatically unless --skip-resource-plan is supplied:
python plugins/ngs-analysis/scripts/run_nfcore_pipeline.py --pipeline taxprofiler --sample-sheet samples.csv --profile docker --bundle-root kraken2_standard=/db/kraken2/standard --include-optional-resourcesThe direct bulk RNA-seq counts/QC, scRNA FASTQ-to-count, generic DNA, germline DNA, somatic DNA, UMI panel, ATAC, ChIP/CUT&RUN, amplicon, and shotgun backend runners also emit run-local resources/ readiness bundles. These direct runners use advisory resource checks by default so custom or reduced local inputs can still be planned; add --require-resource-plan when missing registered bundles should block readiness.
Use --install-missing --yes only after explicit user approval:
python plugins/ngs-analysis/scripts/ngs_preflight.py --pipeline fastq_qc --manager mamba --install-missing --yesPrefer these patterns:
nextflow; use Docker/Singularity/Apptainer profiles for process tools.snakemake; use mamba or micromamba environments and avoid containers by default.mamba or micromamba from conda-forge and bioconda.--bundle-root bundle=/path or the registry root_env variables so downstream runs can cite the exact local bundle roots.Summarize:
11c74d6
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.