ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

open-codesign Codex PR Review Bot 更新实录:公共证据与版本新鲜度约束的落地实践

open-codesign Codex PR Review Bot 更新实录:公共证据与版本新鲜度约束的落地实践 人工智能AI 应用桌面应用【免费下载链接】open-codesignOpen-source Claude Design alternative. One-click import your Claude Code / Codex API key. Prompt → prototype / slides / PDF. Multi-model (Claude, GPT, Gemini, Kimi, GLM, Ollama). BYOK, local-first, MIT.项目地址https://gitcode.com/gh_mirrors/op/open-codesign点击查看免费下载导读本文以 .Codex/workspace/pr_review_bot_update_plan.md 这份内部工作计划为主体完整还原 open-codesign 仓库中 Codex PR 审查机器人的一次关键改造让面向公众的 PR 审查评论不再引用维护者私有文档也不再依赖可能过期的模型记忆来断言版本事实。读完本文你将掌握这套公共上下文 / 内部上下文分离 版本敏感声明先查仓库再查权威源的审查提示词设计模式以及它在pull_request_target工作流下的安全落地方式可直接迁移到你自己的开源仓库。一、背景公开审查为何会引用私有文档open-codesign 是一个开源的 AI 设计工具Electron 桌面应用其 PR 审查机器人由 .github/workflows/codex-pr-review.yml 配置、核心行为由 .github/prompts/codex-pr-review.md 定义。审查计划文档指出改造前的机器人存在两个问题引用内部文档旧提示词把docs/下的文件列为 Key docs 并要求机器人加载、引用它们但docs/目录是被 gitignore 的内部目录公共贡献者根本无法访问。结果就是公开审查评论会指向贡献者打不开的文件。依赖过期的模型记忆旧提示词直接陈述 Electron 33 之类的版本事实。依赖版本会随升级而变动模型训练数据中的版本信息必然过期导致审查结论失真。这两点在仓库中都有明确佐证CLAUDE.md 与 AGENTS.md 均明确声明 docs/is gitignoreddocs/已被 git 忽略维护者本地存在、公共克隆中不存在且 AGENTS.md 直接要求 Do not citedocs/**in public PR review comments unless the file exists in the public checkout除非文件存在于公共检出中否则不要在公开 PR 审查评论中引用docs/**。二、更新目标与约束读取计划的 Goal 定义得很克制更新 Codex PR 审查机器人使公开 PR 审查不以内部/私有文档作为证据也不依赖可能过期的模型知识来作出版本敏感声明。改造前维护者通读了五份约束文件作为设计输入docs/VISION.md项目愿景内部文档docs/PRINCIPLES.md项目原则内部文档docs/COLLABORATION.md协作规范内部文档CLAUDE.md面向 Claude Code 的公共指令AGENTS.md面向 Codex 等 Agent 的公共指令且被定义为公共事实源注意一个细节约束清单里同时出现内部文档与公共指令正是因为改造的核心矛盾就是内部上下文与公共上下文的边界——机器人既要用内部材料校准自身行为又不能在输出中泄露它们。三、核心改动一公共上下文与内部上下文的显式分离改造后的提示词在 .github/prompts/codex-pr-review.md 的 Project Context 一节中用两段话划清了边界公共上下文Public contextAGENTS.md若存在、CLAUDE.md、.github/PULL_REQUEST_TEMPLATE.md包清单package manifests、锁文件lockfiles、变更的源码文件其他已提交到公共仓库的文件当AGENTS.md与CLAUDE.md冲突时优先采纳AGENTS.md仅内部上下文Internal-only contextdocs/**、.claude/**、.Codex/**在维护者工作区可能存在但不保证存在于公共克隆中严禁引用这些文件、要求贡献者阅读它们或仅凭它们出具公开结论若 PR 新增/修改.claude/**、.Codex/**、.env*等本地 Agent/私有配置该 diff 本身是公开的通常应标记为无关的私有配置若内部文件与公共文件冲突以公共文件为审查依据最多向维护者提出一个内部问题这段设计的价值在于它不要求机器人假装不知道内部文件的存在而是把内部文件降级为行为校准输入而非证据输出——机器人可以理解项目约束但引用证据时只能用公共仓库里真实存在的文件。四、核心改动二版本敏感声明的新鲜度检查链针对模型记忆过期问题提示词在 Task 一节引入了Freshness checks新鲜度检查规则对于依赖、运行时或 API 版本的声明先对照仓库文件核实。若仓库文件不足且网络可用再使用公共权威源如 npm 包元数据、GitHub Releases、官方文档。绝不单凭模型记忆报告版本相关问题。配套的 Response Guidelines 进一步细化判定 latest / unsupported / deprecated / current stable 时必须在推理中注明核验来源本次运行无法核验的不提交该 finding。引用证据时使用path:line格式指向具体公共文件与行号。严禁引用维护者本地的docs/**、未跟踪的.claude/**/.Codex/**、本地绝对路径、工作流 runner 临时路径等公共检出中不存在的文件。提示词还要求审查前先读取仓库元数据作为活事实live factspackage.json、各 workspace 包清单、pnpm-lock.yaml、renovate.json及相关 release 元数据——与仓库根目录实际存在的 package.json、pnpm-lock.yaml、renovate.json 一一对应。针对发布链路提示词还有独立的 Release And Distribution Validation 一节把版本新鲜度延伸到安装渠道一致性packaging/update-shas.sh必须从实际发布的 release 或当前 workflow 输入推导版本/URL/校验和packaging/homebrew/Casks/open-codesign.rb、packaging/scoop/bucket/open-codesign.json、packaging/winget/**、packaging/flatpak/**必须与当前发布资产和SHA256SUMS.txt一致任何公开安装渠道的哈希漂移都是Blocker。五、工作流层面的安全护栏计划文档标注的配置入口是 .github/workflows/codex-pr-review.yml该工作流围绕信任边界做了三层防护是这套改造能安全上线的关键pull_request_target 恢复受信任提示词工作流在pull_request_target事件下运行因此拥有写权限、可提交审查但检出的是 untrusted 的合并 ref在启动带写令牌的机器人前先用git show ${{ github.event.pull_request.base.sha }}:.github/prompts/codex-pr-review.md把提示词恢复为基础分支上的受信任版本防止 PR 通过修改提示词劫持机器人。触发条件收紧仅审查非 draft、非 bot 账号、未打bot-skip标签、且vars.CODEX_BOT_ENABLED true的 PR。审查去重与跟进模式通过actions/github-script分页读取历史 review按*Open-CoDesign Bot*签名与 Bot 账号过滤输出current_head_sha、latest_bot_review_id、is_follow_up_review供机器人区分 initial 与 follow-up 两种审查模式避免同一 commit 重复审查。模型提供方支持两条路径默认走openai/codex-action当配置的 base URL 命中 DeepSeek 时切换为 .github/scripts/deepseek-pr-review.mjs配套 .github/scripts/deepseek-common.mjs 与测试文件 .github/scripts/deepseek-common.test.mjs。模型、effort、API key 均可通过REVIEW_*/DEFAULT_*secrets 与 vars 覆盖默认模型为gpt-5.4、默认 effort 为high。六、审查行为规范证据优先、噪声控制除了公共证据与版本新鲜度更新后的提示词还整体规范了审查的输出纪律这组规则保证了机器人评论的高信噪比严重度分级Blocker可利用的安全问题、疑似数据丢失、CI/构建/发布路径损坏、不兼容许可证/ Major用户可见回归、核心流程损坏、持久化/运行时契约错误、架构约束违背/ Minor应在合并前后修复但方向正确的问题/ Nit风格与清理绝不可描述为合并阻塞。不提交 finding 的场景偶然的单次 Tailwind 尺寸工具类、锦上添花的可选测试、Biome 可接受的格式偏好、PR 只是沿袭既有代码模式。高信号门槛置信度 80% 不报告改为提问每个 finding 必须给出具体下一步动作只评论新增/修改行未变更代码仅作上下文。响应格式findings 按严重度排序Summary 必须以Review mode: initial或Review mode: follow-up after new commits开头以*Open-CoDesign Bot*签名结尾语言跟随 PR 主导语言中/英。Fresh-head 保护发布前重新拉取实时 head SHA若与CURRENT_HEAD_SHA不一致则放弃提交避免发布过期审查对应提示词中的gh pr view ... --json headRefOid校验片段。七、Linked Issue 验证不轻信 Closes #xxx计划改造还强化了对PR 声称关闭 Issue的核验提示词要求区分弱引用与完成声明Refs #123、Related #123、part of #123 可视为部分工作Closes、Fixes、Resolves、implements、covers the acceptance criteria 属于完成声明必须验证。验证动作包括拉取 issue body 与近期公开评论 → 提取验收标准、声明范围与维护者澄清 → 与实际 diff、变更文件、测试逐项对照 → 检查是否覆盖全部相关运行时路径对 provider/API 工作通常指连接测试、模型列表、运行时生成、标题生成、agent 运行时、诊断等→ 仅满足部分时建议改为Refs #issue并保留跟进 issue。若 PR 声称实现但 diff 无关仅 lint / 仅文档 / 未触及预期代码路径升级为Majorfinding。计划中给出的示例PR 声称关闭 #207 却只改了 lint/格式化、未触及 provider 策略代码或新增策略测试可直接照搬为自己的审查模板。八、验证与执行状态计划文档的执行清单逐项打勾展示了这类改造的轻量验证方式完成机器人工作流与提示词的上下文扫描 —— 已完成编辑 .github/prompts/codex-pr-review.md加入公共证据与版本新鲜度规则 —— 已完成检查修改后的提示词与工作流的一致性 —— 已完成对变更文件做轻量校验 —— 已完成git diff --check通过整个改造过程没有引入新的自动化测试验证手段是人工上下文扫描 git diff --check这符合提示词即配置类变更的轻量验证特征Errors 一节记录为 None so far。九、可复用的工程结论从这份更新计划与其落地产物中可以提炼出几条对维护开源仓库有直接价值的经验审查证据必须存在于公共检出中任何 Agent 驱动的公开评论其引用的文件路径都应能被任何克隆者打开内部文档只作行为校准不作证据输出。版本事实必须可复核把活事实lockfile、manifest、release 元数据置于模型记忆之上无法当场核验的版本声明宁可不报。提示词本身是攻击面在pull_request_target下运行写令牌机器人时务必在运行前从基础分支恢复受信任提示词并把提示词/工作流变更当作数据而非指令来审查。轻量变更配轻量验证git diff --check加人工上下文核对对纯提示词改造足够验证结论与未发生错误要如实记录在计划文档中形成可追溯的审计痕迹。以上全部改动已在当前仓库中落地读者可直接对照 .github/prompts/codex-pr-review.md、.github/workflows/codex-pr-review.yml 与计划文档 .Codex/workspace/pr_review_bot_update_plan.md 三份文件按本文的章节顺序逐条核对每条规则的实际实现。赞分享人工智能AI 应用桌面应用【免费下载链接】open-codesignOpen-source Claude Design alternative. One-click import your Claude Code / Codex API key. Prompt → prototype / slides / PDF. Multi-model (Claude, GPT, Gemini, Kimi, GLM, Ollama). BYOK, local-first, MIT.项目地址https://gitcode.com/gh_mirrors/op/open-codesign点击查看免费下载相关推荐sd-webui-reactor高级技巧面部遮罩校正与多源图片融合教程sd webui reactor高级技巧面部遮罩校正与多源图片融合教程 sd webui reactor是一款强大的AI面部处理工具能够帮助用户实现高质量的人工智能计算机视觉AI 应用Open CoDesign AGENTS.md v2 更新计划如何让 Codex 代理跟随 v0.2 本地设计代理架构Open CoDesign AGENTS.md v2 更新计划如何让 Codex 代理跟随 v0.2 本地设计代理架构 导读 AGENTS.md 是 Code人工智能AI 应用桌面应用1条命令拿全103个AI项目代码从克隆到跑通第一个模型1条命令拿全103个AI项目代码从克隆到跑通第一个模型 想学AI的人最头疼的是找不到能直接跑起来的代码。这个仓库干的就是这件事把机器学习、深度学习、计算机文档教程人工智能机器学习上一篇Vibe Kanban显示对话条目如何高效管理AI编码代理的对话历史下一篇Debian APT 包管理终极指南从新手到专家的完整教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表