Automic VaultAutomic Vault

brew

Install behaviortree.cpp with Homebrew

Behavior Trees Library in C++. Version 4.9.1 via Homebrew; verified 2026-07-07.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install behaviortree.cpp

local Homebrew formula metadata

overview

Package summary

Behavior Trees Library in C++

Commands and aliases

  • bt4_nodes_model
  • bt4_plugin_manifest

history

Project history and usage

BehaviorTree.CPP is a C++17 behavior-tree framework used mainly in robotics, but also suitable for game AI and finite-state-machine replacement. The Homebrew package exposes its command-line utilities for node models and plugin manifests.

Project history

The official repository was created on GitHub in October 2018, while the repository license credits earlier behavior-tree work from 2014-2018 before the current Davide Faconti-led project period. Public GitHub releases begin with a 2.0 beta in October 2018.

The README describes the library as flexible, easy to use, reactive, and fast, with XML-defined trees loaded at runtime, asynchronous actions as first-class citizens, plugins, dataflow between nodes, and logging/profiling infrastructure.

Adoption history

BehaviorTree.CPP's adoption is strongly tied to robotics workflows: the README names robotics as its main use case, documents ROS 2/colcon support, and points to Groot2 for graphical editing. It also documents Conan, CMake, pixi/Conda, and vcpkg installation paths.

GitHub release history shows a steady line from 2.x releases in 2018 through 3.x, the 4.1 release preparing for Groot2 in 2023, and 4.9.0 in 2026. The repository metadata showed more than 4,000 stars and 800 forks when checked during enrichment, indicating broad use beyond a niche single-project dependency.

How it is used

Developers embed the C++ library into applications that need reactive task execution. Behavior trees are commonly defined in XML, with custom tree nodes linked statically or loaded as plugins at runtime.

The packaged command-line tools support ecosystem workflows such as generating node model information and plugin manifests rather than serving as a standalone end-user application.

Why package nerds care

BehaviorTree.CPP matters to package nerds because it packages robotics behavior-tree infrastructure as ordinary C++ tooling across Homebrew, vcpkg, Conan, ROS 2 builds, and source builds. That makes a research-and-robotics pattern consumable through mainstream developer dependency managers.

It is also a good example of a C++ library where the command-line package is useful mostly as build and metadata tooling around a larger embedded runtime.

Timeline

  • 2014-2018: Earlier behavior-tree code lineage credited in the repository license.
  • 2018: GitHub repository created and 2.0 beta released.
  • 2020: 3.3.0 release published.
  • 2022: 3.7.0 release published.
  • 2023: 4.1.0 release prepared the project for Groot2.
  • 2026: 4.9.0 release published.

Related projects

  • Groot2 is the related graphical editor documented by the project.
  • btcpp_sample is the official sample repository referenced for application use.
  • ROS 2, vcpkg, Conan, and CMake are documented integration and packaging paths.

security posture

Risk level: green

library-like package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • library-like package without higher-risk signals

Signals

  • metadata:library-like

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 2 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
bt4_nodes_modelcliglobal executable
bt4_plugin_manifestcliglobal executable

freshness

Version and 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.

page generated2026-07-08
manager version4.9.1
manager updated2026-07-07
local dataok
upstreamcurrent
latest detected4.9.1

https://github.com/BehaviorTree/BehaviorTree.CPP

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:behaviortree.cpp
Version4.9.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/behaviortree.cpp
Homepagehttps://www.behaviortree.dev/
Repositoryhttps://github.com/BehaviorTree/BehaviorTree.CPP
Upstream docshttps://behaviortree.github.io/BehaviorTree.CPP
LicenseMIT
Source archivehttps://github.com/BehaviorTree/BehaviorTree.CPP/archive/refs/tags/4.9.1.tar.gz
Last updated2026-07-07T13:00:36Z
Pulseupdated
Dependenciescppzmq, zeromq
Build dependenciescmake
Uses from macOSsqlite
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namebehaviortree.cpp
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

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