Skip to main content

Rust-first GitHub Copilot asset manager with a thin Python wrapper

Project description

Copilot Plugin Manager (cpm)

CI PyPI version

Copilot Plugin Manager or just cpm is a package manager for GitHub Copilot assets. It helps you define, install, update, inspect, and reset plugins, skills, agents, MCPs, hooks, workflows, and instructions with a reproducible manifest and lockfile workflow.

The package is published as copilot-plugin-manager, but the command you run is cpm.

Why use cpm?

  • keep your Copilot setup in cpm.toml
  • lock resolved revisions in cpm.lock
  • install assets into repository-local or global Copilot locations
  • manage assets from marketplace specs, GitHub sources, and local paths
  • inspect drift with overview, show, tree, doctor, and status

Install

For one-off usage:

uvx --from copilot-plugin-manager cpm --help

or:

uvx copilot-plugin-manager --help

For a persistent install:

uv tool install copilot-plugin-manager

Or with pip:

pip install copilot-plugin-manager

Quick start

If you installed cpm, use cpm .... If you prefer not to install it globally, replace cpm with uvx --from copilot-plugin-manager cpm in the examples below.

Initialize a new project:

cpm init

Add a plugin and a skill:

cpm add spark@copilot-plugins --plugin
cpm add https://github.com/anthropics/skills/tree/main/skills/pdf --skill

Apply the lockfile to disk:

cpm sync

Inspect what is installed:

cpm list
cpm status

Common examples

Install a plugin from a Copilot marketplace registry:

cpm add spark@copilot-plugins --plugin

Registry plugins delegated to copilot plugin install are effectively global installs. Native plugin bundles added from GitHub tree URLs or local paths still honor local vs global scope.

Install a plugin bundle from a GitHub tree URL:

cpm add https://github.com/github/awesome-copilot/tree/main/plugins/testing-automation --plugin

Install a skill from GitHub:

cpm add https://github.com/anthropics/skills/tree/main/skills/pdf --skill

Inspect one asset in detail:

cpm show testing-automation --plugin

See the consolidated view of manifest, lockfile, and installed state:

cpm overview

Core commands

Command What it does
cpm init Create a new cpm.toml and cpm.lock
cpm add Add an asset to the manifest and resolve it
cpm sync Install everything recorded in cpm.lock
cpm update Update one or all managed assets
cpm remove Remove a managed asset
cpm lock Resolve without installing
cpm reset Remove managed state and/or installed assets
cpm overview Show the combined manifest, lockfile, and disk view
cpm list List installed assets
cpm show Show full details for a single asset
cpm tree Show the dependency tree
cpm doctor Verify installed files match the lockfile
cpm status Show drift between manifest, lockfile, and disk

How cpm works

  • cpm.toml records the assets you want
  • cpm.lock records the resolved versions and hashes
  • cpm sync materializes those assets into .github/ for local scope or ~/.copilot/ for global scope
  • concrete GitHub file and tree sources are fetched directly by cpm
  • delegated Copilot plugin installs are used where the Copilot CLI is the installer of record

Documentation

License

See LICENSE-MIT and LICENSE-APACHE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

copilot_plugin_manager-0.2.2.tar.gz (204.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

copilot_plugin_manager-0.2.2-py3-none-win_amd64.whl (8.2 MB view details)

Uploaded Python 3Windows x86-64

copilot_plugin_manager-0.2.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

copilot_plugin_manager-0.2.2-py3-none-macosx_11_0_arm64.whl (7.8 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file copilot_plugin_manager-0.2.2.tar.gz.

File metadata

  • Download URL: copilot_plugin_manager-0.2.2.tar.gz
  • Upload date:
  • Size: 204.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for copilot_plugin_manager-0.2.2.tar.gz
Algorithm Hash digest
SHA256 00fe95076d7e0326f2f942b285128a54b814dcff2b838fae78ec8d6cf6fb73eb
MD5 09d017ba65527517817bf30e1836b455
BLAKE2b-256 1ded3a91e37a7f1eaee84631f4526216c027fec3f916114fbac84d30268e9d52

See more details on using hashes here.

Provenance

The following attestation bundles were made for copilot_plugin_manager-0.2.2.tar.gz:

Publisher: cicd.yml on Anselmoo/copilot-plugin-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file copilot_plugin_manager-0.2.2-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for copilot_plugin_manager-0.2.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 59fdc4eedab5b2d53f6b030832ebe279e3a21a2f709f848b38ec5f028a00ec69
MD5 1332b47c30bbac03edbdb062e8e26802
BLAKE2b-256 5dd71f7b282590e8dc473d924015fa461c9aa1cc87d0c804e3f0b054e3dc3c6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for copilot_plugin_manager-0.2.2-py3-none-win_amd64.whl:

Publisher: cicd.yml on Anselmoo/copilot-plugin-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file copilot_plugin_manager-0.2.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for copilot_plugin_manager-0.2.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7df5888e1c4854dcd755e47cc8562961a83eb0f9342dc21edad50ea14a08a66f
MD5 0156d69fec53db5980335e2d46c37eba
BLAKE2b-256 661a0fc2d8df11bdc34df59485c14ca065287497fef5807017b277123cbb354a

See more details on using hashes here.

Provenance

The following attestation bundles were made for copilot_plugin_manager-0.2.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: cicd.yml on Anselmoo/copilot-plugin-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file copilot_plugin_manager-0.2.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for copilot_plugin_manager-0.2.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c754edd78ea172742a0500288b902122dfb8ee4ca6961afd322c6d7fb956cb9e
MD5 03ee86e08ae4a37bc34ece3b21ac1b5b
BLAKE2b-256 1938f79e8f73d9a0e18f624b1a0be5c78f2866ece59eafd0f34f5f258467ed7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for copilot_plugin_manager-0.2.2-py3-none-macosx_11_0_arm64.whl:

Publisher: cicd.yml on Anselmoo/copilot-plugin-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page