Agent skill · Code Review & Quality

bcftools-variant-manipulation

CLI for VCF/BCF: filter, merge, annotate, query, normalize, compute stats. Core post-variant-calling: quality filtering, multi-sample merging, rsID annotation, genotype extraction. Samtools companion in HTSlib. Use GATK for complex indel realignment during calling; use VCFtools for population genetics stats.

BioTender-maxgithub.com/BioTender-maxGitHub ↗
claude-codeNOASSERTION
Install
npx skills add BioTender-max/awesome-bio-agent-skills --skill bcftools-variant-manipulation --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 1
SKILL.md size: 17 KB
Bundled scripts: none
Path: skills/sciagent/bcftools-variant-manipulation/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 135
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# bcftools — VCF/BCF Variant Manipulation Toolkit ## Overview bcftools is the standard command-line toolkit for processing VCF (Variant Call Format) and BCF (Binary Call Format) files in the HTSlib ecosystem. It covers the complete post-variant-calling workflow: format conversion, quality filtering, variant normalization, multi-sample merging, annotation with external databases, genotype extraction, and QC statistics. bcftools uses streaming by design — most commands read from stdin and write to stdout, making it ideal for memory-efficient pipelines on large cohorts. ## When to Use - Filtering variants by quality (QUAL, DP, AF) after variant calling - Merging VCF files from multiple samples into a joint call set - Adding rsIDs or gene annotations to variant calls - Extracting specific fields (genotypes, allele depths) as tabular output - Normalizing indel representations and splitting multi-allelic records - Calling variants from pileup output (mpileup + call) - Computing per-sample and overall VCF QC statistics - Use `GATK HaplotypeCaller` instead when calling variants with local realignment in human samples - Use `VCFtools` instead for population genetics statistics (Fst, LD, Har

What's inside
Steps it walks through
  1. Overview
  2. When to Use
  3. Prerequisites
  4. Quick Start
  5. Core API
  6. Module 1: VCF/BCF I/O and Format Conversion
  7. Module 2: Variant Filtering
  8. Module 3: VCF Query and Extraction
  9. Module 4: Multi-file Operations
  10. Module 5: Variant Annotation
  11. Module 6: Statistics and QC
  12. Key Concepts
  13. Output Format Flags
  14. Filter Expression Syntax
Commands it runs
Bioconda (recommended — installs HTSlib suite)
conda install -c bioconda bcftools
Homebrew (macOS)
brew install bcftools
Verify
bcftools --version | head -1
bcftools 1.20
Index a VCF for region queries
bcftools index -t variants.vcf.gz   # creates .tbi
bcftools index -c variants.vcf.gz   # creates .csi (for chromosomes > 512 Mb)
More from awesome-bio-agent-skills
All skills →
About this skill
What does the bcftools-variant-manipulation skill do?

CLI for VCF/BCF: filter, merge, annotate, query, normalize, compute stats. Core post-variant-calling: quality filtering, multi-sample merging, rsID annotation, genotype extraction. Samtools companion in HTSlib. Use GATK for complex indel realignment during calling; use VCFtools for population genetics stats.

How do I install it?

Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill bcftools-variant-manipulation --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From BioTender-max/awesome-bio-agent-skills, a repository with 135 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going