第 5 章 · 04 委托模式


第 5 章 · 04 委托模式

本节摘要:委托模式专为订阅制 AI 编码代理设计——Claude Code、Codex、Cursor、Open Code、Qoder 等工具已内置 LLM 订阅额度。委托模式下,OCR 负责确定性工程(文件筛选、规则解析),宿主 Agent 使用自身的 LLM 能力执行实际的代码审查;OCR 端无需配置 LLM。本节讲清四件事:委托模式的适用场景与前置条件、ocr delegate preview + ocr delegate rule 两个子命令、宿主 agent 执行的五步工作流、以及它与其他集成方式(谁调用 LLM)的对比。

内容来源:原项目中文文档 pages/src/content/docs/zh/integrations/delegate.md,套用体系化模板改写。

学习目标

阅读完本节,你应当能够:

  1. 说明委托模式的定位(OCR 出脚手架,宿主 agent 出 LLM),以及它与 Agent Skill / Claude Code 插件的核心区别。
  2. 列出委托模式的适用场景与前置条件。
  3. 用 ocr delegate preview 列出可审查文件与排除原因。
  4. 用 ocr delegate rule 按内容分组获取审查规则。
  5. 描述宿主 agent 的五步工作流(preview → rule → diff → 审查 → 报告)。

一、什么是委托模式

OCR 负责确定性工程(文件筛选、规则解析),宿主 Agent 使用自身的 LLM 能力执行实际的代码审查。OCR 端无需配置 LLM。

二、何时使用委托模式

委托模式专为订阅制 AI 编码代理设计——如 Claude Code、Codex、Cursor、Open Code、Qoder 等。这些工具已内置 LLM 订阅额度,使用委托模式可以直接复用宿主 Agent 的订阅额度进行代码审查,无需额外配置模型或 API Key。

适用于以下场景:

  1. 你的 AI 编码代理使用订阅制,希望复用已有额度进行代码审查——无需额外配置 API Key 或模型端点。
  2. 你只需要 OCR 的工程脚手架——文件过滤、规则解析、排除逻辑——由宿主 Agent 负责所有 LLM 推理。
  3. 你正在构建自定义 Agent 流水线,需要结构化输入(文件列表 + 规则)作为自身审查步骤的输入。

三、前置条件

需要安装 ocr CLI:

which ocr || npm install -g @alibaba-group/open-code-review ​

💡 技巧:无需配置 LLM(ocr config set … 或环境变量)——委托模式在 OCR 端不调用任何 LLM。这是它与本章前三节(Agent Skill / Claude Code 插件 / CI/CD)最大的区别——前三者都是 OCR 自己调 LLM。

四、安装 Skill / Command

Claude Code — Command

mkdir -p .claude/commands curl -o .claude/commands/delegate-review.md \ https://raw.githubusercontent.com/alibaba/open-code-review/main/plugins/open-code-review/claude-code/commands/delegate-review.md ​

任意 Agent — Skill

npx skills add alibaba/open-code-review --skill open-code-review-delegate ​

或手动复制:

cp -R /path/to/open-code-review/skills/open-code-review-delegate ~/.claude/skills/ ​

五、两个子命令

委托模式的核心是两个 ocr delegate 子命令——它们只产出结构化数据,把审查的 LLM 工作交给宿主 agent。

命令 用途
ocr delegate preview 列出可审查文件 + mode/ref 元数据
ocr delegate rule <path...> 按内容分组解析审查规则

ocr delegate preview——确定审查范围

ocr delegate preview [--from <ref> --to <ref>] [--commit <hash>] [--exclude <patterns>] ​

输出内容:

  • mode——workspace / range / commit
  • ref 元数据——from、to、commit、merge_base
  • 可审查文件列表——路径、状态、插入/删除行数
  • 已排除文件——及排除原因(对应第 3 章的五重门)

常见用法:

场景 命令
工作区变更 ocr delegate preview
分支对比 ocr delegate preview --from main --to feature
单次提交 ocr delegate preview -c abc123

ocr delegate rule——获取文件规则

ocr delegate rule <path1> <path2> ... ​

传入第 1 步中的可审查文件路径。输出按规则内容分组——共享相同规则的文件归为一组,避免重复(规则解析的四层链见第 3 章评审规则)。

六、五步工作流

