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
آخر نشاط في المصدر
٢٠ سبتمبر ٢٠٢٦ في ١٩:٤٣
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٨٤
التفرعات
١٠٦

خيارات التثبيت

يُحدَّد 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