Describe the bug
copilot plugin marketplace add reports success, but the marketplace registration is never persisted anywhere on disk. A subsequent copilot plugin marketplace list (even in the same command chain / immediately after) does not show the newly added marketplace, and copilot plugin marketplace browse <name> fails with Marketplace "<name>" not found.
This reproduces both for a local directory marketplace and a GitHub-hosted marketplace, so it does not appear to be specific to local-path or git-auth handling (unlike #4103).
Environment
- GitHub Copilot CLI: 1.0.74 (latest at time of filing)
- OS: Windows 11 (PowerShell 7 / native)
- Marketplace manifest: valid
.claude-plugin/marketplace.json at repo root (per docs, this location is supported)
Steps to reproduce
# Local directory marketplace with a valid .claude-plugin/marketplace.json
copilot plugin marketplace add C:\Git\Agentic
copilot plugin marketplace list
copilot plugin marketplace browse company-skills
# Also reproduces with a GitHub-hosted marketplace
copilot plugin marketplace add anthropics/claude-code
copilot plugin marketplace list
Actual result
Marketplace "company-skills" added successfully.
...but copilot plugin marketplace list afterward only shows the two built-in marketplaces:
Included with GitHub Copilot:
- copilot-plugins (GitHub: github/copilot-plugins)
- awesome-copilot (GitHub: github/awesome-copilot)
And:
Fetching plugins from marketplace "company-skills"...
Failed to browse marketplace: Error: Marketplace "company-skills" not found
repro-marketplace.zip
Confirmed via Compare-Object of a full recursive file listing under ~/.copilot, %LOCALAPPDATA%, and %APPDATA% before/after running add — no files are created or modified anywhere as a result of the command, despite the CLI reporting success.
Expected result
copilot plugin marketplace add should persist the marketplace registration so that a subsequent list/browse in a new process reflects it, matching the documented behavior in https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/plugins-finding-installing.
Additional context
Possibly related to #3403 (~/.copilot/config.json being overwritten/reset on session start, dropping previously-written keys like hooks) — if marketplace registrations are also expected to live in config.json, the same overwrite-on-start bug could explain why the registration never survives past the single add invocation.
--- This report was investigated and drafted by GitHub Copilot CLI (Claude Sonnet 5).
Additional notes: name of marketplace changed for to company-skills. Additional details
Describe the bug
copilot plugin marketplace addreports success, but the marketplace registration is never persisted anywhere on disk. A subsequentcopilot plugin marketplace list(even in the same command chain / immediately after) does not show the newly added marketplace, andcopilot plugin marketplace browse <name>fails withMarketplace "<name>" not found.This reproduces both for a local directory marketplace and a GitHub-hosted marketplace, so it does not appear to be specific to local-path or git-auth handling (unlike #4103).
Environment
.claude-plugin/marketplace.jsonat repo root (per docs, this location is supported)Steps to reproduce
Actual result
...but
copilot plugin marketplace listafterward only shows the two built-in marketplaces:And:
repro-marketplace.zip
Confirmed via
Compare-Objectof a full recursive file listing under~/.copilot,%LOCALAPPDATA%, and%APPDATA%before/after runningadd— no files are created or modified anywhere as a result of the command, despite the CLI reporting success.Expected result
copilot plugin marketplace addshould persist the marketplace registration so that a subsequentlist/browsein a new process reflects it, matching the documented behavior in https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/plugins-finding-installing.Additional context
Possibly related to #3403 (
~/.copilot/config.jsonbeing overwritten/reset on session start, dropping previously-written keys likehooks) — if marketplace registrations are also expected to live inconfig.json, the same overwrite-on-start bug could explain why the registration never survives past the singleaddinvocation.--- This report was investigated and drafted by GitHub Copilot CLI (Claude Sonnet 5).
Additional notes: name of marketplace changed for to company-skills. Additional details