CommunityRedacción y edicióngithub.com

zjp1997720/skill-open-sourcer

Empaqueta y publica habilidades de agente locales como repositorios open source en GitHub.

¿Qué es skill-open-sourcer?

Skill Open Sourcer permite a los desarrolladores convertir una habilidad local (skill) de un agente de IA en un paquete de lanzamiento público limpio y listo para publicar en GitHub. El flujo principal comienza con la ruta de un archivo `SKILL.md` o un directorio de habilidad, y realiza análisis de seguridad para evitar la fuga de secretos, rutas privadas, datos de clientes o material propietario. Solo si el escáner no encuentra bloqueos, se procede a crear un repositorio de lanzamiento separado, copiar los archivos esenciales (`SKILL.md`, `agents/`, `references/`, `scripts/`, `assets/`), validar con herramientas como `npx skills` y finalmente publicar en GitHub. La habilidad soporta cualquier plataforma que use habilidades (Codex, Claude, Cursor, etc.) y ofrece un contrato de salida claro: la URL del repo, el comando de instalación, verificación, resumen de riesgos, recomendaciones de GitHub y borradores de publicaciones de lanzamiento. Es ideal para quienes desean compartir sus habilidades de agente con la comunidad manteniendo la seguridad y la calidad.

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

Installed? Explore more Redacción y edición skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Skill Open Sourcer

Convierte una habilidad local en un paquete de lanzamiento público limpio. La entrada normal es solo una ruta a un archivo SKILL.md o un directorio de habilidad.

Postura por defecto: avanzar rápido, pero detenerse ante riesgos de publicación. Si el escáner de seguridad encuentra secretos, rutas privadas, datos de clientes, material propietario no publicado o propiedad ambigua, reporta los bloqueos y no publica hasta que el usuario los resuelva.

Inicio rápido

  1. Resuelve la entrada a un directorio de habilidad real. Acepta un archivo SKILL.md, una carpeta que contenga SKILL.md, o un enlace simbólico bajo .codex/skills, .agents/skills, .claude/skills u otra raíz local de habilidades.
  2. Ejecuta la verificación del entorno antes de empaquetar o publicar:
SKILL_OPEN_SOURCER_DIR="${CODEX_HOME:-$HOME/.codex}/skills/skill-open-sourcer"
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/check_release_env.py"

Los comandos locales requeridos son python3, git, node y npx. gh es la superficie de publicación predeterminada en GitHub, pero GitHub MCP/app o un remoto autenticado existente pueden reemplazarlo. Si no hay ninguna superficie de publicación en GitHub disponible, construye y valida el repositorio localmente, luego detente con la configuración faltante.

  1. Lee el punto de entrada de la habilidad e inspecciona directamente los archivos referenciados en scripts/, references/, assets/ y agents/. No copies carpetas locales no relacionadas.
  2. Ejecuta el escáner de seguridad:
SKILL_OPEN_SOURCER_DIR="${CODEX_HOME:-$HOME/.codex}/skills/skill-open-sourcer"
python3 "$SKILL_OPEN_SOURCER_DIR/scripts/scan_skill_release.py" /ruta/a/la-habilidad-o-SKILL.md
  1. Si el entorno y los escáneres de seguridad están limpios, crea un repositorio de lanzamiento nuevo fuera del directorio de la habilidad fuente.
  2. Para un repositorio de una sola habilidad, copia SKILL.md, agents/, references/, scripts/ y assets/ directamente a la raíz del repositorio. Usa skills/<nombre-de-la-habilidad>/ más skills.sh.json solo para repositorios de colección de múltiples habilidades.
  3. Añade los archivos de lanzamiento público descritos en references/release-package.md, incluyendo la puerta de calidad del README y las recomendaciones de metadatos de GitHub.
  4. Valida la habilidad empaquetada y el listado de npx skills antes de publicar.
  5. Publica en GitHub cuando las comprobaciones de bajo riesgo pasen, luego genera el texto de lanzamiento.

Lee references/release-package.md antes de escribir el repositorio de lanzamiento.

Contrato de salida

Para un lanzamiento exitoso, devuelve:

  • URL del repositorio de GitHub.
  • Comando de instalación usando npx skills.
  • Resultados de verificación para la validación de la habilidad y npx skills add <propietario>/<repo> --list.
  • Resumen breve de riesgos: qué se escaneó, qué se eliminó o saneó, y cualquier suposición residual.
  • Descripción de GitHub y recomendaciones de temas al crear un nuevo repositorio público.
  • Texto de lanzamiento: al menos una publicación en X/Twitter, más una versión opcional en chino cuando el usuario trabaja en chino.

