getsentry/warden

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

Warden とは何ですか?

Warden は Sentry が提供するオープンソースツールで、リポジトリ内で直接 AI ベースのコードレビューを実行できます。レビューのロジックを 「スキル」 として扱い、通常のディレクトリ(例:.agents/skills/.claude/skills/)に格納された再利用可能な分析モジュールとして管理します。一度スキルを定義すれば、コマンドラインからローカルで実行したり、GitHub Action を通じてすべてのプルリクエストに自動的に適用できます。

コアとなる考え

概念 意味
プロンプトではなくスキル 各実行ごとに一時的なプロンプトを書くのではなく、一度だけスキル(小さなスクリプトや設定)を作成し、どこでも再利用できます。
2つの実行モード CLInpx @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 内に直接表示されるため、チーム全体で一貫した品質基準を維持できます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト