已关闭
refactor(ops-direct-invoke): 重构为 skill 驱动的多角色编排工作流,支持算子仓继承与静默模式 #964
refactor(ops-direct-invoke): 重构为 skill 驱动的多角色编排工作流,支持算子仓继承与静默模式 #964
已关闭
TangPC创建于 8月31日关闭于 9月7日
TangPC
TangPC成员
8月31日

描述

本次重构将 ops-direct-invoke 插件的工作流实现从「静态 agents + workflows 目录」模型改为 skill 驱动的多角色编排模型,借鉴面向对象设计思想,将通用工作流沉淀为 CANNBot 维护的「基类」,各算子仓作为「子类」继承编排流程、仅覆写与自身耦合的领域知识,达到一套核心流程服务所有算子仓、消除重复建设的目的。

主要变更

  • 角色重构:由 4 个角色(ascendc-kernel-architect / design-reviewer / developer / reviewer)扩展为 6 个专业角色(architect、developer、developer-code、developer-test、developer-doc、QA),PM 主 Agent 只调度不执行,执行与验收职责分离。
  • 工作流引擎化:删除旧 workflows/ 静态目录,新增 16 个子 skill:
    • ops-direct-invoke-workflow:统一流程编排(阶段 0-7、CP0-CP5 检查点、任务回退、静默模式)
    • ops-direct-invoke-workflow-maintain:维护红线与 SOLID 设计约束看护
    • plugin-experience-summary / plugin-perf-iteration / plugin-pr-submit:可插拔流程插件,frontmatter 声明挂载点、init 注册到 .cannbot/settings.json,自闭环可单独触发
    • repo-build-guide / repo-coding-rules / repo-knowledge / repo-op-templates / repo-test-develop:仓库领域知识
    • workflow-cp0 ~ workflow-cp5:各检查点验收 skill
    • workflow-doc-templates / workflow-agent-permissions:文档模板与权限管理
  • 跨平台权限守卫:旧 hooks(hooks.json / run-hook.cmd / session-start-ops-direct)替换为按角色写权限隔离的 permission-guard hooks,覆盖 claude / codex / dsh / opencode / trae 五类 CLI(dsh 提供可选部署级 Cordis 守卫插件)。
  • 配置统一与静默模式:运行时配置收敛到 .cannbot/settings.json 唯一权威(工作流模式、插件注册与启用状态、问卷状态);新增静默模式(--mode silent 完全无人值守,支持会话内「开启/关闭静默模式」切换与权限预检)。
  • init.sh 重写为 constructor 模式:装配 .cannbot/permissions、权限 hook、.cannbot/settings.json、依赖仓 clone 到 .cannbot/;example/init.sh 提供算子仓接入范例。
  • 安装一致性:install-helper 不再声明 installSkills / externalRepos,改由 init.sh 完成装配;dependency_validator.py 增强 DG-11 校验,支持从 agents/*.md frontmatter 解析 skill 白名单。

关联的Issue

  • #595

测试

  • 更新 plugins-community/install-helper/tests/plugins-consistency.test.ts,适配 init.sh 装配路径
  • 增强 tests/lib/dependency_validator.py:DG-11 支持 agents/*.md frontmatter 白名单解析

文档更新

  • 新增 plugins-official/ops-direct-invoke/README.md:设计思想、知识分层、角色与流程概览、设计约束、静默模式说明
  • 重写 plugins-official/ops-direct-invoke/AGENTS.md:PM 主 Agent 定义、启动检查、静默模式权限预检

类型标签

流水线故障排查

likedislike
当前Pull Request已关闭, 关闭人@TangPC
TangPCTangPC成员
8月31日 创建了 pull request,commit cf1df4c0
atomgit-bot
atomgit-bot
8月31日 评论:

🤖 正在生成合并请求摘要,请稍候…

likedislike
不准确?
atomgit-bot
atomgit-bot
8月31日 评论:

🤖 AI 代码检视正在进行中,请稍候…

likedislike
不准确?
CANN-robotCANN-robot成员
8月31日 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
8月31日 评论:

CLA Signature Pass

pingchuantang, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
CANN-robot
CANN-robot成员
8月31日 评论:

Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
You can self-configure the PR merge rules for this repository. For more details, please refer to Here.
For more, you also can visit HICANN.


PR Approval Progress

⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)

Module Approval Details

module lgtm status approve status
repo-cann/cannbot-skills ❌ (0/2)(You can also ask: zihengwang2, 金炯, xutianze, dengguojie, hedi0515) ❌ (0/1)(You can also ask: benwallace52, 沈敏, 金炯, wangzheng97, 冯彤)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)

CLA Signature Pass

pingchuantang, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
TangPCTangPC成员
8月31日 修改标题为 “refactor(ops-direct-invoke): 重构为 skill 驱动的多角色编排工作流,支持算子仓继承与静默模式”,原标题为“refactor(ops-direct-invoke): 重构直调算子工作流,改为 skill 驱动的多角色编排”
TangPCTangPC成员
8月31日 修改了pull request 的描述
atomgit-bot
atomgit-bot
8月31日 评论:

⚠️ 本次变更过大(40 个可审文件、5042 行,预估需 5 轮分片审查),已超出 AI 代码评审的处理范围,本次跳过。建议拆分为更小的 PR 以获得有效评审。

likedislike
不准确?
atomgit-bot
atomgit-bot
8月31日 评论:

⚠️ 本次变更过大(40 个可审文件、5042 行,预估需 5 轮分片审查),已超出 AI 代码评审的处理范围,本次跳过。建议拆分为更小的 PR 以获得有效评审。

likedislike
不准确?
TangPCTangPC成员
8月31日 预合并成功(commit_id: 8db8a05f7433679dac3efe5a981fd28a14e720d9)
此处折叠了8条事件消息 查看更多
CANN-robotCANN-robot成员
8月31日 添加了label:cann-cla/yes
jon_jin成员
9月5日 评论:

compile

likedislike
TangPCTangPC成员
9月5日 virtual merging failed, update merge request[project_id: 9461373, iid: 964, target_commit_sha: a426ec91e1038f233066724d63235c719a46a10d], message: Conflict detected
TangPCTangPC成员
9月5日 virtual merging failed, update merge request[project_id: 9461373, iid: 964, target_commit_sha: a426ec91e1038f233066724d63235c719a46a10d], message: Conflict detected
TangPCTangPC成员
9月7日 关闭了 pull request