# Install vcflib with Homebrew

C++ library and cmdline tools for parsing and manipulating VCF files. Version 1.0.15 via Homebrew; verified 2026-06-21.

## Install

```sh
sudo av install brew:vcflib
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install vcflib
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:vcflib
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/vcflib>
- **Version:** 1.0.15
- **Source summary:** C++ library and cmdline tools for parsing and manipulating VCF files
- **Homepage:** <https://github.com/vcflib/vcflib>
- **Repository:** <https://github.com/vcflib/vcflib>
- **Upstream docs:** <https://github.com/vcflib/vcflib#readme>
- **License:** MIT
- **Source archive:** <https://github.com/vcflib/vcflib/releases/download/v1.0.15/vcflib-1.0.15-src.tar.gz>
- **Last updated:** 2026-06-21T00:20:16Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- abba-baba (cli)
- bFst (cli)
- bed2region (cli)
- bgziptabix (cli)
- dumpContigsFromHeader (cli)
- genotypeSummary (cli)
- hapLrt (cli)
- iHS (cli)
- meltEHH (cli)
- normalize-iHS (cli)
- pFst (cli)
- pVst (cli)
- permuteGPAT++ (cli)
- permuteSmooth (cli)
- plotHaps (cli)
- popStats (cli)
- segmentFst (cli)
- segmentIhs (cli)
- sequenceDiversity (cli)
- smoother (cli)
- vcf2bed.py (cli)
- vcf2dag (cli)
- vcf2fasta (cli)
- vcf2sqlite.py (cli)
- vcf2tsv (cli)
- vcf_strip_extra_headers (cli)
- vcfaddinfo (cli)
- vcfafpath (cli)
- vcfallelicprimitives (cli)
- vcfaltcount (cli)
- vcfannotate (cli)
- vcfannotategenotypes (cli)
- vcfbiallelic (cli)
- vcfbreakmulti (cli)
- vcfcat (cli)
- vcfcheck (cli)
- vcfclassify (cli)
- vcfcleancomplex (cli)
- vcfclearid (cli)
- vcfclearinfo (cli)
- vcfcombine (cli)
- vcfcommonsamples (cli)
- vcfcomplex (cli)
- vcfcountalleles (cli)
- vcfcreatemulti (cli)
- vcfdistance (cli)
- vcfecho (cli)
- vcfentropy (cli)
- vcfevenregions (cli)
- vcffilter (cli)
- vcffirstheader (cli)
- vcffixup (cli)
- vcfflatten (cli)
- vcfgeno2alleles (cli)
- vcfgeno2haplo (cli)
- vcfgenosamplenames (cli)
- vcfgenosummarize (cli)
- vcfgenotypecompare (cli)
- vcfgenotypes (cli)
- vcfglbound (cli)
- vcfglxgt (cli)
- vcfgtcompare.sh (cli)
- vcfhetcount (cli)
- vcfhethomratio (cli)
- vcfindelproximity (cli)
- vcfindels (cli)
- vcfindex (cli)
- vcfinfo2qual (cli)
- vcfinfosummarize (cli)
- vcfintersect (cli)
- vcfjoincalls (cli)
- vcfkeepgeno (cli)
- vcfkeepinfo (cli)
- vcfkeepsamples (cli)
- vcfld (cli)
- vcfleftalign (cli)
- vcflength (cli)
- vcfmultiallelic (cli)
- vcfmultiway (cli)
- vcfmultiwayscripts (cli)
- vcfnobiallelicsnps (cli)
- vcfnoindels (cli)
- vcfnosnps (cli)
- vcfnulldotslashdot (cli)
- vcfnullgenofields (cli)
- vcfnumalt (cli)
- vcfoverlay (cli)
- vcfparsealts (cli)
- vcfplotaltdiscrepancy.r (cli)
- vcfplotaltdiscrepancy.sh (cli)
- vcfplotsitediscrepancy.r (cli)
- vcfplottstv.sh (cli)
- vcfprimers (cli)
- vcfprintaltdiscrepancy.r (cli)
- vcfprintaltdiscrepancy.sh (cli)
- vcfqual2info (cli)
- vcfqualfilter (cli)
- vcfrandom (cli)
- vcfrandomsample (cli)
- vcfregionreduce (cli)
- vcfregionreduce_and_cut (cli)
- vcfregionreduce_pipe (cli)
- vcfregionreduce_uncompressed (cli)
- vcfremap (cli)
- vcfremoveaberrantgenotypes (cli)
- vcfremovenonATGC (cli)
- vcfremovesamples (cli)
- vcfroc (cli)
- vcfsample2info (cli)
- vcfsamplediff (cli)
- vcfsamplenames (cli)
- vcfsitesummarize (cli)
- vcfsnps (cli)
- vcfsort (cli)
- vcfstats (cli)
- vcfstreamsort (cli)
- vcfuniq (cli)
- vcfuniqalleles (cli)
- vcfvarstats (cli)
- vcfwave (cli)
- wcFst (cli)
- abba-baba (alias)
- bFst (alias)
- bed2region (alias)
- bgziptabix (alias)
- dumpContigsFromHeader (alias)
- genotypeSummary (alias)
- hapLrt (alias)
- iHS (alias)
- meltEHH (alias)
- normalize-iHS (alias)
- pFst (alias)
- pVst (alias)
- permuteGPAT++ (alias)
- permuteSmooth (alias)
- plotHaps (alias)
- popStats (alias)
- segmentFst (alias)
- segmentIhs (alias)
- sequenceDiversity (alias)
- smoother (alias)
- vcf2bed.py (alias)
- vcf2dag (alias)
- vcf2fasta (alias)
- vcf2sqlite.py (alias)
- vcf2tsv (alias)
- vcf_strip_extra_headers (alias)
- vcfaddinfo (alias)
- vcfafpath (alias)
- vcfallelicprimitives (alias)
- vcfaltcount (alias)
- vcfannotate (alias)
- vcfannotategenotypes (alias)
- vcfbiallelic (alias)
- vcfbreakmulti (alias)
- vcfcat (alias)
- vcfcheck (alias)
- vcfclassify (alias)
- vcfcleancomplex (alias)
- vcfclearid (alias)
- vcfclearinfo (alias)
- vcfcombine (alias)
- vcfcommonsamples (alias)
- vcfcomplex (alias)
- vcfcountalleles (alias)
- vcfcreatemulti (alias)
- vcfdistance (alias)
- vcfecho (alias)
- vcfentropy (alias)
- vcfevenregions (alias)
- vcffilter (alias)
- vcffirstheader (alias)
- vcffixup (alias)
- vcfflatten (alias)
- vcfgeno2alleles (alias)
- vcfgeno2haplo (alias)
- vcfgenosamplenames (alias)
- vcfgenosummarize (alias)
- vcfgenotypecompare (alias)
- vcfgenotypes (alias)
- vcfglbound (alias)
- vcfglxgt (alias)
- vcfgtcompare.sh (alias)
- vcfhetcount (alias)
- vcfhethomratio (alias)
- vcfindelproximity (alias)
- vcfindels (alias)
- vcfindex (alias)
- vcfinfo2qual (alias)
- vcfinfosummarize (alias)
- vcfintersect (alias)
- vcfjoincalls (alias)
- vcfkeepgeno (alias)
- vcfkeepinfo (alias)
- vcfkeepsamples (alias)
- vcfld (alias)
- vcfleftalign (alias)
- vcflength (alias)
- vcfmultiallelic (alias)
- vcfmultiway (alias)
- vcfmultiwayscripts (alias)
- vcfnobiallelicsnps (alias)
- vcfnoindels (alias)
- vcfnosnps (alias)
- vcfnulldotslashdot (alias)
- vcfnullgenofields (alias)
- vcfnumalt (alias)
- vcfoverlay (alias)
- vcfparsealts (alias)
- vcfplotaltdiscrepancy.r (alias)
- vcfplotaltdiscrepancy.sh (alias)
- vcfplotsitediscrepancy.r (alias)
- vcfplottstv.sh (alias)
- vcfprimers (alias)
- vcfprintaltdiscrepancy.r (alias)
- vcfprintaltdiscrepancy.sh (alias)
- vcfqual2info (alias)
- vcfqualfilter (alias)
- vcfrandom (alias)
- vcfrandomsample (alias)
- vcfregionreduce (alias)
- vcfregionreduce_and_cut (alias)
- vcfregionreduce_pipe (alias)
- vcfregionreduce_uncompressed (alias)
- vcfremap (alias)
- vcfremoveaberrantgenotypes (alias)
- vcfremovenonATGC (alias)
- vcfremovesamples (alias)
- vcfroc (alias)
- vcfsample2info (alias)
- vcfsamplediff (alias)
- vcfsamplenames (alias)
- vcfsitesummarize (alias)
- vcfsnps (alias)
- vcfsort (alias)
- vcfstats (alias)
- vcfstreamsort (alias)
- vcfuniq (alias)
- vcfuniqalleles (alias)
- vcfvarstats (alias)
- vcfwave (alias)
- wcFst (alias)

## Dependencies

- htslib
- libomp
- wfa2-lib
- xz

## Build dependencies

- cmake
- pkgconf
- pybind11
- python@3.14

## Uses from macOS

- bzip2

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.0.15
- Package-manager updated: 2026-06-21
- Local data: ok
- Upstream repository: https://github.com/vcflib/vcflib
- info: No cached GitHub release or tag data was available.
## Project history and usage

vcflib is both a C++ library and a large collection of command-line utilities for parsing, transforming, filtering, normalizing, annotating, and summarizing VCF files. It is one of the Unix-style toolkits that grew around VCF after the format became the standard interchange format for genomic variant calls.

### Project history

The vcflib README presents VCF as the de facto reporting format for many genomic variant detectors and describes vcflib as an API plus a command-line utility collection for complex VCF manipulation. The project originated with Erik Garrison and later became part of a broader vcflib organization containing related VCF tools.

In 2022, Garrison, Kronenberg, Dawson, Pedersen, and Prins published a PLOS Computational Biology software paper covering vcflib, bio-vcf, cyvcf2, hts-nim, and slivar. The paper describes more than 125 free and open-source tools and libraries for VCF processing, with vcflib providing performance-oriented C++ tools and a reusable API.

### Adoption history

The 2022 PLOS paper states that VCF has been widely adopted since 2011 in population studies and somatic and germline mutation studies, and that the authors' tools run in critical biomedical pipelines and many shell scripts. That is the adoption setting in which vcflib matters: it is a toolbox for the messy middle of sequencing workflows.

The project has seen packaging and maintenance transitions common to mature bioinformatics software. GitHub releases show a 1.0 release in September 2019, a Python 3 transition around 2019, and continued 1.x releases into the 2020s.

### How it is used

vcflib tools are designed to be composed in streaming pipelines. The README explicitly encourages using Unix pipes to interface with VCFtools, BEDTools, GATK, HTSlib, bio-vcf, bcftools, and FreeBayes while avoiding unnecessary intermediate files.

Typical commands cover filtering, set operations, left-aligning indels, decomposing or merging alleles, checking reference consistency, generating statistics, population-genetics metrics, converting VCF to other representations, and annotating records from BED or genotype information.

### Why package nerds care

vcflib is package-nerd significant because it is a bag of sharp, small bioinformatics commands rather than one monolithic analysis application. Installing it adds dozens of executables whose names encode the workflow vocabulary of VCF-heavy pipelines.

It also captures a real packaging challenge in scientific software: one project ships C++ utilities, scripts, Python bindings, and library headers, and users expect it to compose with a wider command-line genomics stack across Linux, macOS, containers, and workflow systems.

### Timeline

- 2011: VCF is introduced and described with VCFtools, establishing the ecosystem vcflib later serves.
- 2016-02-08: vcflib v1.0.0-rc1 appears in GitHub releases.
- 2019-09-03: vcflib v1.0.0 is released.
- 2022-05-31: The PLOS Computational Biology software paper on vcflib and related VCF tools is published.
- 2023: vcflib 1.0.x maintenance releases continue on GitHub.

### Related projects

- VCFtools is the older VCF suite and standard paper that established much of the file-format context.
- bio-vcf, cyvcf2, hts-nim, and slivar are discussed with vcflib in the 2022 software paper as complementary tools for VCF processing.
- FreeBayes is a related variant caller and companion project in the VCF ecosystem.
- BEDTools, HTSlib, bcftools, GATK, and tabix-indexed workflows are common neighbors in pipelines that use vcflib.

### Sources

- <https://api.github.com/repos/vcflib/vcflib/releases>
- <https://github.com/vcflib/vcflib>
- <https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1009123>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** vcflib
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [htslib](https://www.automicvault.com/pkg/brew/htslib/) - Runtime dependency declared by Homebrew.
- [xz](https://www.automicvault.com/pkg/brew/xz/) - Runtime dependency declared by Homebrew.
- [cmake](https://www.automicvault.com/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [pybind11](https://www.automicvault.com/pkg/brew/pybind11/) - Build dependency declared by Homebrew.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Build dependency declared by Homebrew.
- [vcftools](https://www.automicvault.com/pkg/brew/vcftools/) - Shares av.db curated category or tags: bioinformatics, c-plus-plus, cli, genomics, science.
- [vcfanno](https://www.automicvault.com/pkg/brew/vcfanno/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science, vcf.
- [abricate](https://www.automicvault.com/pkg/brew/abricate/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science.
- [freebayes](https://www.automicvault.com/pkg/brew/freebayes/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science, variant-calling.
- [gffread](https://www.automicvault.com/pkg/brew/gffread/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science.
- [minigraph](https://www.automicvault.com/pkg/brew/minigraph/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science.
- [stringtie](https://www.automicvault.com/pkg/brew/stringtie/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science.
- [tabixpp](https://www.automicvault.com/pkg/brew/tabixpp/) - Shares av.db curated category or tags: bioinformatics, cli, genomics, science.

## Combined YAML source

View the package source record on GitHub. [combined/vcflib.yml](https://github.com/automic-vault/db/blob/main/combined/vcflib.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- cross-ecosystem install command graph
