公開:2026年1月14日

18分で読めます

GitLab Duo Agent Platformのカスタマイズ:チャットルール、プロンプト、ワークフロー

GitLab Duo Agent Platformをチームのワークフローに合わせてカスタマイズする方法を学びます。チャットルールの設定、システムプロンプトの作成、エージェントツールのセットアップ、特定のニーズに合わせたフローの調整を行います。

8部構成ガイド「GitLab Duo Agent Platformを始める」のパート8へようこそ。開発ライフサイクル内でのAIエージェントとワークフローの構築・デプロイをマスターします。最初の対話から完全カスタマイズ可能なプロダクション対応の自動化ワークフローまで、段階的なチュートリアルに従ってください。

この記事の内容:

  • カスタマイズの紹介
  • エージェントの動作をカスタマイズ
  • MCPで機能を拡張
  • カスタムエージェントとフローの作成

🎯 今すぐGitLab Duo Agent Platformをお試しください!

カスタマイズの紹介

GitLab Duo Agent Platformは、すぐに強力な機能を提供し、チームの特定のニーズに合わせて調整することで、さらに大きな価値を引き出すことができます。GitLabは、複数のレベルで柔軟なカスタマイズオプションを提供します。

  • ユーザーレベル: すべてのプロジェクトに適用される個人設定(カスタムルール、AGENTS.md、MCP設定)
  • ワークスペースレベル: プロジェクト固有の設定(カスタムルール、AGENTS.md、MCP設定)
  • プロジェクトレベル: 特定のプロジェクト内で作成・管理するカスタムエージェントとフロー

パート1:エージェントの動作をカスタマイズ

カスタムルール

カスタムルールは、エージェントとフローに指示を提供し、繰り返しを必要とせずにチーム全体で一貫した動作を保証します。たとえば、開発スタイルガイドやテストの実行方法などです。

IDEワークスペースまたはユーザー設定ディレクトリに移動します。

ユーザーレベルのカスタムルール

ユーザーレベルのルールは、すべてのプロジェクトとワークスペースに適用されます。

ユーザーレベルのカスタムルールの作成に関する詳細な手順については、GitLabドキュメントを参照してください。 ホームディレクトリにファイルを作成~/.gitlab/duo/chat-rules.mdルールの例:

      - すべての関数にJSDocコメントを含める
- 文字列には単一引用符を使用
- リポジトリ内の既存のコードスタイルに従う
- 簡潔な説明を記述し、長い説明は避ける
- コード変更にはテストを提案
- Promiseの代わりにasync/awaitを使用

    

ワークスペースレベルのカスタムルール

ワークスペースルールは特定のプロジェクトにのみ適用されます。そのプロジェクトのユーザーレベルのルールを上書きします。

プロジェクトルートにファイルを作成.gitlab/duo/chat-rules.md

Vue.jsプロジェクトのルール例:

      - `<script setup>`でVue 3 Composition APIを使用
- プロップには常にTypeScript型を含める
- SCSSでスコープ付きスタイルを使用
- Slippers UIデザインシステムに従う
- コンポーネントは300行未満に保つ
- コンポーネント名にはケバブケースを使用
- アクセシビリティ属性を含める(aria-*、role)

    

カスタムルールのベストプラクティス

  • 具体的にする:「単一引用符を使用」は「スタイルガイドに従う」よりも優れています。
  • 優先順位をつける: 最も重要なルールをリストの最初に来るようにします。
  • チーム重視: ルールは個人の好みではなく、チームの標準を反映する必要があります。
  • 実行可能: ルールはAIエージェントが従うのに十分明確である必要があります。
  • 保守可能: 標準が変更されたらルールを更新します。
  • 競合を避ける: コードベースの実際のスタイルと矛盾しないようにします。

ヒント: コードオーナーを使用して、.gitlab/duo/chat-rules.mdへの変更を承認するユーザーを管理します。

カスタムルールの詳細なユースケースチュートリアルについては、Custom rules in GitLab Duo Agentic Chat for greater developer efficiency deep-diveのブログを参照してください。

