【免费下载链接】bernstein
The open‑source AI Agents Governance & Orchestration framework: write the rules declaratively, Bernstein enforces them and produces the verifiable, replayable record. Free, Apache-2.0. https://bernstein.run
Bernstein 是一个开源的 AI Agents 治理与编排(Orchestration)框架:你用声明式的方式写下规则,它负责强制执行,并产出可验证、可回放的执行记录。其中的from-ticket命令可以把你现有的 GitHub Issue、Jira 工单一键导入为 Bernstein 任务,再用 AI 编码 Agent 自动执行——工单系统继续作为唯一事实来源,不用再手动把需求复制进别的工具。
为什么需要“工单变任务”的自动化?
传统流程里,一张 Jira 工单或 GitHub Issue 要落地成代码,通常要经历:读工单 → 手动拆解 → 贴给 AI Agent → 人工检查合并。Bernstein 的目标是把中间环节自动化:
- 声明式编排:你只描述目标和规则,Agent 的分解、派发、验证由框架完成;
- 确定性调度:没有任何模型参与协调循环,重放同一个计划会得到字节一致的(byte-identical)任务图;
- 可审计记录:每个调度决策都留痕,开启
BERNSTEIN_AUDIT=1后日志还会 HMAC 签名、防篡改。
也就是说,GitHub/Jira 里的工单不再只是“给人看的清单”,而是可以直接被 AI Agent 消费的任务定义。
支持的工单来源:GitHub、Jira、Linear 都认
bernstein from-ticket <url>会根据 URL 形状自动识别来源(识别逻辑在 src/bernstein/core/integrations/tickets/init.py):
| 来源 | URL 形式 | 凭据方式 |
|---|---|---|
| GitHub Issues | https://github.com/<owner>/<repo>/issues/<n> | 本地ghCLI(优先)或GITHUB_TOKEN |
| Jira Cloud | https://<your-domain>/browse/<KEY-N> | JIRA_EMAIL+JIRA_API_TOKEN |
| Linear | https://linear.app/<workspace>/issue/<KEY-N>或linear://KEY-N | LINEAR_API_KEY |
抓取实现分别在 github_issues.py、jira.py 和 linear.py。GitHub 渠道会优先调用本机ghCLI,直接复用你已登录的凭据,省去额外配置;Jira 渠道则会把 Atlassian Document Format 富文本自动展平成纯文本描述。
快速上手:三步完成凭据与导入
第一步:安装 Bernstein
git clone https://gitcode.com/gh_mirrors/be/bernstein cd bernstein按 docs/getting-started/ 里的指南完成初始化:至少配置好一个 Agent CLI 及模型 API Key,并检出一个工作分支(bernstein拒绝在仓库默认分支上启动)。
第二步:凭据存入系统钥匙串
不要把 token 塞进.env或 shell 历史。Bernstein 提供bernstein connect <provider>,凭据会存进操作系统钥匙串(macOS Keychain、Linux Secret Service、Windows Credential Manager),运行时按需读取,磁盘上不留明文:
bernstein connect github # 粘贴个人访问令牌 bernstein connect --list # 查看已配置的服务细节可参考 docs/operations/secrets.md。
第三步:先 dry-run,再真正导入
拿到一张 GitHub Issue,先用--dry-run预览将要创建的任务载荷,不发任何请求到服务器:
bernstein from-ticket https://github.com/acme/demo/issues/123 --dry-runBernstein 会把工单渲染成结构化任务:标题、描述、Labels、Assignee 都会保留,并在metadata里记录source、external_id、url,保证后续可以回溯到原始工单。
📌 一个贴心的设计是基于 Label 自动推断角色和规模(规则见 ticket_cmd.py):
- 标签含
bug/qa→ 角色qa;frontend/ui→frontend;security→security;infra/devops→devops;默认backend - 标签含
xs/s→ 规模small;l/epic→large;默认medium
当然也可以用--role、--priority low|medium|high手动覆盖。确认无误后去掉--dry-run,工单即成为 Bernstein 任务:
一键执行:--run 让 AI Agent 立即开工
真正让这条工作流“丝滑”的是--run标志——导入成功后立刻调用bernstein run --task <id>,整条链路一句话完成:
bernstein from-ticket https://github.com/acme/demo/issues/123 --run接下来 Bernstein 会自动:
- 任务分解:把工单描述拆解为可执行子任务;
- 并行派发:为每个 Agent 开独立 git worktree,并行干活、互不踩脚;
- 质量门禁:lint、类型检查、测试、跨模型评审通过后才允许合入;
- 串行落地:merge queue 串行化合并,避免竞态。
脚本化场景下还可以用等价的分组命令bernstein ticket import <url>,行为完全一致(见 docs/operations/commands.md)。
可追溯记录:从任务到审计证据
这是 Bernstein 区别于“随便跑个 Agent”的关键。每次执行都会生成可验证、可回放的记录:任务 metadata 里保留了工单来源 URL,谁产生了这个补丁、在什么策略下、按哪条流程,都能离线复核;配合BERNSTEIN_AUDIT=1,编排器会为每个调度决策写一行 HMAC 签名日志。
如果你还有本地 SDD 工单文件(YAML),可以用配套的校验命令在导入前把关:
bernstein ticket validate tickets/*.yaml --strict --format json适用场景与常见问题
适合谁?团队已经用 GitHub/Jira/Linear 管理需求,希望工单系统继续作为唯一事实来源,但想让机械性工作(修 bug、写测试、文档、重构)由 AI Agent 自动执行。官方使用案例参考 docs/use-cases.md。
常见问题排查:
Authentication error:GitHub 渠道先gh auth login或确认GITHUB_TOKEN;Jira 检查JIRA_EMAIL/JIRA_API_TOKEN是否成对设置;Could not parse ticket:URL 必须是上表中的标准形状,Jira 只认/browse/KEY-N路径;- 服务器连不上:
--dry-run不依赖服务器,可以先本地验证解析是否正常。
更多命令与选项请查看 CLI 参考 docs/reference/cli-reference.md 和命令实现 src/bernstein/cli/commands/ticket_cmd.py。
小结
Bernstein 的from-ticket工作流把“GitHub/Jira 工单 → AI Agent 执行”压缩成了一条命令:凭据入钥匙串,--dry-run看载荷,--run直接开工,全程留下可审计、可回放、可验证的执行记录。如果你的团队也在被“复制粘贴工单”折磨,这套声明式编排 + 质量门禁的组合值得马上试一试。
【免费下载链接】bernstein
The open‑source AI Agents Governance & Orchestration framework: write the rules declaratively, Bernstein enforces them and produces the verifiable, replayable record. Free, Apache-2.0. https://bernstein.run
相关推荐
OpenHuman 的 AI 编码代理工作流:`pnpm work` 如何把 GitHub Issue 变成可执行的 Agent 提示词
OpenHuman 的 AI 编码代理工作流: pnpm work 如何把 GitHub Issue 变成可执行的 Agent 提示词 本文以 OpenHuma
人工智能AI 应用本地部署AI Agent交互助手深度研究Scientific Agent Skills 实战指南:把 AI Agent 变成可执行科研工作流的 AI Scientist
Scientific Agent Skills 实战指南:把 AI Agent 变成可执行科研工作流的 AI Scientist Scientific Agen
AI 技能科研生物信息学数据科学如何把 ECC 接入 Jira 管理工作项?
如何把 ECC 接入 Jira 管理工作项? 如果你的开发任务以 Jira 工单为单位,ECC 可以把 AI 编码工作流直接挂接到 Jira 上:从工作流里拉取
人工智能AI 技能AI 插件AI 评测Agent 评测MCP Clients开发工具
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考