UStackUStack
GitWhy icon

GitWhy

GitWhyはAI生成コードの「なぜ」をコミットに紐づけて保存・共有。PRでレビューでき、チームの判断を追跡します。

GitWhy

GitWhyとは?

GitWhyは、Git用の「コンテキスト層」で、AI生成コードの背後にある理由を保存・共有し、それを生成したコミットに直接紐づけます。目的は、プロンプト、決定、トレードオフをコード変更と一緒にレビュー可能にすることです。チャットウィンドウだけに情報を残さないようにします。

構造化されたコンテキスト(元のプロンプト、理由、決定、却下された代替案など)をキャプチャし、それをコミットにリンクします。製品は保存された理由をプルリクエストに表示し、リレビューアがdiffだけでなく変更の理由を確認できるようにします。

主な機能

  • 構造化された「理由」コンテキスト: プロンプト、理由、決定、却下された代替案、ファイル、コミットを固定形式で保存し、実行ごとに一貫性を保ちます。
  • コミットにリンク(gitネイティブの出所証明): 保存された各コンテキストを生成した正確なコミットに紐づけ、ドキュメントをコード履歴に固定します。
  • gitwhy-botによるPR表示: 完全な理由をプルリクエストのコメントとしてプッシュし、コードレビュー時にコンテキストを提供します。
  • クラウド同期と共有: 保存コンテキストをクラウドに同期し、組織全体でチームが共有できます。
  • 保存コンテキストの検索: キーワード、ドメイン、トピックで保存された理由を検索し、過去の決定を素早く見つけます。
  • MCP互換エージェント対応: 任意のMCP互換エージェントに対応(Claude Code、Cursor、Windsurf、Clineを明示的に言及)。
  • 管理用ターミナルUI: ブラウザ不要でコンテキストを閲覧・検索・管理できるインタラクティブなターミナルインターフェースを提供。

GitWhyの使い方

  1. MCP互換エージェントでコード生成し、キャプチャしたい理由を出力させる。
  2. 理由コンテキストを保存し、GitWhyが構造化項目(プロンプト、理由、決定、却下された代替案、ファイル、コミット)を記録して関連コミットにリンク。
  3. クラウドに同期(チーム共有用)し、プルリクエストを開く。
  4. PRでレビュー: GitWhyのボットが保存理由をプルリクエストに投稿し、リビューアが決定とトレードオフを確認。

ユースケース

  • AI支援変更のPRレビュー: AI生成コード時、リビューアがPRコメントの保存理由と決定を読み、diffから意図を推測不要。
  • 繰り返しデザインチョイスのチーム知識蓄積: 認証、データベース、APIデザインデシジョンをドメイン/トピック別にコンテキストツリーで保存し、過去の根拠を再利用。
  • 特定コミットの「なぜ」の監査: 各コンテキストが生成コミットにリンクされているため、開発者が決定の起源を正確なコード変更に遡 traceable。
  • 新規作業時の高速検索: ターミナル、エージェント、チームダッシュボードからキーワード、ドメイン、トピックで保存コンテキストを検索し、関連根拠を迅速取得。
  • マルチエージェントワークフロー: 異なるMCP互換エージェントを使うチームが、単一チャットインターフェースに依存せず、一箇所で理由をキャプチャ・管理。

FAQ

  • GitWhyは各コンテキストに何を保存しますか? プロンプト、理由、決定、却下された代替案、ファイル、コミットを含む構造化形式を保存します。

  • GitWhyは理由をコードにどう接続しますか? 保存された各コンテキストを生成した正確なコミットにリンクします。

  • リビューアは理由をどこで見ますか? GitWhyのボットが完全な理由をプルリクエストのPRコメントとして投稿します。

  • ブラウザなしで使えますか? はい。コンテキストを閲覧・検索・管理できるインタラクティブなターミナルUIが含まれます。

  • どのエージェントがサポートされますか? 任意のMCP互換エージェントに対応し、特にClaude Code、Cursor、Windsurf、Clineを挙げています。

代替案

  • PRの説明やコメント(プレーン): チームが手動でPRテキストに理由を貼り付けられますが、変更の理由を構造化されたコミット連動の履歴として自動保存しません。
  • 外部ドキュメントシステム(Wiki/ナレッジベース): チームが決定ドキュメントを別途管理できますが、コミットに本質的に紐づかず、PRで自動表示されません。
  • ローカルログ/チャット履歴のレビュー: 過去のチャットログを読むことで文脈が得られますが、検索性が低く、リポジトリ履歴のコミットに一般的に接続されません。
  • アノテーション付き汎用コードレビュー ツール: 差分にアノテーションを付けるツールで変更を説明できますが、ここでは構造化されたコミット連動の理由付けとgitwhy-botによるPR投稿を強調しており、一般的なレビュー ツールではカバーされない可能性があります。
GitWhy | UStack