一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

QoderWake如何创建适合代码审查的Waker?

时间:2026-08-03 15:53:55 编辑:袖梨 来源:一聚教程网

要在QoderWake中创建代码审查Waker,需新建code-review-waker.qw文件,定义id、trigger(含opened/synchronize)、skills,绑定内置或自定义Skill链,配置JSON输出、归档路径及GitHub自动评论,最后注册并激活Waker。

要在QoderWake中创建一个专用于代码审查场景的Waker,必须让该Waker能识别PR上下文、提取变更文件、调用语义分析引擎并生成结构化评审意见——这要求Waker具备明确的事件触发器、预置的代码理解Skill链和可审计的输出模板。

定义Waker基础元信息与触发逻辑

第一步:在项目根目录的.qoder/wakers/下新建文件code-review-waker.qw。若该目录不存在,请先手动创建。

第二步:写入YAML格式的Waker声明,关键字段必须包含idtriggerskills三部分:

id: "cr-waker-v1"

trigger:

event_type: "github:pull_request"

filter:

action: ["opened", "synchronize"]

skills:

- "diff-parser"

- "semantic-analyzer"

- "security-scan"

注意:【trigger.filter.action必须同时包含opened和synchronize】,否则Waker将漏掉PR更新后的二次审查机会。

绑定代码审查专用Skill链

方法一:复用内置Skill(推荐)

确保已启用QoderWake v0.3.5+内置的diff-parsersemantic-analyzer模块。执行qoderwake skill list --enabled验证其状态为active。若未启用,运行qoderwake skill enable diff-parser semantic-analyzer

方法二:挂载自定义评审Skill

若需集成企业私有规则库,在.qoder/wakers/code-review-waker.qw中追加custom_skills节段:

custom_skills:

- path: "/opt/qoder/skills/corp-secure-coding.qws"

- config:

rule_set: "PCI-DSS-v4.2"

severity_threshold: "critical"

该路径必须指向已签名且通过qoderwake skill verify校验的.qws包,否则Waker启动时将拒绝加载。

配置审查结果输出与归档策略

① 在Waker文件末尾添加output区块,强制使用结构化JSON格式:

output:

format: "json"

template: |

{

"pr_id": "{{ .event.pull_request.number }}",

"reviewer": "QoderWake-CR",

"findings": {{ .skills.semantic-analyzer.results | json }},

"summary": "{{ .skills.security-scan.summary }}"

}

② 指定归档位置,避免日志堆积:

archive:

path: "/var/log/qoderwake/reviews"

retention_days: 90

③ 启用GitHub评论自动发布功能:

publish:

to: "github:comment"

on_failure: "log-only"

这一步操作起来很简单,直接把上述三段内容追加到code-review-waker.qw文件底部即可。但注意:【archive.path目录必须由root提前创建并赋予qoder用户写权限】,否则首次运行时会静默失败且不报错。

注册并激活Waker实例

执行命令qoderwake waker register --file .qoder/wakers/code-review-waker.qw

检查注册结果:运行qoderwake waker list,确认输出中存在cr-waker-v1且状态为registered

激活该Waker:执行qoderwake waker activate cr-waker-v1

验证是否生效:推送一个含简单if逻辑的测试PR到关联仓库,等待约8秒后查看GitHub PR页面是否出现QoderWake自动发布的评审评论。

热门栏目