未授权时只读本地 Git 元数据和非敏感作用范围,不启动 OCR 审查。 授权后,默认 Delegation 由 OCR 选择文件/解析规则,当前宿主智能体读取私有候选快照并审查;可选 OCR-managed 可向已披露模型端点发送暂存候选树、基线及必要上下文。两种模式都不保证仅 diff,不要授权处理含敏感信息的仓库。 本插件不安装项目 Git Hooks,不运行项目测试、构建、过滤器或模型建议命令。OCR 不是操作系统沙箱;需信任本机引擎、配置与网络代理,不能承诺隔离恶意进程或任意 HTTP 重定向。
- 默认
$XDG_STATE_HOME/codereview-plugin,否则用户.local/state/codereview-plugin。CODEREVIEW_STATE_DIR可重定向到仓库外的专用目录。 - 目录权限 0700,会话 JSON/锁文件 0600;按宿主与 session 散列命名,内部按仓库 worktree 分任务。
- 保存授权来源、范围摘要、候选指纹、提交命令、审查报告及用户处置。报告可能包含源码和模型返回的其他敏感内容。默认保留到显式 cleanup,不自动上传证据。
- 不保存 API key,不打印原始引擎 stderr;内存中读取凭据用于校验/脱敏。报告中的当前模型 token 被替换,但不保证识别代码里所有秘密。
cleanup删除当前会话任务/报告,撤销授权;这是不可恢复的数据清除,不触及其他会话或源码。小型会话偏好和锁文件保留。recover将损坏会话 JSON 改名为同目录.quarantine-<随机标识>,可恢复检查但不自动重新授权;隔离副本仍可能有源码,不被 cleanup 隐式删除。- OCR-managed 使用独立临时 Git 仓库及 0700 结果目录,报告只从
--output文件读取;Delegation 快照在会话状态目录的私有runs/中保留到宿主回填、撤销或候选变化,然后按受管标记和父目录校验清理。操作系统杀死进程/断电可能留下快照,需确认无运行任务后按明确路径人工清理。
Delegation 的接收方固定披露为 host-agent://<宿主>,不读取 OCR LLM 配置。OCR-managed 按现有 OCR 文件配置优先于 OCR 环境变量的规则解析;预置 provider、显式 custom provider、legacy llm 与完整 OCR_LLM_* 环境可用,不推测 Anthropic 通用环境或 shell rc 回退。
缺失所需 CLI 能力、无完整接收方、配置开启遥测、自定义 global/project rule、extra_headers/body 返回需处理的错误,不会静默降级到其他模型或执行模式。
环境遥测开关会从子进程移除;配置遥测不会被插件改写。换端点、模型或配置摘要需新授权。
配置核验与引擎读取之间仍有同用户竞态;该 Harness 是合作式权限协议,不是抵抗同用户恶意修改的强安全边界。
reset/cancel/skip/cleanup 会阻止后续调度并尽力终止正在运行的进程组;已发送给服务商的数据无法撤回,保留策略由对应服务商决定。 卸载宿主插件只停止未来回调;先撤销运行,再按需清理本插件状态。不得通过删除源仓库或其他插件目录来卸载。