ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

oam-tools 仓库 Agent Skills 规划与全自动化开发流程指南

oam-tools 仓库 Agent Skills 规划与全自动化开发流程指南 oam-tools 仓库 Agent Skills 规划与全自动化开发流程指南【免费下载链接】oam-tools本项目为开发者提供故障定位工具包含故障信息收集软硬件信息展示AI core error报错分析等能力提升故障问题定位效率文档可在昇腾社区搜索“故障处理简介”选择社区版。项目地址: https://gitcode.com/cann/oam-toolsoam-toolsOperations, Administration, and Maintenance是华为 CANN 的运维工具集为开发者提供故障定位与性能调优能力故障信息收集、AI Core Error 分析、性能剖析、HCCL 性能测试等。本文基于仓库.opencode/README_en.md的规划文档系统讲解 oam-tools 为 AI Agent 设计的 Skills 清单、需要支持的完整开发流程、Skills 的安装与路径管理机制并结合仓库源码给出实现细节。读完本文你将掌握该仓库 Agent 自动化闭环需求开发 → 编码 → UT/ST → 检视 → PR → 流水线监控 → 修复重提的完整设计以及如何在 oam-tools 目录下启动 Agent 时自动装配默认 Skills。一、背景为什么 oam-tools 需要 Agent Skills 规划oam-tools 是典型的多模块、多语言、强流程约束的运维工具仓库从 AGENTS.md 可以看到其四大核心能力故障信息收集asys故障信息收集、软硬件信息展示、健康检查、综合检测等源码位于 src/asysAI Core Error 分析msaicerrAI Core Error 问题分析、Dump 文件解析、环境检查等源码位于 src/msaicerr性能调优msprof采集分析昇腾 AI 处理器上 AI 任务各阶段关键性能指标源码位于 src/msprofHCCL 性能测试hccl_test分布式场景下集合通信功能与性能测试源码位于 src/hccl_test。这样的仓库对 Agent 的诉求非常明确让 Agent 在仓库内完成从需求到合入的完整闭环而不是只做单点问答。为此项目组在.opencode/README_en.md中规划了一整套 Skills 体系并用一个插件实现启动时自动安装/更新。说明.opencode/README_en.md为英文规划文档仓库内同时维护了中文版 .opencode/README.md两份内容一一对应。二、oam-tools 仓 Skills 清单规划文档以清单形式列出了 9 个 Skill其中[x]表示已就绪ready[ ]表示仍在规划中、尚未实现。以下完整保留原文档内容并补充说明Skill状态职责触发指令示例gitcode-issue✅ 已就绪读取 Issue 详情、读取和回复评论读取issue 168并提交pr修复gitcode-pr✅ 已就绪创建 PR、提交行内检视意见、cherry-pick 代码到商用分支检视pr 1437/创建pr到develop分支superpowers⬜ 规划中需求开发生成软件设计文档、编码、生成测试用例开发需求要求……oam-tools-reviewer⬜ 规划中遵循各种编码规范、编码军规、模块软件设计约束检视代码—gitcode-pipeline⬜ 规划中触发流水线任务、查询流水线状态、获取失败任务日志—oam-tools-dt-runner⬜ 规划中编译和执行 UT/ST 用例—oam-tools-tester⬜ 规划中生成用例在带有 NPU 的环境上执行用例—api-doc-generator⬜ 规划中对外 API 生成文档—install-cann-toolkit⬜ 规划中下载最新 CANN toolkit 包并安装—从这张清单可以看出项目组的 Skill 分层设计思路平台层gitcode-issue、gitcode-pr、gitcode-pipeline打通代码托管平台与 CI/CD 的核心操作是自动化闭环的地基工程层oam-tools-reviewer、oam-tools-dt-runner、oam-tools-tester面向仓库本身的代码质量与验证能力直接对应当前仓库 test/ 下庞大的 UT/ST 用例体系能力层superpowers、api-doc-generator、install-cann-toolkit提升 Agent 的开发、文档与部署能力。与仓库现状的对照Skills 已部分落地规划文档中的 Skill 是目标蓝图而当前仓库的 skills 目录已经实际沉淀了一批聚焦昇腾调优场景的 Skill例如cann-npu-perfanalysis/SKILL.md分析 Ascend NPU Profiling 数据覆盖迭代效率、算子热点、MFU、通信效率、设备空泡等 8 个性能维度输出 Host/Device Bound 判定与 Markdown HTML 双格式报告cann-perf-breakdown、cann-perf-breakdown-to-ui-json、cann-perf-ui-json-report 等围绕性能拆解、UI JSON 报告生成形成完整链路。同时 AGENTS.md 在开发规范一节明确gitcode pr/issue 操作引用.claude/skills/default-skills/SKILL.md说明规划中的跨仓共享 Skill 将通过.claude/skills目录注入使用。规划文档与仓库现状互为印证清单给出规划skills 目录给出已实现的样例。三、Agent 需要支持的四大流程规划文档定义了 Agent 在 oam-tools 仓库必须支持的四种工作流这是整个 Skills 体系的业务驱动1. 需求开发Requirement Development完成从软件设计 → 编码 → 验证的完整流程使用gitcode-pr提交 PR个人检视代码使用gitcode-pipeline触发流水线并定时获取结果若流水线失败获取对应失败任务日志本地修改代码再次提交 PR 并持续监控流水线直至通过。2. 问题单修改Issue Fix修改代码后续 PR 提交流程与需求开发完全一致——即改码容易走完流程才是闭环。3. 解决 IssueSolve Issue使用gitcode-issue读取 Issue 及评论如果涉及修改代码或文档后续流程同样与需求开发一致。4. 执行测试用例或样例使用oam-tools-tester在**真实环境带 NPU**中执行用例。这与仓库 examples 目录asys、msaicerr、msprof 各组件均有 run.sh 样例以及 test 目录UT/ST 用例直接呼应——Agent 不仅写代码还要能跑真实的昇腾环境验证。四、oam-tools 仓 Skills 路径管理机制规划层面的路径规则项目组共享期望做到启动 Agent 时默认安装或更新Skills仓库私有 Skill仅在 oam-tools 仓使用的 Skills 可直接提交到 oam-tools 仓的.claude/skills目录跨仓共享 Skill多个仓库共用的 Skills源码存放在公共仓启动 Agent 时会自动下载或更新到.claude/skills目录。注意gitcode-issue、gitcode-pr等跨仓共享 Skills 不在 oam-tools 仓的.claude/skills目录中维护其源码存放在公共仓在 oam-tools 目录下启动 Agent 后会自动下载并安装到本地.claude/skills目录。实现层面的自动安装插件启动 Agent 自动安装/更新并非停留在规划仓库提供了实际实现.opencode/plugins/install-default-skills.ts。从源码结构可以梳理出该插件的核心机制定位仓库根目录通过findGitRoot从当前目录向上逐级查找.git目录确保在子目录启动也能正确找到仓库根Windows 平台降级处理检测process.platform win32若是 Windows 则跳过自动安装改为提示用户输入安装默认skill指令手动触发执行安装脚本调用.claude/skills/default-skills/scripts/install-default-skills.sh完成下载/更新MD5 变更检测安装前后分别对gitcode-pr、gitcode-issue两个 Skill 的SKILL.md计算 MD5 哈希比对beforeStates与afterStates文件从不存在变为存在 → 判定新安装文件存在但哈希变化 → 判定已更新只有当发生变化时才延迟 1 秒提示重启 opencode 才能完全生效避免打扰失败兜底安装出错时写日志到install_error.log并在仓库根目录生成错误标记文件.opencode_skills_error提示用户输入安装默认skill重试。此外.opencode/opencode.json 中的插件配置还声明了superpowersgithttps://github.com/obra/superpowers.git插件依赖与规划清单中superpowers需求开发一项对应说明需求开发能力通过插件体系接入。五、Agent 辅助流程完整 Mermaid 图规划文档给出了一张完整的辅助流程图清晰展示了从入口到结束的决策与执行路径原文如下流程要点解读入口分流需求开发A1直接进入设计判断 B2——需求开发必须先确认是否需要设计阶段问题单修改A2与Issue 处理A3进入代码修改判断 B1。两级判断B2是否需要设计阶段需求开发需要 → 产出软件设计/需求规格C1后再编码不需要 → 直接编码D1B1是否需要代码修改问题单/Issue 需要改代码 → 编码D1不需要改代码 → 直接流程结束H1。编码验证阶段D1→D4编码完成后依次执行 UT/STD2、由 oam-tools-reviewer 检视代码D3、由 oam-tools-tester 在真实环境本地验证D4全部通过后才进入 PR 流程。PR 闭环E1→E4→F1创建 PRE1→ 个人代码检视E2→ 触发流水线E3→ 定时获取结果E4。流水线通过则结束H1失败则获取失败任务日志F2→ Agent 本地修复F3→ 通过 gitcode-pr 重新提交代码I1→ 再次触发流水线E3形成失败-修复-重提-再验的循环直到流水线通过。六、总结oam-tools 的 Agent Skills 规划是一个典型的仓库级 Agent 自动化闭环设计以 gitcode-issue / gitcode-pr / gitcode-pipeline 三个平台类 Skill 为骨架打通开发全链路以 oam-tools-reviewer / oam-tools-dt-runner / oam-tools-tester 保障代码质量与真实环境验证以 superpowers、api-doc-generator、install-cann-toolkit 补齐设计与部署能力同时通过.opencode/plugins/install-default-skills.ts插件实现启动即安装、变更即更新的默认 Skills 装配机制。规划文档中已就绪的两个 Skillgitcode-issue、gitcode-pr与仓库 skills 目录中已沉淀的昇腾调优 Skill 相互印证表明该体系正从规划稳步走向落地。【免费下载链接】oam-tools本项目为开发者提供故障定位工具包含故障信息收集软硬件信息展示AI core error报错分析等能力提升故障问题定位效率文档可在昇腾社区搜索“故障处理简介”选择社区版。项目地址: https://gitcode.com/cann/oam-tools创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表