Skip to content

plugin update and reinstall do not pull fresh code on Windows — restores from local cache instead #3627

Open

Description

@ben-ripley

Environment

  • OS: Windows
  • Copilot CLI version: 1.0.57
  • Reproduced with plugin: https://github.com/upld-internal/burnrate-copilot.git

Description

On Windows, Copilot CLI stores installed plugins in two locations:

  • %USERPROFILE%\.copilot\installed-plugins\_direct\<slug>\
  • %LOCALAPPDATA%\copilot\marketplaces\<slug>\

Running /plugin update <name>, or uninstalling and reinstalling, does not re-clone from GitHub. It restores files from the %LOCALAPPDATA%\copilot\marketplaces\<slug>\ cache. Plugin updates are never applied.

Steps to reproduce

  1. Install a plugin: /plugin install https://github.com/upld-internal/burnrate-copilot.git
  2. Push a change to the plugin's GitHub repo
  3. Run /plugin update burnrate-copilot (or uninstall and reinstall)
  4. Check file timestamps: dir "%USERPROFILE%\.copilot\installed-plugins\_direct\https---github-com-upld-internal-burnrate-copilot-git\scripts\"
  5. Files retain the original install timestamp — updated code is never pulled

Expected behavior

/plugin update re-clones or pulls from GitHub and installs the latest code.

Actual behavior

Both cache directories retain the original install content. Even after manually deleting installed-plugins\_direct\<slug>\ and reinstalling, files are restored from the marketplaces cache rather than fetched from GitHub.

Workaround

Manually delete both cache directories before reinstalling:

%USERPROFILE%\.copilot\installed-plugins\_direct\<slug>
%LOCALAPPDATA%\copilot\marketplaces\<slug>

Activity

  1. added
    area:pluginsPlugin system, marketplace, hooks, skills, extensions, and custom agents
    area:platform-windowsWindows-specific: PowerShell, cmd, Git Bash, WSL, Windows Terminal
    on Jun 2, 2026
  2. added theissue type on Jun 2, 2026
  3. spaltrowitz commented on Jul 1, 2026

    @spaltrowitz

    Confirming this reproduces on macOS + the GitHub Copilot app too — not Windows-specific.

    Same root cause: plugin update restores from the local marketplace cache rather than re-fetching from GitHub, so a version bump in the repo is never picked up. The only thing that pulls fresh code is copilot plugin marketplace update <marketplace> (or deleting the cache dir) followed by reinstall — plugin update alone is a no-op.

    Real-world impact: a teammate installed our plugin, we shipped fixes, and plugin update reported "already at latest" while serving stale content — they had no signal they were behind. Worth surfacing an actionable hint (or having plugin update re-fetch the marketplace) so consumers aren't silently stale. Related: #3331 (auto-update flag).

  4. patniko commented on Oct 26, 2026

    @patniko
    Collaborator

    Thanks for the report. We've shipped fixes in this area since this was filed (most recently in Copilot CLI v1.0.81), and we believe this may now be resolved. Could you retest on the latest release (Copilot CLI v1.0.103) and let us know whether you still see it? If we don't hear back in a couple of weeks, we may close this issue — you can always reopen it.

    Triaged as part of a Copilot SDK backlog review, with help from GitHub Copilot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:platform-windowsWindows-specific: PowerShell, cmd, Git Bash, WSL, Windows Terminalarea:pluginsPlugin system, marketplace, hooks, skills, extensions, and custom agentsmore-info-needed

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions