Skip to content

Releases: CTOUT/vscode-copilot-sync

v2.2.0 — Plugin support, -Update/-Category params, alphabetical ordering

21 May 07:51

Choose a tag to compare

What's New in v2.2.0

Plugin Support

Full lifecycle management for the new plugins/ category in github/awesome-copilot. Plugins are curated bundles of agents, skills, and a plugin.json manifest for tools like Claude Code.

  • sync-awesome-copilot.ps1 now sparse-checks out plugins/ by default
  • init-repo.ps1 has a full plugin picker with install/uninstall support
  • update-repo.ps1 handles plugin stale-checks and updates
  • Plugin manifests install to .github/plugin/<name>/plugin.json (namespaced to avoid collisions)

Smart Plugin Recommendations

Build-PluginCatalogue reads each plugin's plugin.json keywords array and extracts tokens from bundled agent/skill names as ExtraKeywords. These feed Measure-ItemRelevance (+2 per match), so plugins like azure-cloud-development are correctly starred ★ on Azure/IaC repos even when the plugin name alone gives insufficient signal.

-Update Shortcut

.\configure.ps1 -Update                        # sync + update all subscriptions
.\configure.ps1 -Update -Scope repo            # repo subscriptions only
.\configure.ps1 -Update -Category "agents"     # specific category only
.\configure.ps1 -Update -Force                 # skip confirmation prompts (CI-friendly)

-Category Filter

All five scripts now accept -Category as a comma-separated list to process only the named resource types:

.\configure.ps1 -Category "hooks,workflows"
.\scripts\init-repo.ps1 -Category "agents,instructions"
.\scripts\update-repo.ps1 -Category "plugins"

-Force Flag

Suppresses the interactive "apply updates?" confirmation in update scripts — useful for scripted/CI runs.

Alphabetical Category Ordering

All category lists, operation sequences, and text outputs now use consistent alphabetical order: agents → hooks → instructions → plugins → skills → workflows. This affects picker execution order, default param values, prompt strings, and all documentation.

.gitignore Update

.github/plugin/ added alongside the other awesome-copilot-sourced folders so installed plugin manifests are never accidentally committed.


QA Checklist

  • .\configure.ps1 — full interactive flow (sync + user + repo)
  • .\configure.ps1 -Update — update-only shortcut, no pickers shown
  • .\configure.ps1 -Update -Scope repo -Category "agents" — scoped + filtered update
  • .\configure.ps1 -Update -Force — no confirmation prompt
  • .\scripts\init-repo.ps1 — plugin picker appears; install a plugin; check components distributed correctly
  • .\scripts\update-repo.ps1 — plugin stale-check and update works
  • Plugin recommendation scoring — Azure/IaC repo stars azure-cloud-development
  • Category picker order in init-repo.ps1 — Agents → Hooks → Instructions → Plugins → Skills → Workflows

v2.1.0 - Unified uninstall, Bootstrap, auto-manifest detection

01 May 15:56

Choose a tag to compare

What's New

Breaking change

-Uninstall (bare switch) and -UninstallUser have been removed from configure.ps1. Replace with:

powershell .\configure.ps1 -Uninstall repo # was: -Uninstall .\configure.ps1 -Uninstall user # was: -UninstallUser .\configure.ps1 -Uninstall both # new — removes both in one pass

Tab-completes in PowerShell thanks to [ValidateSet].


Added

  • -Uninstall repo|user|both — single [ValidateSet] string replaces two separate switches; adds the previously-missing both scope
  • init-user.ps1 -Bootstrap — registers all already-installed cache-origin files into user-subscriptions.json without re-copying anything; supports -DryRun
  • Auto-bootstrap in configure.ps1 — detects when the user manifest is absent but cache-origin files are on disk and bootstraps it automatically
  • Extended scoring — 12 new agent families receive a star recommendation; 10 new vendor/platform names blocked from false recommendations
  • Detect-RepoStack — now auto-detects nuxt, electron, ember from package.json

Changed

  • configure.ps1 Step 1.5 label and prompt updated to say "agents, instructions & skills"

See CHANGELOG.md for full details.

v2.0.0 — Complete rebuild

18 Apr 11:21
1a865e8

Choose a tag to compare

What's new in v2.0.0

This is a complete rebuild of the tooling to align with the current github/awesome-copilot repository structure. The old root-level scripts have been replaced by a unified configure.ps1 entry point backed by focused scripts in scripts/.

⚠️ Breaking change — the previous scripts (sync-awesome-copilot.ps1, combine-and-publish-prompts.ps1, install-scheduled-task.ps1, etc.) have been removed. See the README for the new workflow.

Added

  • scripts/sync-awesome-copilot.ps1: Structural change detection — verifies every previously-synced category folder still exists after each pull; exits non-zero with a clear message if any are absent.
  • scripts/sync-awesome-copilot.ps1: Mass-removal threshold — exits before writing the manifest if ≥ 25 % of tracked files disappear in a single pull (min 10 files prior). Guards against large upstream restructures being silently applied.
  • scripts/sync-awesome-copilot.ps1: -Force switch — bypasses both safety checks when an upstream restructure is intentional.
  • scripts/init-user.ps1: Instructions support — interactive picker installs .instructions.md files to %APPDATA%\Code\User\prompts\. Tech-agnostic items auto-starred (★).
  • scripts/init-user.ps1: Skills support — interactive picker installs skill directories to ~/.copilot/skills/. Full install/update/remove lifecycle tracked in user-subscriptions.json.
  • scripts/init-user.ps1: Trust warning — displayed before install pickers; reminds the user that user-level resources are loaded by Copilot in all VS Code sessions.
  • scripts/update-user.ps1: -SkillsDir parameter; Get-DirHash helper; directory-type subscriptions mirrored file-by-file on update.
  • scripts/init-repo.ps1: [U] status indicator — shows when an item is already installed at user level. Additive — combines with [*], [↑], [~], [!].

Fixed

  • scripts/init-user.ps1: power-bi, power-platform, power-apps, power-automate, flowstudio, and powershell-specific resources no longer receive a ★ recommendation in user-level pickers.
  • scripts/init-repo.ps1: Renamed $input$rawInput in console-menu fallbacks. $input is PowerShell's automatic pipeline enumerator variable; shadowing it risks silent data loss in pipeline contexts.
  • scripts/sync-awesome-copilot.ps1: Changed $Global:LogFile to $script:LogFile to prevent log path leaking into the session.

Known issues / planned for v2.1.0

  • Shared helper functions (Log, Install-File, Get-DirHash, etc.) are duplicated across scripts. Planned fix: extract to a dot-sourced scripts/Common.ps1.
  • DataVerse resources can receive false ★ recommendations in repos with .py files. Planned fix: vendor-prefix blocklist.
  • OGV picker may open behind other windows on Windows (UIPI limitation). Mitigated with a yellow hint message.