エージェントの動作をカスタマイズするAGENTS.md

AGENTS.mdは、エージェントの動作をカスタマイズするための業界標準ファイルです。エージェント自体を変更することなく、チャット会話、基本フロー、カスタムフロー内でエージェントがどのように動作すべきかを定義できます。

カスタムルールとの違い: AGENTS.mdは、すべてのエージェントとフロー(基盤とカスタム)によって使用されます。また、外部エージェントとしてのClaude Codeなど、他のAIツールが使用できる業界標準に従います。複数のコンテキストに指示を適用したい場合は、AGENTS.mdを使用します。

ユーザーレベル(すべてのプロジェクトとワークスペースに適用):

  • macOS/Linux:~/.gitlab/duo/AGENTS.md
  • Windows:%APPDATA%\GitLab\duo\AGENTS.md

ワークスペースレベル(特定のプロジェクトに適用):

  • プロジェクトルートにAGENTS.mdを作成。

サブディレクトリレベル(モノレポの特定のディレクトリに適用):

  • コンテキスト固有の指示のためにサブディレクトリにAGENTS.mdを作成。

仕組み:

  • ユーザーレベルのAGENTS.mdは、すべてのプロジェクトにグローバルに適用されます。
  • ワークスペースレベルのAGENTS.mdは、特定のプロジェクトに適用されます。
  • サブディレクトリレベルのAGENTS.mdファイルは、コードベースの特定の部分のコンテキストを提供します。
  • エージェントとフローは、適用可能なすべてのレベルからの指示を組み合わせます。
  • 新しく追加または更新されたAGENTS.md指示には、新しいフローのトリガー、または(カスタム)エージェントとの新しいチャットの開始が必要です。

AGENTS.mdが制御するもの

  • エージェントの個性とトーン
  • プロジェクト固有の指示
  • コーディング標準と規約
  • ツール使用の設定
  • 出力フォーマット要件
  • リポジトリ構造と組織

AGENTS.mdの例

      # プロジェクトのエージェントカスタマイズ
## 一般的なガイドライン
- 常にスピードよりもコード品質を優先
- プロジェクトのアーキテクチャパターンに従う
- 変更を提案する際は既存のコード例を参照
- 要件が曖昧な場合は明確化を求める
## コードスタイル
- すべての新しいコードにTypeScriptを使用
- プロジェクト内のESLint設定に従う
- すべての新しい関数にユニットテストを含める
- わかりやすい変数名を使用(ループを除いて単一文字は使用しない)
## ドキュメント
- すべてのパブリック関数にJSDocコメントを追加
- 新機能を追加する場合はREADME.mdを更新
- コードコメントに例を含める
## セキュリティ
- シークレットやAPIキーのハードコーディングを提案しない
- 常にユーザー入力を検証
- データベース操作にはパラメータ化クエリを使用
- 潜在的なセキュリティ問題を即座にフラグ

    

AGENTS.mdのベストプラクティス

  • 具体的にする: プロジェクトの具体例を含めます。
  • 簡潔に保つ: プロジェクトに固有のものに焦点を当てます。
  • バージョン管理: リポジトリにコミットして変更を追跡します。
  • チームの整合性: 最終化する前にチームと話し合います。
  • 定期的に更新: プロジェクトの進化に合わせて改善します。
  • リポジトリ構造を文書化: エージェントがコードベースの組織を理解できるようにします。

要件

  • GitLab 18.8以降
  • VS Code用: GitLab Workflow拡張機能6.60以降
  • JetBrains用: GitLabプラグイン3.26.0以降
  • フロー用: user_ruleコンテキストにアクセスするためにフロー設定を更新

AGENTS.mdの詳細を見る

カスタムレビュー指示

カスタムレビュー指示は、コードレビュー基本フローに特定のガイドラインを提供します。指示により、一貫したコードレビュー標準が保証され、プロジェクト内の特定のファイルタイプに合わせて調整できます。

