Hubskillz
Menu

Le CLI hubskillz

Le CLI inventorie chaque skill de ~/.claude/skills et du .claude/skills de chaque dépôt, puis envoie cet inventaire vers votre catalogue, comme un git push envoie vos fichiers sur GitHub. Il n’écrit jamais de fichier local : vos dépôts restent la source de vérité.

Dernière mise à jour : 1 septembre 2026

Installation

Node 22 requis. Installez-le une fois pour toutes, ou lancez chaque commande avec npx.

npm i -g hubskillz
npx hubskillz <command>
hubskillz help [command]

Connexion

Créez un token machine dans Paramètres, Tokens machine, et collez-le quand le CLI le demande. Tokens machine

hubskillz login [--token TOKEN] [--base-url URL]
hubskillz logout
OptionRôle
--token TOKENToken machine, au lieu de la saisie interactive.
--base-url URLServeur à contacter. Par défaut, le fichier de config, puis https://api.hubskillz.com.

Instance auto-hébergée ? Passez --base-url ou définissez HUBSKILLZ_BASE_URL. Le CLI stocke sa config dans ~/.hubskillz/config.json.

En CI ou dans un conteneur, définissez HUBSKILLZ_TOKEN au lieu de vous connecter : aucun fichier n’est écrit. hubskillz logout supprime le jeton stocké.

Commandes

Chaque commande et ce qu’elle touche. hubskillz help <commande> affiche la même référence dans votre terminal.

CommandeRôle
statusIndique l’état de chaque skill installé. Ne modifie rien.
syncEnvoie les skills tels quels, comme un git push.
upgradeMet à jour les skills skills.sh vers leur dernière version amont.
doctorSignale ce qu’un agent échoue à charger dans vos racines de skills.
moveDéplace un skill entre la racine globale et un dépôt.
publishAffiche un skill validé sur votre page publique, ou l’en retire.
pushEnvoie un dossier de skill au catalogue en brouillon.
projectsMémorise les dépôts que sync --all et status couvrent.

status

Voir l’état

hubskillz status [--path DIR] [--yes]

Scanne le .claude/skills du dossier courant (ou de --path DIR), sinon ~/.claude/skills, puis affiche une ligne par skill : état, hash installé, version validée. N’écrit rien.

OptionRôle
--path DIRDossier du projet. Par défaut, le dossier courant.
-y, --yesRépond oui aux questions posées par la commande.

sync

Envoyer vos skills

hubskillz sync [--path DIR] [--all] [--yes]

Envoie les skills tels qu’ils sont sur le disque et affiche leur état, comme un git push : le catalogue reflète la machine. Aucun fichier local n’est écrit.

Un skill encore inconnu du catalogue y est ajouté automatiquement : un skill skills.sh est figé à la version installée, un skill privé est créé à partir de la copie envoyée par le CLI avec l’inventaire. Dans une organisation en équipe, cette étape est réservée aux mainteneurs ; les autres rôles reçoivent une note et la synchronisation continue.

OptionRôle
--path DIRDossier du projet. Par défaut, le dossier courant.
--allCouvre la racine globale, ce projet et chaque dépôt enregistré.
-y, --yesRépond oui aux questions posées par la commande.

upgrade

Mettre à jour depuis skills.sh

hubskillz upgrade [SKILL...] [--path DIR] [--all] [--yes]

Amène chaque skill installé par npx skills add à sa dernière version amont. hubskillz lit chaque lock skills.sh pour les trouver, puis lance npx skills update dans chaque racine, ce qui garde ce lock juste.

Ce que hubskillz ajoute, c’est la liste des racines : skills update ne traite qu’une portée à la fois, et ne connaît que le dossier courant. Un skill nommé est cherché dans toutes les racines, et un nom qu’aucun lock ne liste est une erreur.

Cette commande installe la tête upstream, quelle que soit la version figée par le catalogue. Le sync suivant remonte les nouvelles versions au catalogue, où vous les validez.

