AI智能体自动化:在agent-pool中构建流水线、信号与调度器
agent-pool MCP服务器让你能在IDE和Gemini CLI中直接管理分形团队的智能体。工作节点会委派任务,形成子组。过去,协调工作需手动完成——如今,通过单一Google AI订阅即可使用流水线、回弹逻辑、定时调度器和SSH远程执行器。
核心挑战是什么?传统编排工具在等待依赖步骤(分析 → 重构 → 测试)时浪费资源。而流水线守护进程会在后台运行工作节点,自动传播依赖关系。
任务链的流水线
create_pipeline 工具提前定义步骤。分离的守护进程在触发时启动工作节点:
on_complete—— 某个步骤完成后执行。on_complete_all—— 等待一组工作节点完成(汇聚模式)。on_file—— 响应文件创建事件。
示例工作流:
┌─ frontend ─┐
research ─┤ ├── deploy
└─ backend ─┘
守护进程支持IDE重启后持续运行,保障流程不间断。
信号与回弹机制实现通信
智能体通过 signal_step_complete 发送完成信号。若数据不完整,则调用 bounce_back 将任务退回并附带错误原因——类似GitHub的「请求修改」功能。
maxBounces 限制防止无限循环。工作节点收到反馈(如「缺少日志」),修复问题后重新发送信号。
定时任务调度器
schedule_task 可绑定智能体与cron表达式,例如 0 9 *。调度器采用原子文件锁机制,确保即使在多个IDE会话中也能唯一执行。
结果保存于 .agents/scheduled-results/ 目录。适用于服务器监控或自动化报告场景。
远程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
暂无评论。