民启特种作业 · 安阳新乡特种作业考证咨询

首页 安阳报考专题 新乡报考专题 报名流程 考试批次 低压电工作业 熔化焊接与热切割 高处安装维护拆除 叉车司机 塔吊司机 新闻资讯 证书查询核验 证书复审 企业团报 在线预约 关于我们 联系我们
电话咨询 18236992212
首页新闻资讯文章详情

资讯详情

考试通知、政策法规、备考经验、行业动态,为安阳、新乡特种作业考证人员提供信息参考。

首页新闻资讯ClawTeam 多 Agent 协同工作流实战:从建队派发任务到优雅下线与监控调试

ClawTeam 多 Agent 协同工作流实战:从建队派发任务到优雅下线与监控调试

2026/10/12 3:27:17 民启特种作业 安阳 · 新乡考证资讯
ClawTeam 多 Agent 协同工作流实战:从建队派发任务到优雅下线与监控调试 人工智能AI Agent多智能体Agent 编排Agent 工作流MCP 服务【免费下载链接】ClawTeamClawTeam: Agent Swarm Intelligence (One Command → Full Automation)项目地址https://gitcode.com/gh_mirrors/cl/ClawTeam点击查看免费下载本篇技术指南以 ClawTeam 官方技能文档 workflows.md 为骨架系统讲解 ClawTeam 中从创建团队、派发任务、Spawn 多个 Agent、动态加入、计划审批、优雅关闭到监控调试的六大标准工作流并给出可直接复制运行的命令行操作。读完本文你将掌握clawteamCLI 的完整协同操作面并能结合任务依赖自动解锁、邮箱消息协议、生命周期协议等底层机制独立编排一个多 Agent 团队并持续监控其健康状态。ClawTeam 是框架无关framework-agnostic的多 Agent 协同 CLI 工具所有操作均通过clawteam命令完成数据默认存储在~/.clawteam/目录下。文中的命令均可在安装了 ClawTeam 的环境中直接执行涉及源码的证据均来自当前仓库可对照验证。前置准备身份环境变量与团队概念在进入任何工作流之前需要先理解 Agent 的身份如何建立。ClawTeam 通过环境变量注入身份而不是通过命令行参数反复传递。环境变量说明示例CLAWTEAM_AGENT_ID唯一 Agent 标识leader-001CLAWTEAM_AGENT_NAME人类可读的 Agent 名称leader、coderCLAWTEAM_AGENT_TYPEAgent 角色类型leader、general-purpose、researcherCLAWTEAM_TEAM_NAMEAgent 所属团队dev-teamCLAWTEAM_DATA_DIR覆盖数据目录默认~/.clawteam/tmp/clawteam-data从源码看AgentIdentity.from_env()依次读取CLAWTEAM_*、旧版OH_*、CLAUDE_CODE_*三套变量保证向后兼容见 clawteam/identity.py。因此你既可以用本文工作流中的export手动设置身份也可以在clawteam spawn时让工具自动注入身份环境变量。Workflow 1创建团队并分配任务含依赖这是搭建新项目团队最常见的入口Leader 建立团队、创建任务、并在任务之间建立依赖关系。# 1. 设置 Leader 身份 export CLAWTEAM_AGENT_IDleader-001 export CLAWTEAM_AGENT_NAMEleader export CLAWTEAM_AGENT_TYPEleader # 2. 创建团队 clawteam team spawn-team my-project -d Web app development -n leader # 3. 创建带依赖的任务 clawteam task create my-project Design API schema -o leader # Task ID: aaa11111 clawteam task create my-project Implement backend -o backend-dev --blocked-by aaa11111 # Task ID: bbb22222自动进入 blocked 状态 clawteam task create my-project Build frontend -o frontend-dev --blocked-by aaa11111 # Task ID: ccc33333 clawteam task create my-project Integration testing --blocked-by bbb22222,ccc33333 # Task ID: ddd44444 # 4. 查看看板 clawteam board show my-project # 5. 任务完成后更新状态自动解锁下游依赖 clawteam task update my-project aaa11111 --status completed # bbb22222 和 ccc33333 自动从 blocked 变为 pending这里的关键机制是依赖即状态创建任务时只要指定了--blocked-by任务就会自动进入blocked状态而前置任务标记为completed时所有等待它的任务会被自动解锁。这一行为在源码中有明确实现FileTaskStore.create中if task.blocked_by: task.status TaskStatus.blocked见 clawteam/store/file.py而update在状态变为completed时会调用_resolve_dependents_unlocked见 clawteam/store/file.py把阻塞它的任务 ID 从blocked_by中移除若不再有其它阻塞项则恢复为pending见 clawteam/store/file.py。task create的完整参数见 clawteam/cli/commands.py还包括参数说明默认值--description, -d任务描述--owner, -o任务负责人Agent 名--priority, -p优先级low/medium/high/urgentmedium--blocks该任务阻塞的任务 ID逗号分隔无--blocked-by阻塞该任务的任务 ID逗号分隔无注意任务依赖不允许自环或循环。仓库测试明确验证了任务不能阻塞自己cannot be blocked by itself与依赖不能成环cannot contain cycles两个约束见 tests/test_tasks.py对应的环检测实现在 clawteam/store/file.py。Workflow 2多 Agent Spawn 与协同当团队需要多个 Worker 并行工作时Leader 用spawn命令启动新的 Agent 进程并为每个 Agent 自动注入身份环境变量。# Leader 创建团队 clawteam team spawn-team dev-team -d Feature development -n leader # Spawn Worker每个 Agent 自动获得身份环境变量 clawteam spawn tmux claude --team dev-team --agent-name researcher --agent-type researcher clawteam spawn tmux claude --team dev-team --agent-name coder --agent-type general-purpose # Leader 创建任务 clawteam task create dev-team Research best practices -o researcher clawteam task create dev-team Implement solution -o coder # Leader 通过 inbox 发送指令 clawteam inbox send dev-team researcher Research authentication patterns for microservices clawteam inbox send dev-team coder Wait for researchers findings before starting implementation # 监控进度 clawteam board live dev-team --interval 5spawn的参数要点见 clawteam/cli/commands.py参数说明默认值--team, -t团队名default--agent-name, -nAgent 名自动生成--agent-typeAgent 类型general-purpose--task初始任务成为 Agent 的初始提示词无--profile应用命名运行时 Profile无--workspace/--no-workspace是否创建隔离的 git worktree自动--skip-permissions/--no-skip-permissions是否跳过工具审批取决于配置默认跳过位置参数中第一个是后端backendtmux默认在 tmux 窗口中启动、可视监控或subprocess后台进程。如果位置参数顺序写错CLI 会给出提示第一个位置参数是 backendtmux或subprocess不是团队名请用--team name显式指定团队见 clawteam/cli/commands.py。spawn还做了一些自动化工作目标团队不存在时自动创建团队Agent 自动注册为团队成员若指定--task会用 clawteam/spawn/prompt.py 的build_agent_prompt把身份信息agentName、agentId、teamName、leaderName、workspace 等拼进 Agent 的初始提示词见 clawteam/cli/commands.py。Worker Agent 视角在已 Spawn 的 Worker 内部Worker 通过环境变量感知自己的身份并执行如下循环# 身份已通过环境变量预设 clawteam identity show # agentName: researcher, teamName: dev-team # 检查收件箱获取指令 clawteam inbox receive dev-team # 干活然后更新任务状态 clawteam task update dev-team task-id --status in_progress # ... work ... clawteam task update dev-team task-id --status completed # 空闲时通知 Leader clawteam lifecycle idle dev-team --last-task task-id --task-status completed关键语义可在 skills/clawteam/SKILL.md 的 Worker Loop Protocol 一节验证Worker 完成初始--task后不应立即退出而应持续轮询自己的任务列表task list --owner name与收件箱inbox receive空闲时用lifecycle idle通知 Leader然后继续监听直到 Leader 显式关闭它。lifecycle idle会发送一条idle类型的消息给 Leader并触发AgentIdle事件见 clawteam/team/lifecycle.py。Workflow 3加入请求协议Join Request Protocol当某个 Agent 想动态加入一个已存在的团队时走请求—审批握手协议# Agent 侧请求加入阻塞直到收到响应 clawteam team request-join dev-team bob --capabilities frontend specialist --timeout 120 # Leader 侧检查收件箱中的加入请求 clawteam inbox peek dev-team --agent leader # join_request from bob, requestId: join-abc123 # Leader 批准 clawteam team approve-join dev-team join-abc123 # Agent 收到批准包含分配的名称和 Agent ID # Approved! Joined as bob (agentId: xyz789)该协议基于MessageType.join_request/join_approved/join_rejected三种消息类型实现。从源码看请求方在 clawteam/cli/commands.py 中把join_request消息投递到 Leader 收件箱然后在临时收件箱_pending_{proposed_name}上轮询等待响应直到超时默认 300 秒可用--timeout调整审批方在approve-join见 clawteam/cli/commands.py中生成新的agent_iduuid4().hex[:12]把 Agent 加入团队成员列表并向临时收件箱发送join_approved。request-join的几个可用参数参数说明默认值--capabilities, -cAgent 能力描述--timeout, -t等待 Leader 响应的秒数300--wait/--no-wait是否阻塞等待批准True若使用--no-wait请求会异步发出之后可以用clawteam team join-status team requestId --proposed-name name查询结果见 clawteam/cli/commands.py。审批时 Leader 还可以用--assigned-name覆盖请求者提议的名称。Workflow 4计划审批流程Plan Approval Flow对需要先评审后执行的团队Worker 提交计划、Leader 审批或驳回# Worker 提交计划内容可以是内联文本或文件路径 clawteam plan submit dev-team coder 1. Refactor auth module\n2. Add OAuth2\n3. Update tests \ --summary Auth system modernization # Leader 评审查看收件箱 clawteam inbox receive dev-team --agent leader # plan_approval_request with planId # Leader 批准或驳回 clawteam plan approve dev-team plan-id coder --feedback Looks good, proceed # 或 clawteam plan reject dev-team plan-id coder --feedback Add error handling section底层实现PlanManager.submit_plan生成plan_id把计划内容写入团队计划目录~/.clawteam/plans/{team}/{agent}-{plan_id}.md然后向 Leader 发送plan_approval_request消息消息中携带planFile路径与摘要见 clawteam/team/plan.py。approve_plan/reject_plan分别向 Worker 发送plan_approved/plan_rejected消息并携带可选反馈见 clawteam/team/plan.py。plan submit的位置参数如果是一个已存在的文件路径会自动读取文件内容作为计划见 clawteam/cli/commands.py。Workflow 5优雅关闭Graceful Shutdown协调多个 Agent 的关闭流程避免 Worker 中途被强杀导致任务悬挂# Leader 请求关闭某个 Worker clawteam lifecycle request-shutdown dev-team leader coder --reason All tasks complete # Worker 检查收件箱看到关闭请求 clawteam inbox receive dev-team --agent coder # shutdown_request, requestId: shut-xyz # Worker 完成当前工作后批准关闭 clawteam lifecycle approve-shutdown dev-team shut-xyz coder # 所有 Agent 完成后Leader 清理团队 clawteam team cleanup dev-team --force该协议由 clawteam/team/lifecycle.py 实现request_shutdown发送shutdown_request消息approve_shutdown回复shutdown_approvedreject_shutdown回复shutdown_rejected均带request_id关联。team cleanup会删除团队配置、收件箱、任务、成本、会话、计划等全部数据见 clawteam/team/manager.py所以要求--force或交互确认。与关闭配套的还有进程退出后的清理lifecycle on-exit会清理 Agent 会话文件、把该 Agent 名下in_progress的任务重置回pending并通知 Leader见 clawteam/cli/commands.pylifecycle check-zombies可检测长时间运行、从未调用on-exit的疑似僵尸进程见 clawteam/cli/commands.py。Workflow 6监控与调试Monitoring and Debugging用 board 与 inbox 命令持续观察团队健康状态# 所有团队速览 clawteam board overview # 单个团队详细视图 clawteam board show dev-team # JSON 输出方便脚本解析 clawteam --json board show dev-team | jq .taskSummary clawteam --json task list dev-team --status blocked | jq .[].subject # 找出有未读消息的成员 clawteam --json board show dev-team | jq .members[] | select(.inboxCount 0) | .name # 实时看板 clawteam board live dev-team --interval 3 # 盯住某个 Agent 的收件箱 clawteam inbox watch dev-team --agent leader从 clawteam/board/collector.py 的源码看board show的 JSON 结构包含team、members每个成员带inboxCount、tasks、taskSummary等字段overview则汇总每个团队的pendingMessages与成员数。因此上面的jq表达式都有明确的数据来源支撑。--json是全局选项必须放在子命令之前clawteam --json board show dev-team而不是clawteam board show dev-team --json。inbox receive是破坏性操作消息被消费删除inbox peek是非破坏性预览需要持续监听时用inbox watch阻塞式CtrlC 停止默认轮询间隔 1 秒也可用--exec对每条新消息执行 shell 命令消息数据通过CLAWTEAM_MSG_*环境变量传入见 clawteam/cli/commands.py。常用模式任务依赖链A → B → C# 创建链条 A - B - C clawteam task create team Task A -o alice # ID: aaa clawteam task create team Task B -o bob --blocked-by aaa # ID: bbb状态blocked clawteam task create team Task C -o carol --blocked-by bbb # ID: ccc状态blocked # A 完成后B 自动解锁 clawteam task update team aaa --status completed # B 从 blocked 变为 pending # B 完成后C 自动解锁 clawteam task update team bbb --status completed这套链式解锁由_resolve_dependents_unlocked实现见 clawteam/store/file.py仓库测试test_completing_task_unblocks_dependent对前置任务完成 → 依赖任务解锁的完整链路有直接验证见 tests/test_tasks.py。广播更新# Leader 向所有成员广播 clawteam inbox broadcast dev-team Sprint planning at 2pm. Check your tasks. # 带路由 key 的广播便于过滤 clawteam inbox broadcast dev-team Build passed --key ci-notification广播会跳过发送者本人向其余每个成员收件箱投递broadcast消息见 clawteam/team/mailbox.py。在脚本中使用 JSON 输出# 获取所有被阻塞的任务 BLOCKED$(clawteam --json task list dev-team --status blocked) echo $BLOCKED | jq -r .[].id # 统计每个团队的待处理消息数 clawteam --json board overview | jq .[] | \(.name): \(.pendingMessages) pending # 获取团队成员名单 clawteam --json team status dev-team | jq -r .members[].name底层数据模型与存储布局理解消息类型有助于调试协议类工作流。完整的消息类型定义见 clawteam/team/models.py其中与本文工作流直接相关的包括消息类型用途message/broadcast点对点消息 / 全员广播join_request/join_approved/join_rejected加入请求协议plan_approval_request/plan_approved/plan_rejected计划审批流程shutdown_request/shutdown_approved/shutdown_rejected优雅关闭协议idleAgent 空闲通知任务状态机状态说明pending尚未开始in_progress正在执行自动加锁并记录开始时间completed完成自动解锁下游依赖blocked等待其它任务文件存储布局默认数据目录~/.clawteam/~/.clawteam/ ├── teams/{team}/ │ ├── config.json # TeamConfigname、members、leader │ ├── inboxes/{agent}/ # msg-{timestamp}-{uuid}.json 消息文件 │ └── events/ # evt-{timestamp}-{uuid}.json 事件日志不消费可回溯 ├── tasks/{team}/ │ └── task-{id}.json # 单任务文件 └── plans/ └── {team}/{agent}-{id}.md # 计划文档两个值得注意的实现细节并发安全任务存储每次写入都通过 OS 级文件锁Unix 用fcntl.flock、Windows 用msvcrt.locking串行化并采用临时文件 原子改名tmp rename方式落盘避免部分读取见 clawteam/store/file.py。消息投递同样采用原子写入见 clawteam/team/mailbox.py。事件驱动任务创建/更新、收件箱收发都会在锁外异步发出事件AfterTaskUpdate、TaskCompleted、BeforeInboxSend等见 clawteam/store/file.py并发布 Redis 唤醒消息见 clawteam/team/redis_wakeup.py支撑board live、Leader 唤醒等实时场景。建议与注意事项receive会消费消息协议类消息如join_request、shutdown_request被 Leaderreceive后就从收件箱移除仅需预览时用peek。任务锁把任务置为in_progress时任务会被操作者锁定记录lockedBy其它 Agent 再改该任务会触发TaskLockError可用--force强制覆盖前提是被锁任务的持有者已不在线见 clawteam/store/file.py。Worker 循环Worker 完成任务后不要立刻退出应持续task listinbox receivelifecycle idle循环直到收到显式关闭指令。数据目录健康检查多机/共享目录场景可先运行clawteam config health检查数据目录是否可写、是否为挂载点、团队数量等见 clawteam/cli/commands.py。更多命令级细节可参阅 skills/clawteam/references/cli-reference.md完整使用语境可参阅 skills/clawteam/SKILL.md。将以上六大工作流串联起来即可构建一条完整的自动化链路建队 → 拆任务 → Spawn Worker → 依赖推进 → 计划评审 → 优雅关闭 → 清理团队这正是 ClawTeam 一条命令启动全自动协作 的典型落地方式。赞分享人工智能AI Agent多智能体Agent 编排Agent 工作流MCP 服务【免费下载链接】ClawTeamClawTeam: Agent Swarm Intelligence (One Command → Full Automation)项目地址https://gitcode.com/gh_mirrors/cl/ClawTeam点击查看免费下载相关推荐ClawTeam 多智能体协作指南用一条命令编排 Agent 团队、任务与监控恢复ClawTeam 多智能体协作指南用一条命令编排 Agent 团队、任务与监控恢复 ClawTeam 是一个框架无关framework agnostic的人工智能AI Agent多智能体Agent 编排Agent 工作流MCP 服务ClawTeam 实战指南用一条命令让 AI Agent 自主组队、协同完成复杂任务ClawTeam 实战指南用一条命令让 AI Agent 自主组队、协同完成复杂任务 导读 ClawTeam 是一个面向 CLI 的Agent 群体智能S人工智能AI Agent多智能体Agent 编排Agent 工作流MCP 服务50projects50days项目管理任务与团队协作工具50projects50days项目管理任务与团队协作工具 你是否曾在团队开发中遇到任务分配混乱、进度难以追踪、代码版本冲突等问题50projects50d示例工程前端上一篇Swift/Win32 开源项目教程下一篇GoPlantUml使用指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
特种作业考证资讯 责任编辑:民启特种作业
FUWU BAOZHANG

看完文章,报名服务了解一下

从咨询到拿证,全程有人对接

条件先核对年龄、学历、体检先对照,能报才报
材料免费预审材料拍来先审,不齐的提前补
批次主动提醒报名截止、考试时间提前通知
费用透明费用报名前逐项列明,确认后再办

看完文章还有疑问?

报考条件、材料清单、考试批次,直接电话或在线咨询,几分钟给你明确答复。