-
Notifications
You must be signed in to change notification settings - Fork 156
feat: experimental support for Microsoft 365 Copilot Cowork custom skills #913
Copy link
Copy link
Closed
Labels
area/multi-targetMulti-target deploy spec, target directory creation, agent surface routing.Multi-target deploy spec, target directory creation, agent surface routing.experimentalpriority/highShips in current or next milestoneShips in current or next milestonestatus/acceptedDirection approved, safe to start work.Direction approved, safe to start work.status/triagedInitial agentic triage complete; pending maintainer ratification (silence = approval).Initial agentic triage complete; pending maintainer ratification (silence = approval).theme/portabilityOne manifest, every target. Multi-target deploy, marketplace, packaging, install.One manifest, every target. Multi-target deploy, marketplace, packaging, install.type/featureNew capability, new flag, new primitive.New capability, new flag, new primitive.
Milestone
Metadata
Metadata
Assignees
Labels
area/multi-targetMulti-target deploy spec, target directory creation, agent surface routing.Multi-target deploy spec, target directory creation, agent surface routing.experimentalpriority/highShips in current or next milestoneShips in current or next milestonestatus/acceptedDirection approved, safe to start work.Direction approved, safe to start work.status/triagedInitial agentic triage complete; pending maintainer ratification (silence = approval).Initial agentic triage complete; pending maintainer ratification (silence = approval).theme/portabilityOne manifest, every target. Multi-target deploy, marketplace, packaging, install.One manifest, every target. Multi-target deploy, marketplace, packaging, install.type/featureNew capability, new flag, new primitive.New capability, new flag, new primitive.
Type
Projects
Status
Done
Summary
Microsoft 365 Copilot Cowork (Frontier preview) discovers custom skills from
<OneDrive>/Documents/Cowork/skills/<name>/SKILL.md. The format is identical to APM's existing agentskills.ioSKILL.mdspec, so APM users on Frontier could one-shot-deploy their APM skills to Cowork — today they copy files by hand.This issue tracks adding a first-class, experimentally-gated
coworktarget soapm install --target cowork --globalwrites skills straight into the OneDrive-synced folder.Upstream reference: https://learn.microsoft.com/en-us/microsoft-365/copilot/cowork/use-cowork#create-custom-skills
Design decisions (agreed)
coworkincore/experimental.py::FLAGS(off by default)KNOWN_TARGETS, infra fields always present but inert; user-observable behaviour strictly flag-gated~/Library/CloudStorage/OneDrive-*) and Windows (ONEDRIVEenv); Linux env-var-only;APM_COWORK_SKILLS_DIRoverride--global); project-scope errors cleanlycoworktarget, never auto-detected, opt-in only[!]warningSKILL.md> 1 MB; install proceedsArchitectural changes (high level)
coworkinsrc/apm_cli/core/experimental.py.src/apm_cli/integration/cowork_paths.py— pure-function OneDrive resolver withvalidate_path_segments+ensure_path_withinguards.user_root_resolver: Callable[[], Path | None]field onTargetProfile; only set by thecoworkprofile.BaseIntegrator.validate_deploy_path/get_integration_prefixesfor dynamic-root profiles.coworkentry inKNOWN_TARGETS(skills-only primitive allow-list).active_targets*: requires flag on, requires user scope, requires resolver to return a path; never auto-detected.SkillIntegratorfor 50-skill and 1-MB caps.docs/src/content/docs/integrations/cowork.md.Non-goals
Acceptance
apm experimental enable coworkregisters the flag.apm install --target coworkprints a targeted enable hint and is a no-op.apm install --target cowork --globaldeploysSKILL.mdto the resolved OneDrive directory; non-skill primitives are skipped with one summary warning.--global, project-scope is cleanly rejected.APM_COWORK_SKILLS_DIRoverride is path-safety validated.Plan
Plan exists in session workspace and is being executed in worktree
feat/cowork-skillsoffupstream/main. PR will be opened as draft againstupstream/mainonce implementation, tests, and docs are complete and the review panel has signed off.