boundaryml/baml

The programming language for agents

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 16 minutes ago
Added to GitGenius on September 7th, 2026
Created on October 6th, 2023
Open Issues & Pull Requests: 332 (+1)
GitHub issues: Enabled
Number of forks: 492
Total Stargazers: 9,146 (+0)
Total Subscribers: 41 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

BAML is a programming language designed for building agents that interact with large language models.

BAML addresses the problem of agents making mistakes when working with unstructured LLM outputs by providing a type system that enforces structure and correctness at runtime. The language combines TypeScript-like syntax with Rust-level type safety, ensuring that types persist throughout execution with no unsafe casting or `any` types. Its type system is statically analyzed for errors, and the language compiles quickly while supporting features like green threads and colorless concurrency similar to Go. The tool includes a built-in standard library tailored for agent development, an integrated testing and evaluation framework, and guardrails designed to eliminate garbage outputs from LLM interactions.

Developers should choose BAML if they are building agent systems where reliability and type safety matter more than rapid prototyping. The language suits projects that need structured data handling from LLM calls and benefit from compile-time error detection. It can be adopted incrementally—BAML functions can be called from TypeScript, Python, Go, C#, and Java—or used as a standalone system, making it flexible for teams with existing codebases.

The project maintains active development with regular updates to its core language features and tooling. The maintainers are responsive to community engagement through their Discord channel and actively solicit contributions. Development focuses on expanding the agent-specific standard library and improving the compilation pipeline to maintain fast build times.