用途:此技能把公开的 microsoft/discovery GitHub 仓库中的智能体加入当前工作区。每个 agents/<name>/ 子文件夹就是一个智能体,内容含 agent.yaml、metadata.yaml、README.md 与 tools/<工具名>/(Dockerfile、tool.yaml 等)。本地目录 discovery_catalog/<name>/ 与上游结构一一对应,因此添加智能体本质是直接复制文件夹。
主要能力与部署目标:用户先选部署目标。目标一为本地 Copilot:为每个智能体生成 .github/agents/<name>.agent.md 伴随文件,使其可经 runSubagent 作为 Copilot 子代理调用;工具容器镜像仅首次调用时本地惰性构建。目标二为 Microsoft Discovery + Azure(来自上游):先用 GetDiscoveryTool 针对工作区资源组预检智能体声明的每个工具;若工具 ARM 资源已存在(例如 mdqacr 等注册表上的共享目录镜像),则完全跳过 Docker 构建、ACR 推送和 AcrPull RBAC,直接绑定已有 ARM ID;若工具缺失,则用 az acr build 构建并推送、注册工具 ARM、授予 AcrPull,随后经 UpsertAgent 在目标 Discovery 项目中创建智能体,并轮询 GetAgent 直到 provisioningState=Succeeded。本地 Discovery 运行时注册为可选项,默认跳过。目标三为本地应用 → Microsoft Discovery + Azure(提升):把已加入本地 Copilot 应用的智能体注册到指定 Discovery 项目,以本地文件夹为准,不重新获取或刷新上游仓库,保留本地修改;工具容器从本地构建上下文或已构建镜像推送到 ACR,再以相同方式创建并轮询。
使用方式:先定位含顶层 discovery_catalog/ 的工作区根目录,并以 .github/agents/*.agent.md 判定本地已添加的智能体。确认公开 GitHub 访问后,用浅稀疏克隆获取 agents/ 目录(失败时依次回退到完整浅克隆和 GitHub REST API)。注意该仓库公开,不要求 gh 或任何 GitHub 令牌。克隆后构建目录索引(名称、标签、描述首句、关联工具数),并经 vscode_askQuestions 让用户选择部署目标、确认 Discovery 工作区与项目(仅云类目标)、选择智能体(全部/指定/按组)。云部署步骤会安装 Discovery MCP 代理脚本到 .vscode/,并通过提取的 Invoke-DiscoveryMcp 调用 ListWorkspaces、ListProjects、ListAgents、GetDiscoveryTool、ListChatModelDeployments、UpsertAgent、GetAgent 等;多行 PowerShell 应写入临时 .ps1 文件执行。智能体不是 ARM 资源类型,只能经 MCP 服务器的接口操作;工作区与项目使用 Microsoft.Discovery 提供程序(api-version 2026-06-01),优先用 MCP 列表调用以避免版本漂移。
适用场景:需要从公开目录批量或挑选性引入 Discovery 智能体到本地 Copilot 或云端 Discovery 项目;把本地已调试的智能体提升部署到 Azure 项目;对含容器工具的智能体做工具预检并复用已有镜像。
限制:运行本技能需 git 与访问 github.com;云类目标另需 az CLI 与登录会话、docker CLI、ACR 写权限及 MCP 可达性。其他环境细节、收费与价格信息资料暂未提供。