Skip to main content
KodyをGitHub Appで実行する場合は、アプリを作成する必要があります。このアプリにより、Kodyはリポジトリとやり取りし、プルリクエストを管理し、Webhookを受信できるようになります。
プラットフォームユーザーが「GitHubでサインイン」できるようにしたい場合は、それは別のOAuthアプリのプロセスであり、GitHub Appの権限とは干渉しません。このガイドは機能的なインテグレーションに焦点を当てています。GitHub OAuthアプリを参照してください。

前提条件

アプリケーションのドメインを準備してください:
  • WEB_DOMAIN: フロントエンドのURL(例:https://app.yourdomain.comまたはhttp://localhost:3000)
  • API_DOMAIN: バックエンド/APIのURL(例:https://api.yourdomain.com、またはモノレポ/プロキシセットアップの場合はhttp://localhost:3000)
  • WEBHOOK_DOMAIN(オプション): Webhook用のパブリックドメイン(例:https://kodus-webhooks.yourdomain.com)。APIドメインで/.../webhookをルーティングする場合はAPI_DOMAINを使用できます。

ステップ1:GitHub Appの作成

  1. GitHubでSettings > Developer Settings > GitHub Appsに移動
  2. New GitHub Appをクリック
  3. 基本情報(名前、ホームページURL)をお好みに合わせて入力
New GitHub AppボタンをハイライトしたGitHub Appsの設定ページ

ステップ2:コールバックURLとセットアップURLの設定

GitHub App Webhook このステップはインストールとリダイレクトが正しく機能するために重要です。以下のフィールドに、WEB_DOMAINを実際のURLに置き換えて入力してください:
  • Callback URL:
    このURLは認可フローを完了するために使用されます。
  • Setup URL:
  • オプションRedirect on updateを有効にする これにより、アプリのインストール後にユーザーがKodusにリダイレクトされてセットアップを完了できるようになります。

ステップ3:Webhookの設定

WebhookはKodusにプルリクエストのイベントを通知します。
WebhooksはWebhooksサービス(ポート3332)が処理します。ここでAPIドメインを使用する場合は、リバースプロキシが/github/webhookをWebhooksサービスにルーティングすることを確認してください。そうでない場合は専用のWebhooksドメインを使用してください。
  • Webhook URL:
  • Activeオプションがチェックされていることを確認

リポジトリ権限とイベントを設定する

Repository permissions で、有効にする機能に合わせて次の権限を設定します。すべてを No access のままにしないでください。 Contents の書き込み権限が必要なのはファイルをコミットする機能です。コードを読むだけなら読み取り専用で十分です。対象リポジトリにアプリをインストールし、既存のインストールでは追加権限を承認してください。 Pull request、Pull request review comment、Issue comment、Push を購読します。現在のハンドラーはこの4種類を受け付けます。他のイベントは無視されても 200 を返す場合があります。

ステップ4:認証情報の収集と.envへの追加

GitHub App Webhook GitHubが生成した認証情報を取得し、Kodusの環境変数に追加する必要があります。

App ID

アプリの「About」ページの上部でApp IDをコピーします。 .envに追加:

クライアントシークレット

Client secretsセクションに移動し、Generate a new client secretをクリックします。 生成された値をコピーします。 .envに追加:

秘密鍵

ページ下部までスクロールして、Generate a private keyをクリックします。 これにより.pemファイルがダウンロードされます。テキストエディタでこのファイルを開き、内容全体をコピーします。 .envに追加:

インストールURL

GitHub Appを開いてInstall Appをクリックします。ブラウザのアドレスバーからURL(https://github.com/apps/<app-slug>/installations/newのような形式)をコピーします。 .envに追加:

環境変数の概要

最終的に、設定ファイルには以下が含まれている必要があります:
GitHubでSave Changesをクリックし、Kodusアプリケーションを再起動して変更を適用してください。

接続を確認する

Webhook URL はフロントエンドのログイン画面ではなく、webhooks サービスに到達する必要があります。API_DOMAIN を使う場合は、プロキシで /github/webhook をそのサービスに転送してください。WEB_DOMAIN や 200/307 応答だけでは正しい配信を確認できません。 Redirect on update を有効にしてください。インストールやリポジトリアクセスの変更後は、Setup URL を経由してブラウザで Kodus に戻るまで完了してください。ping の成功や無視された installation イベントだけでは Kodus の連携は作成されません。 Kodus の Git Settings で対象リポジトリが接続済みであることを確認します。テスト用のプルリクエストを開き、GitHub の配信応答と Kodus の webhooks/worker ログを確認してください。接続がなければ、リポジトリの許可、承認済み権限、Setup URL、プロキシを確認します。 GitHub の登録ガイド.