fix(init): reframe Next Steps panel around install workflows (#603)#649
fix(init): reframe Next Steps panel around install workflows (#603)#649sergio-sisternes-epam wants to merge 4 commits intomicrosoft:mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Fixes the apm init -> apm run start onboarding flow by ensuring a runnable starter prompt exists and updating the printed Next Steps to match the intended workflow.
Changes:
- Create
start.prompt.mdduringapm initfor non-plugin projects (without overwriting existing files). - Update the Next Steps panel to remove the unrelated
apm compilestep and direct users to editstart.prompt.md. - Update and add unit tests, and add a changelog entry for the fix.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
src/apm_cli/commands/init.py |
Creates start.prompt.md, updates Created Files output, and fixes Next Steps messaging. |
tests/unit/test_init_command.py |
Updates existing init tests and adds new coverage for the starter prompt and next-steps output. |
tests/unit/test_init_plugin.py |
Adds coverage ensuring plugin mode does not create start.prompt.md. |
CHANGELOG.md |
Adds an Unreleased “Fixed” entry describing the init onboarding fix. |
2cc1d57 to
c668556
Compare
There was a problem hiding this comment.
Thanks for tackling #603 — the bug is real and the current Next Steps panel is genuinely broken (verified locally). Requesting changes because the shape of the fix conflicts with PR #18's design contract, and there's a cleaner reframe that resolves #603 without reintroducing scaffolding.
The conflict with PR #18
PR #18 established that apm init is brownfield-clean / npm-parity: it does NOT scaffold content files into the repo. The contract is "one apm.yml, nothing else." Re-adding start.prompt.md creation — even with brownfield-safety guards — silently reverses that decision and re-opens the scaffolding question we deliberately closed.
The right reframe
The bug isn't "we forgot to create start.prompt.md." It's "the panel teaches a workflow (apm run start) that doesn't match where APM's value lands today." Drop apm run start from the panel entirely; that's the source of the dead-end. Reframe around the install workflow, which is what 5 rounds of multi-PM panel research converged on as the actual high-value first-touch.
Recommended panel (every command verified working in a sandbox against current main):
Next Steps:
* Install a skill: apm install github/awesome-copilot/skills/documentation-writer
* Install a marketplace plugin: apm marketplace add github/awesome-copilot && apm install frontend-web-dev@awesome-copilot
* Install a versioned package: apm install microsoft/apm-sample-package#v1.0.0
* Author your own plugin: apm pack --format plugin
Docs: https://microsoft.github.io/apm | Star: https://github.com/microsoft/apm
Per-line role:
- L1: virtual-path moat (any skill from any GitHub repo, no manifest required) — what no competitor can do
- L2: industry parity (brew-tap / VS Code / Claude marketplace 2-step), chained as one user action so it's a complete demo
- L3: supply-chain story —
#v1.0.0shows version pinning, and this install demonstrates transitive deps live (verified: pullsawesome-copilot/skills/review-and-refactorautomatically). This is whereapm.ymlformat earns its keep - L4: authoring entrypoint — turns consumers into producers
- Footer: community CTA following the bun/uv/deno pattern
Three different verbs (Install / Install / Author) so the eye doesn't glaze on lines that all look the same.
Asks to land this in this PR
- Drop the
start.prompt.mdcreation logic (the write path and brownfield-safety guards). Honor the PR #18 contract. - Replace the Next Steps panel with the v5 shape above.
- Drop
apm run startfrom the panel. It's the source of the dead-end. Theapm runworkflow stays valid in docs; it's not the first-touch surface today. - Keep your test additions — the panel-content tests are still valuable; just update assertions to match the new lines.
- While you're in there, also fix the related doc drift in
docs/src/content/docs/introduction/key-concepts.md:16anddocs/src/content/docs/getting-started/first-package.md— both still reference scaffolded.apm/trees that haven't existed since PR #18.
Happy to pair on the rewrite or take it on directly if you'd prefer. The bug is real, the fix is owed to the user, and your investigation pinpointed exactly what's broken — we just need to land it in a way that honors PR #18.
…ft#649) - Drop start.prompt.md creation logic (apm init creates only apm.yml) - Replace Next Steps panel with install/marketplace/plugin workflows - Remove dead-end "apm run start" reference - Update tests to match new panel content - Fix doc drift in key-concepts.md and first-package.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#603) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ft#649) - Drop start.prompt.md creation logic (apm init creates only apm.yml) - Replace Next Steps panel with install/marketplace/plugin workflows - Remove dead-end "apm run start" reference - Update tests to match new panel content - Fix doc drift in key-concepts.md and first-package.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
d3d2fbd to
7448f60
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Comments suppressed due to low confidence (1)
CHANGELOG.md:31
- This changelog line says "no extra files are created besides
apm.yml", butapm init --pluginstill createsplugin.jsonin addition toapm.yml. Suggest narrowing the statement (e.g., "default init creates onlyapm.yml") so it stays accurate across flags.
--plugin mode also creates plugin.json, so qualify the statement. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
Fixes the broken
apm initNext Steps panel that referencedapm compileandapm run start— workflows that don't match where APM's value lands today.Changes
start.prompt.mdcreation — honours the PR Refactorapm initto minimal-only mode (breaking change) #18 contract thatapm initis brownfield-clean and creates onlyapm.ymlapm run startfrom the panel entirely — that was the source of the dead-endkey-concepts.mdandfirst-package.md— removed stale.apm/scaffold trees that haven't existed since PR Refactorapm initto minimal-only mode (breaking change) #18Closes #603