Xinlong-Wu/dsh-github-reviewer

Xinlong-Wu★ 1TypeScript最后同步: 2026-08-21

在 GitHub 打开

A github reviewer based on the Deepseek Harness

README 摘要

dsh-github-reviewer English 中文 一个 DeepSeek Harness 插件:轮询配置的 GitHub 仓库中开放的 pull request,并自动发布 COMMENT 评审。它是 LingoBridge 内置 GitHub reviewer 的 TypeScript 移植,并且每次评审和 /bot 对话都通过 harness agent 主循环 驱动:每个 PR 一个常驻 Agent、每个 PR 一条会话日志,通过 harness 的 session-persistence 机制持久化。 功能特性 - 轮询配置的仓库中的开放 PR;跳过 draft PR。 - 以 GitHub App 身份认证:签名 RS256 应用 JWT,换取短期安装访问令牌(临近过期前缓存复用);也可用个人访问令牌(PAT)模式。 - PR 首次出现或 head.sha 变化时触发评审;未变化的 PR 记录在存储域的每账户游标记录中,不会重复评审。 - 只从基础仓库的 .github/review instructions.md 读取可信评审指令(先按 base 分支,再按 base SHA);文件缺失且配置了 defaultInstructions 时使用该默认文本,否则该 PR 被标记为 missing instructions ,仅当 head SHA 变化后才重试。 - 每个 PR 一个 harness Agent 与会话。 同一 PR 的评审和 /bot 对话在同一个会话中进行,主循环会重放该 PR 的完整对话历史——模型记得之前的发现和讨论。挂载了持久化 provider 时,会话跨重启保留,评审器恢复既有会话而非新建。 - 评审走真实 agent 主循环:评审系统提示以 complete 系统提示段注册在 PR agent 上,被守卫的 GitHub 工具以作用域工具形式注册——主循环的日志、检查点、压缩全部生效。 - 每个回合启动一个全新的 github-mcp-server (stdio),注入安装令牌为 GITHUB PERSONAL ACCESS TOKEN ,配置的 web URL 为 GITHUB HOST ;工具 schema 每进程发现一次并缓存。 - 守卫每一次工具调用:调用必须指向当前 PR,读取被限制在允许的方法和 ref,写入被限制在 create → 行内评论 → submit pending(event=COMMENT) 的 pending-review 工作流。 - 处理已处理 PR 上的评论命令: /review 触发重新评审, /bot 继续 PR 对话并把回复发回对应的 issue 线程或 review 线程。 - 评审中断可续跑: reviewing 游标状态在重启后重新触发评审,从持久化会话恢复剩…

在 GitHub 查看完整 README →
工具/开发dsh-plugindsh-plugin-marketdsh-plugins

分类