OptionRôle
--path DIRDossier du projet. Par défaut, le dossier courant.
--allCouvre la racine globale, ce projet et chaque dépôt enregistré.
-y, --yesRépond oui aux questions posées par la commande.

doctor

Diagnostiquer la machine

hubskillz doctor [--path DIR]

Lit chaque racine de skills locale et signale ce qu’aucun agent ne charge, et ce qui se charge deux fois : un dossier sans SKILL.md, un dossier vide, un lien symbolique dont la cible a disparu, un SKILL.md sans description, une copie de projet qui double ou masque ~/.claude/skills, le même skill dans plusieurs dépôts, un dépôt enregistré qui a perdu son .claude/skills. Elle n’appelle jamais le serveur : elle tourne avant même la connexion. Chaque ligne indique la commande qui règle le problème.

OptionRôle
--path DIRDossier du projet. Par défaut, le dossier courant.

move

Déplacer un skill

hubskillz move <skill> <global|DIR> [--from global|DIR] [--force]

Déplace un dossier de skill entre ~/.claude/skills et un dépôt. La destination s’écrit global ou sous forme de dossier de projet. move trouve la source tout seul, dans le projet courant puis dans la racine globale, et --from désigne la copie à déplacer quand le nom existe deux fois. Un dossier lié se déplace comme un lien : la copie visée reste à sa place. Si la destination contient déjà les mêmes fichiers, move supprime la copie en trop.

OptionRôle
--from ROOTLa copie à déplacer quand le nom existe dans les deux racines.
--forceRemplace un skill du même nom à destination.

publish

Partager un skill sur votre page

hubskillz publish <skill>
hubskillz unpublish <skill>

publish affiche un skill validé sur votre page publique hubskillz.com/@handle, où n’importe qui peut le lire et l’installer. unpublish l’en retire. Le skill garde sa place dans le catalogue dans les deux cas. C’est le même interrupteur que le bouton de la fiche du skill dans l’app.

push

Envoyer un brouillon

hubskillz push <skill-dir> [-m MESSAGE]

Envoie un dossier de skill au catalogue comme nouvelle version en brouillon. Un mainteneur prend le relais pour la review.

OptionRôle
-m, --message TEXTNote jointe au brouillon.

projects

Enregistrer vos dépôts

hubskillz projects [add|remove [DIR] | discover [--yes] | list]

Mémorise le dossier courant (ou DIR) pour que sync --all et status le couvrent depuis n’importe où. discover parcourt votre dossier personnel à la recherche de dépôts avec .claude/skills et vous laisse choisir lesquels enregistrer (--yes les prend tous). Le premier sync --all ou status sans dépôt enregistré lance ce parcours pour vous. Un chemin enregistré sans .claude/skills est ignoré avec une note.

OptionRôle
-y, --yesRépond oui aux questions posées par la commande.

Options globales

Toutes les commandes les acceptent.

OptionRôle
--base-url URLServeur à contacter. Par défaut, le fichier de config, puis https://api.hubskillz.com.
-h, --helpAffiche l’usage d’une commande.
-v, --versionAffiche la version.

Environnement

Lues au démarrage, après une option en ligne de commande et avant ~/.hubskillz/config.json.

VariableRôle
HUBSKILLZ_TOKENToken machine. Définissez-la en CI ou dans un conteneur pour éviter hubskillz login : aucun fichier n’est écrit.
HUBSKILLZ_BASE_URLServeur à contacter, pour une instance auto-hébergée.
NO_COLORRetire les couleurs et le gras de la sortie.

États

status et sync attribuent à chaque skill l’un de ces six états.

ÉtatRègle
à jourLe contenu installé correspond à la version validée.
en retardLe contenu installé correspond à une version antérieure du même skill.
modifiéLe contenu installé ne correspond à aucune version connue.
manquantLe skill n’est pas installé et l’une de vos équipes l’exige ou le recommande.
hérité~/.claude/skills le contient, donc Claude Code le charge dans chaque projet. Le skill compte comme déjà présent dans le projet. Une copie personnalisée garde son propre état.
hors catalogueLe skill est installé et le catalogue n’en connaît aucun de ce nom.