宿主 agent 加载 delegate skill / command 后,按以下五步执行。

第 1 步:Preview——确定审查范围

见上文 ocr delegate preview,得到 mode、ref 元数据、可审查文件列表与排除原因。

第 2 步:获取文件规则

见上文 ocr delegate rule <path...>,得到按规则内容分组的审查清单。

第 3 步:获取 diff

根据第 1 步的 mode/ref 信息,使用 git 直接获取:

Range 模式(有 merge_base):

git diff <merge_base>..<to> -- <path> ​

Commit 模式:

git show <commit> -- <path> ​

Workspace 模式:

git diff HEAD -- <path> # 已跟踪文件 cat <path> # 新的未跟踪文件 ​

第 4 步:审查每个文件

对每个可审查文件:

  1. 获取其 diff(第 3 步)。
  2. 参照匹配的规则组(第 2 步)作为审查清单。
  3. 进行深入审查,按需探索上下文。

第 5 步:报告

按严重程度分类:

  • Critical/High——Bug、安全问题、数据丢失风险。始终报告。
  • Medium——性能问题、错误处理缺失。附带上下文报告。
  • Low——风格建议、细微改进。静默丢弃,除非确有价值。
┌─────────────────────────────────────────────────────────────────┐ │ ① ocr delegate preview ──确定审查范围(mode/ref/可审查文件) │ │ ② ocr delegate rule ──按内容分组获取审查规则 │ │ ③ git diff/show (按 mode)──宿主 agent 自己取 diff │ │ ④ 宿主 agent 用自身 LLM 审查每个文件 │ │ ⑤ Critical/High/Medium/Low 分级报告(Low 静默丢弃) │ └─────────────────────────────────────────────────────────────────┘ ​

七、通用标志

标志 描述
--from <ref> Range 模式的源引用。
--to <ref> Range 模式的目标引用。
-c, --commit <hash> 单次提交模式。
--repo <path> 仓库根目录(默认:cwd)。
--rule <path> 自定义 rule.json 路径。
--exclude <patterns> 逗号分隔的排除模式。
-b, --background <text> 业务上下文。
-B, --background-file <path> 从 Markdown 文件读取业务上下文。

八、与其他集成方式的对比

模式 谁调用 LLM? 适用场景
Agent Skill(本章 01) OCR Agent 调用 ocr review,OCR 驱动完整审查
Claude Code 插件(本章 02) OCR Claude Code 中的斜杠命令,OCR 驱动审查
CI/CD(本章 03) OCR PR/MR 上的无人值守评审,OCR 驱动审查
委托模式(本节) 宿主 Agent OCR 提供脚手架,Agent 用自身订阅额度驱动审查

💡 技巧:前三者都需要在 OCR 端配置 LLM 端点;委托模式把 LLM 工作完全交给宿主,适合已有订阅额度、不想再配 API Key的场景。如果你的宿主 agent 已经在用 Claude Code 的订阅跑编码,委托模式是「零额外成本加一层审查」的最自然选择。

本节要点回顾

  1. 定位:OCR 出确定性脚手架(过滤/规则),宿主 agent 出 LLM 推理,OCR 端无需配 LLM。
  2. 适用:订阅制编码代理(Claude Code/Codex/Cursor 等),复用已有额度。
  3. 两子命令:ocr delegate preview(范围 + 排除原因)、ocr delegate rule(按内容分组规则)。
  4. 五步工作流:preview → rule → git diff(宿主自取)→ 宿主审查 → 分级报告。
  5. diff 由宿主取:按 mode 用 git diff/git show/cat,OCR 不代劳。
  6. 分级:Critical/High 始终报告、Medium 附上下文、Low 静默丢弃。
  7. 核心区别:前三节都是「OCR 调 LLM」,委托模式是「宿主调 LLM」——选它即为「零额外 API Key」。

第 5 章讲完——Agent Skill、Claude Code 插件、CI/CD、委托模式,OCR 接进完整开发链路的四条路径齐备。接下来进入第 6 章贡献与常见问题,看如何反哺社区并解决高频排错。


作者与出处
原作者: 灏天文库
来源:alibaba
许可证:Apache-2.0
整理: 灏天文库整理
由灏天文库结构化整理,提供目录导航、全文检索与在线阅读,便于系统化学习
发布者: 作者: 灏天文库 转发
评论区 (0)
U