要在hermes agent中实现多profile协同,必须通过kanban看板建立任务依赖、角色绑定与状态流转;否则各agent将各自为战、文件丢失、进度不可知、失败不恢复。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在Hermes Agent中让多个Profile真正协同干活,不是简单启动几个智能体就完事——必须通过Kanban看板建立任务依赖、角色绑定与状态流转,否则各Agent只会各自为战、文件找不到、进度不感知、失败不恢复。
初始化Kanban看板并启用持久化
第一步:执行hermes kanban init,在当前项目根目录生成kanban.yaml和.hermes/kanban.db。这一步不可跳过,否则所有任务都是内存态,重启即丢。
第二步:编辑config.yaml,确认kanban.enabled: true且kanban.storage.type: "sqlite"。若误设为"filesystem",任务状态将无法跨重启恢复,Blocked卡点会永久挂起。
第三步:运行hermes kanban start --dry-run验证配置无语法错误。输出中若出现"no active profiles found",说明profiles未注册或路径错误,需先检查~/.hermes/profiles/下是否存在对应目录。
创建带角色绑定的父任务与子任务链
方法一:CLI命令链式创建(推荐用于调试)
① 创建父任务:hermes kanban create "用户登录系统开发" --tenant auth-project
② 创建首个子任务,并绑定Profile:hermes kanban create "设计登录UI组件" --assign-to ui-designer --tenant auth-project --parent "用户登录系统开发"
③ 创建第二个子任务,显式依赖前一个:hermes kanban create "实现后端认证API" --assign-to backend-engineer --tenant auth-project --parent "设计登录UI组件"
注意:【--parent参数值必须与上一步任务标题完全一致,包括空格和标点】。标题含中文引号或特殊符号时,务必用英文双引号包裹整个字符串,否则匹配失败导致任务孤立。
方法二:批量定义在kanban.yaml中(适合正式项目)
直接编辑kanban.yaml,写入结构化任务树:
tasks:
- title: "用户登录系统开发"
tenant: auth-project
children:
- title: "设计登录UI组件"
assign_to: ui-designer
- title: "实现后端认证API"
assign_to: backend-engineer
depends_on: ["设计登录UI组件"]
保存后执行hermes kanban load加载全部任务。该方式支持depends_on数组声明多前置依赖,比CLI单--parent更灵活。
确保Profile已注册且具备对应能力
第一步:检查Profile是否存在且启用:hermes profile list。输出中每行末尾应显示enabled,若为disabled,需进入对应profile目录手动启用。
第二步:验证每个Profile的SOUL.md是否明确定义职责边界。例如ui-designer/SOUL.md必须包含“你只输出React JSX代码和Figma设计说明,不处理HTTP请求或数据库逻辑”,否则Agent可能越界执行,污染下游任务上下文。
第三步:确认各Profile的config.yaml中启用了必要工具。比如backend-engineer必须开启file_write和shell_exec,而security-auditor则需code_scan工具——工具缺失会导致任务卡在In Progress状态,超时后自动转入Blocked。
启动协作并监控任务流转
执行hermes kanban start --run-name=auth-v1。系统立即拉起所有已分配角色的Agent实例,每个实例获得独立终端会话与隔离工作目录。
任务开始执行后,实时查看看板状态:hermes kanban status --tenant auth-project。重点关注三列:Ready(待调度)、In Progress(正在执行)、Done(已完成)。
当某个任务卡在Blocked超过5分钟,立刻执行hermes kanban comment --task-id=xxx --text="请提供OAuth2配置模板"人工介入。Kanban的评论区是唯一支持人-AI双向通信的通道,其他方式无法解封阻塞任务。
所有子任务完成后,结果自动汇聚至/tmp/hermes_kanban_auth-v1/outputs/目录,主Agent读取该路径下的summary.json触发最终整合流程。











