BoundaryML/baml

The programming language for agents

Rust

9,358

3,969 commits

updated Sep 30, 2026

See the code

README

BAML logo

BAML: Basically A Made-up Language

BAML is the programming language for agents.

BAML Version

Homepage | Explore BAML | Discord

BAML looks like TypeScript, but every feature is built so agents make fewer mistakes:

  • It has a type system like Rust, but compiles even faster than Go.
  • Types persist at runtime. There is no any nor casting dangerously to any type.
  • Errors are typed and statically analyzed.
  • The filesystem describes the modules/namespaces.
  • Has green threads, and colorless concurrency like Go
  • Built-in tests / eval framework
  • Built-in stdlib for agents
  • Every baml tool is natively designed for agents, with no garbage outputs, etc.
  • Can be run standalone or adopt incrementally (you can call a BAML function from TS, Py, Go, C#, Java, etc).

Explore the website and examples.

Try it out

brew install baml
baml agent install
baml init
baml ide install --code

Or read the quickstart.

Contributing

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.

boundaryml
guardrails
llm
programming-language
structured-data

Significant stargazers

(top 24 of 155)

LongYinan

5,066 followers · starred Mar 2025

DaniPopes

1,058 followers · starred Jan 2025

Amin Ya

363 followers · starred Jul 2025

Yorick

109 followers · starred Jan 2026

BoundaryML/baml

The programming language for agents

Rust

9,358

3,969 commits

updated Sep 30, 2026

See the code

README

BAML logo

BAML: Basically A Made-up Language

BAML is the programming language for agents.

BAML Version

Homepage | Explore BAML | Discord

BAML looks like TypeScript, but every feature is built so agents make fewer mistakes:

  • It has a type system like Rust, but compiles even faster than Go.
  • Types persist at runtime. There is no any nor casting dangerously to any type.
  • Errors are typed and statically analyzed.
  • The filesystem describes the modules/namespaces.
  • Has green threads, and colorless concurrency like Go
  • Built-in tests / eval framework
  • Built-in stdlib for agents
  • Every baml tool is natively designed for agents, with no garbage outputs, etc.
  • Can be run standalone or adopt incrementally (you can call a BAML function from TS, Py, Go, C#, Java, etc).

Explore the website and examples.

Try it out

brew install baml
baml agent install
baml init
baml ide install --code

Or read the quickstart.

Contributing

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.

boundaryml
guardrails
llm
programming-language
structured-data

Significant stargazers

(top 24 of 155)

LongYinan

5,066 followers · starred Mar 2025

DaniPopes

1,058 followers · starred Jan 2025

Amin Ya

363 followers · starred Jul 2025

Yorick

109 followers · starred Jan 2026

Languages

Rust

56.8%

TypeScript

13.2%

BAML

11.9%

C#

3.4%

Python

2.9%

MDX

2.4%

JavaScript

2.2%

Go

2.0%

Java

1.2%