Why Copying Skills Between Repos Breaks Down
The first copied skill usually feels harmless. You write a useful code review checklist in one repo, paste it into another, tweak a few lines, and keep moving. A month later, three projects have three versions of the same workflow, none of them clearly current.
That is the real problem with Claude skills across projects: the workflow is reusable, but the copies are not managed as one thing. When you improve the skill in one repo, the other repos do not know. When a teammate asks which version to use, the answer depends on memory instead of a system.
A skill that should apply everywhere deserves one source of truth.
Search Intent: People Want Scope, Not Theory
The intent behind this topic is informational with a practical workflow decision. People are not only asking what global skills are; they are trying to decide where a skill belongs so they can stop rebuilding the same AI setup in every project.
The clean rule is simple: use a global or personal skill when the process should follow you, and use a project skill when the facts belong to one repo.
| Workflow | Best scope | Reason | Example |
|---|---|---|---|
| Code review rubric | Personal/global skill | The review habits apply across most repos. | Security, regression risk, tests, migration impact. |
| Repo release checklist | Project skill | Commands and release gates are repo-specific. | Run app tests, update appcast, verify package signing. |
| Decision memo format | Personal/global skill | The output structure travels well. | Context, options, tradeoffs, recommendation, risks. |
| Design-system QA | Project skill | Component names and tokens belong to one codebase. | Use this repo's button, color, spacing, and modal rules. |
Step 1: Extract the Reusable Part
Before you make a global skill, separate the stable method from the local facts. Most copied repo skills contain both. The stable method is worth reusing; the local facts should stay near the repo.
For example, this is too specific for a global skill:
Review this diff for the Billing Dashboard repo.
Use npm run test:billing and check the Stripe webhook rules in /docs/billing.md.
Make sure the invoice preview component still matches our enterprise account policy.The reusable version is stronger because it describes the review process without importing one repo's assumptions:
Review this diff for billing, payment, or account-risk changes.
Check behavior changes, missing tests, rollback risk, customer-facing copy,
data integrity, and edge cases around retries, permissions, and failure states.Weak global skills carry hidden project context. Strong global skills carry a repeatable way of thinking.
Step 2: Build the Global Skill Folder
A portable Claude Skill is still a real skill folder. Give it a narrow job, a clear description, and supporting examples only if they apply across projects. If you need a refresher on the file format, use the SKILL.md guide before standardizing the folder.
~/.claude/skills/
cross-repo-code-review/
SKILL.md
examples/
risky-diff-review.md
safe-refactor-review.mdThe SKILL.md should explain when the skill applies, what inputs it expects, and what output shape it should produce. Keep repo-specific commands out unless every repo genuinely shares them.
---
name: cross-repo-code-review
description: Review code changes for risk, tests, regressions, maintainability, and release impact across software projects.
---
When reviewing a change, prioritize behavior risk over style.
Call out missing tests, unsafe assumptions, migration concerns, and user-visible regressions.
Return findings first, ordered by severity, with file or area references when available.If you are starting from a raw prompt instead of an existing skill, the free Claude Skill Creator can help turn it into a clean skill draft.
Step 3: Keep Project Context Local
Global skills do not replace project skills. They reduce duplication. The project skill should hold the local details that would be wrong or noisy in other repos: test commands, architecture notes, release gates, domain terms, and internal conventions.
Use the project skill to say, "In this repo, apply the global review process with these local constraints." This is how personal skills and project skills work together instead of competing.
.claude/skills/project-release-check/
SKILL.md---
name: project-release-check
description: Check release readiness for this repository using local build, test, and documentation rules.
---
Apply the general release review process, then verify this repo's required checks:
- Run the documented test command before approving release changes.
- Confirm public docs and changelog entries match the behavior change.
- Check this repo's deployment notes for any migration or rollback step.For exact folder placement, read the Claude Code skills folder guide. It explains when to use personal folders, project folders, and nested project folders.
Step 4: Put Shared Skills in a Versioned Library
Once a skill is used across projects, a local folder is no longer enough. You need version history, ownership, and a path for the same workflow to appear on another laptop, inside Codex, or in a teammate's environment.
Prompttly is a skill manager for AI agents — one library for your skills and prompts that syncs into Claude Code, Codex, ChatGPT, and Claude, so your setup follows you across every machine, repo, and tool.
The practical model is: one library is the source of truth, and local skill folders are working copies. That lets you improve the shared skill once instead of patching five repos by hand.
If you are also moving between machines, pair this approach with the Claude Skills sync guide so the library follows the computer, not just the project.
When the reusable skill should become a team standard, use how to share Claude Skills with your team to add ownership, review, and rollout rules before teammates install it.
Step 5: Migrate Existing Repo Copies Safely
Do not delete copied skills first. Inventory them, compare them, and preserve any useful local nuance before replacing duplicates with one reusable skill plus smaller project-specific notes.
- List every repo that contains a copied skill or prompt workflow.
- Group copies that are trying to solve the same job.
- Pick the strongest version as the base.
- Remove repo-specific commands, product names, and private assumptions from the global version.
- Move those local details into project skills where they belong.
- Save the global skill in the source-of-truth library.
- Test the global skill in two different projects before removing old copies.
A copied skill is technical debt when nobody knows which version is current.
When Not to Use a Global Skill
Some workflows should stay local. Making everything global creates a noisy library and increases the chance that Claude applies the wrong context in the wrong place.
- Do not globalize secret or sensitive context: Keep private customer, security, and infrastructure facts scoped to the right project.
- Do not globalize one-off experiments: If you used a workflow once and never repeated it, archive it or leave it local.
- Do not globalize repo commands: Commands belong in project skills unless many repos truly share the same tooling.
- Do not globalize team policy without agreement: A shared skill should represent a shared workflow, not one person's preference disguised as a standard.
The goal is a smaller number of stronger skills, not a global dumping ground.
Related Resources
Start from the resources hub for the full Claude Skills series. Use how to install and use Claude Skills to test invocation, how to create a Claude Skill to build a clean reusable workflow, and the new-computer transfer guide when local skills are trapped on an old machine.
People Also Ask About Claude Skills Across Projects
How do I use Claude Skills across projects?
Use personal skills for reusable workflows that should follow you across projects, and reserve project skills for repo-specific rules. Keep the reusable version in one source of truth, then sync or copy complete skill folders where they need to run.
Should I copy the same Claude Skill into every repo?
Usually no. Copying the same skill into every repo creates stale versions and unclear ownership. Use one portable skill for the shared workflow, then add small project skills only for details that are unique to each repo.
What belongs in a global Claude Skill?
A global Claude Skill should contain durable habits such as code review rubrics, writing workflows, research checklists, release-note structure, or debugging approaches. It should not contain private commands, architecture facts, or assumptions that only apply to one repository.
Can project skills and personal skills work together?
Yes. A personal skill can define the repeatable process, while a project skill can add repo-specific commands, constraints, terminology, and examples. This keeps the shared workflow portable without losing local context.
What is the easiest way to stop losing Claude Skills between repos?
Create one versioned skill library, move repeated workflows into it, and sync complete skill folders into Claude Code or Codex instead of rebuilding them inside each project.
Related Prompt Resources
Make reusable skills portable
Prompttly keeps one versioned skill library and syncs working skills into Claude Code and Codex as real folders, with the same workflows available in ChatGPT, Claude, and MCP-connected agents.