Skip to content

About

codereview-plugin

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

CodeReview Plugin

Plugin marketplaces

This plugin belongs to Full-stack development.

Category Marketplace Purpose
Full-stack development Full Stack Plugins Architecture and UI design, code understanding, quality checks, code review, workflow governance, and server operations
AIGC content creation Full AIGC Plugins Image, video, audio, music, 3D, and multimodal content creation

提交前可选授权的语义代码审查插件,整合 Open Code Review(OCR)的正式 CLI 接口。 默认先问用户,拒绝后当前会话静默;审查报告是建议,不是强制通过门禁。

状态:v0.3.0 push-only 拦截语义(push 阻断 / commit 提醒 / 其余放行);v0.2.2 完成真实引擎与双模式审查验收(ocr v1.12.9,Delegation 与 OCR-managed 各一次真实全链路含真实模型调用),并修复真实契约漂移五处、固化真实输出契约测试。ZCode 与 Codex 已获真实 hook 运行证据(Codex 需先在 TUI 完成 hook 信任审查,否则钩子静默跳过);Kimi 因本机无 Kimi Code CLI 未验。正式发布身份以 GitHub Releases 和 Full Stack 插件市场 为准。

使用体验

拦截语义(v0.3.0 起):只有 git push 会真正暂停等待授权;git commit 仅注入一条提醒上下文(不阻塞、不失败),其余 Git 命令(add / reset / status / log / fetch / checkout …)完全放行、零噪音。

第一次准备 push 时,智能体披露仓库、执行模式、实际推理方、模型(可知时)和代码范围,并提供:

  • 仅本次审查:同一逻辑提交的失败重试不重复授权;成功推送后结束。
  • 当前会话自动审查:只对同一会话、仓库/worktree、模型与外发策略有效;范围变化重新询问。
  • 本会话不再提醒:不主动审查、不再提醒;仍可手动审查一次,不解除静默。

没有回答不代表同意。审查发现问题后可修复重审、保留风险继续或跳过;不会自动编辑、提交、推送或替其他插件放行。

flowchart LR
  A[git push 工具调用] --> B{CodeReview 选择}
  B -->|未选择| C[暂停:智能体询问用户]
  C -->|本次/会话授权| D[隔离暂存快照 → OCR 选文件/解析规则]
  B -->|已有授权| D
  C -->|不再提醒| E[会话静默]
  B -->|静默| E
  D --> E1{执行模式}
  E1 -->|Delegation 默认| E2[当前宿主智能体审查]
  E1 -->|OCR-managed 可选| E3[OCR 调用其配置模型]
  E2 --> F[结构化风险与逐文件回执]
  E3 --> F
  F --> G[用户修复/继续/跳过]
  E --> H[本插件不再暂停]
  G --> H
  H --> I[其他门禁仍独立生效]
Loading

分工

插件 责任 本插件如何协作
FlowGuard SDD 阶段、需求验收、用户豁免、最终裁决 只提供 evidence;不推进阶段
CodeGuard 编译、测试、规范及可执行检查 不重复实现这些检查
CodeReview 提交语义风险、授权、证据绑定 不把模型判断当强制通过

不要求回调先后顺序。首版交付证据协议,不自动修改其他两个插件,也未实现跨插件统一调度。

技能来源与场景

插件分发 8 个技能:Alibaba OCR 官方两个技能、独立 codereview-skills 五个增强技能,以及插件本地的 codereview-harness。外部七个由 skills.lock.json 固定到版本 tag、提交和逐技能摘要;只允许在来源仓修改。插件安装包自包含技能快照,不需要运行时再下载。

场景 入口
AI 即将提交、询问仅本次/本会话/静默、审查暂存候选 本地 codereview-harness;始终先按本插件授权协议执行
用户主动审查工作区、分支、单提交,OCR 调用其配置模型 官方 open-code-review;这是独立手动审查,不继承提交授权
用户主动审查,由当前宿主模型执行 官方 open-code-review-delegate;OCR 只选文件和规则
跨模块需求/影响、发现核实、授权修复、项目规则、全文件扫描 codereview-context-impact、codereview-finding-triage、codereview-fix-verify、codereview-rules、codereview-scan

