なぜ Devin を GitHub と統合するのか?
GitHub の組織に Devin を統合すると、Devin はプルリクエストを作成し、PR コメントに返信し、リポジトリ内で直接コラボレーションできるようになります。これにより、Devin をエンジニアリングチームのフルメンバーとして活用できます。 まずは Settings → Connections → GitHub を開き、Add Connection をクリックして、表示される手順に従ってください。Devin にアクセスさせるリポジトリを選択し、必要な権限を確認します。GitHub Enterprise Server または Data Residency 対応の GitHub Enterprise Cloud を利用していますか? セットアップ手順については、GitHub Enterprise Server 統合ガイド を参照してください。
統合の設定
- Devin アカウントで Settings → Connections → GitHub を開き、Add Connection をクリックします。

- まだ GitHub にログインしていない場合は、認証を求められます。

- Devin と接続したい GitHub 組織を選択します。

- Devin に付与するアクセス範囲として All repositories か Select repositories を選択し、Devin がアクセスできるリポジトリを制御します。

- GitHub の認可が完了すると、Devin の設定画面にリダイレクトされるので、統合が有効になっていることを確認します。

GitHub 連携で Devin を使う
Core および Teams ユーザー向け
インテグレーションの設定が完了すると、Devin の Web アプリケーション内で、プロンプト中にリポジトリを @メンションして参照できるようになります。Enterprise ユーザー向け
統合の設定が完了したら、Settings > Repositories から、特定の組織にリポジトリを割り当てることができます。
PR コメントから Devin を起動する
GitHub を離れることなく、Devin に作業を任せられます。Devin と連携しているリポジトリのオープンなプルリクエストで、/devin に続けて実行してほしい内容を書いたコメントを投稿するだけです。
要件:
- コメントの先頭 — コマンドはコメントの冒頭に記述する必要があります。大文字・小文字は区別されず、PR の会話コメントでもインラインのレビューコメントでも利用できます。
- オープンな PR のみ — issue へのコメントや、クローズ済み・マージ済みの PR へのコメントは無視されます。
- 書き込み権限 — コメントした人には、そのリポジトリに対する
writeまたはadmin権限が必要です。 - アカウントのリンク — コメントした人の GitHub アカウントが Devin アカウントとリンクされている必要があり、かつそのリポジトリへのアクセス権と Devin セッションを利用する権限を持つ Devin 組織のメンバーである必要があります。
すでに Devin セッションがその PR で作業中の場合、
/devin コメントは新しいセッションを開始せず、そのセッションに送信されます。ユーザーのリンク
上記の GitHub アプリ の接続は組織全体に適用されます。これに加えて、各ユーザーが自分の GitHub アカウントを Devin にリンクすると、Devin はそのユーザーの identity で動作できるようになります。つまり、そのユーザーのセッションで Devin が作成したプルリクエストは本人が作成者となり、Devin Review から送信したコメントやレビューも本人の GitHub アカウントとして表示されます。 個人の GitHub アカウントをリンクするには:- 個人のアカウント設定で Settings > Connections を開きます
- アカウント一覧から GitHub の行を探します
- Link をクリックし、GitHub の認可を完了します
GitHub の行は、組織に GitHub 接続がある場合にのみ表示されます。 表示されない場合は、GitHub 統合が設定済みの Devin 組織のメンバーであるかを確認してください。GitHub Enterprise Server のインスタンスは、ホスト名が付いた別の GitHub Enterprise 行として表示され、同じ手順でリンクできます。
- Devin: 常に Devin としてプルリクエストを作成します
- User: ユーザーの git アカウントがリンクされている場合はそのユーザーとして、リンクされていない場合は Devin として作成します
- User only: ユーザーとして作成し、git アカウントがリンクされていない場合は失敗します(自動化とサービスユーザーは引き続き Devin にフォールバックします)
- Allow PRs to be opened by session participants: セッションを開始したユーザーだけでなく、セッションに参加したユーザーとしても Devin が PR を作成できるようにします。
- Require session access for PR comments: コメント投稿者が該当する Devin セッションへのアクセス権を持つ場合にのみ、PR コメントをそのセッションに転送します。Enterprise 管理者は、この設定をすべての組織に強制適用できます。
GitHub での Devin の権限管理
セットアップ時に、Devin に組織内の すべてのリポジトリ へのアクセスを許可するか、特定のリポジトリ へのアクセスに制限するかを選択できます。 リポジトリアクセスは、GitHub の設定からいつでも変更できます:- GitHub 組織の Settings > GitHub Apps に移動します (例:
https://github.com/organizations/<org_name>/settings/installations) - Devin.ai Integration の Configure をクリックします
- Repository access のセクションで、すべてのリポジトリへのアクセスを許可するか、特定のリポジトリを選択します
- Save をクリックして変更を反映します

Read および write アクセス:
これらの権限により、Devin は通常のコントリビューターと同様にリポジトリで作業でき、ブランチの push、プルリクエスト の作成、PR でのディスカッションへの参加が可能になります。
Devin の GitHub アプリ が新しい権限をリクエストすると、組織の管理者に GitHub からメールが届き、インストール設定での承認が求められます。承認されるまでは、Devin は付与済みの権限の範囲で引き続き動作します。
プルリクエストテンプレート
Devin 専用のテンプレート (推奨)
以下の対応しているPULL_REQUEST_TEMPLATE のいずれかの場所に devin_pr_template.md という名前のファイルを追加することで、既存の人間向けデフォルトテンプレートを変更せずに、Devin 専用のテンプレートを用意できます。レビュアー用チェックリストや変更ファイルの Mermaid 図など、追加のコンテキストを Devin に渡したい場合に便利です。
テンプレートの検索順序
Devin は、次の順序でテンプレートを検索し、最初に見つかったものを使用します。- PULL_REQUEST_TEMPLATE/devin_pr_template.md
- docs/PULL_REQUEST_TEMPLATE/devin_pr_template.md
- .github/PULL_REQUEST_TEMPLATE/devin_pr_template.md
- pull_request_template.md
- docs/pull_request_template.md
- .github/pull_request_template.md
GitHub のプルリクエストテンプレート (サポートされる配置場所、複数テンプレート、クエリパラメータなど) について詳しくは、GitHub Docs の Creating a pull request template for your repository を参照してください。
コミット署名
Devin のコミットに GPG 署名を付けるには、キーがセッションをまたいで保持されるように、environment で設定します。セッションのターミナル内でキーを生成しても機能しません。Devin の各セッションは machine image のクリーンなコピーから起動するため、セッション中に作成したキーはセッション終了時に破棄されます。 すべての リポジトリ で署名付きコミットの設定が適用されるよう、これを org-wide レイヤー (すべての orgs で必要な場合は enterprise レイヤー) で設定します。- コミット author の identity と、Devin が push に利用する認証情報の両方を持つ、専用の GitHub user account を作成するか、既存のものを選択します。例:
devin@company.com。両方を 1 つの account にまとめると署名設定はシンプルになります。2 つの account に分ける場合は、以下の設定も両方にまたがって必要になります。 - GitHub の instructions に従い、その account の email を UID として、ローカルで GPG キーを生成します。
- 公開 キーを、GPG UID と一致する verified email を持つ GitHub アカウント の GitHub Settings > SSH and GPG keys に upload します。GitHub は、push に利用した identity ではなく、committer の identity に対して署名を検証します。そのため、公開キーは
user.emailの email を所有する account に登録されている必要があります。 (push にも同じ専用 account を利用している場合、この作業は 1 回だけで済みます。) - 非公開 キーを export して base64 エンコードし、対応する
GIT_USER_NAME/GIT_USER_EMAILとあわせて、Settings → Resources → Secrets に secrets として追加します。 - org-wide environment config でキーを import し、各セッションの開始時に署名を有効にします。完全な YAML については、コピー&ペーストで使える GPG コミット signing example を参照してください。
セキュリティに関する考慮事項
- ブランチ保護: Devin が変更をマージする前に、すべての必須チェックが通っていることを確保するため、メインブランチにブランチ保護ルールを有効にすることを推奨します。
- 組織レベルの権限: Devin は、セッションを実行している個々のユーザーの権限ではなく、組織レベルで付与された権限を使用します。
- 一貫したアクセス: GitHub の組織と Devin の組織の両方にアクセス権限を持つすべてのユーザーは、同じ Devin 統合の権限を共有します。
- リポジトリ作成: Devin が GitHub アカウント内で新しいリポジトリを作成できるのは、
repository creation権限が付与されている場合のみです。
IP Allowlisting
組織で GitHub へのアクセスに IP 許可リストを設定している場合は、次の IP アドレスを追加してください。- 100.20.50.251
- 44.238.19.62
- 52.10.84.81
- 52.183.72.253
- 20.172.46.235
- 52.159.232.99
- 4.204.199.103
- 140.232.64.0/26
これらの IP アドレスは今後のアップデートで変更される可能性があります。変更があった場合に備えて、リリースノートを確認することを推奨します。
トラブルシューティング: GitHub 組織が誤った Devin 組織に接続されている
GitHub 組織が、アクセス権のない Devin 組織にすでに接続されている場合、GitHub 組織の管理者は既存のインストールを削除し、別の Devin 組織に再インストールできます。-
github.com/settings/installations に移動し、Devin.ai Integration の横にある Configure をクリックします。
必要に応じて、右上の Go to settings page ドロップダウンを使用して、正しい GitHub 組織に切り替えます。

-
インストール ページで、Danger zone セクションまでスクロールし、Uninstall をクリックして GitHub 組織から Devin.ai Integration を削除します。

- app.devin.ai に戻ってページを更新します。これで、GitHub 統合を自分の Devin 組織に再インストールできます。
GitHub 統合に関するよくある質問
自分の個人 GitHub アカウントを所属組織の Devin アカウントに接続できますか?
自分の個人 GitHub アカウントを所属組織の Devin アカウントに接続できますか?
はい。Devin の組織には、GitHub Organization または個人の GitHub アカウントのいずれも接続できます。ただし、Devin がチームで必要とするリポジトリへアクセスできるよう、適切な権限を持つアカウントを接続することを推奨します。
GitHub アプリはユーザー認証をどのように処理しますか?
GitHub アプリはユーザー認証をどのように処理しますか?
GitHub 統合をインストールした組織のメンバーであるユーザーだけが、自分の Devin セッションでその統合を利用できます。Devin が利用できる GitHub 統合のアクセス権は、ユーザーの所属組織のメンバーシップに基づいて引き継がれます。
Devin は暗号鍵をどのように管理・ローテーションしますか?
Devin は暗号鍵をどのように管理・ローテーションしますか?
暗号鍵は AWS KMS によって管理され、定期的にローテーションされます。

