Skill Sync
CLI pour lister, installer, mettre à jour et pousser par PR les compétences Claude vers un dépôt GitHub source de vérité
Testé · Fonctionne
Ce que fait
Enveloppe un script bash (skill-sync) qui traite un dépôt GitHub comme la source canonique des compétences d'agent : il clone/met en cache le dépôt, liste les compétences disponibles avec leurs descriptions de frontmatter, en installe une ou toutes dans un répertoire de compétences local, et pousse les modifications locales des compétences sous forme de branche + PR via le CLI gh. Se déclenche lorsque vous demandez d'installer, de mettre à jour, de lister ou de pousser des compétences vers/depuis le dépôt partagé. Notez que la cible d'installation par défaut est ~/clawd/skills (disposition OpenClaw), et non ~/.claude/skills — définissez CLAWD_SKILLS_DIR pour le pointer vers le répertoire de compétences de Claude Code.
Rapport de test
Dépôt cloné dans un HOME temporaire et exécution du binaire scripts/skill-sync. `list` a cloné le cache, a effectué un pull ff-only, et a affiché les 18 compétences sous skills/ avec les descriptions parsées du frontmatter de chaque SKILL.md ; `install planner` a copié skills/planner/ dans $CLAWD_SKILLS_DIR (exit 0), et l'installation d'un nom invalide a affiché "not found in repository" et s'est terminée avec le code 1 comme prévu. Pour l'OUTPUT, j'ai comparé l'installation de la compétence à une référence manuelle (git clone + cp) : le fichier planner/SKILL.md résultant était identique au niveau des octets, donc l'avantage de l'artefact est au niveau du processus (cache de dépôt + pull ff-only, chmod +x sur les scripts, détection update-vs-install, --all avec auto-saut, et un flux complet de push branche→PR) plus la table `list` parsée du frontmatter que la référence ne produit pas. N'a pas pu exercer `push` (nécessite gh + accès en écriture à un dépôt que je ne possède pas). Pas de failles de sécurité ; le script utilise uniquement les variables d'environnement $HOME, pas de curl|sh ou de gestion de secrets, et SKILL.md avertit de ne pas commettre de secrets. Friction principale : la cible par défaut est ~/clawd/skills, pas ~/.claude/skills, donc un utilisateur de Claude Code doit définir CLAWD_SKILLS_DIR.
Testé le: 2026-07-31 · Claude Code 2.x (agent harness)
Installation
git clone --depth 1 https://github.com/jdrhyne/agent-skills.git /tmp/skill-sync-src mkdir -p ~/.claude/skills cp -R /tmp/skill-sync-src/clawdbot/skill-sync ~/.claude/skills/skill-sync # The CLI lives at ~/.claude/skills/skill-sync/scripts/skill-sync (not on PATH by default). # Run it directly or symlink onto PATH, e.g.: # ln -sf ~/.claude/skills/skill-sync/scripts/skill-sync /usr/local/bin/skill-sync # Requirements: git (always), and the `gh` CLI + repo write access ONLY for `skill-sync push`. # Default paths (override via env): # AGENT_SKILLS_REPO repo clone cache (default ~/.agent-skills-repo) # CLAWD_SKILLS_DIR local install dir (default ~/clawd/skills) <-- set to ~/.claude/skills for Claude Code # IMPORTANT: the script only lists/installs skills under the repo's skills/ dir, # so it will NOT install skills from clawdbot/, codex/, or prompts/.
Commandes et exemples de prompts
/skill-syncCLI pour lister, installer, mettre à jour et pousser par PR les compétences Claude vers un dépôt GitHub source de vérité
Les skills se déclenchent sur des demandes en langage courant — aucune commande à retenir. Après installation, des prompts comme ceux-ci l'activent (en anglais) :
Install the latest skills from the source repoPush my local skill changes to GitHubList which skills are out of sync