cd /news/developer-tools/stop-copy-pasting-ai-skills-between-… Β· home β€Ί topics β€Ί developer-tools β€Ί article
[ARTICLE Β· art-65743] src=dev.to β†— pub= topic=developer-tools verified=true sentiment=↑ positive

Stop copy-pasting AI skills between repos: package them as Claude Code plugins

A developer created a plugin system for Claude Code to package and share AI skills across repositories, eliminating copy-paste. The system uses a structured git repository with a marketplace catalog and plugin manifests, allowing skills to be installed at project or user scope. Skills are defined in markdown files with optional scripts and references, and updates are distributed via a single command.

read2 min views1 publishedJul 20, 2026

As we enter the era of AI and skills, we're faced with new problems β€” a flood of skills, and sharing knowledge (skills) between repos.

Every day I work with a bunch of repositories, predominantly in Go but sometimes in other languages. A huge layer of knowledge should be shared between them β€” for example, how to connect to a database, how to deploy a test tag to a staging server, or where to find the logs.

For several months I had been creating skills in each repo and putting the specific knowledge there, but after a while I realized I'd started copy-pasting some skills between repos.

Claude built a plugin system, and it has become mature enough to use. I created a separate repository with the skills and scripts that should be shared, and organized them as plugins. A plugin is just a structured git repository with files β€” convenient to maintain and update.

The install part is also very flexible: when I install a plugin, I can choose the scope.

Here's what it looks like in practice.

A plugin is just a git repo with a known layout. One marketplace can hold many plugins; one plugin can hold many skills.

dev-claude-plugins/                     # the repo you push to git
β”œβ”€β”€ .claude-plugin/
β”‚   └── marketplace.json                # catalog β€” lists the plugins in this repo
└── plugins/
    └── backend-dev/                    # one installable plugin
        β”œβ”€β”€ .claude-plugin/
        β”‚   └── plugin.json             # manifest: name, version, author
        └── skills/
            β”œβ”€β”€ query-db/
            β”‚   └── SKILL.md            # how to connect + run read-only queries
            β”œβ”€β”€ staging-deploy/
            β”‚   β”œβ”€β”€ SKILL.md            # deploy a dev tag to staging
            β”‚   └── references/         # extra docs the skill loads on demand
            └── logs/
                β”œβ”€β”€ SKILL.md            # where/how to read service logs
                └── scripts/            # helper shell scripts the skill calls

They're tiny. marketplace.json

is the catalog:

{
  "name": "myteam",
  "owner": { "name": "your-handle" },
  "plugins": [
    { "name": "backend-dev", "source": "./plugins/backend-dev",
      "description": "Shared cross-repo dev skills: db queries, staging deploy, logs." }
  ]
}

plugin.json

is the plugin itself:

{
  "name": "backend-dev",
  "version": "0.1.0",
  "author": { "name": "your-handle" },
  "description": "Shared cross-repo development skills."
}

Two commands. First register the marketplace, then install the plugin β€” this is where you pick the scope (this project only, or user scope = available in every repo):

/plugin marketplace add ~/work/dev-claude-plugins
/plugin marketplace add https://github.com/your-handle/dev-claude-plugins.git

/plugin install backend-dev@myteam

Now every skill is available as /backend-dev:<skill>

β€” e.g. /backend-dev:query-db

β€” and also auto-triggers from its description.

Add a skill once, bump version

, push, and every repo picks it up with:

/plugin marketplace update myteam

One source of truth instead of copy-pasting .claude/skills/

into ten repos.

── more in #developer-tools 4 stories Β· sorted by recency
── more on @claude 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/stop-copy-pasting-ai…] indexed:0 read:2min 2026-07-20 Β· β€”