Releases: CTOUT/vscode-copilot-sync
v2.2.0 — Plugin support, -Update/-Category params, alphabetical ordering
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.ps1now sparse-checks outplugins/by defaultinit-repo.ps1has a full plugin picker with install/uninstall supportupdate-repo.ps1handles 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
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-missingbothscopeinit-user.ps1 -Bootstrap— registers all already-installed cache-origin files intouser-subscriptions.jsonwithout 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.ps1Step 1.5 label and prompt updated to say "agents, instructions & skills"
See CHANGELOG.md for full details.
v2.0.0 — Complete rebuild
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:-Forceswitch — bypasses both safety checks when an upstream restructure is intentional.scripts/init-user.ps1: Instructions support — interactive picker installs.instructions.mdfiles 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 inuser-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:-SkillsDirparameter;Get-DirHashhelper; 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, andpowershell-specific resources no longer receive a ★ recommendation in user-level pickers.scripts/init-repo.ps1: Renamed$input→$rawInputin console-menu fallbacks.$inputis PowerShell's automatic pipeline enumerator variable; shadowing it risks silent data loss in pipeline contexts.scripts/sync-awesome-copilot.ps1: Changed$Global:LogFileto$script:LogFileto 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-sourcedscripts/Common.ps1. - DataVerse resources can receive false ★ recommendations in repos with
.pyfiles. Planned fix: vendor-prefix blocklist. - OGV picker may open behind other windows on Windows (UIPI limitation). Mitigated with a yellow hint message.