Skip to content

Package ccpm as a Claude Code Plugin #1017

@rknuus

Description

@rknuus

Summary

The Claude Code Plugin system provides a first-class mechanism to package and distribute exactly what ccpm consists of — slash commands, agents, skills, and hooks — eliminating the need for the current curl/shell-script installation approach.

Motivation

Currently, ccpm is installed by running a remote shell script that copies files directly into the project's .claude/ directory. This works, but has drawbacks:

  • Manual, script-based install is harder to version, update, and audit
  • No built-in mechanism for teams to automatically provision ccpm across repositories
  • Updates require re-running the install script or manual file replacement
  • No native integration with Claude Code's plugin management UI (/plugin)

Proposed Approach

Restructure ccpm as a Claude Code plugin by mapping its existing components to the plugin layout:

ccpm-plugin/
├── .claude-plugin/
│   └── plugin.json          # Plugin metadata (name, version, author)
├── commands/                # All /pm:* slash commands (currently in .claude/commands/pm/)
├── agents/                  # Agent definitions (currently in .claude/agents/)
└── skills/                  # Any shared skill definitions

This enables two complementary distribution paths:

  1. Marketplace: Publish to the official Claude Code plugin marketplace so users can install with a single command:

    /plugin install ccpm
    
  2. Local/self-hosted: Teams or individual users can point to a local directory or a Git-hosted marketplace, which also enables automatic installation via .claude/settings.json — no manual steps for new team members.

Benefits

  • Simpler installation: one /plugin install command instead of curl | bash
  • Version management: semantic versioning and upgrade path via /plugin
  • Team auto-provisioning: add ccpm to .claude/settings.json → every team member gets it automatically when they trust the repo folder
  • Auditability: plugin manifest makes the installed surface area explicit
  • Discoverability: listing in the official marketplace increases adoption

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions