Skip to content

Repository files navigation

GitHub PR Review Bot

基于 Kimi K2.5 的 GitHub PR 自动代码审查机器人。当仓库有新 PR 创建或更新时,自动读取 diff 并通过 AI 给出 review comments。

技术栈

  • Runtime: Bun
  • Web Framework: Hono
  • GitHub SDK: Octokit
  • AI Model: Kimi K2.5 (Moonshot API, OpenAI 兼容)
  • 部署: Docker

快速开始

1. 配置环境变量

cp .env.example .env

编辑 .env 文件,填入:

变量 说明
GITHUB_TOKEN GitHub Personal Access Token(需要 repo 权限)
GITHUB_WEBHOOK_SECRET 自定义随机字符串,和 GitHub Webhook 配置一致
KIMI_API_KEY Moonshot API Key(从 platform.moonshot.cn 获取)

2. 本地开发

bun install
bun run dev

使用 smee.io 转发 Webhook 到本地:

npx smee-client --url https://smee.io/YOUR_CHANNEL --target http://localhost:3000/webhook

3. Docker 部署

docker compose up -d

4. 配置 GitHub Webhook

  1. 进入你的 GitHub 仓库 → Settings → Webhooks → Add webhook
  2. Payload URL: https://your-server.com/webhook
  3. Content type: application/json
  4. Secret: 和 .env 中的 GITHUB_WEBHOOK_SECRET 一致
  5. Events: 选择 Pull requests

工作流程

GitHub PR Created/Updated
        ↓
  Webhook POST /webhook
        ↓
  验证签名 (HMAC SHA-256)
        ↓
  获取 PR Diff (Octokit)
        ↓
  发送给 Kimi K2.5 审查
        ↓
  提交 Review Comments

配置项

环境变量 默认值 说明
GITHUB_TOKEN (必填) GitHub Token
GITHUB_WEBHOOK_SECRET (必填) Webhook 签名密钥
KIMI_API_KEY (必填) Moonshot API Key
KIMI_BASE_URL https://api.moonshot.cn/v1 Moonshot API 地址
KIMI_MODEL kimi-k2.5 使用的模型
PORT 3000 服务端口

About

✨ Github review bot powered by hono + bun + kimi-k2.5

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages