项目介绍
Agent 开发框架 · 2026-11-09 更新 · 本站尚未实测
BAML 全称 “Basically A Made-up Language”,仓库描述为 “The programming language for agents”,即面向 Agent 的编程语言。它外观接近 TypeScript,但语言特性围绕“让 Agent 少犯错”设计:类型系统风格接近 Rust,README 声称编译速度快于 Go;类型在运行时保留,不存在 any 或危险的强制类型转换;错误是类型化并被静态分析的;文件系统本身描述模块与命名空间;具备类似 Go 的绿色线程与无色并发;内置测试/评测框架与面向 Agent 的标准库。
BAML 可以独立运行,也可以增量接入:在 TypeScript、Python、Go、C#、Java 等语言中调用 BAML 函数。需要注意,它是一个编程语言与配套工具链(框架类),而不是可直接下载使用的 Agent 成品或工作流文件。
核心能力
点击能力名称查看输入、输出和原文依据。
- 强类型 LLM 交互:类型在运行时持续存在,避免
any与不安全类型转换,README 将其列为减少 Agent 出错的核心理由。 - 类型化错误与静态分析:错误不再是无结构字符串,而是可被静态检查的类型化对象(据 README)。
- 内置测试 / 评测框架:作者把 eval 能力作为语言内置的一部分。
- 面向 Agent 的标准库:README 称每个 BAML 工具都为 Agent 原生设计,输出不含“垃圾内容”。
- 无色并发:类似 Go 的绿色线程与并发模型。
- 多语言集成:可从 TypeScript、Python、Go、C#、Java 等调用 BAML 函数,支持独立运行或渐进式采用。
仓库 topics 标注为 boundaryml、guardrails、llm、programming-language、structured-data,与其结构化数据与护栏定位一致。
实际应用场景
适用场景
- 需要在 LLM 调用层获得强类型约束、减少解析失败与格式漂移的工程项目。
- 希望把提示词、Schema 和评测写成可测试、可静态检查代码的团队。
- 已有多语言技术栈(TS/Python/Go/C#/Java),希望统一 LLM 调用抽象的后端项目。
- 需要围绕结构化数据抽取、分类、Agent 决策流程编写可回归测试逻辑的场景。
不适合把它当作开箱即用的聊天客户端或可视化工作流编辑器:README 未提供此类形态。
安装与接入
README 给出的尝试步骤如下(原文命令,未做拼接改写):
brew install baml
baml agent install
baml init
baml ide install --code
README 同时指向快速上手指南 https://boundaryml.com/quickstart 。上述命令中的 baml agent install 与 baml ide install --code 的具体行为、是否需要额外依赖或账号,资料未展开说明,需以官方文档核验。Windows、Linux 下除 Homebrew 外的安装方式,本次资料未提供,待核验。
接入已有项目时,README 称可从 TypeScript、Python、Go、C#、Java 调用 BAML 函数,但未在给定资料中给出各语言的具体集成命令或包名,需查阅官方文档确认。
使用条件与限制
- 是否需要部署
- 需自行准备运行环境,具体要求见正文
- 是否需要注册
- 账号和认证要求见正文;未明确说明的项目仍待核验
- 是否需要 API Key
- 待核验
- 费用与额度
- 费用边界见正文,项目许可不代表模型或托管服务免费
- 所需权限
- 待核验
- 许可证与服务条款
- 待核验
权限费用与限制
- 模型与 API Key:README 未列出支持的模型提供方,也未说明是否需要 API Key、如何配置凭据。使用任何 LLM 后端所需的密钥与计费均由对应提供方决定,具体支持范围待核验。
- 费用:仓库代码以 Apache-2.0 发布,但模型调用、云服务或商业功能是否收费,资料未说明,需向官方核验;开源许可不代表模型或托管服务免费。
- 运行依赖:官网和文档需要网络访问;实际运行是否依赖境外服务、数据如何处理,取决于使用的模型后端与部署方式,本次资料未说明,待核验。
- 功能边界:资料未说明权限模型、沙箱能力或安全审计特性,不应假定其提供隔离或合规保障。
- 维护状态:仓库未归档、未标记停止维护(metadata 中 archived=false),默认分支为 canary,说明其处于活跃迭代状态,接口可能变化。
国内使用情况
网友核验 用户经验分享
与站长实测独立,不代表官方认证或本站已实测。
最近核验:暂无有效核验。参与人数按当前项目有效身份去重;不同核验项分别统计,不合并成用户总结果。仅统计审核通过且未过期的记录。
分项统计、有效期与样本量
| 核验项目 | 有效人数 | 成功 / 部分 / 失败 / 无法判断 | 成功率 | 最近核验 / 有效期 |
|---|---|---|---|---|
| 官方网站访问 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 7 天 |
| GitHub 仓库访问 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 7 天 |
| 安装与运行 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 官方服务国内连接 / MCP 连接 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 国内网络情况 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 7 天 |
| 国内模型兼容性 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 自定义 API | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 海外服务依赖 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 海外账号要求 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 中文界面 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 客户端兼容性 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
| 账号及费用信息 | 0 | 0 / 0 / 0 / 0 | 样本不足 | 暂无 / 30 天 |
成功率 = 成功 ÷(成功 + 部分成功 + 失败);无法判断不计入分母。至少 5 份可判断结果才显示成功率。账号、费用、海外依赖与语言等事实项,成功表示核查结论与资料吻合,具体观察另行统计;不表示免费或没有海外依赖。不同网络、客户端和版本的结果不能直接等同。
最近有效核验
暂无审核通过且未过期的网友核验。欢迎提交真实使用记录。
查看全部有效核验 →国内实测状态:国内可用性待核验。协议兼容和官方资料说明不等于国内网络可用。
- 官方网站访问
- 尚未实测 待核验
- GitHub 仓库访问
- 尚未实测 待核验
- 官方服务国内连接
- 尚未实测 待核验
- 国内网络情况
- 尚未实测 待核验
- 国内模型兼容性
- 尚未实测 待核验
- 自定义 API
- 尚未实测 待核验
- 海外服务依赖
- 尚未实测 待核验
- 海外账号要求
- 尚未实测 待核验
- 中文界面
- 尚未实测 待核验
- 国内最后核验时间
- 尚未实测
许可与国内使用
仓库 LICENSE 文件为 Apache License 2.0,对应代码可按该许可证使用、修改与分发,需保留版权与许可声明,并注意其“按现状提供、不附带担保”的条款。商业模块、托管服务、第三方模型及官网内容是否适用同一许可,资料未说明,需分别核验,不能因代码开源推定全部服务免费或可商用。
国内使用方面:资料未提供中国大陆网络环境下的可用性、镜像源、CDN 或备案信息,也未说明是否存在国内模型适配,均待核验。Homebrew 安装在境内的可用性同样需自行验证。
项目资料与来源
字段依据与待核验事项
access:来源确认 · brew install baml baml agent install baml init baml ide install --code
project_type:来源确认 · BAML is the programming language for agents.
原始 README(折叠技术参考)
<div align="center">
<a href="https://boundaryml.com?utm_source=github" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="fern/assets/baml-logomark-white.svg">
<img src="fern/assets/baml-logomark-black.svg" height="220" id="top" alt="BAML logo">
</picture>
</a>
# BAML: Basically A Made-up Language
BAML is the programming language for agents.
[](https://pypi.org/project/baml-py/)
[Homepage](https://www.boundaryml.com/) | [Explore BAML](https://www.boundaryml.com/explore) | [Discord](https://www.boundaryml.com/discord)
</div>
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](https://www.boundaryml.com/explore).
## Try it out
```bash
brew install baml
baml agent install
baml init
baml ide install --code
```
Or read the [quickstart](https://boundaryml.com/quickstart).
## Contributing
See our [guide on getting started](/CONTRIBUTING.md).
---
Made with ❤️ by Boundary. HQ in Seattle, WA.
We're hiring software engineers who love Rust. [Email us](mailto:founders@boundaryml.com) or reach out on [Discord](https://www.boundaryml.com/discord).
历史前置条件说明(补充参考)
需具备 Homebrew 环境(README 给出的安装方式);是否需要特定语言运行时(Python/Node/Go 等)取决于集成方式,待核验;是否需要 LLM 提供方 API Key 及具体支持模型未在资料中说明,待核验;费用、境外服务依赖待核验。
项目来源与清单版权许可
https://github.com/BoundaryML/baml
整理来源:https://github.com/slavakurilyak/awesome-ai-agents
清单版权与许可:
MIT License
Copyright (c) 2024 Slava Kurilyak
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.