CommunityRédaction et éditiongithub.com

Skill Open Sourcer

Packager et publier des compétences d'agent locales sous forme de dépôts GitHub open-source

Qu'est-ce que Skill Open Sourcer ?

Skill Open Sourcer est une compétence d'agent conçue pour transformer une compétence locale unique en un package de publication publique propre. Elle prend en entrée un chemin `SKILL.md` ou un répertoire de compétence, et exécute un flux complet : résolution du répertoire, vérification de l'environnement, analyse de sécurité, création d'un dépôt de publication local, validation et publication sur GitHub. L'outil détecte automatiquement les secrets, chemins personnels, données clients et autres éléments à risque avant la publication, et s'arrête en cas de problème pour laisser l'utilisateur résoudre les blocages. Il supporte les plateformes comme Codex, Cursor ou Claude, et est idéal pour les développeurs souhaitant partager leurs compétences d'agent de manière professionnelle et sécurisée. Le flux de publication inclut la génération de copie de lancement, des recommandations de métadonnées GitHub, et une vérification finale via `npx skills`.

Compatible avec✓Claude Code✓Codex CLI~Cursor
npx skills add zjp1997720/skill-open-sourcer

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait Skill Open Sourcer ?

Transformez une compétence locale en un package de publication publique propre. L'entrée normale est simplement un chemin SKILL.md ou un répertoire de compétence.

Posture par défaut : agir vite, mais s'arrêter en cas de risque de publication. Si l'analyse de sécurité trouve des secrets, des chemins privés, des données client, du matériel propriétaire non publié ou une propriété ambiguë, signalez les blocages et ne publiez pas tant que l'utilisateur ne les a pas résolus.

Démarrage Rapide

  1. Résolvez l'entrée en un répertoire de compétence réel. Acceptez un fichier SKILL.md, un dossier contenant SKILL.md, ou un lien symbolique sous .codex/skills, .agents/skills, .claude/skills, ou une autre racine de compétence locale.
  2. Exécutez la vérification de l'environnement avant de packager ou publier :
SKILL_OPEN_SOURCER_DIR="${CODEX_HOME:-$HOME/.codex}/skills/skill-open-sourcer"
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/check_release_env.py"

Les commandes locales requises sont python3, git, node, et npx. gh est la surface de publication GitHub locale par défaut, mais GitHub MCP/app ou un dépôt distant déjà authentifié peut la remplacer. Si aucune surface de publication GitHub n'est disponible, construisez et validez le dépôt localement, puis arrêtez-vous avec la configuration manquante.

  1. Lisez le point d'entrée de la compétence et inspectez les fichiers directement référencés dans scripts/, references/, assets/, et agents/. Ne copiez pas les dossiers locaux non liés.
  2. Exécutez l'analyseur de sécurité :
SKILL_OPEN_SOURCER_DIR="${CODEX_HOME:-$HOME/.codex}/skills/skill-open-sourcer"
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/scan_skill_release.py" /chemin/vers/competence-ou-SKILL.md
  1. Si les vérifications de l'environnement et de sécurité sont claires, créez un dépôt de publication frais en dehors du répertoire source de la compétence.
  2. Pour un dépôt à compétence unique, copiez SKILL.md, agents/, references/, scripts/, et assets/ directement à la racine du dépôt. Utilisez skills/<nom-compétence>/ plus skills.sh.json uniquement pour les dépôts de collection multi-compétences.
  3. Ajoutez les fichiers de publication publique décrits dans references/release-package.md, y compris la passerelle de qualité README et les recommandations de métadonnées GitHub.
  4. Validez la compétence packagée et la liste npx skills avant de publier.
  5. Publiez sur GitHub lorsque les vérifications à faible risque passent, puis produisez la copie de lancement.

Lisez references/release-package.md avant d'écrire le dépôt de publication.

Contrat de Sortie

Pour une publication réussie, retournez :

  • URL du dépôt GitHub.
  • Commande d'installation utilisant npx skills.
  • Résultats de vérification pour la validation de la compétence et npx skills add <propriétaire>/<dépôt> --list.
  • Résumé court des risques : ce qui a été analysé, ce qui a été supprimé ou nettoyé, et les hypothèses résiduelles.
  • Description GitHub et recommandations de sujets lors de la création d'un nouveau dépôt public.
  • Copie de lancement : au moins un post X/Twitter, plus une version chinoise facultative lorsque l'utilisateur travaille en chinois.

