macOS
brew install bbtoolslocal Homebrew formula metadata
brew
Brian Bushnell's tools for manipulating reads. Version 39.94 via Homebrew; verified 2026-07-06.
install
brew install bbtoolslocal Homebrew formula metadata
overview
Brian Bushnell's tools for manipulating reads
history
BBTools is Brian Bushnell's large Java-based suite for DNA and RNA sequencing data. The suite includes BBMap, BBDuk, BBMerge, BBNorm, Tadpole, Clumpify, CallVariants, sketching tools, and many other command-line utilities.
The official site identifies BBMap and BBTools as the official suite created and maintained by Brian Bushnell. The GitHub README describes BBTools as fast, multithreaded bioinformatics tools for common sequencing formats including FASTQ, FASTA, SAM/BAM, GFF/GTF, VCF, and compressed files.
The package grew from core read-mapping and read-processing utilities into a broad toolbox. The official site lists hundreds of tools, while the README highlights core workflows such as adapter trimming, read mapping, error correction, assembly, compression optimization, variant calling, and MinHash-style sketch comparison.
The upstream README lists the current version as 39.93 and states that BBTools is used in production at JGI and cited in thousands of publications.
BBTools' adoption is anchored in genomics labs and sequencing pipelines rather than general developer workflows. Its official download paths include GitHub, SourceForge, and Docker, while Homebrew packages it for macOS and Linux users who want the command suite installed alongside other scientific CLI tools.
Common usage is pipeline-oriented: run scripts such as `bbduk.sh` for adapter trimming and quality filtering, `bbmap.sh` for short-read alignment, `bbmerge.sh` for paired-read merging, `tadpole.sh` for correction or small assembly, and `sendsketch.sh` for rapid organism identification.
Because it is Java-based and shell-script driven, BBTools is portable across Unix-like systems and easy to embed in HPC, workflow-manager, and lab automation environments.
BBTools matters to package nerds because it is a dense scientific tool suite distributed as many small executables from one upstream project. It is a good example of why package managers sometimes need to expose an entire research toolkit rather than one binary.
It also illustrates the packaging tension around bioinformatics software: users need reproducible versions, hundreds of entry points, Java runtime assumptions, documentation, and citation metadata, all for tools that may be critical to published scientific pipelines.
security posture
No matching local secret-handling manifest was found for bbtools. Nucleus package metadata is still published here so future coverage has a stable package URL.
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
bbmap/config/executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
a_sample_mt.sh | cli | global executable | |
addadapters.sh | cli | global executable | |
addssu.sh | cli | global executable | |
adjusthomopolymers.sh | cli | global executable | |
alignrandom.sh | cli | global executable | |
alltoall.sh | cli | global executable | |
analyzeaccession.sh | cli | global executable | |
analyzegenes.sh | cli | global executable | |
analyzesketchresults.sh | cli | global executable | |
applyvariants.sh | cli | global executable | |
bamlinestreamer.sh | cli | global executable | |
bandedaligner.sh | cli | global executable | |
bandedplusaligner.sh | cli | global executable | |
bbcms.sh | cli | global executable | |
bbcountunique.sh | cli | global executable | |
bbcrisprfinder.sh | cli | global executable | |
bbduk.sh | cli | global executable | |
bbdukOld.sh | cli | global executable | |
bbdukS.sh | cli | global executable | |
bbest.sh | cli | global executable | |
bbfakereads.sh | cli | global executable | |
bbmap.sh | cli | global executable | |
bbmapskimmer.sh | cli | global executable | |
bbmask.sh | cli | global executable | |
bbmerge-auto.sh | cli | global executable | |
bbmerge.sh | cli | global executable | |
bbnorm.sh | cli | global executable | |
bbrealign.sh | cli | global executable | |
bbrename.sh | cli | global executable | |
bbsketch.sh | cli | global executable | |
bbsort.sh | cli | global executable | |
bbsplit.sh | cli | global executable | |
bbsplitpairs.sh | cli | global executable | |
bbstats.sh | cli | global executable | |
bbversion.sh | cli | global executable | |
bbwrap.sh | cli | global executable | |
bloomfilter.sh | cli | global executable | |
bloomfilterparser.sh | cli | global executable | |
calcmem.sh | cli | global executable | |
calctruequality.sh | cli | global executable | |
callgenes.sh | cli | global executable | |
callpeaks.sh | cli | global executable | |
callvariants.sh | cli | global executable | |
callvariants2.sh | cli | global executable | |
cat.sh | cli | global executable | |
cbcl2text.sh | cli | global executable | |
cg2illumina.sh | cli | global executable | |
checkstrand.sh | cli | global executable | |
cladeloader.sh | cli | global executable | |
cladeserver.sh | cli | global executable | |
cloudplot.sh | cli | global executable | |
clumpify.sh | cli | global executable | |
commonkmers.sh | cli | global executable | |
comparegff.sh | cli | global executable | |
comparelabels.sh | cli | global executable | |
comparesketch.sh | cli | global executable | |
comparessu.sh | cli | global executable | |
comparevcf.sh | cli | global executable | |
consect.sh | cli | global executable | |
consensus.sh | cli | global executable | |
copyfile.sh | cli | global executable | |
countbarcodes.sh | cli | global executable | |
countbarcodes2.sh | cli | global executable | |
countduplicates.sh | cli | global executable | |
countgc.sh | cli | global executable | |
countsharedlines.sh | cli | global executable | |
covmaker.sh | cli | global executable | |
crossblock.sh | cli | global executable | |
crosscontaminate.sh | cli | global executable | |
crosscutaligner.sh | cli | global executable | |
cutgff.sh | cli | global executable | |
cutprimers.sh | cli | global executable | |
ddlblacklist.sh | cli | global executable | |
ddlcalibrate.sh | cli | global executable | |
ddlcompare.sh | cli | global executable | |
ddlmerger.sh | cli | global executable | |
ddlwriter.sh | cli | global executable | |
decontaminate.sh | cli | global executable | |
dedupe.sh | cli | global executable | |
dedupe2.sh | cli | global executable | |
dedupebymapping.sh | cli | global executable | |
demuxbyname.sh | cli | global executable | |
demuxserver.sh | cli | global executable | |
diskbench.sh | cli | global executable | |
dlctieraccuracy.sh | cli | global executable | |
driftingaligner.sh | cli | global executable | |
driftingplusaligner.sh | cli | global executable | |
estherfilter.sh | cli | global executable | |
explodetree.sh | cli | global executable | |
fastqscan.sh | cli | global executable | |
fetchproks.sh | cli | global executable | |
filescan.sh | cli | global executable | |
filterassemblysummary.sh | cli | global executable | |
filterbarcodes.sh | cli | global executable | |
filterbycoverage.sh | cli | global executable | |
filterbyname.sh | cli | global executable | |
filterbysequence.sh | cli | global executable | |
filterbytaxa.sh | cli | global executable | |
filterbytile.sh | cli | global executable | |
filterlines.sh | cli | global executable | |
filtersam.sh | cli | global executable | |
filtersilva.sh | cli | global executable | |
filtersubs.sh | cli | global executable | |
filtervcf.sh | cli | global executable | |
findrepeats.sh | cli | global executable | |
findssu.sh | cli | global executable | |
fix_script_paths.sh | cli | global executable | |
fixgaps.sh | cli | global executable | |
fll2simulate.sh | cli | global executable | |
fungalrelease.sh | cli | global executable | |
fuse.sh | cli | global executable | |
gbff2gff.sh | cli | global executable | |
getreads.sh | cli | global executable | |
gi2ancestors.sh | cli | global executable | |
gi2taxid.sh | cli | global executable | |
gitable.sh | cli | global executable | |
glocalaligner.sh | cli | global executable | |
gradebins.sh | cli | global executable | |
grademerge.sh | cli | global executable | |
gradesam.sh | cli | global executable | |
icecreamfinder.sh | cli | global executable | |
icecreamgrader.sh | cli | global executable | |
icecreammaker.sh | cli | global executable | |
idmatrix.sh | cli | global executable | |
idtree.sh | cli | global executable | |
indelfree.sh | cli | global executable | |
invertkey.sh | cli | global executable | |
javasetup.sh | cli | global executable | |
kapastats.sh | cli | global executable | |
kcompress.sh | cli | global executable | |
keepbestcopy.sh | cli | global executable | |
khist.sh | cli | global executable | |
kmercountexact.sh | cli | global executable | |
kmercountmulti.sh | cli | global executable | |
kmercountshort.sh | cli | global executable | |
kmercoverage.sh | cli | global executable | |
kmerfilterset.sh | cli | global executable | |
kmerlimit.sh | cli | global executable | |
kmerlimit2.sh | cli | global executable | |
kmerposition.sh | cli | global executable | |
kmutate.sh | cli | global executable | |
lilypad.sh | cli | global executable | |
loadreads.sh | cli | global executable | |
loglog.sh | cli | global executable | |
lowcomplexcalibrate.sh | cli | global executable | |
makechimeras.sh | cli | global executable | |
makecontaminatedgenomes.sh | cli | global executable | |
makepolymers.sh | cli | global executable | |
makequickbinvector.sh | cli | global executable | |
mantissacompare.sh | cli | global executable | |
mapPacBio.sh | cli | global executable | |
matrixtocolumns.sh | cli | global executable | |
memdetect.sh | cli | global executable | |
mergeOTUs.sh | cli | global executable | |
mergebarcodes.sh | cli | global executable | |
mergepgm.sh | cli | global executable | |
mergeribo.sh | cli | global executable | |
mergesam.sh | cli | global executable | |
mergesketch.sh | cli | global executable | |
mergesorted.sh | cli | global executable | |
microalign.sh | cli | global executable | |
msa.sh | cli | global executable | |
mutate.sh | cli | global executable | |
muxbyname.sh | cli | global executable | |
netfilter.sh | cli | global executable | |
novademux.sh | cli | global executable | |
parallelogram.sh | cli | global executable | |
partition.sh | cli | global executable | |
phylip2fasta.sh | cli | global executable | |
picksubset.sh | cli | global executable | |
pileup.sh | cli | global executable | |
pileup2.sh | cli | global executable | |
plotflowcell.sh | cli | global executable | |
plotgc.sh | cli | global executable | |
plothist.sh | cli | global executable | |
plotreadposition.sh | cli | global executable | |
polyfilter.sh | cli | global executable | |
postfilter.sh | cli | global executable | |
printtime.sh | cli | global executable | |
processfrag.sh | cli | global executable | |
processhi-c.sh | cli | global executable | |
processspeed.sh | cli | global executable | |
profile.sh | cli | global executable | |
quabblealigner.sh | cli | global executable | |
quantumaligner.sh | cli | global executable | |
quickbin.sh | cli | global executable | |
quickclade.sh | cli | global executable | |
randomgenome.sh | cli | global executable | |
randomreads.sh | cli | global executable | |
randomreadsmg.sh | cli | global executable | |
readlength.sh | cli | global executable | |
reassemble.sh | cli | global executable | |
reducecolumns.sh | cli | global executable | |
reducesilva.sh | cli | global executable | |
reformat.sh | cli | global executable | |
reformat2.sh | cli | global executable | |
reformat3.sh | cli | global executable | |
reformatpb.sh | cli | global executable | |
removebadbarcodes.sh | cli | global executable | |
removecatdogmousehuman.sh | cli | global executable | |
removehuman.sh | cli | global executable | |
removehuman2.sh | cli | global executable | |
removemicrobes.sh | cli | global executable | |
removesmartbell.sh | cli | global executable | |
rename.sh | cli | global executable | |
renamebymapping.sh | cli | global executable | |
renamebysketch.sh | cli | global executable | |
renameimg.sh | cli | global executable | |
renameref.sh | cli | global executable | |
repair.sh | cli | global executable | |
replaceheaders.sh | cli | global executable | |
representative.sh | cli | global executable | |
rqcfilter.sh | cli | global executable | |
rqcfilter2.sh | cli | global executable | |
rqcfilter3.sh | cli | global executable | |
runhmm.sh | cli | global executable | |
samstreamer.sh | cli | global executable | |
samtoroc.sh | cli | global executable | |
scalarintervals.sh | cli | global executable | |
scalars.sh | cli | global executable | |
scoresequence.sh | cli | global executable | |
scrabblealigner.sh | cli | global executable | |
seal.sh | cli | global executable | |
sendclade.sh | cli | global executable | |
sendsketch.sh | cli | global executable | |
seqtovec.sh | cli | global executable | |
shred.sh | cli | global executable | |
shrinkaccession.sh | cli | global executable | |
shuffle.sh | cli | global executable | |
shuffle2.sh | cli | global executable | |
sketch.sh | cli | global executable | |
sketchblacklist.sh | cli | global executable | |
sketchblacklist2.sh | cli | global executable | |
smithwaterman.sh | cli | global executable | |
sortbyname.sh | cli | global executable | |
splitbytaxa.sh | cli | global executable | |
splitnextera.sh | cli | global executable | |
splitribo.sh | cli | global executable | |
splitsam.sh | cli | global executable | |
splitsam4way.sh | cli | global executable | |
splitsam6way.sh | cli | global executable | |
ssuserver.sh | cli | global executable | |
stats.sh | cli | global executable | |
stats3.sh | cli | global executable | |
statswrapper.sh | cli | global executable | |
stream.sh | cli | global executable | |
streamsam.sh | cli | global executable | |
subsketch.sh | cli | global executable | |
summarizecontam.sh | cli | global executable | |
summarizecoverage.sh | cli | global executable | |
summarizecrossblock.sh | cli | global executable | |
summarizemerge.sh | cli | global executable | |
summarizequast.sh | cli | global executable | |
summarizescafstats.sh | cli | global executable | |
summarizeseal.sh | cli | global executable | |
summarizesketch.sh | cli | global executable | |
synthmda.sh | cli | global executable | |
tadpipe.sh | cli | global executable | |
tadpole.sh | cli | global executable | |
tadwrapper.sh | cli | global executable | |
tagandmerge.sh | cli | global executable | |
taxonomy.sh | cli | global executable | |
taxserver.sh | cli | global executable | |
taxsize.sh | cli | global executable | |
taxtree.sh | cli | global executable | |
testaligners.sh | cli | global executable | |
testaligners2.sh | cli | global executable | |
testalignersbatch.sh | cli | global executable | |
testalignerslength.sh | cli | global executable | |
testfilesystem.sh | cli | global executable | |
testformat.sh | cli | global executable | |
testformat2.sh | cli | global executable | |
tetramerfreq.sh | cli | global executable | |
textfile.sh | cli | global executable | |
tiledump.sh | cli | global executable | |
train.sh | cli | global executable | |
trainLCHist.sh | cli | global executable | |
translate6frames.sh | cli | global executable | |
trimcontigs.sh | cli | global executable | |
ttllsimulate.sh | cli | global executable | |
unicode2ascii.sh | cli | global executable | |
unzip.sh | cli | global executable | |
vcf2gff.sh | cli | global executable | |
visualizealignment.sh | cli | global executable | |
wavefrontaligner.sh | cli | global executable | |
wavefrontalignerviz.sh | cli | global executable | |
webcheck.sh | cli | global executable | |
wobblealigner.sh | cli | global executable | |
wobbleplusaligner.sh | cli | global executable | |
xdrophaligner.sh | cli | global executable | |
zz_rename_package.sh | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:bbtools |
|---|---|
| Version | 39.94 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/bbtools |
| Homepage | https://bbmap.org/ |
| Repository | https://github.com/bbushnell/BBTools |
| Upstream docs | https://bbmap.org/docs |
| License | BSD-3-Clause |
| Source archive | https://downloads.sourceforge.net/bbmap/BBMap_39.94.tar.gz |
| Last updated | 2026-07-06T08:10:17Z |
| Pulse | updated |
| Dependencies | openjdk |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | bbtools |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.