Amazon Web Services ブログ

Amazon Q Developer for GitHub (プレビュー) を活用して開発ワークフローを加速し、リリースサイクルを短縮する

本記事は 2025 年 5 月 6 日に公開された “Accelerate development workflows to reduce release cycles using the Amazon Q Developer integration for GitHub (Preview)” を翻訳したものです。

開発サイクルを短縮するためタスクを自動実行できる Amazon Q Developer for GitHub(プレビュー)は、AWS アカウントが不要で無料利用できます。Amazon Q DeveloperGitHub.com と GitHub Enterprise Cloud での機能開発を加速します。追加コストなしで Q Developer を支える高性能モデルを活用し、新機能の自動実装、バグの修正、テストカバレッジの向上、ドキュメント作成、すべての新しい Pull Request に対するコードレビューの実行、レガシー Java アプリケーションのモダナイズを行うことができます。これらは GitHub 上にある Issue と Pull Request を使用しながら実現できます。

背景

開発チームは、要件定義、開発、デプロイを協力して行う際に、複数のツールやコンテキストを行き来しながら、増え続ける課題に直面しています。バグ修正、コードレビュー、単体テストの作成、アップグレード管理といった定型作業に貴重な時間が費やされています。アプリケーションの規模が拡大するにつれ、これらの活動は開発者の生産性やセキュリティのベストプラクティスの維持にますます影響を与えています。
多くの開発者と同様に、皆様も DevOps ワークフローに GitHub を使用されていることでしょう。そのため、Amazon Q Developer の GitHub への統合を発表できることを大変嬉しく思います。AI 駆動の支援を、使い慣れた GitHub 環境に直接組み込むことで、コンテキスト切り替えを排除し、より迅速に作業を進め、セキュリティと運用の卓越性を維持しながらイノベーションに集中することができます。そのような開発の未来がここに到来しました!

はじめに

Amazon Q Developer for GitHub の開始は簡単です。Organization の管理者は GitHub Marketplace を通じて Amazon Q Developer アプリケーションを迅速にデプロイし、リポジトリアクセスと AI エージェント設定を管理できます。個々の開発者は Organization のセットアップ後すぐにサービスの使用を開始できます。AWS アカウントの設定は必要ありません。
設定が完了すると、開発者は GitHub の Issue に “Amazon Q development agent” または “Amazon Q transform agent” ラベルを追加するだけで Amazon Q Developer のサポートを受けることができます。Pull Request が作成された後、開発者は Amazon Q Developer の Pull Request に自然言語でコメントすることで、生成されたコードを Amazon Q Developer と共に改善することができます。

Amazon Q Developer for GitHub の仕組み

1. 機能開発エージェント

Amazon Q Developer は自然言語による説明から本番環境対応のコードを生成することで機能開発やバグ修正を簡素化します。開始するには GitHub の Issue に “Amazon Q development agent” ラベルを追加するだけです。ラベル付けされると Amazon Q Developer は要件と既存のコードベースを分析してコンテキストを理解します。その後新しいブランチを作成し、プロジェクトの確立されたパターンとベストプラクティスに従ったコードを生成します。

図 1 – “Amazon Q development agent“ ラベルを追加した Issue の作成

図 2 – Amazon Q Developer によって作成された Pull Request と変更内容の説明

図 1 に示すように、”Add an option to delete a task on the screen (画面上にタスクを削除するオプションを追加する)” というタイトルで Issue を作成し、”Amazon Q development agent” ラベルを適用すると、エージェントは処理を開始します。エージェントはリクエストを分析し、図 2 に示すように詳細な変更内容とセキュリティレビューを含む提案されたコード変更を含む Pull Request を作成します。

2. Transformation エージェント

