Load Aspire skills catalog from bundle manifest#17553
Open
IEvangelist wants to merge 3 commits into
Open
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 17553Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 17553" |
Contributor
There was a problem hiding this comment.
Pull request overview
Updates aspire agent init to treat the Aspire skills bundle manifest (skill-manifest.json) as the source of truth for bundle-backed skills, so the interactive catalog doesn’t drift behind microsoft/aspire-skills.
Changes:
- Load skill definitions dynamically from the resolved Aspire skills bundle manifest and reuse that resolved bundle for installation.
- Adjust default-skill selection so standalone/
aspire newno longer preselectaspireify, whileaspire initstill does. - Update tests and localized help text to reflect dynamic bundle-backed skills plus CLI-defined skills.
Reviewed changes
Copilot reviewed 25 out of 26 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/Aspire.Cli.Tests/TestServices/FakePlaywrightServices.cs | Extends the fake bundle manifest to include additional bundle-defined skills for test coverage. |
| tests/Aspire.Cli.Tests/Commands/NewCommandTests.cs | Updates assertions for new default-skill behavior and uses shared skill-name constants. |
| tests/Aspire.Cli.Tests/Commands/InitCommandTests.cs | Updates selection logic to find skills by name rather than static instances. |
| tests/Aspire.Cli.Tests/Commands/AgentInitCommandTests.cs | Adds/updates tests for manifest-driven skill catalog and revised defaults. |
| tests/Aspire.Cli.Tests/Agents/CommonAgentApplicatorsTests.cs | Updates tests to distinguish CLI-defined skills from bundle-defined skills. |
| tests/Aspire.Cli.Tests/Agents/AspireSkillsInstallerTests.cs | Aligns installer tests with manifest-sourced bundle skill definitions. |
| tests/Aspire.Cli.Tests/Agents/AspireSkillsBundleTests.cs | Adds coverage for enumerating manifest skills and updates existing bundle tests. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.zh-Hant.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.zh-Hans.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.tr.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.ru.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.pt-BR.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.pl.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.ko.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.ja.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.it.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.fr.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.es.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.de.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/xlf/AgentCommandStrings.cs.xlf | Updates localized --skills help text to mention dynamic bundle skills. |
| src/Aspire.Cli/Resources/AgentCommandStrings.resx | Updates --skills option description text. |
| src/Aspire.Cli/Resources/AgentCommandStrings.Designer.cs | Updates generated resource accessor doc comment for the changed string. |
| src/Aspire.Cli/Commands/InitCommand.cs | Uses agent-init default mode that includes aspireify for the init flow and checks selection by name. |
| src/Aspire.Cli/Commands/AgentInitCommand.cs | Adds manifest-sourced skill loading, default-mode handling, and bundle reuse during install. |
| src/Aspire.Cli/Agents/SkillDefinition.cs | Removes hardcoded bundle skill entries; introduces bundle-skill factory, name checks, and name-based equality. |
| src/Aspire.Cli/Agents/AspireSkills/AspireSkillsBundle.cs | Exposes manifest skill definitions and validates manifest skill descriptions. |
Files not reviewed (1)
- src/Aspire.Cli/Resources/AgentCommandStrings.Designer.cs: Language not supported
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
|
❌ CLI E2E Tests failed — 105 passed, 2 failed, 2 unknown (commit Failed Tests
View all recordings
📹 Recordings uploaded automatically from CI run #26536316589 |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
aspire agent initnow loads bundled Aspire skills from the resolved Aspire skills bundle manifest before prompting for which skills to install. This prevents the CLI prompt from drifting behind themicrosoft/aspire-skillsrelease bundle: bundle-backed skills such asaspire-init,aspire-monitoring, andaspire-orchestrationcan now surface fromskill-manifest.jsonwithout adding new hardcoded CLI catalog entries.The CLI still appends local-only skills such as
playwright-clianddotnet-inspect, and it reuses the resolved bundle for installation instead of resolving it a second time. The standalone andaspire newdefault selections no longer preselect the one-timeaspireifyskill, whileaspire initstill preselects it for the existing-workspace Aspire setup flow.User-facing usage
Users can install every resolved skill with:
They can also select a bundle-defined skill by manifest name:
Command help now reflects that bundle-backed skills are loaded dynamically:
Validation
Fixes #17551
Checklist
<remarks />and<code />elements on your triple slash comments?