Si está bloqueado, devuelve:

  • Lista de bloqueos con rutas de archivo y motivos.
  • Pasos de saneamiento sugeridos.
  • La siguiente acción más segura, usualmente "limpia estos archivos y luego vuelve a ejecutar el lanzamiento".

Reglas de seguridad

Detención total cuando alguno de estos aparece en el paquete fuente:

  • Claves API, tokens, claves privadas, cookies, credenciales, archivos .env o configuración de autenticación.
  • Rutas personales absolutas como /Users/..., /home/..., rutas de bóveda local o rutas de caché solo de máquina que confundirían a usuarios públicos.
  • Nombres de clientes, datos privados de la empresa, documentos internos, URL privadas, prompts no publicados o activos de pago/propietarios sin una licencia clara.
  • Enlaces simbólicos que escapan del paquete, binarios grandes, bases de datos, registros, perfiles de navegador, .DS_Store, __pycache__ o archivos de caché generados.
  • Licencia o propiedad poco clara para código/activos incluidos.

La publicación automática de bajo riesgo solo está permitida cuando el escáner y la revisión manual no encuentran bloqueos. Si el repositorio de GitHub objetivo ya existe con contenido no relacionado, detente y pregunta antes de sobrescribir o hacer force push.

Reglas de empaquetado

  • Mantén el comportamiento original de la habilidad intacto. Refactoriza solo lo suficiente para eliminar suposiciones privadas y hacer que la instalación pública sea confiable.
  • Por defecto, usa un diseño de raíz plana para una habilidad pública. Usa un diseño anidado skills/<nombre-de-la-habilidad>/ solo cuando un repositorio publique múltiples habilidades.
  • Prefiere un SKILL.md ligero; mueve la guía pública detallada a references/ solo cuando un agente la necesite realmente.
  • No añadas un README dentro de la carpeta de la habilidad. Coloca la documentación orientada a humanos en la raíz del repositorio de lanzamiento.
  • Conserva agents/openai.yaml cuando esté presente. Si está ausente, créalo con display_name, short_description y un default_prompt que mencione explícitamente $<nombre-de-la-habilidad>.
  • Incluye scripts/ solo para lógica auxiliar determinista que la habilidad realmente usa.
  • Incluye assets/ solo cuando la licencia y el tamaño sean seguros para publicación pública.
  • Usa MIT como licencia predeterminada solo cuando la habilidad fuente no tenga una licencia conflictiva y la propiedad esté clara.

Flujo de publicación

  1. Ejecuta scripts/check_release_env.py. Añade --repo-dir <repositorio-de-lanzamiento> al actualizar un repositorio local existente. Añade --check-npx-skills cuando el acceso a paquetes/red sea incierto.
  2. Si faltan comandos requeridos, detente y reporta los bloqueos exactos. Si solo falta gh, continúa solo cuando GitHub MCP/app esté disponible o el repositorio de lanzamiento ya tenga un remoto origin autenticado.
  3. Construye el repositorio de lanzamiento localmente.
  4. Valida con el validador de habilidades del sistema cuando esté disponible:
python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" .
  1. Crea o actualiza el repositorio de GitHub usando la superficie de GitHub disponible (gh, GitHub MCP/app o remoto existente). Evita force push.
  2. Sube la rama o main.
  3. Verifica el listado:
npx skills add <propietario>/<repo> --list
  1. Si el listado funciona, proporciona el comando de instalación:
npx skills add <propietario>/<repo> -g -a codex --skill <nombre-de-la-habilidad> -y

Ajusta la bandera del agente y la redacción de instalación cuando la plataforma objetivo no sea Codex.

Texto de lanzamiento

Después de un lanzamiento exitoso, redacta un texto social conciso que explique:

  • El problema que resuelve la habilidad.
  • Qué le da un usuario.
  • Qué publica o automatiza.
  • El comando de instalación o enlace al repositorio.
  • Un ejemplo concreto de solicitud.

Para usuarios chinos, incluye una publicación de lanzamiento natural en chino. Mantenla orientada a humanos; no expliques scripts en exceso.

Skills relacionados