mcpField
I
int-project-context

int-project-context

github.com/microsoftエージェントワークフロー483106 回インストール1 日前に更新
リポジトリ

int-project-context について

Copilot Studio の Agent プロジェクト向けに、共通の開発コンテキストを示すスキルです。プロジェクト構成、スキーマとコネクターの検索スクリプト、YAML 作成・編集時の規約を説明します。

主な機能

  1. 01プロジェクト構成と YAML ファイルの説明
  2. 02スキーマ検索スクリプトの使い方
  3. 03コネクター検索スクリプトの使い方
  4. 04編集時に専用スキルを優先
  5. 05ID と Power Fx の規約を提示

活用シーン

  1. 01Copilot Studio プロジェクト構成の把握
  2. 02YAML 作成前のスキーマ確認
  3. 03コネクター操作の入出力の検索

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/microsoft/skills-for-copilot-studio --skill int-project-context

インストール後、Claude Code で/int-project-contextを入力して読み込まれたか確認します。

詳細

Copilot Studio — 共有プロジェクトコンテキスト

Copilot Studio エージェントのプロジェクト内で作業しています。すべての YAML ファイルの拡張子は .mcs.yml です。

プロジェクト構成

<agent-dir>/           # Auto-discover via Glob: **/agent.mcs.yml
├── agent.mcs.yml      # Agent metadata (display name, schema version)
├── settings.mcs.yml   # Agent settings (schemaName, GenerativeActionsEnabled, instructions)
├── topics/            # Conversation topics (AdaptiveDialog YAML files)
├── actions/           # Connector-based actions (TaskDialog YAML files)
├── knowledge/         # Knowledge sources (KnowledgeSourceConfiguration YAML files)
├── variables/         # Global variables (GlobalVariableComponent YAML files)
└── agents/            # Child agents (AgentDialog YAML files, each in its own subfolder)

スキーマ参照スクリプト

新しい YAML ファイルを作成するときは、必須フィールド、定義、参照を含むスキーマを理解するため、必ずスキーマ参照スクリプトを使用してください。スクリプトは ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js にあります。次のようにターミナルで使用できます。

node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js search trigger             # Search by keyword
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js lookup SendActivity        # Look up a definition
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js resolve AdaptiveDialog     # Resolve with $refs
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js kinds                      # List all valid kind values
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js summary Question           # Compact overview
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js validate <file.yml>        # Validate a YAML file

調べたい定義がすでにわかっている場合は、lookup を使用してください。特定のトピック周辺のスキーマを調べたい場合は、search または summary を使用してください。 YAML を作成する前に必ずスキーマを確認し、すべての必須フィールドを含め、有効な値を使用してください。

スキーマファイル全体(reference/bot.schema.yaml-authoring.json)を読み込まないでください。長すぎます。必ず上記のスクリプトを使用してください。

コネクタ参照スクリプト

コネクタ参照スクリプトは ${CLAUDE_SKILL_DIR}/../../scripts/connector-lookup.bundle.js にあります。コネクタ、アクション、それらの入力や出力について確認する場合は、必ず使用してください。

node ${CLAUDE_SKILL_DIR}/../../scripts/connector-lookup.bundle.js list                                 # List all connectors with operation counts
node ${CLAUDE_SKILL_DIR}/../../scripts/connector-lookup.bundle.js operations <connector>               # List operations for a connector
node ${CLAUDE_SKILL_DIR}/../../scripts/connector-lookup.bundle.js operation <connector> <operationId>  # Full details of one operation (inputs/outputs)
node ${CLAUDE_SKILL_DIR}/../../scripts/connector-lookup.bundle.js search <keyword>                     # Search operations across all connectors

<connector> は API 名(shared_office365)または表示名の一部(outlook)で照合します。

使用する場面:利用可能なコネクタ、アクションの入力/出力、利用可能な操作を確認する必要がある場合に使用します。エージェント内のアクション YAML ファイルに表示されるのは、設定済みの入力のみです。connector-lookup では、利用可能な入力と出力をすべて含む、コネクタの完全な定義を確認できます。

スキル優先ルール(非常に重要)

YAML の作成、編集、検証、テストに対応する専用スキルを利用できます。手作業で行わず、必ず対応するスキルを呼び出してください。 スキルには正しいテンプレート、スキーマ検証、パターンが含まれています。手作業では、誤った kind: の値を推測したり、必須フィールドを見落としたり、YAML を壊したりするおそれがあります。 スキルの例として、新しいトピックの作成には /copilot-studio:new-topic、コネクタのアクションやツールの追加には /copilot-studio:add-action、YAML ファイルの検証には /copilot-studio:validate などがあります。

対応するスキルがない場合に限り、手作業で進めてください。その場合も、必ず最後に /copilot-studio:validate で検証してください。

主な規約

  • エージェントの検出:エージェント名をハードコードしないでください。必ず Glob: **/agent.mcs.yml を使用してください。
  • ID の生成:ランダムな英数字を使用し、プレフィックスの後に 6~8 文字を付けます(例:sendMessage_g5Ls09)。
  • テンプレートの _REPLACE:プレースホルダー ID の _REPLACE は、必ず一意なランダム ID に置き換えてください。
  • Power Fx:式は = で始めます。文字列の補間には {} を使用します。サポートされている関数のみを使用してください(int-reference スキルを確認してください)。
  • 生成的オーケストレーション:GenerativeActionsEnabled: true の場合、ハードコードされた質問/メッセージではなく、トピックの入力/出力を使用してください。

コメント