プロジェクトルートにファイルを作成.gitlab/duo/mr-review-instructions.yaml

レビュー指示の例:

      instructions:
  - name: Ruby Style Guide
    fileFilters:
      - "*.rb"           # ルートディレクトリのRubyファイル
      - "lib/**/*.rb"    # libとそのサブディレクトリのRubyファイル
      - "!spec/**/*.rb"  # テストファイルを除外
    instructions: |
      1. すべてのメソッドに適切なドキュメントがあることを確認
      2. Rubyスタイルガイドの規約に従う
      3. ハッシュキーには文字列よりもシンボルを優先

  - name: TypeScript Source Files
    fileFilters:
      - "**/*.ts"        # 任意のディレクトリのTypeScriptファイル
      - "!**/*.test.ts"  # テストファイルを除外
    instructions: |
      1. 適切なTypeScript型を確保('any'は避ける)
      2. 命名規則に従う
      3. 複雑な関数を文書化


    

カスタムレビュー指示のベストプラクティス:

  • 具体的で実行可能にする: 明確で番号付きの指示が最適です。
  • globパターンを使用: fileFiltersで特定のファイルタイプをターゲットにします。
  • 重要な標準に焦点を当てる: 最も重要なレビューポイントを優先します。
  • 「理由」を説明: レビュアーが推論を理解できるようにします。
  • パターンをテスト: globパターンが意図したファイルと一致することを確認します。

ヒント: コードオーナーを使用して、.gitlab/duo/mr-review-instructions.yamlへの変更を保護します。

詳細なセットアップ手順と例については、カスタムレビュー指示のドキュメントを参照してください。

パート2:MCPで機能を拡張

Model Context Protocol(MCP)により、エージェントはJira、Slack、AWSなどの外部システムにアクセスできます。このセクションでは、エージェント機能を拡張するためのMCP設定について説明します。

🎯 今すぐ試す: MCPのインタラクティブデモ - Model Context Protocolの使用方法を探索します。

外部統合のためのMCP設定

Model Context Protocol(MCP)により、エージェントはJira、Slack、AWSなどの外部システムにアクセスできます。

スコープ: ユーザーレベル(すべてのワークスペースに適用)またはワークスペースレベル(プロジェクト固有、ユーザー設定を上書き)

ユーザー設定を作成:

  • macOS/Linux: ~/.gitlab/duo/mcp.json
  • Windows: C:\Users\<username>\AppData\Roaming\GitLab\duo\mcp.json
  • VS Code: コマンドGitLab MCP: Open User Settings (JSON)を実行

ワークスペース設定を作成:

  • ファイルを作成: プロジェクトルートに.gitlab/duo/mcp.json

ベストプラクティス:

  • セキュリティ第一: プレーンテキストパスワードトークンではなく、OAuthを必要とするMCPサーバーを使用します。
  • 最小スコープ: 実際に使用して信頼するMCPサーバーのみを有効にします。
  • ローカルでテスト: チーム全体で共有する前に、MCP接続と認証が機能することを確認します。
  • 統合を文書化: 各MCPサーバーが提供するものを説明します。
  • バージョン管理: コードオーナーの承認を得て.gitlab/duo/mcp.jsonに設定を保存します。

詳細なセットアップ手順と設定例については、パート7: Model Context Protocol統合を参照してください。

パート3:カスタムエージェントとフローの作成

カスタムエージェントとフローにより、チームの特定のワークフローを自動化できます。カスタマイズに入る前に、それらが何であり、どのように機能するかを理解することが役立ちます。GitLab Duo Agent Platformを始めるガイドの以下のパートが役立ちます。

  • パート3: エージェントを理解する — 基本、カスタム、外部エージェントについて、各タイプをいつ使用するかを学びます。
  • パート4: フローを理解する — フローが複数のエージェントを調整して複雑な問題を解決する方法を発見します。
  • パート5: AIカタログ — 組織全体でエージェントとフローを検索、作成、共有する方法を学びます。 基本を理解したら、このセクションでは詳細なガイドへのリンク付きでカスタマイズオプションの概要を提供します。

