Integración de flujos de trabajo de GitHub para Openclaw

Un CLI de Python sin dependencias para crear y enumerar pull requests de GitHub, comprobar el estado de los commits y enviar un único archivo mediante la Git Data API.

zhaoxinghua09-cell
v1.0.0
Oct 17, 2026
0
79
0

Instalar y Descargar

1. ClawHub CLI

La forma más rápida de instalar una habilidad directamente desde el registro.

npx clawhub@latest install github-workflow-integration

2. Instalación manual

Copia la carpeta de la habilidad a una de estas ubicaciones

Global
~/.openclaw/skills/
Espacio de trabajo
<project>/skills/

Prioridad: Espacio de trabajo > Local > Integrado

3. Instalación del prompt

Copia este prompt en OpenClaw para instalarlo automáticamente.

Ayúdame a instalar github-workflow-integration usando Clawhub. Si Clawhub no está instalado, instálalo primero (npm i -g clawhub).

¿Prefieres descargar?

Obtén los archivos originales de la habilidad en un archivo ZIP.

¿Qué es Integración de flujos de trabajo de GitHub?

La integración de flujos de trabajo de GitHub es un envoltorio ligero de línea de comandos para determinadas operaciones de la GitHub REST API, creado para Python 3.8+ y basado únicamente en la biblioteca estándar. Permite crear y enumerar pull requests, consultar el estado combinado de los commits y enviar un único archivo siguiendo la secuencia de la Git Data API: blob → tree → commit → ref. Los usuarios de Openclaw Skills pueden automatizar estos flujos sin instalar Git, GitHub CLI ni paquetes de Python de terceros.

La autenticación utiliza un Personal Access Token proporcionado por el usuario, que se lee de GITHUB_TOKEN al ejecutar el comando. El token no se guarda ni se muestra. Las operaciones de escritura se pueden previsualizar con --dry-run; antes de realizar cambios remotos, los usuarios deben confirmar el repositorio, la rama y el mensaje de destino. Se trata de una integración específica, no de un cliente de GitHub de propósito general.

Casos de uso de Integración de flujos de trabajo de GitHub

  • Crear un pull request desde un script sin instalar el CLI gh.
  • Enumerar los pull requests abiertos y devolver sus números, títulos, ramas y URL.
  • Comprobar el estado combinado de un commit o ref para consultar los resultados del CI.
  • Enviar un archivo local a una rama remota desde un trabajo de CI o un entorno restringido mediante la Git Data API.
  • Previsualizar una solicitud de escritura con --dry-run antes de cambiar el estado del repositorio.
  • Usar operaciones de la GitHub REST API en un entorno Python sin dependencias de terceros.

Cómo funciona Integración de flujos de trabajo de GitHub

  1. Comprueba que GITHUB_TOKEN esté definido. Si falta, el CLI termina con el código 2 y ofrece instrucciones de configuración, en lugar de intentar una solicitud sin autenticar.
  2. Ejecuta el comando correspondiente con el owner\/repo de destino y las opciones necesarias: pr create, pr list, status o push-file.
  3. Para las operaciones de escritura, ejecútalo primero con --dry-run y confirma el repositorio, la rama y el mensaje antes de enviar la solicitud real.
  4. El CLI de Python envía la solicitud a la GitHub REST API. Para enviar un único archivo, crea un blob, un tree y un commit y, después, actualiza el ref de destino.
  5. Revisa el resultado: las llamadas correctas devuelven detalles legibles, como el número o la URL del PR, el estado o el SHA del commit. Los errores de la API y de red se notifican por separado.
  6. Gestiona los códigos de salida: 0 indica éxito, 1 indica un error de API o de red y 2 indica un error de uso o la ausencia del token. Un 401 puede señalar que el token ha caducado o que el alcance es insuficiente; un 404 puede indicar que el repositorio o la rama no son correctos.

Configuración de Integración de flujos de trabajo de GitHub

Requisitos

  • Python 3.8 o posterior.
  • No se necesitan paquetes de Python de terceros ni instalar Git o GitHub CLI.
  • Un GitHub Personal Access Token (PAT) con el alcance repo necesario para las operaciones de destino. Este skill utiliza autenticación PAT, no OAuth.

Configurar la autenticación

Crea un PAT en GitHub, en Settings → Developer settings → Personal access tokens, y proporciónalo mediante la variable de entorno GITHUB_TOKEN. No incluyas el token en un commit ni en la salida de comandos.

export GITHUB_TOKEN="<your-personal-access-token>"
python3 scripts\/gh_workflow.py pr list --repo owner\/repo

Ejecutar comandos

Usa el punto de entrada scripts\/gh_workflow.py del skill. Para las operaciones de escritura, haz primero una previsualización y verifica el destino solicitado antes de ejecutar sin --dry-run.

python3 scripts\/gh_workflow.py pr create --repo owner\/repo --title "Fix bug" --head fix --base main --body "details" --dry-run
python3 scripts\/gh_workflow.py status --repo owner\/repo --ref main
python3 scripts\/gh_workflow.py push-file --repo owner\/repo --path .\/local.txt --message "add local.txt" --branch main

Esquema de datos y taxonomía de Integración de flujos de trabajo de GitHub

El skill es un CLI sin estado: no define una base de datos local, archivos de metadatos generados ni almacenamiento de tokens. Las entradas son argumentos de línea de comandos y los resultados se escriben en un formato legible para las personas.

Elemento Detalles
Punto de entrada scripts\/gh_workflow.py
Entorno de ejecución Python 3.8+; solo biblioteca estándar
Autenticación Variable de entorno GITHUB_TOKEN, leída en el momento de la llamada
Identificador del repositorio owner\/repo
Comandos pr create, pr list, status, push-file
Simulación --dry-run previsualiza la forma de la solicitud sin enviarla
Salida Detalles del PR, estado, SHA del commit o información de error
Códigos de salida 0 éxito; 1 error de API/red; 2 error de uso o token ausente

En push-file, el flujo de la Git Data API crea un blob, construye un tree, crea un commit y actualiza un ref. El token no se escribe en disco, no se registra en los logs ni se muestra.

Funciones avanzadas de Integración de flujos de trabajo de GitHub

  • Acceso a la API sin dependencias: utiliza las funciones de red de la biblioteca estándar de Python, sin paquetes de terceros ni subprocesos.
  • Envío de un único archivo mediante la Git Data API: escribe un archivo en una rama remota siguiendo la secuencia blob → tree → commit → ref; resulta útil cuando no está disponible un push normal de Git.
  • Previsualizaciones de simulación: permite inspeccionar la forma de la solicitud antes de enviar las operaciones de escritura compatibles.
  • Límite de autenticación explícito: requiere un PAT creado por el usuario en GITHUB_TOKEN; no inicia OAuth ni abre un navegador.
  • Gestión de errores práctica: distingue los errores de API/red de los errores de uso y de token ausente, y proporciona códigos de salida para scripts.
  • Alcance específico: cubre la creación y enumeración de PR, el estado combinado de los commits y el envío de un único archivo. No gestiona merges, comentarios de revisión, releases, el envío de workflows ni la instalación de GitHub App.
  • Adecuado para Openclaw Skills: proporciona un componente compacto de flujo de trabajo de GitHub para scripts y tareas de CI en los que importa reducir las dependencias y evitar que las credenciales se guarden de forma persistente.

SKILL.md


Cargando

Habilidades relacionadas de Openclaw

METADATA

Github Stars: 0
forks: 0

Presentado*