[{"data":1,"prerenderedAt":756},["ShallowReactive",2],{"/ja-jp/blog/customizing-gitlab-duo-chat-rules-prompts-workflows":3,"navigation-ja-jp":39,"banner-ja-jp":438,"footer-ja-jp":448,"blog-post-authors-ja-jp-Itzik Gan Baruch":654,"blog-related-posts-ja-jp-customizing-gitlab-duo-chat-rules-prompts-workflows":668,"assessment-promotions-ja-jp":709,"next-steps-ja-jp":747},{"id":4,"title":5,"authorSlugs":6,"body":8,"categorySlug":9,"config":10,"content":14,"description":8,"extension":27,"isFeatured":12,"meta":28,"navigation":29,"path":30,"publishedDate":20,"seo":31,"stem":35,"tagSlugs":36,"__hash__":38},"blogPosts/ja-jp/blog/customizing-gitlab-duo-chat-rules-prompts-workflows.yml","Customizing Gitlab Duo Chat Rules Prompts Workflows",[7],"itzik-gan-baruch",null,"ai-ml",{"slug":11,"featured":12,"template":13},"customizing-gitlab-duo-chat-rules-prompts-workflows",false,"BlogPost",{"tags":15,"category":9,"date":20,"heroImage":21,"authors":22,"description":24,"title":25,"body":26},[16,17,18,19],"AI/ML","product","features","tutorial","2026-01-14","https://res.cloudinary.com/about-gitlab-com/image/upload/v1765809212/noh0mdfn9o94ry9ykura.png",[23],"Itzik Gan Baruch","GitLab Duo Agent Platformをチームのワークフローに合わせてカスタマイズする方法を学びます。チャットルールの設定、システムプロンプトの作成、エージェントツールのセットアップ、特定のニーズに合わせたフローの調整を行います。","GitLab Duo Agent Platformのカスタマイズ：チャットルール、プロンプト、ワークフロー","*8部構成ガイド「[GitLab Duo Agent Platformを始める](https://about.gitlab.com/ja-jp/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)」のパート8へようこそ。開発ライフサイクル内でのAIエージェントとワークフローの構築・デプロイをマスターします。最初の対話から完全カスタマイズ可能なプロダクション対応の自動化ワークフローまで、段階的なチュートリアルに従ってください。*\n\n**この記事の内容:**\n* カスタマイズの紹介\n* エージェントの動作をカスタマイズ\n* MCPで機能を拡張\n* カスタムエージェントとフローの作成\n\n> 🎯 今すぐ[**GitLab Duo Agent Platform**](https://about.gitlab.com/ja-jp/gitlab-duo-agent-platform/)をお試しください！ \n## カスタマイズの紹介\n\n[GitLab Duo Agent Platform](https://about.gitlab.com/ja-jp/gitlab-duo-agent-platform/)は、すぐに強力な機能を提供し、チームの特定のニーズに合わせて調整することで、さらに大きな価値を引き出すことができます。GitLabは、複数のレベルで柔軟なカスタマイズオプションを提供します。\n\n- **ユーザーレベル**: すべてのプロジェクトに適用される個人設定(カスタムルール、AGENTS.md、MCP設定)\n- **ワークスペースレベル**: プロジェクト固有の設定(カスタムルール、AGENTS.md、MCP設定)\n- **プロジェクトレベル**: 特定のプロジェクト内で作成・管理するカスタムエージェントとフロー\n\n## パート1：エージェントの動作をカスタマイズ\n\n### カスタムルール\n\n[カスタムルール](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/custom_rules/)は、エージェントとフローに指示を提供し、繰り返しを必要とせずにチーム全体で一貫した動作を保証します。たとえば、開発スタイルガイドやテストの実行方法などです。\n\n**IDEワークスペースまたはユーザー設定ディレクトリ**に移動します。\n\n### ユーザーレベルのカスタムルール\n\nユーザーレベルのルールは、すべてのプロジェクトとワークスペースに適用されます。\n\nユーザーレベルのカスタムルールの作成に関する詳細な手順については、[GitLabドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/custom_rules/#create-user-level-custom-rules)を参照してください。\nホームディレクトリに**ファイルを作成**`~/.gitlab/duo/chat-rules.md`。\n**ルールの例:**\n\n```markdown - 新しいコードには常にTypeScriptを使用し、JavaScriptは使用しない\n- すべての関数にJSDocコメントを含める\n- 文字列には単一引用符を使用\n- リポジトリ内の既存のコードスタイルに従う\n- 簡潔な説明を記述し、長い説明は避ける\n- コード変更にはテストを提案\n- Promiseの代わりにasync/awaitを使用\n```\n\n### ワークスペースレベルのカスタムルール\n\nワークスペースルールは特定のプロジェクトにのみ適用されます。そのプロジェクトのユーザーレベルのルールを上書きします。\n\nプロジェクトルートに**ファイルを作成**`.gitlab/duo/chat-rules.md`。\n\n**Vue.jsプロジェクトのルール例**:\n\n```markdown\n- `\u003Cscript setup>`でVue 3 Composition APIを使用\n- プロップには常にTypeScript型を含める\n- SCSSでスコープ付きスタイルを使用\n- Slippers UIデザインシステムに従う\n- コンポーネントは300行未満に保つ\n- コンポーネント名にはケバブケースを使用\n- アクセシビリティ属性を含める(aria-*、role)\n```\n\n### カスタムルールのベストプラクティス\n\n- **具体的にする**:「単一引用符を使用」は「スタイルガイドに従う」よりも優れています。\n- **優先順位をつける**: 最も重要なルールをリストの最初に来るようにします。\n- **チーム重視**: ルールは個人の好みではなく、チームの標準を反映する必要があります。\n- **実行可能**: ルールはAIエージェントが従うのに十分明確である必要があります。\n- **保守可能**: 標準が変更されたらルールを更新します。\n- **競合を避ける**: コードベースの実際のスタイルと矛盾しないようにします。\n\n**ヒント**: コードオーナーを使用して、`.gitlab/duo/chat-rules.md`への変更を承認するユーザーを管理します。\n\nカスタムルールの詳細なユースケースチュートリアルについては、[Custom rules in GitLab Duo Agentic Chat for greater developer efficiency deep-diveのブログ](https://about.gitlab.com/blog/custom-rules-duo-agentic-chat-deep-dive/)を参照してください。\n\n## エージェントの動作をカスタマイズするAGENTS.md\n\n[AGENTS.md](https://agents.md/)は、エージェントの動作をカスタマイズするための業界標準ファイルです。エージェント自体を変更することなく、チャット会話、基本フロー、カスタムフロー内でエージェントがどのように動作すべきかを定義できます。\n\n**カスタムルールとの違い**: AGENTS.mdは、すべてのエージェントとフロー(基盤とカスタム)によって使用されます。また、[外部エージェント](https://docs.gitlab.com/ja-jp/user/duo_agent_platform/agents/external/)としてのClaude Codeなど、他のAIツールが使用できる業界標準に従います。複数のコンテキストに指示を適用したい場合は、AGENTS.mdを使用します。\n\n**ユーザーレベル**(すべてのプロジェクトとワークスペースに適用):\n- macOS/Linux:`~/.gitlab/duo/AGENTS.md`\n\n- Windows:`%APPDATA%\\GitLab\\duo\\AGENTS.md`\n\n**ワークスペースレベル**(特定のプロジェクトに適用):\n- プロジェクトルートに`AGENTS.md`を作成。\n\n**サブディレクトリレベル**(モノレポの特定のディレクトリに適用):\n- コンテキスト固有の指示のためにサブディレクトリに`AGENTS.md`を作成。\n\n**仕組み**:\n- ユーザーレベルのAGENTS.mdは、すべてのプロジェクトにグローバルに適用されます。\n- ワークスペースレベルのAGENTS.mdは、特定のプロジェクトに適用されます。\n- サブディレクトリレベルのAGENTS.mdファイルは、コードベースの特定の部分のコンテキストを提供します。\n- エージェントとフローは、適用可能なすべてのレベルからの指示を組み合わせます。\n- 新しく追加または更新されたAGENTS.md指示には、新しいフローのトリガー、または(カスタム)エージェントとの新しいチャットの開始が必要です。\n\n### AGENTS.mdが制御するもの\n\n- エージェントの個性とトーン\n- プロジェクト固有の指示\n- コーディング標準と規約\n- ツール使用の設定\n- 出力フォーマット要件\n- リポジトリ構造と組織\n\n### AGENTS.mdの例\n\n```markdown\n# プロジェクトのエージェントカスタマイズ\n## 一般的なガイドライン\n- 常にスピードよりもコード品質を優先\n- プロジェクトのアーキテクチャパターンに従う\n- 変更を提案する際は既存のコード例を参照\n- 要件が曖昧な場合は明確化を求める\n## コードスタイル\n- すべての新しいコードにTypeScriptを使用\n- プロジェクト内のESLint設定に従う\n- すべての新しい関数にユニットテストを含める\n- わかりやすい変数名を使用(ループを除いて単一文字は使用しない)\n## ドキュメント\n- すべてのパブリック関数にJSDocコメントを追加\n- 新機能を追加する場合はREADME.mdを更新\n- コードコメントに例を含める\n## セキュリティ\n- シークレットやAPIキーのハードコーディングを提案しない\n- 常にユーザー入力を検証\n- データベース操作にはパラメータ化クエリを使用\n- 潜在的なセキュリティ問題を即座にフラグ\n```\n\n### AGENTS.mdのベストプラクティス\n\n- **具体的にする**: プロジェクトの具体例を含めます。\n- **簡潔に保つ**: プロジェクトに固有のものに焦点を当てます。\n- **バージョン管理**: リポジトリにコミットして変更を追跡します。\n- **チームの整合性**: 最終化する前にチームと話し合います。\n- **定期的に更新**: プロジェクトの進化に合わせて改善します。\n- **リポジトリ構造を文書化**: エージェントがコードベースの組織を理解できるようにします。\n\n### 要件\n- GitLab 18.8以降\n- VS Code用: GitLab Workflow拡張機能6.60以降\n- JetBrains用: GitLabプラグイン3.26.0以降\n- フロー用: `user_rule`コンテキストにアクセスするためにフロー設定を更新\n\n[AGENTS.mdの詳細を見る](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/agents_md/)。\n\n### カスタムレビュー指示\n\n[カスタムレビュー指示](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/review_instructions/)は、[コードレビュー基本フロー](https://docs.gitlab.com/ja-jp/user/duo_agent_platform/flows/foundational_flows/code_review/)に特定のガイドラインを提供します。指示により、一貫したコードレビュー標準が保証され、プロジェクト内の特定のファイルタイプに合わせて調整できます。\n\n\nプロジェクトルートに**ファイルを作成**`.gitlab/duo/mr-review-instructions.yaml`。\n\n**レビュー指示の例:**\n\n```yaml\ninstructions:\n  - name: Ruby Style Guide\n    fileFilters:\n      - \"*.rb\"           # ルートディレクトリのRubyファイル\n      - \"lib/**/*.rb\"    # libとそのサブディレクトリのRubyファイル\n      - \"!spec/**/*.rb\"  # テストファイルを除外\n    instructions: |\n      1. すべてのメソッドに適切なドキュメントがあることを確認\n      2. Rubyスタイルガイドの規約に従う\n      3. ハッシュキーには文字列よりもシンボルを優先\n\n  - name: TypeScript Source Files\n    fileFilters:\n      - \"**/*.ts\"        # 任意のディレクトリのTypeScriptファイル\n      - \"!**/*.test.ts\"  # テストファイルを除外\n    instructions: |\n      1. 適切なTypeScript型を確保('any'は避ける)\n      2. 命名規則に従う\n      3. 複雑な関数を文書化\n\n```\n\n**カスタムレビュー指示のベストプラクティス**:\n- **具体的で実行可能にする**: 明確で番号付きの指示が最適です。\n- **globパターンを使用**: `fileFilters`で特定のファイルタイプをターゲットにします。\n- **重要な標準に焦点を当てる**: 最も重要なレビューポイントを優先します。\n- **「理由」を説明**: レビュアーが推論を理解できるようにします。\n- **パターンをテスト**: globパターンが意図したファイルと一致することを確認します。\n\n**ヒント**: コードオーナーを使用して、`.gitlab/duo/mr-review-instructions.yaml`への変更を保護します。\n\n詳細なセットアップ手順と例については、[カスタムレビュー指示のドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/review_instructions/)を参照してください。\n\n## パート2：MCPで機能を拡張\n\nModel Context Protocol（MCP）により、エージェントはJira、Slack、AWSなどの外部システムにアクセスできます。このセクションでは、エージェント機能を拡張するためのMCP設定について説明します。\n\n> **🎯 今すぐ試す**: [MCPのインタラクティブデモ](https://gitlab.navattic.com/mcp) - Model Context Protocolの使用方法を探索します。\n\n### 外部統合のためのMCP設定\n\nModel Context Protocol（MCP）により、エージェントはJira、Slack、AWSなどの外部システムにアクセスできます。\n\n**スコープ**: ユーザーレベル(すべてのワークスペースに適用)またはワークスペースレベル(プロジェクト固有、ユーザー設定を上書き)\n\n**ユーザー設定を作成**:\n- **macOS/Linux**: `~/.gitlab/duo/mcp.json`\n- **Windows**: `C:\\Users\\\u003Cusername>\\AppData\\Roaming\\GitLab\\duo\\mcp.json`\n- **VS Code**: コマンド`GitLab MCP: Open User Settings (JSON)`を実行\n\n**ワークスペース設定を作成**:\n- **ファイルを作成**: プロジェクトルートに`.gitlab/duo/mcp.json`\n\n**ベストプラクティス**:\n- **セキュリティ第一**: プレーンテキストパスワードトークンではなく、OAuthを必要とするMCPサーバーを使用します。\n- **最小スコープ**: 実際に使用して信頼するMCPサーバーのみを有効にします。\n- **ローカルでテスト**: チーム全体で共有する前に、MCP接続と認証が機能することを確認します。\n- **統合を文書化**: 各MCPサーバーが提供するものを説明します。\n- **バージョン管理**: コードオーナーの承認を得て`.gitlab/duo/mcp.json`に設定を保存します。\n\n詳細なセットアップ手順と設定例については、[パート7: Model Context Protocol統合](https://about.gitlab.com/ja-jp/blog/duo-agent-platform-with-mcp/)を参照してください。\n\n## パート3：カスタムエージェントとフローの作成\n\nカスタムエージェントとフローにより、チームの特定のワークフローを自動化できます。カスタマイズに入る前に、それらが何であり、どのように機能するかを理解することが役立ちます。[GitLab Duo Agent Platformを始めるガイド](https://about.gitlab.com/ja-jp/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)の以下のパートが役立ちます。\n- **[パート3: エージェントを理解する](https://about.gitlab.com/ja-jp/blog/understanding-agents-foundational-custom-external/)** — 基本、カスタム、外部エージェントについて、各タイプをいつ使用するかを学びます。\n- **[パート4: フローを理解する](https://about.gitlab.com/ja-jp/blog/understanding-flows-multi-agent-workflows/)** — フローが複数のエージェントを調整して複雑な問題を解決する方法を発見します。\n- **[パート5: AIカタログ](https://about.gitlab.com/ja-jp/blog/ai-catalog-discover-and-share-agents/)** — 組織全体でエージェントとフローを検索、作成、共有する方法を学びます。\n基本を理解したら、このセクションでは詳細なガイドへのリンク付きでカスタマイズオプションの概要を提供します。\n\n### カスタムエージェント用のシステムプロンプト\n\nシステムプロンプトは、エージェントの個性、専門知識、動作を定義します。適切に作成されたプロンプトにより、エージェントがより効果的になり、チームのニーズに合致します。\n\n**システムプロンプトとは?** システムプロンプトは、エージェントにどのように動作するか、どのような専門知識を持っているか、リクエストにどのように応答するかを指示する指示です。カスタムエージェントの動作の基盤です。\n\n**強力なシステムプロンプトの主要要素**:\n- **役割定義**: エージェントが何であり、何をするか\n- **専門分野**: 特定のドメインまたはテクノロジー\n- **動作ガイドライン**: どのように対話して応答するか\n- **出力形式**: 応答の構造\n- **制約**: 何を避けるべきか\n\n**ベストプラクティス**:\n- **詳細にする**: より具体的なプロンプトがより良い結果を生み出します。\n- **例を使用**: エージェントに良い出力がどのようなものかを示します。\n- **スコープを定義**: エージェントが何をすべきか、何をすべきでないかを明確に述べます。\n- **反復的にテスト**: エージェントの動作に基づいてプロンプトを改善します。\n- **バージョン管理**:リポジトリでプロンプトの変更を追跡します。\n\nシステムプロンプトの作成とカスタムエージェントの作成に関する詳細なガイダンスについては、[パート3: エージェントを理解する](https://about.gitlab.com/ja-jp/blog/understanding-agents-foundational-custom-external/)を参照してください。\n\n### カスタムエージェントとフロー\n\n学習内容が多岐にわたるため、チュートリアルは複数に分割されています。\n\n**カスタムエージェント**:\n- カスタムシステムプロンプトでエージェントを作成し、ツールを設定し、権限を管理する方法を学びます。\n- [パート3: エージェントを理解する - カスタムエージェントセクション](https://about.gitlab.com/ja-jp/blog/understanding-agents-foundational-custom-external/#%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88)を参照してください。\n\n**カスタムフロー**:\n- 複数ステップのワークフローを作成し、コンポーネントを設定し、イベント駆動の自動化を設定する方法を学びます。\n- [パート4: フローを理解する — カスタムフローセクション](https://about.gitlab.com/ja-jp/blog/understanding-flows-multi-agent-workflows/#%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%95%E3%83%AD%E3%83%BC)を参照してください。\n\n**エージェントツール**:\n- ツールは、エージェントが実行できるアクションを決定します。エージェントの目的とセキュリティ要件に基づいてツールを設定します。\n- ツール設定の詳細については、[パート3: エージェントを理解する](https://about.gitlab.com/ja-jp/blog/understanding-agents-foundational-custom-external/)を参照してください。\n\n\n## クイックリファレンス:カスタマイズを使用するタイミング\n\n| ツール | 最適な用途 | 場所 |\n|------|----------|----------|\n| **カスタムルール** | IDEでのチャット応答のガイド(トーン、スタイル、動作) | `~/.gitlab/duo/chat-rules.md`(ユーザー)または`.gitlab/duo/chat-rules.md`(ワークスペース) |\n| **AGENTS.md** | チャット、フロー、その他のAIツール全体での標準の実施 | `~/.gitlab/duo/AGENTS.md`(ユーザー)または`AGENTS.md`(ワークスペースルート) |\n| **カスタムレビュー指示** | 特定のファイルタイプのコードレビュー標準のガイド | `.gitlab/duo/mr-review-instructions.yaml`(ワークスペースのみ) |\n| **システムプロンプト** | 個別のエージェント動作のカスタマイズ | エージェント作成時のAIカタログ |\n| **MCP設定** | エージェントを外部ツールに接続 | `~/.gitlab/duo/mcp.json`(ユーザー)または`.gitlab/duo/mcp.json`(ワークスペース) |\n| **カスタムエージェント** | チーム固有のタスク用の専門エージェントの作成 | 自動化 → エージェントまたはAIカタログ |\n| **カスタムフロー** | ワークフローでの複数エージェントのオーケストレーション | 自動化 → フローまたはAIカタログ |\n\n## 次のステップ\n\nおめでとうございます！GitLab Duo Agent Platformシリーズ全体を完了しました。次のことを理解しました。\n- ユースケースに合わせてSDLC全体でエージェントとフローを使用する方法\n- AIカタログでソリューションを発見して共有する方法\n- AIワークフローを監視して管理する方法\n- MCP統合で機能を拡張する方法\n- チームのためにGitLab Duo Agent Platformのあらゆる側面をカスタマイズする方法\n\n[シリーズ概要に戻り](https://about.gitlab.com/ja-jp/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)、すべてのパートの確認や特定のトピックの詳細をご覧いただけます。\n\n## 関連リンク\n\n- [カスタムルールのドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/custom_rules/)\n- [AGENTS.mdのドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/agents_md/)\n- [カスタムレビュー指示のドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/customize_duo/review_instructions/)\n- [カスタムエージェントのドキュメント](https://docs.gitlab.com/ja-jp/user/duo_agent_platform/agents/custom.html)\n- [カスタムフローのドキュメント](https://docs.gitlab.com/ja-jp/user/duo_agent_platform/flows/custom.html)\n- [MCPクライアントのドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/model_context_protocol/mcp_clients/)\n\n---\n\n**前へ:**[パート7: Model Context Protocol統合](https://about.gitlab.com/ja-jp/blog/duo-agent-platform-with-mcp/)\n\n**シリーズの最初に戻る:**[完全なシリーズ概要](https://about.gitlab.com/ja-jp/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)","yml",{},true,"/ja-jp/blog/customizing-gitlab-duo-chat-rules-prompts-workflows",{"noIndex":12,"title":32,"description":33,"ogImage":34},"GitLab Duo Agent Platformをカスタマイズする方法","チャットルール、システムプロンプトの設定などにより、チームのワークフローに合わせます。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1752678395/impw8no5tbskr6k2afgu.jpg","ja-jp/blog/customizing-gitlab-duo-chat-rules-prompts-workflows",[37,17,18,19],"aiml","upfA8sBFxMdI_X2eLnSNS5E9YoIi8SKZos5-zMB-VFY",{"data":40},{"logo":41,"freeTrial":46,"sales":51,"login":56,"items":61,"search":369,"minimal":402,"duo":419,"pricingDeployment":428},{"config":42},{"href":43,"dataGaName":44,"dataGaLocation":45},"/ja-jp/","gitlab logo","header",{"text":47,"config":48},"無料トライアルを開始",{"href":49,"dataGaName":50,"dataGaLocation":45},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp&glm_content=default-saas-trial/","free trial",{"text":52,"config":53},"お問い合わせ",{"href":54,"dataGaName":55,"dataGaLocation":45},"/ja-jp/sales/","sales",{"text":57,"config":58},"サインイン",{"href":59,"dataGaName":60,"dataGaLocation":45},"https://gitlab.com/users/sign_in/","sign in",[62,89,185,190,291,351],{"text":63,"config":64,"cards":66},"プラットフォーム",{"dataNavLevelOne":65},"platform",[67,73,81],{"title":63,"description":68,"link":69},"DevSecOpsに特化したインテリジェントオーケストレーションプラットフォーム",{"text":70,"config":71},"プラットフォームを詳しく見る",{"href":72,"dataGaName":65,"dataGaLocation":45},"/ja-jp/platform/",{"title":74,"description":75,"link":76},"GitLab Duo Agent Platform","ソフトウェアライフサイクル全体を支えるエージェント型AI",{"text":77,"config":78},"GitLab Duoのご紹介",{"href":79,"dataGaName":80,"dataGaLocation":45},"/ja-jp/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":82,"description":83,"link":84},"GitLabが選ばれる理由","エンタープライズがGitLabを選ぶ主な理由をご覧ください",{"text":85,"config":86},"詳細はこちら",{"href":87,"dataGaName":88,"dataGaLocation":45},"/ja-jp/why-gitlab/","why gitlab",{"text":90,"left":29,"config":91,"link":93,"lists":97,"footer":167},"製品",{"dataNavLevelOne":92},"solutions",{"text":94,"config":95},"すべてのソリューションを表示",{"href":96,"dataGaName":92,"dataGaLocation":45},"/ja-jp/solutions/",[98,123,145],{"title":99,"description":100,"link":101,"items":106},"自動化","CI/CDと自動化でデプロイを加速",{"config":102},{"icon":103,"href":104,"dataGaName":105,"dataGaLocation":45},"AutomatedCodeAlt","/ja-jp/solutions/delivery-automation/","automated software delivery",[107,111,114,119],{"text":108,"config":109},"CI/CD",{"href":110,"dataGaLocation":45,"dataGaName":108},"/ja-jp/solutions/continuous-integration/",{"text":74,"config":112},{"href":79,"dataGaLocation":45,"dataGaName":113},"gitlab duo agent platform - product menu",{"text":115,"config":116},"ソースコード管理",{"href":117,"dataGaLocation":45,"dataGaName":118},"/ja-jp/solutions/source-code-management/","Source Code Management",{"text":120,"config":121},"自動化されたソフトウェアデリバリー",{"href":104,"dataGaLocation":45,"dataGaName":122},"Automated software delivery",{"title":124,"description":125,"link":126,"items":131},"セキュリティ","セキュリティを犠牲にすることなくコード作成を高速化",{"config":127},{"href":128,"dataGaName":129,"dataGaLocation":45,"icon":130},"/ja-jp/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[132,136,141],{"text":133,"config":134},"Application Security Testing",{"href":128,"dataGaName":135,"dataGaLocation":45},"Application security testing",{"text":137,"config":138},"ソフトウェアサプライチェーンの安全性",{"href":139,"dataGaLocation":45,"dataGaName":140},"/ja-jp/solutions/supply-chain/","Software supply chain security",{"text":142,"config":143},"Software Compliance",{"href":144,"dataGaName":142,"dataGaLocation":45},"/ja-jp/solutions/software-compliance/",{"title":146,"link":147,"items":152},"測定",{"config":148},{"icon":149,"href":150,"dataGaName":151,"dataGaLocation":45},"DigitalTransformation","/ja-jp/solutions/visibility-measurement/","visibility and measurement",[153,157,162],{"text":154,"config":155},"可視性と測定",{"href":150,"dataGaLocation":45,"dataGaName":156},"Visibility and Measurement",{"text":158,"config":159},"バリューストリーム管理",{"href":160,"dataGaLocation":45,"dataGaName":161},"/ja-jp/solutions/value-stream-management/","Value Stream Management",{"text":163,"config":164},"分析とインサイト",{"href":165,"dataGaLocation":45,"dataGaName":166},"/ja-jp/solutions/analytics-and-insights/","Analytics and insights",{"title":168,"items":169},"GitLabが活躍する場所",[170,175,180],{"text":171,"config":172},"Enterprise",{"href":173,"dataGaLocation":45,"dataGaName":174},"/ja-jp/enterprise/","enterprise",{"text":176,"config":177},"スモールビジネス",{"href":178,"dataGaLocation":45,"dataGaName":179},"/ja-jp/small-business/","small business",{"text":181,"config":182},"公共機関",{"href":183,"dataGaLocation":45,"dataGaName":184},"/ja-jp/solutions/public-sector/","public sector",{"text":186,"config":187},"価格",{"href":188,"dataGaName":189,"dataGaLocation":45,"dataNavLevelOne":189},"/ja-jp/pricing/","pricing",{"text":191,"config":192,"link":194,"lists":198,"feature":278},"関連リソース",{"dataNavLevelOne":193},"resources",{"text":195,"config":196},"すべてのリソースを表示",{"href":197,"dataGaName":193,"dataGaLocation":45},"/ja-jp/resources/",[199,232,250],{"title":200,"items":201},"はじめに",[202,207,212,217,222,227],{"text":203,"config":204},"インストール",{"href":205,"dataGaName":206,"dataGaLocation":45},"/ja-jp/install/","install",{"text":208,"config":209},"クイックスタートガイド",{"href":210,"dataGaName":211,"dataGaLocation":45},"/ja-jp/get-started/","quick setup checklists",{"text":213,"config":214},"学ぶ",{"href":215,"dataGaLocation":45,"dataGaName":216},"https://university.gitlab.com/","learn",{"text":218,"config":219},"製品ドキュメント",{"href":220,"dataGaName":221,"dataGaLocation":45},"https://docs.gitlab.com/","product documentation",{"text":223,"config":224},"ベストプラクティスビデオ",{"href":225,"dataGaName":226,"dataGaLocation":45},"/ja-jp/getting-started-videos/","best practice videos",{"text":228,"config":229},"インテグレーション",{"href":230,"dataGaName":231,"dataGaLocation":45},"/ja-jp/integrations/","integrations",{"title":233,"items":234},"検索する",[235,240,245],{"text":236,"config":237},"お客様成功事例",{"href":238,"dataGaName":239,"dataGaLocation":45},"/ja-jp/customers/","customer success stories",{"text":241,"config":242},"ブログ",{"href":243,"dataGaName":244,"dataGaLocation":45},"/ja-jp/blog/","blog",{"text":246,"config":247},"リモート",{"href":248,"dataGaName":249,"dataGaLocation":45},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":251,"items":252},"つなげる",[253,258,263,268,273],{"text":254,"config":255},"GitLabサービス",{"href":256,"dataGaName":257,"dataGaLocation":45},"/ja-jp/services/","services",{"text":259,"config":260},"コミュニティ",{"href":261,"dataGaName":262,"dataGaLocation":45},"/community/","community",{"text":264,"config":265},"フォーラム",{"href":266,"dataGaName":267,"dataGaLocation":45},"https://forum.gitlab.com/","forum",{"text":269,"config":270},"イベント",{"href":271,"dataGaName":272,"dataGaLocation":45},"/events/","events",{"text":274,"config":275},"パートナー",{"href":276,"dataGaName":277,"dataGaLocation":45},"/ja-jp/partners/","partners",{"backgroundColor":279,"textColor":280,"text":281,"image":282,"link":286},"#2f2a6b","#fff","ソフトウェア開発の未来への洞察",{"altText":283,"config":284},"ソースプロモカード",{"src":285},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":287,"config":288},"最新情報を読む",{"href":289,"dataGaName":290,"dataGaLocation":45},"/ja-jp/the-source/","the source",{"text":292,"config":293,"lists":295},"会社情報",{"dataNavLevelOne":294},"company",[296],{"items":297},[298,303,309,311,316,321,326,331,336,341,346],{"text":299,"config":300},"GitLabについて",{"href":301,"dataGaName":302,"dataGaLocation":45},"/ja-jp/company/","about",{"text":304,"config":305,"footerGa":308},"採用情報",{"href":306,"dataGaName":307,"dataGaLocation":45},"/jobs/","jobs",{"dataGaName":307},{"text":269,"config":310},{"href":271,"dataGaName":272,"dataGaLocation":45},{"text":312,"config":313},"経営陣",{"href":314,"dataGaName":315,"dataGaLocation":45},"/company/team/e-group/","leadership",{"text":317,"config":318},"チーム",{"href":319,"dataGaName":320,"dataGaLocation":45},"/company/team/","team",{"text":322,"config":323},"ハンドブック",{"href":324,"dataGaName":325,"dataGaLocation":45},"https://handbook.gitlab.com/","handbook",{"text":327,"config":328},"投資家向け情報",{"href":329,"dataGaName":330,"dataGaLocation":45},"https://ir.gitlab.com/","investor relations",{"text":332,"config":333},"トラストセンター",{"href":334,"dataGaName":335,"dataGaLocation":45},"/ja-jp/security/","trust center",{"text":337,"config":338},"AI Transparency Center",{"href":339,"dataGaName":340,"dataGaLocation":45},"/ja-jp/ai-transparency-center/","ai transparency center",{"text":342,"config":343},"ニュースレター",{"href":344,"dataGaName":345,"dataGaLocation":45},"/company/contact/#contact-forms","newsletter",{"text":347,"config":348},"プレス",{"href":349,"dataGaName":350,"dataGaLocation":45},"/press/","press",{"text":52,"config":352,"lists":353},{"dataNavLevelOne":294},[354],{"items":355},[356,359,364],{"text":52,"config":357},{"href":54,"dataGaName":358,"dataGaLocation":45},"talk to sales",{"text":360,"config":361},"サポートポータル",{"href":362,"dataGaName":363,"dataGaLocation":45},"https://support.gitlab.com","support portal",{"text":365,"config":366},"カスタマーポータル",{"href":367,"dataGaName":368,"dataGaLocation":45},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":370,"login":371,"suggestions":378},"閉じる",{"text":372,"link":373},"リポジトリとプロジェクトを検索するには、次にログインします",{"text":374,"config":375},"GitLab.com",{"href":59,"dataGaName":376,"dataGaLocation":377},"search login","search",{"text":379,"default":380},"提案",[381,383,388,390,394,398],{"text":74,"config":382},{"href":79,"dataGaName":74,"dataGaLocation":377},{"text":384,"config":385},"コード提案（AI）",{"href":386,"dataGaName":387,"dataGaLocation":377},"/ja-jp/solutions/code-suggestions/","Code Suggestions (AI)",{"text":108,"config":389},{"href":110,"dataGaName":108,"dataGaLocation":377},{"text":391,"config":392},"GitLab on AWS",{"href":393,"dataGaName":391,"dataGaLocation":377},"/ja-jp/partners/technology-partners/aws/",{"text":395,"config":396},"GitLab on Google Cloud",{"href":397,"dataGaName":395,"dataGaLocation":377},"/ja-jp/partners/technology-partners/google-cloud-platform/",{"text":399,"config":400},"GitLabを選ぶ理由",{"href":87,"dataGaName":401,"dataGaLocation":377},"Why GitLab?",{"freeTrial":403,"mobileIcon":407,"desktopIcon":412,"secondaryButton":415},{"text":47,"config":404},{"href":405,"dataGaName":50,"dataGaLocation":406},"https://gitlab.com/-/trials/new/","nav",{"altText":408,"config":409},"GitLabアイコン",{"src":410,"dataGaName":411,"dataGaLocation":406},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":408,"config":413},{"src":414,"dataGaName":411,"dataGaLocation":406},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":200,"config":416},{"href":417,"dataGaName":418,"dataGaLocation":406},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/ja-jp/get-started/","get started",{"freeTrial":420,"mobileIcon":424,"desktopIcon":426},{"text":421,"config":422},"GitLab Duoの詳細について",{"href":79,"dataGaName":423,"dataGaLocation":406},"gitlab duo",{"altText":408,"config":425},{"src":410,"dataGaName":411,"dataGaLocation":406},{"altText":408,"config":427},{"src":414,"dataGaName":411,"dataGaLocation":406},{"freeTrial":429,"mobileIcon":434,"desktopIcon":436},{"text":430,"config":431},"料金ページに戻る",{"href":188,"dataGaName":432,"dataGaLocation":406,"icon":433},"back to pricing","GoBack",{"altText":408,"config":435},{"src":410,"dataGaName":411,"dataGaLocation":406},{"altText":408,"config":437},{"src":414,"dataGaName":411,"dataGaLocation":406},{"title":439,"button":440,"config":445},"エージェント型AIがソフトウェア配信をどのように変革するかをご覧ください",{"text":441,"config":442},"GitLab Transcendを今すぐ視聴",{"href":443,"dataGaName":444,"dataGaLocation":45},"/ja-jp/events/transcend/virtual/","transcend event",{"layout":446,"icon":447,"disabled":29},"release","AiStar",{"data":449},{"text":450,"source":451,"edit":457,"contribute":462,"config":467,"items":472,"minimal":646},"GitはSoftware Freedom Conservancyの商標です。当社は「GitLab」をライセンスに基づいて使用しています",{"text":452,"config":453},"ページのソースを表示",{"href":454,"dataGaName":455,"dataGaLocation":456},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":458,"config":459},"このページを編集",{"href":460,"dataGaName":461,"dataGaLocation":456},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":463,"config":464},"ご協力をお願いします",{"href":465,"dataGaName":466,"dataGaLocation":456},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":468,"facebook":469,"youtube":470,"linkedin":471},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[473,496,550,580,615],{"title":63,"links":474,"subMenu":479},[475],{"text":476,"config":477},"DevSecOpsプラットフォーム",{"href":72,"dataGaName":478,"dataGaLocation":456},"devsecops platform",[480],{"title":186,"links":481},[482,486,491],{"text":483,"config":484},"プランの表示",{"href":188,"dataGaName":485,"dataGaLocation":456},"view plans",{"text":487,"config":488},"Premiumを選ぶ理由",{"href":489,"dataGaName":490,"dataGaLocation":456},"/ja-jp/pricing/premium/","why premium",{"text":492,"config":493},"Ultimateを選ぶ理由",{"href":494,"dataGaName":495,"dataGaLocation":456},"/ja-jp/pricing/ultimate/","why ultimate",{"title":497,"links":498},"ソリューション",[499,504,507,509,514,519,523,526,529,534,536,538,540,545],{"text":500,"config":501},"デジタルトランスフォーメーション",{"href":502,"dataGaName":503,"dataGaLocation":456},"/ja-jp/topics/digital-transformation/","digital transformation",{"text":505,"config":506},"セキュリティとコンプライアンス",{"href":128,"dataGaName":135,"dataGaLocation":456},{"text":120,"config":508},{"href":104,"dataGaName":105,"dataGaLocation":456},{"text":510,"config":511},"アジャイル開発",{"href":512,"dataGaName":513,"dataGaLocation":456},"/ja-jp/solutions/agile-delivery/","agile delivery",{"text":515,"config":516},"クラウドトランスフォーメーション",{"href":517,"dataGaName":518,"dataGaLocation":456},"/ja-jp/topics/cloud-native/","cloud transformation",{"text":520,"config":521},"SCM",{"href":117,"dataGaName":522,"dataGaLocation":456},"source code management",{"text":108,"config":524},{"href":110,"dataGaName":525,"dataGaLocation":456},"continuous integration & delivery",{"text":158,"config":527},{"href":160,"dataGaName":528,"dataGaLocation":456},"value stream management",{"text":530,"config":531},"GitOps",{"href":532,"dataGaName":533,"dataGaLocation":456},"/ja-jp/solutions/gitops/","gitops",{"text":171,"config":535},{"href":173,"dataGaName":174,"dataGaLocation":456},{"text":176,"config":537},{"href":178,"dataGaName":179,"dataGaLocation":456},{"text":181,"config":539},{"href":183,"dataGaName":184,"dataGaLocation":456},{"text":541,"config":542},"教育",{"href":543,"dataGaName":544,"dataGaLocation":456},"/ja-jp/solutions/education/","education",{"text":546,"config":547},"金融サービス",{"href":548,"dataGaName":549,"dataGaLocation":456},"/ja-jp/solutions/finance/","financial services",{"title":191,"links":551},[552,554,556,558,561,563,566,568,570,572,574,576,578],{"text":203,"config":553},{"href":205,"dataGaName":206,"dataGaLocation":456},{"text":208,"config":555},{"href":210,"dataGaName":211,"dataGaLocation":456},{"text":213,"config":557},{"href":215,"dataGaName":216,"dataGaLocation":456},{"text":218,"config":559},{"href":220,"dataGaName":560,"dataGaLocation":456},"docs",{"text":241,"config":562},{"href":243,"dataGaName":244},{"text":564,"config":565},"お客様の成功事例",{"href":238,"dataGaLocation":456},{"text":236,"config":567},{"href":238,"dataGaName":239,"dataGaLocation":456},{"text":246,"config":569},{"href":248,"dataGaName":249,"dataGaLocation":456},{"text":254,"config":571},{"href":256,"dataGaName":257,"dataGaLocation":456},{"text":259,"config":573},{"href":261,"dataGaName":262,"dataGaLocation":456},{"text":264,"config":575},{"href":266,"dataGaName":267,"dataGaLocation":456},{"text":269,"config":577},{"href":271,"dataGaName":272,"dataGaLocation":456},{"text":274,"config":579},{"href":276,"dataGaName":277,"dataGaLocation":456},{"title":581,"links":582},"Company",[583,585,587,589,591,593,595,599,604,606,608,610],{"text":299,"config":584},{"href":301,"dataGaName":294,"dataGaLocation":456},{"text":304,"config":586},{"href":306,"dataGaName":307,"dataGaLocation":456},{"text":312,"config":588},{"href":314,"dataGaName":315,"dataGaLocation":456},{"text":317,"config":590},{"href":319,"dataGaName":320,"dataGaLocation":456},{"text":322,"config":592},{"href":324,"dataGaName":325,"dataGaLocation":456},{"text":327,"config":594},{"href":329,"dataGaName":330,"dataGaLocation":456},{"text":596,"config":597},"Sustainability",{"href":598,"dataGaName":596,"dataGaLocation":456},"/sustainability/",{"text":600,"config":601},"ダイバーシティ、インクルージョン、ビロンギング（DIB）",{"href":602,"dataGaName":603,"dataGaLocation":456},"/ja-jp/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":332,"config":605},{"href":334,"dataGaName":335,"dataGaLocation":456},{"text":342,"config":607},{"href":344,"dataGaName":345,"dataGaLocation":456},{"text":347,"config":609},{"href":349,"dataGaName":350,"dataGaLocation":456},{"text":611,"config":612},"現代奴隷制の透明性に関する声明",{"href":613,"dataGaName":614,"dataGaLocation":456},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":52,"links":616},[617,619,624,626,631,636,641],{"text":52,"config":618},{"href":54,"dataGaName":55,"dataGaLocation":456},{"text":620,"config":621},"サポートを受ける",{"href":622,"dataGaName":623,"dataGaLocation":456},"https://support.gitlab.com/hc/en-us/articles/11626483177756-GitLab-Support","get help",{"text":365,"config":625},{"href":367,"dataGaName":368,"dataGaLocation":456},{"text":627,"config":628},"ステータス",{"href":629,"dataGaName":630,"dataGaLocation":456},"https://status.gitlab.com/","status",{"text":632,"config":633},"利用規約",{"href":634,"dataGaName":635,"dataGaLocation":456},"/terms/","terms of use",{"text":637,"config":638},"プライバシーに関する声明",{"href":639,"dataGaName":640,"dataGaLocation":456},"/ja-jp/privacy/","privacy statement",{"text":642,"config":643},"Cookieの設定",{"dataGaName":644,"dataGaLocation":456,"id":645,"isOneTrustButton":29},"cookie preferences","ot-sdk-btn",{"items":647},[648,650,652],{"text":632,"config":649},{"href":634,"dataGaName":635,"dataGaLocation":456},{"text":637,"config":651},{"href":639,"dataGaName":640,"dataGaLocation":456},{"text":642,"config":653},{"dataGaName":644,"dataGaLocation":456,"id":645,"isOneTrustButton":29},[655],{"id":656,"title":23,"body":8,"config":657,"content":659,"description":8,"extension":27,"meta":663,"navigation":29,"path":664,"seo":665,"stem":666,"__hash__":667},"blogAuthors/en-us/blog/authors/itzik-gan-baruch.yml",{"template":658},"BlogAuthor",{"name":23,"config":660},{"headshot":661,"ctfId":662},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658921/Blog/Author%20Headshots/iganbaruch-headshot.jpg","iganbaruch",{},"/en-us/blog/authors/itzik-gan-baruch",{},"en-us/blog/authors/itzik-gan-baruch","bz9VMiTQ1ixvnoxUFk0jiUcnLG3oQsymgXNCqyRqfsk",[669,682,696],{"content":670,"config":680},{"heroImage":671,"body":672,"authors":673,"updatedDate":675,"date":676,"title":677,"tags":678,"description":679,"category":9},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643639/sapu29gmlgtwvhggmj6k.png","ソフトウェア開発の管理では、複数のツールを同時に扱うことが求められます。Jiraで課題を追跡し、IDEでコードを記述し、GitLabでコラボレーションするといった具合です。こうしたプラットフォーム間のコンテキストの切り替えは集中力を妨げ、デリバリーを遅らせます。\n\nGitLab Duo Agent Platformの[MCP](https://about.gitlab.com/topics/ai/model-context-protocol/)サポートにより、JiraをはじめMCPに対応したあらゆるツールを、AIを活用した開発環境に直接接続できるようになりました。課題の照会、チケットの更新、ワークフローの同期——すべて自然言語で、IDEを離れることなく実行できます。\n\n## この記事で学べること\n\nこのチュートリアルでは、以下の内容を解説します。\n\n* **Jira/Atlassian OAuthアプリケーションのセットアップ** — セキュアな認証の設定\n* **GitLab Duo Agent PlatformのMCPクライアントとしての設定** — 接続の構成\n* **3つの実践的なユースケース** — 実際のワークフローのデモ\n\n## 前提条件\n\n開始する前に、以下の要件を満たしていることをご確認ください。\n\n| 要件 | 詳細 |\n| ---- | ----- |\n| **GitLabインスタンス** | Duo Agent Platformが有効なGitLab 18.8以降 |\n| **Jiraアカウント** | OAuthアプリケーションを作成できる管理者権限を持つJira Cloudインスタンス |\n| **IDE** | GitLab Workflow拡張機能がインストールされたVisual Studio Code |\n| **MCPサポート** | GitLabでMCPサポートが有効化済み |\n\n\n## アーキテクチャの概要\n\nGitLab Duo Agent Platformは**MCPクライアント**として機能し、Atlassian MCPサーバーに接続してJiraのプロジェクト管理データにアクセスします。Atlassian MCPサーバーは認証を処理し、自然言語のリクエストをAPI呼び出しに変換して、構造化されたデータをGitLab Duo Agent Platformに返します。このプロセス全体を通じて、セキュリティと監査管理が維持されます。\n\n## パート1：Jira OAuthアプリケーションの設定\n\nGitLab Duo Agent PlatformをJiraインスタンスに安全に接続するには、Atlassian Developer ConsoleでOAuth 2.0アプリケーションを作成する必要があります。これにより、GitLabのMCPサーバーにJiraデータへの認可されたアクセス権が付与されます。\n\n### セットアップ手順\n\n手動で設定する場合は、以下の手順に従ってください。\n\n1. **Atlassian Developer Consoleにアクセス**\n\n   * [developer.atlassian.com/console/myapps](https://developer.atlassian.com/console/myapps)にアクセスします。\n\n   * Atlassianアカウントでサインインします。\n\n2. **新しいOAuth 2.0アプリを作成**\n\n   * **Create** → **OAuth 2.0 integration** をクリックします。\n\n   * アプリ名を入力します（例：「gitlab-dap-mcp」）。\n\n   * 利用規約に同意し、**Create** をクリックします。\n\n3. **権限の設定**\n\n   * 左サイドバーの **Permissions** に移動します。\n\n   * **Jira API** を追加し、以下のスコープを設定します。\n\n     * `read:jira-work` — 課題、プロジェクト、ボードの読み取り\n\n     * `write:jira-work` — 課題の作成と更新\n\n     * `read:jira-user` — ユーザー情報の読み取り\n\n4. **認可の設定**\n\n   * 左サイドバーの **Authorization** に移動します。\n\n   * お使いの環境のコールバックURLを追加します（`https://gitlab.com/oauth/callback`）。\n\n   * 変更を保存します。\n\n5. **認証情報の取得**\n\n   * **Settings** に移動します。\n\n   * **Client ID** と **Client Secret** をコピーします。\n\n   * これらの認証情報はMCP設定に必要なため、安全な場所に保管してください。\n\n\n### インタラクティブウォークスルー：Jira OAuthのセットアップ\n\n以下の画像をクリックして開始してください。\n\n\n[![Jira OAuth setup tour](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772644850/wnzfoq43nkkfmgdqldmr.png)](https://gitlab.navattic.com/jira-oauth-setup)\n\n\n## パート2：GitLab Duo Agent PlatformのMCPクライアントの設定\n\nOAuth認証情報の準備ができたら、GitLab Duo Agent PlatformをAtlassian MCPサーバーに接続するための設定を行います。\n\n### MCP設定ファイルの作成\n\nGitLabプロジェクトの `.gitlab/duo/mcp.json` にMCP設定ファイルを作成します。\n\n\n```json\n{\n  \"mcpServers\": {\n    \"atlassian\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.atlassian.com/v1/mcp\",\n      \"auth\": {\n        \"type\": \"oauth2\",\n        \"clientId\": \"YOUR_CLIENT_ID\",\n        \"clientSecret\": \"YOUR_CLIENT_SECRET\",\n        \"authorizationUrl\": \"https://auth.atlassian.com/oauth/authorize\",\n        \"tokenUrl\": \"https://auth.atlassian.com/oauth/token\"\n      },\n      \"approvedTools\": true\n    }\n  }\n}\n```\n\n`YOUR_CLIENT_ID` と `YOUR_CLIENT_SECRET` は、パート1で生成した認証情報に置き換えてください。\n\n### GitLabでMCPを有効化\n\n1. **グループ設定** → **GitLab Duo** → **Configuration** に移動します。\n2. 「Allow external MCP tools」にチェックが入っていることを確認します。\n\n### 接続の確認\n\nVS CodeでプロジェクトをひらいてGitLab Duo Agent Platformのチャットで次のように入力してください。\n\n```text\nWhat MCP tools do you have access to?\n```\n\n次に\n\n```text\nTest the MCP JIRA configuration in this project\n```\n\nこの時点で、IDEからAtlassian MCPウェブサイトにリダイレクトされ、アクセスの承認を求められます。\n\n![Redirect to MCP Atlassian website](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/z5acqjgguh0damnnde9g.png \"MCPのAtlassianウェブサイトへのリダイレクト\")\n\n\u003Cbr>\u003C/br>\n\n![Approve access](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/rwowamm8nsubhpixtn3i.png \"アクセスの承認\")\n\n\u003Cbr>\u003C/br>\n\n![Select your JIRA instance and approve](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/chuzqd0jeptfwvoj7wjr.png \"JIRAインスタンスを選択して承認\")\n\n\u003Cbr>\u003C/br>\n\n![Success!](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/bsgti5iste2bzck19o5y.png \"成功！\")\n\n\u003Cbr>\u003C/br>\n\n### MCPダッシュボードによる確認\n\nGitLabは、IDEに組み込みの**MCPダッシュボード**も提供しています。\n\nVS CodeまたはVSCodiumで、コマンドパレット（macOSでは `Cmd+Shift+P`、Windows/Linuxでは `Ctrl+Shift+P`）をひらいて **「GitLab: Show MCP Dashboard」** を検索してください。ダッシュボードは新しいエディタータブで表示され、以下の情報を確認できます。\n\n* 設定済みの各MCPサーバーの**接続ステータス**\n* サーバーが公開している**利用可能なツール**（例：`jira_get_issue`、`jira_create_issue`）\n* **サーバーログ** — リアルタイムで呼び出されているツールを確認可能\n\n![MCP servers dashboard and status](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/mmvdfchucacsydivowvn.png \"MCPサーバーのダッシュボードとステータス\")\n\n\u003Cbr>\u003C/br>\n\n![Server details and permissions](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/tcocgdvovp2dl42pvfn8.png \"サーバーの詳細と権限\")\n\n\u003Cbr>\u003C/br>\n\n\n![MCP Server logs](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643466/mougvqqk1bozchaufsci.png \"MCPサーバーログ\")\n\n\u003Cbr>\u003C/br>\n\n### インタラクティブウォークスルー：MCPのテスト\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005495?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Testing MCP\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n## パート3：実践的なユースケース\n\n統合の設定が完了したら、JiraをGitLab Duo Agent Platformに接続することで実現できる3つの実践的なワークフローを見ていきましょう。\n\n### プランニングアシスタント\n\n**シナリオ：** スプリントプランニングの準備として、バックログをすばやく評価し、優先事項を把握し、ブロッカーを特定する必要があります。\n\nこのデモでは以下の操作を紹介します。\n\n* バックログの照会\n* 未割り当ての高優先度課題の特定\n* AIによるスプリント推奨の取得\n\n#### プロンプト例\n\nGitLab Duo Agent Platformのチャットで以下のプロンプトをお試しください。\n\n```text\nList all the unassigned issues in JIRA for project GITLAB\n```\n\n```text\nSuggest the two top issues to prioritize and summarize them. Assign them to me.\n```\n\n### インタラクティブウォークスルー：プロジェクトプランニング\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005462?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Project Planning\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player. js\">\u003C/script>\n\n### コードからの課題トリアージと作成\n\n**シナリオ：** コードレビュー中にバグを発見し、IDEを離れることなく、関連するコンテキストとともにJiraの課題を作成したい場合です。\n\nこのデモでは以下の手順を紹介します。\n\n* コーディング中のバグの特定\n* 自然言語を使ったJira課題の詳細な作成\n* コードのコンテキストによる課題フィールドの自動入力\n* 現在のブランチへの課題のリンク\n\n#### プロンプト例\n\n```text\nSearch in JIRA for a bug related to: Null pointer exception in PaymentService.processRefund().\nIf it does not exist create it with all the context needed from the code. Find possible blockers that this bug may cause.\n```\n\n```text\nCreate a new branch called issue-gitlab-18, checkout, and link it to the issue we just created. Assign the JIRA issue to me and mark it as in-progress.\n```\n\n### インタラクティブウォークスルー：バグレビューとタスク自動化\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005368?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Bug Review\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n### クロスシステムのインシデント調査\n\n**シナリオ：** 本番インシデントが発生し、Jira（インシデントチケット）、GitLabプロジェクト管理、コードベース、マージリクエストからの情報を照合して根本原因を特定する必要があります。\n\nこのデモでは以下を実演します。\n\n* Jiraからのインシデント詳細の取得\n* GitLabの最近のマージリクエストとの照合\n* 関連する可能性のあるコード変更の特定\n* インシデントタイムラインの生成\n* 修正計画の設計とGitLabのワークアイテムとしての作成\n\n#### プロンプト例\n\n```text\n\"We have a production incident INC-1 about checkout failures. Can you help me investigate with all available context?\"\n```\n\n```text\nCreate a timeline of events for incident INC-1 including related Jira issues and recent deployments\n```\n\n```text\nPropose a remediation plan\n```\n\n### インタラクティブウォークスルー：クロスシステムのトラブルシューティングと修正\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005413?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Cross System Investigation\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n## トラブルシューティング\n\nよくあるセットアップの問題と解決策を以下にまとめます。\n\n| 問題 | 解決策 |\n| ----- | ----- |\n| 「MCP server not found」 | `mcp.json` ファイルが正しい場所にあり、適切にフォーマットされていることを確認してください。 |\n| 「Authentication failed」 | OAuth認証情報を再確認し、Atlassianでスコープが正しく設定されていることを確認してください。 |\n| 「No Jira tools available」 | `mcp.json` を更新後にVS Codeを再起動し、GitLabでMCPが有効になっていることを確認してください。 |\n| 「Connection timeout」 | `mcp.atlassian.com` へのネットワーク接続を確認してください。 |\n\n\u003Cbr/> 詳細なトラブルシューティングについては、[GitLab MCPクライアントのドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/model_context_protocol/mcp_clients/)をご参照ください。\n\n\n## セキュリティに関する考慮事項\n\nJiraをGitLab Duo Agent Platformと統合する際は、以下の点にご注意ください。\n\n* **OAuthトークン** — 認証情報を安全に管理してください。\n* **最小権限の原則** — Jiraスコープは必要最小限のみ付与してください。\n* **トークンのローテーション** — セキュリティ管理の一環として、OAuth認証情報を定期的にローテーションしてください。\n\n\n## まとめ\n\nMCPを通じてGitLab Duo Agent Platformをさまざまなツールに接続することで、開発ライフサイクルとのインタラクションが大きく変わります。この記事では、以下の方法を学びました。\n\n* **自然言語による課題の照会** — バックログ、スプリント、インシデントについて自然言語で質問できます。\n* **DevSecOps環境全体での課題の作成と更新** — IDEを離れることなくバグを報告し、チケットを更新できます。\n* **システム間の情報照合** — JiraのデータをGitLabのプロジェクト管理、マージリクエスト、パイプラインと組み合わせることで、全体的な可視性が得られます。\n* **コンテキスト切り替えの削減** — プロジェクト管理とのつながりを維持しながら、コードに集中できます。\n\nこの統合は、MCPの可能性を体現するものです。AIを通じてツールへの標準化されたセキュアなアクセスを提供し、ガバナンスやセキュリティを損なうことなく、開発者がより効率的に作業できる環境を実現します。\n\n\n## 関連リソース\n\n* [GitLab Duo Agent PlatformがModel Context Protocolのサポートを追加](https://about.gitlab.com/ja-jp/blog/duo-agent-platform-with-mcp/)\n\n* [Model Context Protocolとは](https://about.gitlab.com/topics/ai/model-context-protocol/)\n\n* [エージェント型AIのガイドとリソース](https://about.gitlab.com/ja-jp/blog/agentic-ai-guides-and-resources/)\n\n* [GitLab MCPクライアントのドキュメント](https://docs.gitlab.com/ja-jp/user/gitlab_duo/model_context_protocol/mcp_clients/)\n\n* [GitLab Duo Agent Platformを始める：完全ガイド](https://about.gitlab.com/ja-jp/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)",[674],"Albert Rabassa","2026-03-10","2026-03-05","GitLab Duo Agent Platformを拡張する：MCPであらゆるツールを接続",[17,19],"MCPを使用して外部ツールをGitLab Duo Agent Platformに接続する方法を解説します。3つの実践的なワークフローデモを含むステップバイステップのセットアップガイドです。",{"featured":12,"template":13,"slug":681},"extend-gitlab-duo-agent-platform-connect-any-tool-with-mcp",{"content":683,"config":694},{"heroImage":684,"body":685,"authors":686,"updatedDate":688,"date":689,"title":690,"tags":691,"description":693,"category":9},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772632341/duj8vaznbhtyxxhodb17.png","AIを活用したコーディングツールにより、開発者はこれまで以上に速くコードを生成できるようになりました。では、なぜチーム全体の *リリース速度* は上がらないのでしょうか？\n\nそれは、コーディングがソフトウェア提供ライフサイクルの20%に過ぎず、残りの80%がボトルネックになっているからです。コードレビューの滞留、セキュリティスキャンの遅れ、ドキュメントの陳腐化、手動の調整作業の増加が、チームの速度を妨げています。\n\n嬉しいことに、個人のコーディングを加速する同じAI機能を使って、チームレベルの遅延も解消できます。コーディングフェーズだけでなく、ソフトウェアライフサイクル全体にAIを適用することが重要です。\n\n以下は、[GitLab Duo Agent Platformプロンプトライブラリ](https://about.gitlab.com/gitlab-duo/prompt-library/)から厳選した、すぐに使える10のプロンプトです。個人の生産性が向上する一方でチームプロセスの改善が追いついていないときに生じる、よくある障害を乗り越えるために役立ちます。\n\n## コードレビューをボトルネックから加速装置へ\n\nAIの支援により開発者はマージリクエストをより速く作成できるようになりましたが、コードレビューのサイクルが数時間から数日に伸びるにつれ、人間のレビュアーはすぐに手に負えなくなります。AIは定型的なレビュー作業を担うことで、レビュアーが基本的な論理エラーやAPI契約違反の発見に時間を取られることなく、アーキテクチャやビジネスロジックに集中できるようにします。\n\n### マージリクエストの論理エラーをレビューする\n\n**複雑さ**: 初級\n\n**カテゴリ**: コードレビュー\n\n**ライブラリのプロンプト**:\n\n```text\nこのMRの論理エラー、エッジケース、潜在的なバグをレビューしてください: [MRのURLまたはコードを貼り付け]\n```\n\n**効果**: 自動リンターは構文エラーを検出しますが、論理エラーの発見にはコードの意図を理解する必要があります。このプロンプトは、人間のレビュアーがコードを確認する前にバグを検出し、複数回のレビューサイクルを多くの場合1回の承認で完結させます。\n\n### マージリクエストの破壊的変更を特定する\n\n**複雑さ**: 初級\n\n**カテゴリ**: コードレビュー\n\n**ライブラリのプロンプト**:\n\n```text\nこのMRに破壊的変更はありますか？\n\nChanges:\n[code diffを貼り付け]\n\n以下を確認してください：\n1. APIシグネチャの変更\n2. publicメソッドの削除またはリネーム\n3. 戻り値の型の変更\n4. データベーススキーマの変更\n5. 設定の破壊的変更\n```\n\n**効果**: デプロイ中に破壊的変更が発見されると、ロールバックやインシデントにつながります。このプロンプトにより、その発見をマージリクエストの段階に前倒しできるため、修正がより迅速かつ低コストになります。\n\n## セキュリティをシフトレフトしながら速度を落とさないには？\n\nセキュリティスキャンは数百件もの検出結果を生成します。開発者がデプロイの承認を待つ間、セキュリティチームはそれぞれを手動でトリアージしています。検出結果の多くはフォルスポジティブや低リスクの問題ですが、実際の脅威を特定するには専門知識と時間が必要です。AIは実際の悪用可能性に基づいて検出結果を優先順位付けし、一般的な脆弱性を自動修復することで、セキュリティチームが本当に重要な脅威に集中できるようにします。\n\n### セキュリティスキャン結果を分析する\n\n**複雑さ**: 中級\n\n**カテゴリ**: セキュリティ\n\n**エージェント**: Duo Security Analyst\n\n**ライブラリのプロンプト**:\n\n```text\n@security_analyst このセキュリティスキャン結果を分析してください:\n\n[スキャン結果を貼り付け]\n\n各検出結果について:\n1. 実際のリスクかフォルスポジティブかを評価する\n2. 脆弱性を説明する\n3. 修復方法を提案する\n4. 深刻度で優先順位をつける\n```\n\n**効果**: セキュリティスキャンの検出結果の多くはフォルスポジティブや低リスクの問題です。このプロンプトはセキュリティチームが本当に重要な検出結果に集中できるようにし、修復にかかる時間を数週間から数日に短縮します。\n\n### コードのセキュリティ問題をレビューする\n\n**複雑さ**: 中級\n\n**カテゴリ**: セキュリティ\n\n**エージェント**: Duo Security Analyst\n\n**ライブラリのプロンプト**:\n\n```text\n@security_analyst このコードのセキュリティ問題をレビューしてください:\n\n[コードを貼り付け]\n\n以下を確認してください：\n1. インジェクション脆弱性\n2. 認証・認可の欠陥\n3. データ漏洩リスク\n4. 安全でない依存関係\n5. 暗号化の問題\n```\n\n**効果**: 従来のセキュリティレビューはコードが書かれた後に行われます。このプロンプトにより、開発者はマージリクエストを作成する前にセキュリティ問題を発見・修正でき、デプロイを遅らせる往復のやり取りを解消します。\n\n## コードの変更に合わせてドキュメントを最新に保つには？\n\nコードはドキュメントよりも速く変化します。ドキュメントが古かったり不足していたりするため、新しい開発者のオンボーディングには数週間かかります。ドキュメントの重要性はチーム全員が理解していますが、締め切りが近づくと常に後回しになります。標準ワークフローの一部としてドキュメントの生成と更新を自動化することで、手動作業を増やすことなくドキュメントを最新の状態に保てます。\n\n### マージリクエストからリリースノートを生成する\n\n**複雑さ**: 初級\n\n**カテゴリ**: ドキュメント\n\n**ライブラリのプロンプト**:\n\n```text\nマージ済みのこれらのMRのリリースノートを生成してください:\n[MRのURL一覧またはタイトルを貼り付け]\n\n以下のカテゴリでグループ化してください:\n1. 新機能\n2. バグ修正\n3. パフォーマンス改善\n4. 破壊的変更\n5. 非推奨事項\n```\n\n**効果**: リリースノートを手動でまとめるには数時間かかり、誤りや漏れが生じることもあります。自動生成により、リリースプロセスに負担をかけることなく、すべてのリリースに包括的なノートが揃います。\n\n### コード変更後にドキュメントを更新する\n\n**複雑さ**: 初級\n\n**カテゴリ**: ドキュメント\n\n**ライブラリのプロンプト**:\n\n```text\nこのコードを変更しました:\n\n[コード変更内容を貼り付け]\n\nどのドキュメントを更新する必要がありますか？以下を確認してください:\n1. READMEファイル\n2. APIドキュメント\n3. アーキテクチャ図\n4. オンボーディングガイド\n```\n\n**効果**: ドキュメントの乖離は、コード変更後にどのドキュメントを更新すべきかをチームが忘れることで起きます。このプロンプトにより、ドキュメントのメンテナンスが後回しにされる別タスクではなく、開発ワークフローの一部になります。\n\n## 計画の複雑さを分解するには？\n\n大規模な機能は計画段階で行き詰まりがちです。チームは作業範囲の定義と依存関係の特定のために何週間も会議を重ねます。複雑さに圧倒され、どこから始めればよいかわからなくなります。AIは複雑な作業を具体的で実装可能なタスクに体系的に分解し、明確な依存関係と受け入れ基準を設定することで、何週間もの計画を集中した実装へと変えます。\n\n### エピックをイシューに分解する\n\n**複雑さ**: 中級\n\n**カテゴリ**: ドキュメント\n\n**エージェント**: Duo Planner\n\n**ライブラリのプロンプト**:\n\n```text\nこのエピックを実装可能なイシューに分解してください：\n\n[エピックの説明]\n\n以下を考慮してください：\n1. 技術的な依存関係\n2. 適切なイシューのサイズ\n3. 明確な受け入れ基準\n4. 論理的な実装順序\n```\n\n**効果**: このプロンプトにより、1週間分の計画会議が30分のAI支援による分解とチームレビューに変わります。チームはより明確な方向性を持って、より早く実装を開始できます。\n\n## 工数を増やさずにテストカバレッジを拡大するには？\n\n開発者はコードをより速く書けるようになりましたが、テストが追いつかないとカバレッジが低下してバグが見逃されます。包括的なテストを手動で書くには時間がかかり、締め切りのプレッシャーの下でエッジケースを見落とすことも多くあります。テストを自動生成することで、開発者はゼロから書く代わりにレビューと改善に集中でき、速度を犠牲にすることなく品質を維持できます。\n\n### ユニットテストを生成する\n\n**複雑さ**: 初級\n\n**カテゴリ**: テスト\n\n**ライブラリのプロンプト**:\n\n```text\nこの関数のユニットテストを生成してください：\n\n[関数を貼り付け]\n\n以下のテストを含めてください：\n1. 正常系\n2. エッジケース\n3. エラー条件\n4. 境界値\n5. 不正な入力\n```\n\n**効果**: テストを手動で書くには時間がかかり、エッジケースが見落とされることもあります。このプロンプトは数秒で網羅的なテストスイートを生成し、開発者はゼロから書く代わりにレビューと調整に集中できます。\n\n### テストカバレッジのギャップをレビューする\n\n**複雑さ**: 初級\n\n**カテゴリ**: テスト\n\n**ライブラリのプロンプト**:\n\n```text\n[モジュール/コンポーネント]のテストカバレッジを分析してください：\n\n現在のカバレッジ：[パーセンテージ]\n\n以下を特定してください：\n1. テストされていない関数・メソッド\n2. カバーされていないエッジケース\n3. 不足しているエラーシナリオのテスト\n4. テストのない統合ポイント\n5. 次にテストすべき優先領域\n```\n\n**効果**: このプロンプトは、本番インシデントを引き起こす前にテストスイートのブラインドスポットを明らかにします。チームはより重要な箇所から体系的にカバレッジを改善できます。\n\n## デバッグ時の平均解決時間を短縮するには？\n\n本番インシデントの診断には数時間かかります。顧客がダウンタイムを経験する中、開発者はログやスタックトレースを調べ続けます。デバッグの1分1分が、生産性と潜在的な収益の損失につながります。AIは複雑なエラーメッセージを解析して具体的な修正案を提示することで根本原因分析を加速し、診断時間を数時間から数分に短縮します。\n\n### 失敗したパイプラインをデバッグする\n\n**複雑さ**: 初級\n\n**カテゴリ**: デバッグ\n\n**ライブラリのプロンプト**:\n\n```text\nこのパイプラインが失敗しています：\n\nジョブ：[ジョブ名]\nステージ：[ステージ]\nエラー：[エラーメッセージ/ログを貼り付け]\n\n\n以下を助けてください:\n1. 根本原因を特定する\n2. 修正方法を提案する\n3. なぜ失敗し始めたかを説明する\n4. 同様の問題を防ぐ\n```\n\n**効果**: CI/CDの失敗はチーム全体をブロックします。このプロンプトは、開発者が通常15〜30分かけて調査する問題を数秒で診断し、デプロイの速度を維持します。\n\n## 個人の成果からチームの加速へ\n\nこれらのプロンプトは、チームがソフトウェア提供にAIを活用する方法の転換を示しています。個人の開発者生産性だけに注目するのではなく、チームの速度を実際に制約している調整・品質・ナレッジ共有の課題に対処します。\n\n[プロンプトライブラリ](https://about.gitlab.com/gitlab-duo/prompt-library/)には、計画、開発、セキュリティ、テスト、デプロイ、運用といったソフトウェアライフサイクルの全ステージにわたる100以上のプロンプトが収録されています。各プロンプトは複雑さのレベル（初級・中級・上級）でタグ付けされ、ユースケース別に分類されているため、チームに合ったスタート地点を簡単に見つけられます。\n\nまずはチームの最も緊急な課題に対応する「初級」タグのプロンプトから始めましょう。チームが自信をつけるにつれ、より高度なワークフローを実現する中級・上級のプロンプトへと探求の幅を広げてください。目標は単に速いコーディングではなく、計画から本番まで、より速く、より安全で、より高品質なソフトウェア提供の実現です。",[687],"Chandler Gibbons","2026-03-13","2026-03-04","チームのソフトウェア提供を加速する10のAIプロンプト",[16,692],"DevOps platform","ソフトウェアライフサイクル全体をカバーするすぐに使えるAIプロンプトで、レビューの滞留、セキュリティの遅延、調整の手間を解消します。",{"featured":12,"template":13,"slug":695},"10-ai-prompts-to-speed-your-teams-software-delivery",{"content":697,"config":707},{"heroImage":698,"body":699,"authors":700,"updatedDate":675,"date":702,"title":703,"tags":704,"description":706,"category":9},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772195014/ooezwusxjl1f7ijfmbvj.png","Anthropicは先ごろ、脆弱性の検出と修正案の提示を行うAIシステム「Claude Code Security」を発表しました。投資家がAIによる従来のAppSecツールの代替可能性に疑問を持ち始めたことで市場はすぐに反応し、セキュリティ関連銘柄が下落しました。多くの人の頭にある問いは同じです。AIがコードを記述してセキュリティを担保できるなら、アプリケーションセキュリティは時代遅れになるのか、という問いです。\n\nセキュリティがコードのスキャンのみを意味するなら、答えはイエスかもしれません。しかし、エンタープライズセキュリティは検出だけを目的としたものではありません。\n\n組織が問うているのは、AIが脆弱性を発見できるかどうかではありません。はるかに難しい3つの問いがあります。\n\n* リリースしようとしているものは安全か  \n* 環境が変化し、依存関係、サードパーティサービス、ツール、インフラが絶えず移り変わる中で、リスク体制は変化していないか  \n* AIやサードパーティのソースによって構成される割合が増え、依然として説明責任を負うコードベースをどのようにガバナンスするか\n\nこれらの問いにはプラットフォームとしての答えが必要です。検出はリスクを可視化しますが、何をすべきかを決めるのはガバナンスです。\n\n[GitLab](https://about.gitlab.com/ja-jp/)は、ソフトウェアライフサイクルをエンドツーエンドでガバナンスするために構築されたオーケストレーションレイヤーです。AIを活用した開発スピードに対応するために必要な、ポリシー適用、可視性、監査証跡をチームに提供します。\n\n## AIを信頼するにはリスクのガバナンスが必要\n\nAIシステムは脆弱性の特定と修正提案の能力を急速に向上させています。これは重要かつ歓迎すべき進歩ですが、分析は説明責任とは異なります。\n\nAIは単独で会社のポリシーを適用したり、許容リスクを定義したりすることはできません。エージェントが運用される境界、ポリシー、ガードレールを設定するのは人間です。職務の分離を確立し、監査証跡を確保し、何千ものリポジトリとチームにわたって一貫したコントロールを維持するのも人間の役割です。エージェントへの信頼は自律性だけから生まれるのではなく、人間が設定した明確に定義されたガバナンスから生まれます。\n\nソフトウェアがエージェント型AIシステムによってますます記述・変更される[エージェント型AIの世界](https://about.gitlab.com/ja-jp/topics/agentic-ai/)では、ガバナンスの重要性は低下するどころか、むしろ高まります。組織がAIに与える自律性が高まれば高まるほど、ガバナンスはより強固でなければなりません。\n\nガバナンスは摩擦ではありません。AIを活用した開発を大規模に信頼できるものにするための基盤です。\n\n## LLMはコードを見るが、プラットフォームはコンテキストを見る\n\n大規模言語モデル（[LLM](https://about.gitlab.com/blog/what-is-a-large-language-model-llm/)）はコードを単体で評価します。一方、エンタープライズのアプリケーションセキュリティプラットフォームはコンテキストを理解します。リスクの判断はコンテキストに依存するため、この違いは重要です。\n\n* 変更を加えたのは誰か  \n* そのアプリケーションはビジネスにとってどれほど重要か  \n* インフラや依存関係とどのように連携しているか  \n* その脆弱性は本番環境で実際に到達可能なコードに存在するのか、それとも一度も実行されない依存関係に埋もれているのか  \n* アプリケーションの実行方法、API、その周辺環境を踏まえると、本番環境で実際に悪用可能か\n\nセキュリティの判断はこのコンテキストに基づきます。コンテキストがなければ、検出はノイズの多いアラートを生み出し、リスクを低減するどころか開発を遅延させます。コンテキストがあれば、組織はトリアージを迅速に行い、リスクを効果的に管理できます。ソフトウェアが変化し続ける中でコンテキストも絶えず変化するため、ガバナンスは一度きりの判断では済みません。\n\n## 静的スキャンは動的リスクに追いつかない\n\nソフトウェアのリスクは動的です。依存関係は変わり、環境は変化し、システムはいかなる単一の分析でも完全には予測できない方法で相互作用します。ある時点でのクリーンなスキャンが、リリース時の安全性を保証するわけではありません。\n\nエンタープライズセキュリティが依拠するのは継続的な保証です。ソフトウェアのビルド、テスト、デプロイの過程でリスクを評価する、開発ワークフローに直接組み込まれたコントロールが必要です。\n\n検出は洞察を提供します。ガバナンスは信頼を提供します。そして、組織が大規模に安全にリリースできるようにするのが、継続的なガバナンスです。\n\n## エージェント型AIの未来をガバナンスする\n\nAIはソフトウェアの作り方を根本から変えつつあります。もはや問いはチームがAIを活用するかどうかではなく、いかに安全にスケールさせるかです。\n\n今日のソフトウェアは記述されるのと同じくらい組み立てられています。AIが生成したコード、オープンソースライブラリ、何千ものプロジェクトにまたがるサードパーティの依存関係から構成されているのです。それらすべてのソースにわたってリリースするものをガバナンスすることは、アプリケーションセキュリティの中で最も困難かつ重大な部分であり、いかなる開発者向けツールも対処するように設計されていない部分です。\n\nインテリジェントなオーケストレーションプラットフォームとして、GitLabはこの問題に対処するために構築されています。GitLab Ultimateは、ソフトウェアの計画、ビルド、リリースが行われるワークフローに、ガバナンス、ポリシー適用、セキュリティスキャン、監査証跡を直接組み込んでいます。これにより、セキュリティチームはAIのスピードに合わせてガバナンスを実現できます。\n\nAIは開発を劇的に加速させるでしょう。AIから最大の恩恵を受ける組織は、最も優秀なアシスタントを持つ組織ではなく、強固なガバナンスを通じて信頼を構築した組織です。\n\n> GitLabが組織による[AIが生成したコードのガバナンスと安全なリリース](https://about.gitlab.com/ja-jp/solutions/software-compliance/?utm_medium=blog&utm_campaign=eg_global_x_x_security_en_)をどのように支援しているかについては、[今すぐチームにお問い合わせください](https://about.gitlab.com/ja-jp/sales/?utm_medium=blog&utm_campaign=eg_global_x_x_security_en_)\n\n\n ## 関連記事\n\n - [DevOpsとAIを統合してセキュリティを強化する](https://about.gitlab.com/ja-jp/topics/devops/ai-enhanced-security/)\n - [セキュリティリーダーのためのGitLab AIセキュリティフレームワーク](https://about.gitlab.com/blog/the-gitlab-ai-security-framework-for-security-leaders/)\n - [コンポジットIDでGitLabのAIセキュリティを強化する](https://about.gitlab.com/blog/improve-ai-security-in-gitlab-with-composite-identities/)",[701],"Omer Azaria","2026-02-27","AIは脆弱性を検出できる—では、誰がリスクに責任を持つのか？",[16,705],"security","AIを活用した脆弱性検出は急速に進化していますが、ポリシーの適用、ガバナンス、サプライチェーンセキュリティという難題には、包括的なプラットフォームが必要です。",{"featured":29,"template":13,"slug":708},"ai-can-detect-vulnerabilities-but-who-governs-risk",{"promotions":710},[711,724,736],{"id":712,"categories":713,"header":714,"text":715,"button":716,"image":721},"ai-modernization",[9],"Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":717,"config":718},"Get your AI maturity score",{"href":719,"dataGaName":720,"dataGaLocation":244},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":722},{"src":723},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":725,"categories":726,"header":728,"text":715,"button":729,"image":733},"devops-modernization",[17,727],"devsecops","Are you just managing tools or shipping innovation?",{"text":730,"config":731},"Get your DevOps maturity score",{"href":732,"dataGaName":720,"dataGaLocation":244},"/assessments/devops-modernization-assessment/",{"config":734},{"src":735},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":737,"categories":738,"header":739,"text":715,"button":740,"image":744},"security-modernization",[705],"Are you trading speed for security?",{"text":741,"config":742},"Get your security maturity score",{"href":743,"dataGaName":720,"dataGaLocation":244},"/assessments/security-modernization-assessment/",{"config":745},{"src":746},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"header":748,"blurb":749,"button":750,"secondaryButton":754},"今すぐ開発をスピードアップ","DevSecOpsに特化したインテリジェントオーケストレーションプラットフォームで実現できることをご確認ください。\n",{"text":47,"config":751},{"href":752,"dataGaName":50,"dataGaLocation":753},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/ja-jp/","feature",{"text":52,"config":755},{"href":54,"dataGaName":55,"dataGaLocation":753},1773871239498]