GitHub代码审查与自动化工具

一个基于Claude Agent SDK的GitHub应用,通过@mention触发AI代码审查、代码修改和代码库问答功能,支持动态扩展和执行队列管理。

  • by chrisleekr
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 chrisleekr/github-app-playground

使用说明

GitHub应用程序:@chrislekr机器人

响应以下内容的GitHub应用程序 @chrisleekr-bot 由Claude Agent SDK提供支持的pull请求和问题。每个事件都交给一个守护进程执行;当分流将作业标记为繁重或队列溢出时,编排器会按需生成一个临时守护进程Pod,这样一个部署就可以同时处理琐碎的杂务和长时间运行的重构。

📖 文档: https://chrisleekr.github.io/github-app/

它做什么

  • 代码审查:在人工智能审查的公关中提到机器人。
  • 代码更改:让它修复bug、重构或实现功能。
  • 问答:就问题或PR询问有关代码库的问题。
  • 可扩展:在不接触核心管道的情况下添加新的webhook事件或MCP服务器。

建筑概览

flowchart LR
    GH["GitHub<br/>webhook"]:::entry
    SRV["Webhook server<br/>verify + ack 200"]:::guard
    RTR["Orchestrator<br/>triage + queue + scaler"]:::decide
    QUEUE["Job queue"]:::store
    FLEET["Daemon fleet<br/>persistent + ephemeral"]:::target
    AGT["Claude Agent SDK<br/>on cloned repo"]:::work
    CMT["Tracking comment<br/>result + cost"]:::done
    GH --> SRV --> RTR --> QUEUE --> FLEET --> AGT --> CMT
    RTR -. spawn ephemeral Pod<br/>on heavy or overflow .-> FLEET
    classDef entry fill:#0b3d91,stroke:#061d4a,color:#ffffff
    classDef guard fill:#1f6feb,stroke:#0b3d91,color:#ffffff
    classDef decide fill:#8250df,stroke:#4b1d99,color:#ffffff
    classDef store fill:#d29922,stroke:#7d5c00,color:#1a1a1a
    classDef target fill:#1a7f37,stroke:#0b4a1e,color:#ffffff
    classDef work fill:#bf3989,stroke:#71204f,color:#ffffff
    classDef done fill:#2da44e,stroke:#0b4a1e,color:#ffffff

看 建筑 对于整个流程,包括幂等性、分诊和管道阶段。

快速开始

cp .env.example .env            # Fill in credentials
bun install
bun run dev:deps                # Local Valkey + Postgres (required for the orchestrator)
bun run dev                     # Watch mode

完整的设置、配置参考、架构图和部署配方都在 文档网站.

文档

文档网站是由Markdown构建的 docs/ 使用 MkDocs材料。要在本地预览,请执行以下操作:

bun run docs:install            # One-time: pip install -r docs/requirements.txt
bun run docs:serve              # Live reload at http://localhost:8000
bun run docs:build              # Strict build, run before opening a doc PR

贡献

看 贡献.md 用于本地设置、测试、linting和提交消息约定。任何涉及环境变量验证、调度逻辑或MCP表面的PR都必须更新以下匹配页面 docs/ 在相同的更改中,请参阅 ## Documentation 部分 CLAUDE.md.

许可证

麻省理工学院