getsentry/warden

Your code is under new management. Agents that review your code.

什么是 Warden

Warden 是 Sentry 提供的开源工具,可让您在仓库中直接运行 AI 驱动的代码审查。它将审查逻辑视为 “技能” —— 存在于普通目录中的可重用分析模块(例如 .agents/skills/.claude/skills/)。一旦定义了某个技能,您就可以通过命令行本地调用,或通过 GitHub Action 在每次拉取请求(PR)上自动执行。

核心理念

概念 含义
技能,而非提示 不再为每次运行编写临时提示,而是只需编写一次技能(小型脚本或配置),即可在任何地方重复使用。
两种执行模式 CLI – 运行 npx @sentry/warden 来扫描您推送前的当前分支。
GitHub Action – 将 Warden 附加到仓库,使每次 PR 都能获得自动审查。
原生 GitHub 反馈 发现结果以带建议修复的内联 PR 评论形式出现,并在 GitHub Checks UI 中聚合,使开发者的审查体验无缝衔接。

快速开始(来自 README)

# 1. 将 Warden CLI 安装到您的仓库
npx @sentry/warden init

# 2. 添加内置审查“技能”
#    – 安全性导向的审查
npx @sentry/warden add security-review
#    – 通用代码质量审查
npx @sentry/warden add code-review

# 3. 在当前分支上运行审查
#    (需要 LLM API 密钥 – OpenAI 或 Anthropic)
export WARDEN_OPENAI_API_KEY=…   # 或 WARDEN_ANTHROPIC_API_KEY
npx @sentry/warden

# 4. 让 Warden 自动修复简单问题
npx @sentry/warden --fix

完整文档请访问 https://warden.sentry.dev/。

内部工作原理

  • 技能 存储在标准目录中(如 .agents/skills/.claude/skills/)。每个技能定义了 LLM 应用于分析代码的提示或逻辑。
  • CLI 将变更文件打包,发送给选定的 LLM(OpenAI 或 Anthropic),并解析模型的响应为可操作的发现结果。
  • 在 CI 中,GitHub Action 会在每个 PR 上运行相同流程,然后将发现结果作为 内联评论 发布,并在 Checks 选项卡中聚合。
  • 可选的 --fix 标志会尝试自动应用建议的修改(例如格式化、简单重构)。

开发与贡献

# 克隆并设置仓库
git clone git@github.com:getsentry/warden.git
cd warden
pnpm install && pnpm build

# 运行单元测试
pnpm test
pnpm test:coverage   # 带覆盖率报告

# 运行端到端评估套件(需要 LLM API 密钥)
pnpm evals

packages/evals 文件夹包含一个用于评估技能性能的小型框架。

许可证

Warden 采用 FSL-1.1-ALv2 许可证发布。


核心价值:Warden 让团队只需一次定义 AI 驱动的代码审查逻辑(作为可重用的“技能”),即可在推送前本地执行,或在每次 PR 上自动应用,同时将结果直接展示在 GitHub UI 中。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目