Amazon Q Developer は開発チームがアプリケーションをモダナイズし、自動化されたコードのアップグレードを通じて技術的負債を削減するのを支援します。このエージェントは現在、Java アプリケーションをバージョン 8 または 11 から Java 17 へアップグレードすることをサポートしており、API の変更や非推奨化を自動的に処理します。新しい言語機能を活用するためにコードを自動的に更新しながら、アプリケーションの既存機能を維持し、メジャーバージョンアップグレードに通常伴う時間とリスクの両方を削減します。
コード変換を開始する前に、ドキュメントに記載されている前提条件とセットアップ手順を確認してください。

図 3 – “Amazon Q development agent” ラベルで作成された Issue

図 4 – コード変換のサマリが記載された Pull Request の作成

図 5 – Pull Request のファイル変更点

図 3 に示すように、“Migrate project from Java 8 to Java 17 (プロジェクトを Java 8 から Java 17 に移行する)” というタイトルの課題を作成し、”Amazon Q development agent” ラベルを適用すると、Amazon Q Developer はアップグレードプロセスを開始します。エージェントは図 4 と図 5 に示すように、すべての変更と実装手順を詳細に記録した Pull Request を作成します。

3. コードレビュー エージェント

Amazon Q Developer は Pull Request レビューのプロセスを効率化し、自動コード分析を提供します。これによりチームはレビューサイクルを削減し、開発の早い段階で潜在的な問題を発見できます。Pull Request が作成されると、エージェントは自動的に以下の点についてコードを分析します:

  • 品質の問題と潜在的なバグ
  • セキュリティの脆弱性
  • 公開された機密情報や重要情報

図 6 – Pull Request の自動コードレビュー

図 6 に示すように、エージェントは包括的なセキュリティレビューを実施し、詳細かつ実行可能なフィードバックを提供します。この例では、ハードコードされた SECRET_KEY を特定し、改善計画を提案しました。エージェントの推奨事項には以下が含まれています:

  • 明確さのためのキーの名前変更
  • 機密データを環境変数に移動
  • 将来の改善のためのドキュメント追加
  • 安全なキー管理のためのベストプラクティスの提案

エージェントは、ソースコードから機密情報を削除し、キーのローテーションを容易にし、コードの保守性を向上させることで、これらの変更がセキュリティをどのように改善するかを説明しました。また、安全な設定ファイルの使用や適切なエラー処理の実装など、本番環境のセキュリティを強化するための追加ステップも推奨しています。
このレベルの詳細なガイダンスを提供することで、コードレビューエージェントはチームがすばやくセキュリティ問題に対処し、開発者が AWS セキュリティのベストプラクティスを実装するのを支援するように設計されています。この自動化された詳細なレビュープロセスは、手動コードレビューに費やす時間を削減しながら、全体的なコード品質とセキュリティを向上させるのに役立ちます。

アンイストール

GitHub Organization から Amazon Q Developer をアンインストールするには、アプリのインストールページに移動して “Configure“ を選択します。“Uninstall Amazon Q Developer” を選択すると、以前に選択したすべてのリポジトリから連携が完全に削除されます。

次のステップ

この Amazon Q Developer for GitHub (プレビュー) は企業のソフトウェア開発を強化することを目的としています。Amazon Q Developer は AI を活用したエージェント機能を GitHub にもたらし、チームが高品質基準を維持しながら技術的負債を減らしつつ、より良いコードをより速く提供できるよう支援します。
この統合は GitHub の Issue、Pull Request、Commentなどの標準ワークフローを使用します。チームは確立された開発プラクティスを妨げることなく Amazon Q Developer のメリットを享受できます。
開発ワークフローを強化する準備はできていますか?GitHub Marketplace にアクセスして、今すぐ GitHub での Amazon Q Developer の利用を開始しましょう。

翻訳はソリューションアーキテクトの小森谷が担当しました。

著者について

Madhu Balaji

Madhu is a Senior Specialist Solutions Architect at AWS who helps customers design and implement innovative cloud solutions. With 20+ years of experience in development and application architecture, he focuses on enabling customers to accelerate their time-to-market and solve complex business challenges using AWS services.