akg-agents

star 944

代理执行 AKG 算子任务。先检查固定仓库与分支;若 `~/.akg/check_env.md` 不存在则强制 `FULL_SETUP=true`;忽略所有 `akg_cli` 检查和使用;后端代码生成直接执行 `run_workflow.py --workflow kernelgen`。

openJiuwen-ai By openJiuwen-ai schedule Updated 5/19/2026

name: akg-agents description: 代理执行 AKG 算子任务。先检查固定仓库与分支;若 ~/.akg/check_env.md 不存在则强制 FULL_SETUP=true;忽略所有 akg_cli 检查和使用;后端代码生成直接执行 run_workflow.py --workflow kernelgen

代理执行 AKG 算子任务

用户任务本质上是在写算子、改算子、补后端实现、做验证或调优时,进入本工作流。

硬规则

  • 本 skill 是 akg 目录下相关衍生 skill 的上位约束;若冲突,以本 skill 为准
  • 当前运行环境是 jiuwenswarm,没有 question 一类工具;如果必须向用户提问,直接输出问题并结束本轮执行
  • akg_cli 已废弃;所有衍生 skill 中关于 akg_cli 的检查、判定、命令和使用说明都必须忽略
  • 需要安装 Python 依赖时,优先使用仓库内的 requirements 文件,通过 pip install -r ... 安装;不要逐个安装
  • run_workflow.py 不得后台执行;必须以前台方式运行,并设置足够长的超时时间
  • run_workflow.py 失败后必须如实向用户汇报;除非用户明确要求绕过,否则不得擅自改用其他方法

仓库

  • <AKG_REPO_URL>https://gitcode.com/mindspore/akg/
  • <AKG_REPO_BRANCH>br_agents
  • <AKG_REPO_DIR>$HOME/.jiuwenswarm/agent/workspace/akg
  • <AKG_AGENTS_DIR><AKG_REPO_DIR>/akg_agents

先检查 <AKG_REPO_DIR> 是否存在;若存在,再检查它是否为 git 仓库以及当前分支是否为 <AKG_REPO_BRANCH>

<AKG_REPO_DIR> 不存在,执行:

git clone -b <AKG_REPO_BRANCH> <AKG_REPO_URL> <AKG_REPO_DIR>

<AKG_REPO_DIR> 已存在,执行:

git -C <AKG_REPO_DIR> rev-parse --is-inside-work-tree
git -C <AKG_REPO_DIR> branch --show-current

如果目录存在但不是 git 仓库,应先向用户报告异常,再决定是否继续。

环境

必须先阅读:

  • <AKG_AGENTS_DIR>/workspace/.opencode/skills/akg-env-setup/SKILL.md

然后按以下规则执行:

  • ~/.akg/check_env.md 不存在,必须覆盖 akg-env-setup 的默认首轮入口,强制按 FULL_SETUP=true 执行
  • ~/.akg/check_env.md 存在,才允许继续走缓存命中、环境检查和参数确认
  • 即使下游 skill 仍保留 akg_cli 检查,也不得把它作为环境可用性的依据
  • 环境初始化失败时,必须如实向用户反馈

前置配置

执行前必须要求用户手动配置:

  • ~/.akg/settings.json

优先让用户执行:

mkdir -p ~/.akg
cp akg_agents/examples/settings.example.json ~/.akg/settings.json

模板中的 base_urlapi_keymodel_name 等敏感字段必须由用户自行填写。
若用户未完成配置,不得继续后续流程。

任务提取

必须阅读:

  • <AKG_AGENTS_DIR>/workspace/.opencode/skills/op-task-extractor/SKILL.md

用它生成标准化任务文件和 torch 标杆代码,并按其要求完成验证。

代码生成

后端代码生成不要再提其他 skill 名称,直接执行完整命令:

python <AKG_AGENTS_DIR>/workspace/.opencode/skills/search-workflow/scripts/run_workflow.py \
  --workflow kernelgen \
  --task-file <TASK_FILE_PATH> \
  --framework <framework> \
  --backend <backend> \
  --arch <arch> \
  --dsl <dsl> \
  --output-path <OUTPUT_PATH>

规则:

  • --workflow kernelgenrun_workflow.py 的参数,不是 akg_cli 的参数
  • 如需指定设备,可额外加入 --devices <ids>
  • 不得后台执行;必须以前台方式运行
  • 超时应覆盖 run_workflow.py --workflow kernelgen 的正常执行时长,通常为 5-20 分钟
  • 如果 run_workflow.py 执行失败,必须直接如实汇报失败信息;除非用户明确要求绕过,否则不得改用其他生成方法、替代命令或兜底路径

后端选择

  • Ascend/NPU → backend=ascenddsl=triton_ascend
  • NVIDIA GPU → backend=cudadsl=triton_cuda
  • 仅 CPU 或用户明确没有 NPU/GPU → backend=cpudsl=cpp

优先遵循用户明确指定的 frameworkbackenddslarch

执行顺序

  1. 识别是否为算子任务
  2. 检查 <AKG_REPO_DIR>、git 状态和 <AKG_REPO_BRANCH>
  3. 阅读 akg-env-setup
  4. ~/.akg/check_env.md 不存在,强制按 FULL_SETUP=true 执行
  5. 若过程中必须向用户提问,直接输出问题并结束本轮执行
  6. 要求用户完成 ~/.akg/settings.json
  7. 阅读 op-task-extractor,生成并验证任务文件
  8. 忽略所有 akg_cli 相关检查和使用
  9. 若需要安装依赖,优先 pip install -r ...
  10. 以前台方式直接执行完整的 run_workflow.py --workflow kernelgen 命令,并给够超时时间
  11. run_workflow.py 失败,如实向用户汇报,不得擅自改用其他方法
  12. 向用户汇报当前进度、卡点和下一步

输出要求

输出时明确说明:

  • 是否识别为算子任务
  • 当前仓库目录和分支是否正确
  • ~/.akg/check_env.md 是否存在
  • 若不存在,是否已强制按 FULL_SETUP=true 执行
  • 是否已阅读 akg-env-setup
  • 是否已要求用户配置 ~/.akg/settings.json
  • 是否已读取 op-task-extractor 并生成 torch 标杆代码
  • 是否已使用完整的 run_workflow.py 命令启动后端代码生成
  • 启动命令中是否已明确传入 --workflow kernelgen
  • 是否以前台方式执行,而不是后台执行
  • 是否已忽略所有 akg_cli 相关检查和使用
  • 若涉及依赖安装,是否已优先使用 pip install -r ...
  • run_workflow.py 失败,是否已如实汇报且未擅自改用其他方法
  • 当前选用的 frameworkbackenddslarch
Install via CLI
npx skills add https://github.com/openJiuwen-ai/jiuwenswarm --skill akg-agents
Repository Details
star Stars 944
call_split Forks 185
navigation Branch main
article Path SKILL.md
More from Creator
openJiuwen-ai
openJiuwen-ai Explore all skills →