一套可以直接丢给 AI 复刻的多智能体调度体系:跨项目调度 SOP v1.0
版本:v1.1(2026-08-20)| 状态:投产(当日实测验证)
使用方式:把本文档全文丢给你的 AI 编程助手(任意家),加上你的项目路径,它即可照规程复刻本体系;也可作为团队内部规程直接执行。
读者:本体系维护者、同类需求开发者、AI 助手。
1. 目的与适用范围
在单机环境上,以 Kimi Code CLI 为运行时,实现一个主控会话对多个项目级 Agent 的统一调度,使各项目的人格、技能、MCP、模型配置在受派任务中完整生效。适用于:多项目并行、各项目有独立 Agent 配置、数据须留本机的场景。
2. 前置条件(复刻前逐项确认)
| # |
条件 |
验证命令 |
通过标准 |
| 1 |
Kimi Code CLI ≥0.37 |
kimi --version |
打印版本号 |
| 2 |
目标项目为 git 仓库 |
项目根有 .git/ |
技能 Project 级加载依赖它定位项目根 |
| 3 |
目标项目有独立工具环境 |
如 .venv/ |
与全局隔离 |
| 4 |
主控项目(调度入口)已确定 |
日常会话所在目录 |
一个,不要多个 |
3. 术语
| 术语 |
定义 |
| 数字员工 |
一个配置了 AGENTS.md 与工具链的项目目录 |
| 统帅部 |
主控项目会话,唯一调度入口,不承担执行 |
| 满血派单 |
在目标项目目录以 kimi -p 起无头会话的调度方式 |
| 素材包 |
任务所需事实、数据、约束的 Markdown 文件 |
| 任务书 |
派单指令文件,含目标、骨架、硬约束、读写边界 |
| 任务文件夹 |
类型目录/YYYYMMDD_任务名/,单任务全部产物归档处 |
4. 架构
三层两编制:
统帅部(主控项目)
├── A 类:会话型员工(独立项目目录,一人一档)
└── B 类:产线型团队(CrewAI crew,队内多岗,品控岗内置)
配置加载机制(0.37.2 实测 + 官方文档):
- 技能四级:Project(cwd 向上最近 .git 根的
.agents/skills/、.kimi-code/skills/)> User(~/.agents/skills/)> Extra(config.toml extra_skill_dirs)> Built-in;
- MCP:会话级,随启动目录配置加载;
- 模型:会话级,
config.toml default_model 或 -m 临时指定;
- AGENTS.md:按触及路径注入提示。
关键约束:主会话子代理继承主会话的技能清单、MCP 注册表与模型,不随其操作目录切换。跨项目调度不得依赖子代理继承机制。
5. 数字员工配置规格(上岗四件套)
| 件 |
位置 |
必备内容 |
| 人格规程 |
<项目>/AGENTS.md |
角色定位、硬约束、目录约定、运行环境 |
| 岗位技能 |
<项目>/.agents/skills/<名>/SKILL.md |
frontmatter 显式 name + description(目录形式缺省解析失败) |
| 工具环境 |
<项目>/.venv/ 等 |
项目内隔离,不污染全局 |
| 资料目录 |
项目内分类目录 |
原始材料与产出分离 |
AGENTS.md 最小模板:
# <项目名> · AI 工作辅助项目
## 项目性质
<这个项目是什么,Agent 在这里干什么>
## 角色定位
你是<角色名>,职责:< enumerated >。
硬约束:<不许做的事>。
## 目录结构与归档约定
<产出放哪、原始材料不许动>
## 运行环境
<解释器/依赖/执行方式>
## 语言与输出
<语言、输出落文件还是对话>
6. 操作规程
6.1 派单通道选择
| 通道 |
方式 |
配置保真度 |
适用条件 |
| A |
主会话子代理 + 任务书指定技能文件路径 |
部分(人格/技能靠读文件) |
轻量、无项目专属配置需求 |
| B(主力) |
cd <项目> && kimi -p "<任务书>" |
完整 |
需项目技能/MCP/指定模型 |
| C |
CrewAI crew(main.py --team <名>) |
产线级 |
有质检流水线任务 |
6.2 通道 B 标准流程
- 建任务文件夹:
<项目>/<类型目录>/YYYYMMDD_任务名/;
- 素材包落文件进任务文件夹(事实、数据、禁写项);
- 任务书落文件进任务文件夹。任务书模板:
# 派单任务书:<任务名>
1. 先读 `AGENTS.md` 与 `<素材包路径>`,严格按其中约束执行。
2. 任务目标:<要什么产物>。
3. 硬约束:
- 只允许在 `<任务文件夹>` 内新建文件,不得修改/移动/删除任何既有文件;
- <领域红线,如"内部研判不入文">;
- 缺失信息一律标【待核实】,禁止虚构。
4. 输出规格:<文件名、格式、版式要求>。
5. 完成后回复:输出文件路径 + 全部【待核实】标注清单。
- 执行:
cd "<项目>" && kimi -p "$(cat <任务书路径>)"
# 续派同一会话(有记忆延续):
kimi -r <session_id> -p "<追加指令>"
# 需要编程解析输出时:
kimi -p "<任务书>" --output-format stream-json
预期行为:会话以目标项目人格应答,产物落任务文件夹,进程正常退出并打印 To resume this session: kimi -r <id>。
- 验收:对照任务书逐项核;可脚本化的项用脚本(如禁词/口径检查 zhijian_check.py,退出码 0 放行);
- 归档:素材包/任务书/成品/过程稿/备份全留任务文件夹,禁止平铺散落。
6.3 纪律
- 素材包必须落文件(无头会话零记忆,口说无凭);
- 配置变更(人格/技能/MCP/模型)仅调度方执行,员工无配置修改权;
- 交付以验收通过为准,过程产物不算交付;
- 对外内容另有口径红线(如团队架构不报 agent 头数),写进 AGENTS.md 或领域 rules,不靠记忆。
7. 质量闸门
| 闸门 |
工具 |
说明 |
| 客观项 |
zhijian_check.py(禁词/口径/破折号/必备块,退出码 0/1/2) |
零模型成本,先跑 |
| 味道判卷 |
独立判卷(非写作者本人)按 humanizer 33 模式 + 5 维评分 |
≥45 放行;写判放三合一=违规 |
| 终审 |
人 |
一票否决 |
8. 复制验收清单(复刻方自检)
| # |
检查项 |
通过标准 |
| 1 |
人格加载 |
目标项目 kimi -p "你是谁" 应答该项目的角色,而非通用助手 |
| 2 |
技能可见 |
应答能列出 <项目>/.agents/skills/ 下的技能名 |
| 3 |
真实派单 |
一次通道 B 任务产出落任务文件夹,主控侧验收通过 |
| 4 |
边界遵守 |
任务书读写边界外零改动 |
| 5 |
归档有序 |
任务文件夹内素材包/任务书/成品齐全 |
9. 已知约束与边界
-p 与 --yolo/--auto/--plan 互斥;
- 无头模式 auto 权限只在受信目录使用;
- 子代理技能模拟(读文件)无占位符展开等调用糖;
- 无托管并发与可视化编排,调度串行依赖主控会话;
- 本体系绑定 Kimi Code CLI;换运行时需重写第 4/6 节的加载机制与命令。
10. 故障案例库
| 编号 |
现象 |
根因 |
解法 |
| F1 |
python-docx 保存 docx 报 PermissionError 13 |
文件被 WPS 占用 |
先关闭占用进程 |
| F2 |
Git Bash mv 中文文件名 cannot stat |
控制台编码打花文件名 |
Python shutil.move(进程内 UTF-8) |
| F3 |
python-docx 打开 .dotm/.dotx 报 not a Word file |
只认 document.main+xml content type |
zip 级改写 [Content_Types].xml,剔除 vbaProject,另存 .docx |
11. 验证证据(2026-08-20)
kimi -p 在目标项目目录无头会话正确加载人格(应答"TJ01 标征迁科负责人的 AI 工作助手")并如实报告项目技能为空;正常退出,返回可续派 session id;
- 通道 B 完成真实业务全程:公文报告从素材包到 docx 成品,经三轮返工定稿;
- 文档依据:kimi 命令参考、Agent Skills(官方文档站,2026-08-20 抓取)。
12. 变更记录
| 版本 |
日期 |
变更 |
| v1.0 |
2026-08-20 |
初版;三通道、四件套、三闸门、故障案例 F1-F3 |
| v1.1 |
2026-08-20 |
升级为复刻级:新增前置条件表、AGENTS.md/任务书模板、复制验收清单、换运行时边界声明 |