Si bloqué, retournez :

  • Liste des blocages avec chemins de fichiers et raisons.
  • Étapes de nettoyage suggérées.
  • La prochaine action la plus sûre, généralement « nettoyez ces fichiers, puis relancez la publication ».

Règles de Sécurité

Arrêt immédiat si l'un des éléments suivants apparaît dans le package source :

  • Clés API, jetons, clés privées, cookies, identifiants, fichiers .env, ou configuration d'authentification.
  • Chemins personnels absolus tels que /Users/..., /home/..., chemins de coffre-fort locaux, ou chemins de cache propres à la machine qui dérouteraient les utilisateurs publics.
  • Noms de clients, données privées d'entreprise, documents internes, URL privées, invites non publiées, ou actifs payants/propriétaires sans licence claire.
  • Liens symboliques qui sortent du package, gros binaires, bases de données, journaux, profils de navigateur, .DS_Store, __pycache__, ou fichiers de cache générés.
  • Licence ou propriété peu claire pour le code/actifs inclus.

La publication automatique à faible risque est autorisée uniquement lorsque l'analyseur et la révision manuelle ne trouvent aucun blocage. Si le dépôt GitHub cible existe déjà avec un contenu non lié, arrêtez-vous et demandez avant d'écraser ou de forcer un push.

Règles de Packaging

  • Gardez le comportement original de la compétence intact. Refactorez uniquement ce qui est nécessaire pour supprimer les hypothèses privées et rendre l'installation publique fiable.
  • Par défaut, utilisez une disposition racine plate pour une compétence publique unique. Utilisez une disposition imbriquée skills/<nom-compétence>/ uniquement lorsqu'un dépôt publie plusieurs compétences.
  • Préférez un SKILL.md léger ; déplacez les conseils publics détaillés dans references/ uniquement lorsqu'un agent en aura vraiment besoin.
  • N'ajoutez pas de README à l'intérieur du dossier de la compétence. Placez la documentation pour les humains à la racine du dépôt de publication.
  • Préservez agents/openai.yaml lorsqu'il est présent. S'il est absent, créez-le avec display_name, short_description, et un default_prompt qui mentionne explicitement $<nom-compétence>.
  • Incluez scripts/ uniquement pour la logique d'assistance déterministe que la compétence utilise réellement.
  • Incluez assets/ uniquement lorsque la licence et la taille sont sûres pour une publication publique.
  • Utilisez MIT comme licence par défaut uniquement lorsque la compétence source n'a pas de licence conflictuelle et que la propriété est claire.

Flux de Publication

  1. Exécutez scripts/check_release_env.py. Ajoutez --repo-dir <dépôt-release> lors de la mise à jour d'un dépôt local existant. Ajoutez --check-npx-skills lorsque l'accès au package/réseau est incertain.
  2. Si des commandes requises sont manquantes, arrêtez-vous et signalez les blocages exacts. Si seul gh est manquant, continuez uniquement lorsque GitHub MCP/app est disponible ou que le dépôt de publication a déjà une origine origin authentifiée.
  3. Construisez le dépôt de publication localement.
  4. Validez avec le validateur de compétence système lorsqu'il est disponible :
python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" .
  1. Créez ou mettez à jour le dépôt GitHub en utilisant la surface GitHub disponible (gh, GitHub MCP/app, ou un dépôt distant existant). Évitez le force push.
  2. Poussez la branche ou main.
  3. Vérifiez la liste :
npx skills add <propriétaire>/<dépôt> --list
  1. Si la liste fonctionne, fournissez la commande d'installation :
npx skills add <propriétaire>/<dépôt> -g -a codex --skill <nom-compétence> -y

Ajustez le drapeau agent et la formulation d'installation lorsque la plateforme cible n'est pas Codex.

Copie de Lancement

Après une publication réussie, rédigez une copie sociale concise qui explique :

  • Le problème que la compétence résout.
  • Ce qu'un utilisateur lui donne.
  • Ce qu'elle publie ou automatise.
  • La commande d'installation ou le lien du dépôt.
  • Un exemple concret de demande.

Pour les utilisateurs chinois, incluez un post de lancement naturel en chinois. Gardez-le orienté humain ; ne surexpliquez pas les scripts.

Skills associés