返回首页

AI 代理管道:Google AI 上的 agent-pool

Agent-pool 通过 Google AI 上的 pipelines、signals 和 schedulers 自动化 AI 代理编排。支持 SSH runners、上下文 sessions 和访问 policies。Groups 和 fail-fast 优化中高级开发人员的分形团队。

agent-pool 中的分形 AI 代理自动化
Advertisement 728x90

AI智能体自动化:在agent-pool中构建流水线、信号与调度器

agent-pool MCP服务器让你能在IDE和Gemini CLI中直接管理分形团队的智能体。工作节点会委派任务,形成子组。过去,协调工作需手动完成——如今,通过单一Google AI订阅即可使用流水线、回弹逻辑、定时调度器和SSH远程执行器。

核心挑战是什么?传统编排工具在等待依赖步骤(分析 → 重构 → 测试)时浪费资源。而流水线守护进程会在后台运行工作节点,自动传播依赖关系。

任务链的流水线

create_pipeline 工具提前定义步骤。分离的守护进程在触发时启动工作节点:

Google AdInline article slot
  • on_complete —— 某个步骤完成后执行。
  • on_complete_all —— 等待一组工作节点完成(汇聚模式)。
  • on_file —— 响应文件创建事件。

示例工作流:

          ┌─ frontend ─┐
research ─┤            ├── deploy
          └─ backend  ─┘

守护进程支持IDE重启后持续运行,保障流程不间断。

信号与回弹机制实现通信

智能体通过 signal_step_complete 发送完成信号。若数据不完整,则调用 bounce_back 将任务退回并附带错误原因——类似GitHub的「请求修改」功能。

Google AdInline article slot

maxBounces 限制防止无限循环。工作节点收到反馈(如「缺少日志」),修复问题后重新发送信号。

定时任务调度器

schedule_task 可绑定智能体与cron表达式,例如 0 9 *。调度器采用原子文件锁机制,确保即使在多个IDE会话中也能唯一执行。

结果保存于 .agents/scheduled-results/ 目录。适用于服务器监控或自动化报告场景。

Google AdInline article slot

远程SSH执行器

agent-pool.config.json 中配置SSH信息:

{
  "runners": {
    "remote": {
      "type": "ssh",
      "host": "dev-server.company.com",
      "user": "agent",
      "geminiPath": "/home/agent/.nvm/versions/node/v22.0.0/bin/gemini"
    }
  }
}

委派任务:

delegate_task(
  prompt: "在隔离环境中运行测试",
  runner: "remote"
)

即使关闭本地会话,任务仍可继续执行。智能体可在分支中工作,提交更改并推送合并请求。

会话机制实现上下文传递

Gemini CLI将历史记录存储在会话中。传入 session_id 即可延续任务:

# 分析阶段
delegate_task(prompt: "分析 src/auth/") -> task_1

# 获取结果
get_task_result(task_1) -> { session_id: "abc-123" }

# 继续处理
delegate_task(
  prompt: "根据分析结果编写测试用例",
  session_id: "abc-123"
)

list_sessions 可查看当前活跃会话。

访问策略与目录扩展

policy 用于限制工具访问权限:

  • read-only —— 仅读取文件。
  • safe-edit —— 编辑文件但禁止执行shell命令。

示例:

delegate_task_readonly(
  prompt: "检查 src/auth/ 是否存在安全漏洞",
  policy: "read-only"
)

include_dirs 可扩展工作目录外的可见范围。

智能体分组与流水线集成

create_group 可打包配置:

create_group({
  name: "backend",
  runner: "remote",
  skill: "node-dev",
  policy: "safe-edit",
  max_agents: 3
})

delegate_to_group("backend", "重构认证模块", count: 2)

分组信息存储于 .agents/groups.json。在流水线中使用:

create_pipeline({
  name: "构建与测试",
  steps: [{
    name: "run_tests",
    group: "backend",
    count: 3,
    prompt: "运行测试套件"
  }]
})

守护进程启动 count 个智能体,并设置 AGENT_INDEX,等待全部完成;一旦任一失败即快速终止其余任务。

核心要点

  • 流水线自动处理依赖,解放编排者。
  • 回弹机制加次数限制,避免死循环。
  • SSH执行器与定时调度支持分布式运行。
  • 策略与分组减少重复配置。
  • 会话机制保留智能体间完整上下文。

— Editorial Team

Advertisement 728x90

继续阅读