上游官方技能的工作区模式会覆盖暂存、未暂存和未跟踪文件,可能还包含安装 OCR 的通用指导。提交前不得绕开本插件直接运行这些裸命令;本插件不静默安装/升级 OCR,审查授权也不授权修复或外发到新端点。手动审查与提交审查的对象、授权和报告分别记录。

运行要求

  • Python 3.11+、POSIX(macOS/Linux);使用 fcntl 和进程组,Windows 原生未支持。WSL 需单独实测。
  • Git 2.41+;已安装的 ocr 必须支持 delegate preview/rule --format json;OCR-managed 还必须支持 review --output。按能力探测,不固定单一版本。
  • 默认 Delegation:OCR 只选择文件并解析规则,由当前 Codex/ZCode/Kimi 智能体审查,不要求 OCR 配置 LLM。可选 OCR-managed 才要求明确端点、模型与凭据。
  • 双模式接口已在真实 ocr v1.12.9(npm 官方包 bccbc15)上完成真实审查验收。安装渠道支持 npm 官方包与 Homebrew(后者版本串无 v 前缀,已兼容识别);同一台机器存在多份安装时以 PATH 解析为准,需排查旧副本遮蔽。doctor 仅探测命令能力,不执行 ocr llm test 或真实审查。
  • 拦截边界:git push 暂停待授权;git commit 仅提醒不阻塞;其余 Git 命令直接放行。只支持普通暂存区提交、首次推送及显式 git -C。-a、amend、pathspec、复合命令、冲突/merge/rebase、符号链接、子模块、超限树返回受限状态,可明确跳过。
  • 快照限制:基线与候选条目合计 5000、单 blob 4 MiB、去重 blob 总量 64 MiB;不截断后冒充完整审查。
  • Hook 不是安全沙箱;Git 别名、动态脚本、宿主未覆盖的工具可能绕过。检查与实际提交间仍存在竞态窗口。

用户配置里的遥测开启在两种模式下都会被拒绝(遥测会外发宿主元数据并污染引擎输出流);OCR-managed 还会拒绝自定义全局/项目规则、额外请求 headers/body 等不能确认外发边界的配置。插件不会擅自修改它们。Delegation 仍需用户授权,因为当前宿主智能体会读取隔离候选快照。详见隐私。

开发验证

运行时仅 Python 标准库;测试需环境已有 pytest,以下命令不安装依赖、不调用模型:

python3 -m pytest -q
python3 scripts/validate_local.py
python3 scripts/vendor/skill_vendor.py check --offline
python3 scripts/vendor/skill_vendor.py check
openspec validate consent-based-review --strict
openspec validate integrate-codereview-skills --strict

CLI:

python3 scripts/codereview.py --help
python3 scripts/codereview.py prepare --request /absolute/private/request.json

请求字段见CLI 协议。Delegation 的 review 只生成计划,宿主完成语义审查后必须调用 complete-delegated;OCR-managed 的 review 才由 OCR 调用模型。不要把测试夹具成功理解成真实模型成功。

安装、维护与验证边界

  • 三端安装与卸载:目前只提供结构及操作说明,本轮未安装。
  • 验收证据:规格、测试、未完成项对应关系。
  • OpenSpec 授权变更 与 技能整合变更:分别约束审查行为与外部技能分发;真实宿主验收前不归档为全部完成。
  • 插件专属 codereview-harness 只声明在 plugin-local-skills.json,不进入 skills.lock.json。
  • .agents/skills/openspec-* 是项目开发集成,不纳入分发技能清单;.agents/plugins/marketplace.json 是仓库级安装入口。

源码、测试和说明采用 Apache-2.0。上游 OCR 作为用户已有的外部程序调用,不打包其二进制。

About

codereview-plugin

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages