Skip to main content

cowork-plugin-engineer

Use this skill whenever a user asks to create, import, repair, authenticate, package, validate, sideload, evaluate, upgrade, or troubleshoot a Microsoft Copilot Cowork plugin containing Agent Skills or remote Model Context Protocol (MCP) connectors.

ソース情報

リポジトリ
microsoft/cat-agent-skills
ソースの最終更新活動
2026年9月20日 19:43
検出された SKILL.md の言語
英語
スター
84
フォーク
106

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
18 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
cowork-plugin-engineer
description
Use this skill whenever a user asks to create, import, repair, authenticate, package, validate, sideload, evaluate, upgrade, or troubleshoot a Microsoft Copilot Cowork plugin containing Agent Skills or remote Model Context Protocol (MCP) connectors.
# Copilot Cowork Plugin Engineer Build upload-ready Cowork plugins with deterministic validation. Treat the Microsoft 365 app package, its authentication configuration, and its deployment as separate gates. ## Mandatory workflow 1. Read [package-contract.md](references/package-contract.md). 2. Search current Microsoft Learn documentation before choosing a manifest version or making rollout, preview, authentication, or licensing claims. For a manifest baseline upgrade, follow [manifest-upgrade-instructions.md](assets/manifest-upgrade-instructions.md). 3. Inspect the source without modifying it. Detect: - Native Microsoft 365 app package - Claude, Cursor, or Agent Plugin package - Skills-only folder - Existing Agents Toolkit project 4. Choose the workflow: - New project: use `scripts/new_cowork_plugin_project.py`. - Open plugin import: follow [import-and-normalization.md](references/import-and-normalization.md). - Existing project: validate before editing. - Existing ZIP: use `scripts/test_cowork_plugin_package.py`; never extract an untrusted archive without its path and expansion safeguards. 5. If an MCP connector is present: - Discover tools through `initialize`, `notifications/initialized`, and `tools/list`; never invent tool names or schemas. - Read [authentication.md](references/authentication.md). - Reject unresolved OAuth placeholders before producing a deployable ZIP. 6. When a source project exists, run `scripts/test_cowork_plugin.py`, then build through `scripts/build_cowork_plugin.py`. This uses Microsoft 365 Agents Toolkit (`atk`) for both packaging and package validation. 7. For a ZIP-only request, do not run project validation or rebuild it. Treat the ZIP accepted by `scripts/test_cowork_plugin_package.py` as the final package candidate. 8. Return the exact path of the built or successfully validated ZIP. 9. When evaluations are requested, read [evaluations.md](references/evaluations.md) and use `scripts/new_cowork_plugin_evals.py`. Treat generated cases as drafts until every placeholder has an approved expected response. 10. Sideload or deploy only when the user explicitly asks. Keep tenant-wide deployment approval-gated. ## Non-negotiable gates - Never modify an imported source tree; import from a temporary staging copy. - Never call a package deployable while OAuth `referenceId` contains a placeholder. - Never place secrets, tokens, client secrets, or API keys in a manifest, skill, script, or ZIP. - A registered skill folder contains exactly one root `SKILL.md`. Nested companion documents must use another filename such as `REFERENCE.md` or `CAPABILITY.md`. - Skill frontmatter `name` must be lowercase kebab-case and match its folder. - `manifest.json` must be at the ZIP root with no wrapper directory. Referenced assets may use nested paths, but must resolve within the package. - Preserve the manifest application ID across upgrades and increment the package version. - Do not use raw `Compress-Archive` as the final acceptance gate. - Do not fabricate a successful MCP connection from package validation; authentication and allowed-client configuration must also succeed. ## Standard commands Use `python3` in the Cowork Linux runtime and on Linux/macOS. On Windows, replace `python3` with `py -3`. Keep each command on one line so it works without shell-specific continuation syntax. ```sh # Validate a project without building. python3 scripts/test_cowork_plugin.py --project-path <project> # Validate an existing ZIP without trusting its contents. python3 scripts/test_cowork_plugin_package.py --package-path <package.zip> # Insert the Teams Developer Portal OAuth client registration ID. python3 scripts/set_cowork_oauth_reference.py --project-path <project> --connector-id <connector-id> --oauth-configuration-id <generated-id> # Build and validate the upload package. python3 scripts/build_cowork_plugin.py --project-path <project> # Generate a draft behavioral evaluation suite. python3 scripts/new_cowork_plugin_evals.py --project-path <project> ``` ## Troubleshooting Read [troubleshooting.md](references/troubleshooting.md) and map the observed HTTP status, endpoint, and response body to a specific layer: 1. Package/manifest 2. OAuth configuration lookup 3. User sign-in or consent 4. MCP allowed-client policy 5. MCP protocol handshake 6. Tool invocation Do not repeatedly retry configuration errors. ## Dynamic Microsoft documentation | Topic | Search | |---|---| | Current Cowork package schema | `microsoft_docs_search(query="Build plugins for Copilot Cowork manifest validation rules")` | | Connector authentication | `microsoft_docs_search(query="Cowork MCP OAuthPluginVault authentication configuration")` | | Agents Toolkit commands | `microsoft_docs_search(query="Microsoft 365 Agents Toolkit CLI import openplugin package validate")` | | Dataverse MCP setup | `microsoft_docs_search(query="Dataverse MCP remote endpoint allowed clients Entra app")` | | Evaluation dataset schema | `microsoft_docs_search(query="Microsoft 365 Copilot Agent Evaluations CLI dataset schema test design")` | If Learn MCP tools are unavailable, use: | MCP tool | CLI equivalent | |---|---| | `microsoft_docs_search` | `npx --yes @microsoft/learn-cli search "<query>"` | | `microsoft_docs_fetch` | `npx --yes @microsoft/learn-cli fetch "<url>"` | | `microsoft_code_sample_search` | `npx --yes @microsoft/learn-cli code-search "<query>" --language <language>` | ## References - [Package contract](references/package-contract.md) - [Authentication](references/authentication.md) - [Import and normalization](references/import-and-normalization.md) - [Evaluation design](references/evaluations.md) - [Troubleshooting](references/troubleshooting.md)
GitHubで見る