skill-sync

Install, update, harvest, and remove skills between a private repo and project repos.

Updated Feb 11, 2026
One-click install
npx skills add https://github.com/mcmurrym/coding-agent-skills --skill skill-sync-mcmurrym
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: skill-sync
Source: https://github.com/mcmurrym/coding-agent-skills/tree/main/agent-skills/skill-sync
Command: npx skills add https://github.com/mcmurrym/coding-agent-skills --skill skill-sync-mcmurrym

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jq, and includes scripts (resource) components.

What problem does it solve? Keeping AI agent skills consistent across many project repos is tedious: copies drift out of date, local improvements get lost, and there is no record of which version each project has. This Skill manages bidirectional synchronization of skills from a private repo into project repos with a versioned manifest. ## Core Features & Use Cases - Install & Remove: Copy a skill from your private repo into .shared/skills/ with symlinks for each agent platform (.claude/skills, .agents/skills, .gemini/skills). - Update & Harvest: Pull newer upstream versions into a project, or push local project modifications back to the private repo. - Status Tracking: A JSON manifest records the source commit per skill, and the status command shows whether each skill is up to date, locally modified, or has upstream changes. - Use Case: You improved a code-review skill while working in a client project. Run the harvest command to diff your changes against the installed version and copy them back into your private skills repo for reuse everywhere. ## Quick Start Ask the agent to run skill-sync status to show which skills are installed in this project and whether any updates or local changes exist.

Frequently Asked Questions about skill-sync

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I install a skill from a private repo into a project?▼

Run skill-sync.sh install <skill> from within the project repo. The script copies the skill from the private repo's agent-skills directory into .shared/skills/ and creates symlinks in .claude/skills, .agents/skills, and .gemini/skills.

How do I sync local skill changes back to the source repository?▼

Use the harvest command: skill-sync.sh harvest <skill>. It diffs the project's installed copy against the originally installed commit, shows the changes, and copies the project version back into the private repo for you to review and commit.

How can I check which installed skills are out of date?▼

Run skill-sync.sh status. It prints a table of all skills in the manifest showing the installed commit, the upstream commit, whether local changes exist, and a status such as up to date, update available, or locally modified.

What dependencies does the skill-sync script require?▼

The script requires bash, git, jq, and python3 (used to compute relative symlink paths). It must run inside a git repository, and the private skills repo must be discoverable from the script location or via the CODING_AGENT_SKILLS_REPO environment variable.

Can I update all installed skills at once?▼

Yes, run skill-sync.sh update --all. It iterates over every skill listed in the manifest, shows the diff of upstream changes for each, copies the newer files, and updates the recorded source commit.