azure-hosted-copilot-sdk

azure-hosted-copilot-sdk

熱門

在 Azure 上建置、部署及修改 GitHub Copilot SDK 應用程式。當程式碼庫的 package.json 包含 @github/copilot-sdk 或 CopilotClient 時為強制使用。偵測到 copilot-sdk 標記時優先於 azure-prepare。使用時機:copilot SDK、@github/copilot-sdk、copilot 驅動的應用程式、建置 copilot 應用程式、準備 copilot 應用程式、為 copilot 應用程式新增功能、修改 copilot 應用程式、BYOM、自帶模型、CopilotClient、createSession、sendAndWait、azd init copilot。請勿用於:部署已準備好的 copilot-sdk 應用程式(請用 azure-deploy)、不含 copilot SDK 的一般網頁應用程式(請用 azure-prepare)、Copilot Extensions、Foundry 代理程式(請用 microsoft-foundry)。

1196星標
196分支
更新於 2026/6/9
SKILL.md
唯讀
名稱
azure-hosted-copilot-sdk
描述

在 Azure 上建置、部署及修改 GitHub Copilot SDK 應用程式。當程式碼庫的 package.json 包含 @github/copilot-sdk 或 CopilotClient 時為強制使用。偵測到 copilot-sdk 標記時優先於 azure-prepare。使用時機:copilot SDK、@github/copilot-sdk、copilot 驅動的應用程式、建置 copilot 應用程式、準備 copilot 應用程式、為 copilot 應用程式新增功能、修改 copilot 應用程式、BYOM、自帶模型、CopilotClient、createSession、sendAndWait、azd init copilot。請勿用於:部署已準備好的 copilot-sdk 應用程式(請用 azure-deploy)、不含 copilot SDK 的一般網頁應用程式(請用 azure-prepare)、Copilot Extensions、Foundry 代理程式(請用 microsoft-foundry)。

GitHub Copilot SDK on Azure

程式碼庫偵測 — 強制優先檢查

⚠️ 重要:當存在現有程式碼庫時,此檢查必須在任何其他技能(azure-prepare、azure-deploy 等)之前執行。

偵測程序(針對任何建置/修改/新增功能/準備提示立即執行):

  1. 讀取工作區根目錄的 package.json(以及一層深度的 */package.json
  2. 檢查 namedependenciesdevDependencies 中是否包含 @github/copilot-sdkcopilot-sdk
  3. 若在 package.json 中未找到,則掃描 .ts.js 檔案中是否有 CopilotClientcreateSession
  4. 若發現任何標記 → 以此技能作為進入點。不要直接路由到 azure-prepare 或 azure-deploy — 此技能會將它們作為子技能進行協調。
標記 檢查位置
@github/copilot-sdk package.json 的 dependencies 或 devDependencies
copilot-sdk package.json 的 name 或 dependencies
CopilotClient 原始碼檔案(.ts.js
createSession + sendAndWait 原始碼檔案(.ts.js

偵測到標記時必須觸發此技能的通用提示:

提示模式(不含「copilot」關鍵字) 為何使用此技能
「建置此應用程式」/「為 Azure 準備此應用程式」 程式碼庫包含 @github/copilot-sdk — 需要 SDK 感知的 scaffolding
「為此應用程式新增功能」 需要 SDK 感知的實作模式
「更新此應用程式」/「修改此應用程式」 必須保留 SDK 整合模式

⚠️ 警告: 任何針對現有程式碼庫的建置、修改、新增功能或準備提示,若程式碼庫包含 @github/copilot-sdk,即使提示未提及「copilot」,也必須路由到此技能。此技能隨後會協調 azure-prepare 和 azure-deploy 作為子技能。

⚠️ 讓位給 azure-deploy: 當程式碼庫已有 .azure/deployment-plan.md 且使用者想要部署(而非修改或新增功能)時,請改為路由到 azure-deploy。此技能負責準備;azure-deploy 負責執行。

步驟 1:路由

使用者需求 動作
建置新專案(空專案) 步驟 2A(scaffold)
為現有儲存庫新增 SDK 服務 步驟 2B(並行 scaffold)
將現有 SDK 應用程式部署到 Azure 步驟 2C(為現有 SDK 應用程式新增基礎架構)
修改/為現有 SDK 應用程式新增功能 使用程式碼庫上下文 + SDK 參考來實作
為現有應用程式程式碼新增 SDK 整合 SDK
使用 Azure/自有模型 步驟 3(BYOM 設定)

步驟 2A:Scaffold 新專案(Greenfield)

azd init --template azure-samples/copilot-sdk-service

範本包含 API(Express/TS)+ Web UI(React/Vite)+ 基礎架構(Bicep)+ Dockerfile + Token 腳本 — 請勿重新建立。請參閱 SDK 參考

步驟 2B:為現有儲存庫新增 SDK 服務

使用者已有現有程式碼,並希望在其旁邊新增一個新的 Copilot SDK 服務。將範本 scaffold 到暫存目錄,將 API 服務 + 基礎架構複製到使用者的儲存庫中,調整 azure.yaml 以同時包含現有服務和新服務。請參閱 部署現有參考

步驟 2C:部署現有 SDK 應用程式

使用者已有可運作的 Copilot SDK 應用程式,並需要 Azure 基礎架構。請參閱 部署現有參考

步驟 3:模型設定

三種模型路徑(疊加在 2A/2B 之上):

路徑 設定
GitHub 預設 不傳入 model 參數 — SDK 選擇預設模型
GitHub 特定 model: "<name>" — 使用 listModels() 來探索
Azure BYOM model + provider 搭配 bearerToken,透過 DefaultAzureCredential

⚠️ BYOM 驗證 — 強制: Azure BYOM 設定必須使用 DefaultAzureCredential(本機開發)或 ManagedIdentityCredential(生產環境)來取得 bearerToken。唯一支援的驗證模式是 provider 設定中的 bearerToken。請參閱 auth-best-practices.md 了解憑證模式,以及 model config ref 了解完整的 BYOM 程式碼範例。

請參閱 model config ref

步驟 4:部署

依序呼叫 azure-prepare(跳過其步驟 0 路由 — scaffolding 已完成)→ azure-validateazure-deploy

規則

  • 在修改前讀取使用者儲存庫中的 AGENTS.md
  • 需要 Docker(docker info
  • BYOM 驗證:僅支援透過 DefaultAzureCredentialManagedIdentityCredentialbearerToken — 不支援其他驗證模式