You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CLI/unit and E2E-project builds passed. Focused Windows and Linux runs cover settings preservation, concurrent content and permission changes, ACLs, linked files, and project overrides of global plugin enablement. Interactive output was previously checked at wide and narrow widths. macOS execution, WSL Bash tests, Linux E2E execution, and full-repository validation were not run.
Validation commands and results
CLI/unit and E2E-project builds were rerun for the permission fix: passed, zero warnings/errors. The localization refresh previously passed.
Windows regression run: passed, 1,335 passed / 0 failed / 11 platform or privilege skips. The unchanged Bash tests are excluded because they require WSL-compatible source paths.
Linux ARM64 (WSL), using the matching .NET 11 RC2 runtime: passed, 16 publication tests / 0 failed / 2 Windows-only skips; passed, 5 project-override command tests / 0 failed. The new regressions cover mode tightening and ACL revocation without changing file contents or, in the ACL case, the Unix mode.
Both default catalog URLs point into main/opencode/, but the published microsoft/aspire-skills main tree currently has no opencode/ directory. Fresh native OpenCode setup therefore reports success while registering a source that cannot supply Aspire skills. Publish the V1/V2 catalogs at these paths, or use an available supported catalog, before enabling this setup path. Verify that OpenCode can discover skills from the published source; the configuration snapshots alone do not establish that.
First enabled entry ignores higher-precedence disable settings
Returning on the first enabled entry ignores higher-precedence disables. For example, if user settings enable Aspire but .claude/settings.local.json disables it, project-scoped embedded setup still fails with “The Aspire plugin is already enabled.” Both Claude Code and Copilot use this helper. Resolve effective activation using the client's settings precedence and requested installation scope before rejecting embedded setup, and add a user-true/project-false regression test.
With ~/.copilot/settings.json enabling aspire@aspire-skills and the project's .github/copilot/settings.json disabling it, project-scoped Embedded setup is still rejected: this helper returns on the user-level true before reading the project override. The plugin is disabled for this project, so the conflict message's advice to disable it does not unblock setup. Resolve effective enablement using the client's precedence rules and selected scope before rejecting Embedded setup. Add a regression that enables the plugin globally, disables it in the project, and successfully installs embedded skills only in that project.
Revalidate observed settings and policy fragments under a shared lease, then publish permission-preserving atomic replacements for plugin, MCP and hook settings. Resolve effective plugin enablement for the selected scope and add focused regression coverage.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds guided Aspire plugin setup for GitHub Copilot, Claude Code, and OpenCode through
aspire agent init.Policy-managed clients require manual plugin setup.
Fixes #20247.
Screenshots / Recordings
Validation
CLI/unit and E2E-project builds passed. Focused Windows and Linux runs cover settings preservation, concurrent content and permission changes, ACLs, linked files, and project overrides of global plugin enablement. Interactive output was previously checked at wide and narrow widths. macOS execution, WSL Bash tests, Linux E2E execution, and full-repository validation were not run.
Validation commands and results
CLI/unit and E2E-project builds were rerun for the permission fix: passed, zero warnings/errors. The localization refresh previously passed.
Windows regression run: passed, 1,335 passed / 0 failed / 11 platform or privilege skips. The unchanged Bash tests are excluded because they require WSL-compatible source paths.
Linux ARM64 (WSL), using the matching .NET 11 RC2 runtime: passed, 16 publication tests / 0 failed / 2 Windows-only skips; passed, 5 project-override command tests / 0 failed. The new regressions cover mode tightening and ACL revocation without changing file contents or, in the ACL case, the Unix mode.
Checklist
<remarks />and<code />elements on your triple slash comments?