# 工具链课题:DevOps 工具链集成 > **状态**: 信息收集阶段,未正式立项设计 > **作者**: 庞统(副军师)🐦 > **日期**: 2026-05-16 > **定位**: 所有工具链能力最终要集成到 moziplus v2.0 中,不是独立系统 --- ## 1. 背景 moziplus v2.0 编排的不只是 AI Agent 的任务流转,还包括完整的开发生命周期。Agent 执行编码任务后,lint/test/build/deploy 应该自动串联;Agent 发现 bug 后应该能自动创建 Issue 追踪。工具链是 v2.0 从"任务流转工具"升级为"AI Native DevOps 平台"的关键拼图。 ## 2. 需求来源 | 来源 | 内容 | 状态 | |------|------|------| | PRD C10 | lint/test/build 自动触发,按需调用,结果驱动流转 | ❌ 未设计 | | 评审 D10 | 工具链自动化 Phase 规划 | ❌ 未覆盖 | | 评审 D13 | 需求→设计→编码→测试→部署→运维 全生命周期阶段映射 | ❌ 未覆盖 | | 评审 F8 | lint/test/build/deploy 自动化 | ❌ 未覆盖 | | MEMORY.md | gitee Issue 管理机制:选 repo、定流程、谁维护、标签体系 | ❌ 未做 | | T4-9 | Skill 测试框架(结构测试+干跑测试+场景测试) | ➡️ 移入本课题 | ## 3. 工具链分类(初步) | 分类 | 具体内容 | 当前状态 | 备注 | |------|---------|---------|------| | **代码管理** | Git 仓库(gitee + gitea)、分支策略、PR 流程 | ✅ 有基础 | gitee Issue 管理机制待建 | | **问题管理** | Issue/Bug/需求追踪、标签体系 | ❌ 无 | 与黑板 tasks 表的关系待定 | | **CI/CD** | lint/test/build 自动触发、结果驱动流转 | ❌ 无 | PRD C10 | | **测试工具** | 单元测试、集成测试、Skill 测试框架 | ❌ 无 | T4-9 移入 | | **开发环境** | Mac mini 本地开发环境 | ✅ 有 | 多 Agent 并行改代码隔离待设计 | | **测试/Staging 环境** | 独立验证环境 | ❌ 无 | 待定 | | **沙箱环境** | Agent 执行命令时的安全隔离 | ⚠️ 部分 | AgentsMesh PTY sandbox 参考 | | **运维工具** | PM2 进程管理、Daemon 健康自检、日志 | ⚠️ 部分 | Daemon 健康自检已在 architecture-v2.6 | ## 4. 调研参考 | 项目 | 关键实践 | 可借鉴点 | |------|---------|---------| | AgentsMesh | PTY sandbox + git worktree 隔离 + ticket-pod binding | Agent 执行隔离、代码并行修改 | | Aider | verification_commands(lint/test 自动验证) | Guardrail 验证脚本层已在 architecture-v2.6 | | nuwa-skill | 5 阶段蒸馏 + 质量验证 | Skill 测试框架参考 | | Claude Code | 98.4% Infrastructure,上下文管理为主 | 工具链服务于 Agent,不是 Agent 服务于工具链 | ## 5. 待讨论的关键问题 1. **CI/CD 走什么**:本地跑(Mac mini)?接 GitHub Actions?接 gitee CI?还是 moziplus Daemon 自己调度? 2. **测试环境怎么搭**:和开发环境同一台机器?NAS Docker?Windows-Test-Node(192.168.2.33)? 3. **沙箱到什么程度**:Agent 执行命令时的安全隔离?文件系统级隔离(worktree)?还是进程级隔离? 4. **Issue 管理用 gitee 还是自己做**:黑板 tasks 表已能追踪任务,还需要外部 Issue 系统吗?两者怎么打通? 5. **与 moziplus v2.0 集成方式**:工具链是 v2.0 内置能力还是外部集成?Daemon 怎么触发 lint/test/build?Guardrail 和工具链的关系? 6. **全生命周期阶段映射**:需求→设计→编码→测试→部署→运维,每个阶段对应哪些工具链能力?Daemon 怎么感知当前阶段? 7. **结果驱动流转**:lint/test/build 结果怎么写回黑板?怎么影响任务状态?(如 test 失败 → 自动标记 needs_revision) ## 6. 与 v2.0 架构的集成点 ``` moziplus v2.0 Daemon │ ├── Guardrail(课题3)──→ 工具链触发点 │ ├── L1 机械检查 ──→ 文件存在/格式校验(Daemon 直接执行) │ ├── L2 AI 检查 ──→ lint/test 自动触发 + 结果评估 │ └── L3 Agent 审查 ──→ 代码审查 + Issue 创建 │ ├── Hook(双重 Hook)──→ 工具链触发时机 │ ├── agent_turn_prepare ──→ 注入工具链上下文 │ └── agent_turn_complete ──→ 触发 lint/test/build │ ├── reviews 表 ──→ 工具链结果存储 │ └── review_type: "guardrail" ──→ lint/test/build 结果 │ └── Dashboard(课题9)──→ 工具链可视化 ├── 任务看板 ──→ CI/CD 状态展示 └── 系统配置 ──→ 工具链配置管理 ```