カスタムエージェント用のシステムプロンプト

システムプロンプトは、エージェントの個性、専門知識、動作を定義します。適切に作成されたプロンプトにより、エージェントがより効果的になり、チームのニーズに合致します。

システムプロンプトとは? システムプロンプトは、エージェントにどのように動作するか、どのような専門知識を持っているか、リクエストにどのように応答するかを指示する指示です。カスタムエージェントの動作の基盤です。

強力なシステムプロンプトの主要要素:

  • 役割定義: エージェントが何であり、何をするか
  • 専門分野: 特定のドメインまたはテクノロジー
  • 動作ガイドライン: どのように対話して応答するか
  • 出力形式: 応答の構造
  • 制約: 何を避けるべきか

ベストプラクティス:

  • 詳細にする: より具体的なプロンプトがより良い結果を生み出します。
  • 例を使用: エージェントに良い出力がどのようなものかを示します。
  • スコープを定義: エージェントが何をすべきか、何をすべきでないかを明確に述べます。
  • 反復的にテスト: エージェントの動作に基づいてプロンプトを改善します。
  • バージョン管理:リポジトリでプロンプトの変更を追跡します。

システムプロンプトの作成とカスタムエージェントの作成に関する詳細なガイダンスについては、パート3: エージェントを理解するを参照してください。

カスタムエージェントとフロー

学習内容が多岐にわたるため、チュートリアルは複数に分割されています。

カスタムエージェント:

カスタムフロー:

エージェントツール:

  • ツールは、エージェントが実行できるアクションを決定します。エージェントの目的とセキュリティ要件に基づいてツールを設定します。
  • ツール設定の詳細については、パート3: エージェントを理解するを参照してください。

クイックリファレンス:カスタマイズを使用するタイミング

ツール最適な用途場所
カスタムルールIDEでのチャット応答のガイド(トーン、スタイル、動作)~/.gitlab/duo/chat-rules.md(ユーザー)または.gitlab/duo/chat-rules.md(ワークスペース)
AGENTS.mdチャット、フロー、その他のAIツール全体での標準の実施~/.gitlab/duo/AGENTS.md(ユーザー)またはAGENTS.md(ワークスペースルート)
カスタムレビュー指示特定のファイルタイプのコードレビュー標準のガイド.gitlab/duo/mr-review-instructions.yaml(ワークスペースのみ)
システムプロンプト個別のエージェント動作のカスタマイズエージェント作成時のAIカタログ
MCP設定エージェントを外部ツールに接続~/.gitlab/duo/mcp.json(ユーザー)または.gitlab/duo/mcp.json(ワークスペース)
カスタムエージェントチーム固有のタスク用の専門エージェントの作成自動化 → エージェントまたはAIカタログ
カスタムフローワークフローでの複数エージェントのオーケストレーション自動化 → フローまたはAIカタログ

次のステップ

おめでとうございます!GitLab Duo Agent Platformシリーズ全体を完了しました。次のことを理解しました。

  • ユースケースに合わせてSDLC全体でエージェントとフローを使用する方法
  • AIカタログでソリューションを発見して共有する方法
  • AIワークフローを監視して管理する方法
  • MCP統合で機能を拡張する方法
  • チームのためにGitLab Duo Agent Platformのあらゆる側面をカスタマイズする方法

シリーズ概要に戻り、すべてのパートの確認や特定のトピックの詳細をご覧いただけます。

関連リンク


前へ:パート7: Model Context Protocol統合

シリーズの最初に戻る:完全なシリーズ概要

ご意見をお寄せください

このブログ記事を楽しんでいただけましたか?ご質問やフィードバックがあればお知らせください。GitLabコミュニティフォーラムで新しいトピックを作成してあなたの声を届けましょう。

フィードバックを共有する

より優れたソフトウェアをより速く提供

インテリジェントなDevSecOpsプラットフォームで

チームの可能性を広げましょう。