尧图精选

用Babysitter编写CI流程:lint-and-test无头流水线完整实战

🕒 发布时间:2026/9/21 1:25:40 📁 来源:尧图网络
用Babysitter编写CI流程lint-and-test无头流水线完整实战【免费下载链接】babysitterBabysitter enforces obedience on agentic workforces and enables them to manage extremely complex tasks and workflows through deterministic, hallucination-free self-orchestration项目地址: https://gitcode.com/GitHub_Trending/ba/babysitterBabysitter 是一个专为AI 员工团队打造的确定性编排引擎能让编码智能体在 CI 里以无头headless方式自动完成 lint 检查、测试回归等复杂流程且全程零幻觉、可复现。本文带你用不到 20 分钟搭好一条可复用的 lint-and-test 流水线如何配置触发条件、如何选交互模式、如何接入质量门一次讲清。一、为什么需要无头流水线在传统 CI 里lint 和 test 靠写死的脚本执行而在智能体时代我们希望 AI 能读 diff → 定位问题 → 自动修复 → 再验证整个循环无人值守。难点在于AI 的自由发挥在无人值守环境下风险极高。Babysitter 的解法是确定性自编排——智能体每一步只能执行流程定义process中明确允许的动作文档见release-pipeline.md一句话理解它的分工外环CIGitHub/GitLab/Bitbucket 事件触发内环Babysitter加载 lint-and-test 流程文件逐步强制执行二、3 步搭好你的 lint-and-test 流水线第 1 步用 triggers 适配器接收 CI 事件Babysitter 的 triggers 适配器把各大平台的 webhook 载荷统一成一种事件格式并支持触发查询精确过滤——比如只在src/**/*.ts变更时才唤醒智能体。核心配置就 5 行 YAMLtrigger-query: | event: pull_request action: [opened, synchronize] paths: src/**/*.ts字段作用event指定 GitHub 事件类型action限定动作如 PR 新建/更新paths按变更文件路径过滤labels按 PR 标签过滤第 2 步选择无头交互模式CI 里没有 TTYBabysitter 提供三种interaction-mode详见 triggers/README.md模式适用场景推荐度non-interactive单任务、一次性执行⭐ lint-and-test 首选bridged-hooks需要完整 babysitter 生命周期钩子复杂多阶段流程bridged-interactive智能体内部需要 TTY 能力重度工具调用任务lint-and-test 属于给个提示、干完就退的典型任务用默认的non-interactive即可——最快、最稳。第 3 步绑定流程文件process-file流程文件定义了允许智能体做什么。把 lint-and-test 流程放到.a5c/processes/下例如lint-and-test.mjs然后在 workflow 里指定- uses: a5c-ai/babysitter/packages/adapters/triggersmain with: harness: claude interaction-mode: non-interactive babysitter-plugin: true process-file: .a5c/processes/lint-and-test.mjs prompt: Run lint and tests on the changed files, fix any failures这样 Babysitter 会安装 harness CLI → 生成插件 → 安装 SDK → 拷贝流程文件 → 以桥接标志启动。全流程见 triggers/README.md三、流程内部质量门如何收敛Babysitter 的精髓在于质量收敛Quality Convergence不是跑一遍测试就算完而是循环执行直到达标如测试全绿 lint 零错误并且每步之间有强制停顿点编排器只能按剧本推进。参考内置的 TDD 质量收敛流程实现tdd-quality-convergence.js 以及 tdd-quality-convergence.md循环开始 ├─ 运行 lint ──► 失败 → 让智能体修复 → 重跑 ├─ 运行 test ──► 失败 → 让智能体修复 → 重跑 └─ 全部通过 ──► 收敛退出流水线四、多智能体质量门可选进阶如果你的项目规模大可以让多个智能体claude codex pi并行执行同一套 lint-and-test 门用矩阵策略交叉验证。仓库内置了完整示例multi-harness-quality-gates.yml见 triggers 文档 的 Example Workflows 一节。五、常见配置速查表配置项默认值说明max-turns15智能体最大轮次防止失控烧 tokenpre-run/post-run—在智能体前后执行自定义 shell如npm cigithub-token${{ github.token }}用于事件富化拉取 diffnode-version22CI 中的 Node.js 版本完整输入参考triggers/README.md小贴士把 lint-and-test 流程的失败证据写入 journal配合 快速上手指南 里的会话恢复能力你可以事后完整回放每一次 CI 运行——这是 Babysitter 确定性、可审计 的直接体现。六、总结✅ 用triggers 适配器统一接收各平台 CI 事件 ✅ 用trigger-query精确过滤只在值得跑时唤醒智能体 ✅ 用non-interactive 模式保证 CI 环境最快最稳 ✅ 用process-file把 lint-and-test 变成编排器只能照做的确定性流程 ✅ 用质量收敛让流水线循环到全绿才退出从零到一条无人值守的 lint-and-test 流水线你只需要一个 workflow 文件和一份流程定义。智能体负责想Babysitter 负责管——这正是它作为 agentic 团队监督者的核心定位。【免费下载链接】babysitterBabysitter enforces obedience on agentic workforces and enables them to manage extremely complex tasks and workflows through deterministic, hallucination-free self-orchestration项目地址: https://gitcode.com/GitHub_Trending/ba/babysitter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联 返回资讯列表 →