BAML looks like TypeScript, but every feature is built so agents make fewer mistakes:
- Statically typed like Rust, with colorless concurrency like Go.
- Types persist at runtime. There is no
any. - Errors are typed and statically analyzed.
- The filesystem describes the modules/namespaces.
- Run BAML standalone, or call it from any language of your choice (Python, TypeScript, Go, and more).
Explore the website and examples.
brew install boundaryml/tap/baml
baml agent install
baml init
baml ide install --codeOr read the quickstart.
See our guide on getting started.
Made with ❤️ by Boundary. HQ in Seattle, WA.
We're hiring software engineers who love Rust. Email us or reach out on Discord.