Sincroniza issues, pull requests y comentarios de GitHub mediante runners de pull, push y actividad con autoridad limitada.
- Estrellas en GitHub
- 103
- Archivos
- 6
- Último commit
- 8 nov 2026
- Licencia
- Apache-2.0
- Herramientas permitidas
- —
¿Qué hace la skill github?
github es una agent skill. Sincroniza issues, pull requests y comentarios de GitHub mediante runners de pull, push y actividad con autoridad limitada.
Resumen generado a partir del SKILL.md de la skill.
Sobre la skill github
Los desarrolladores que gestionan flujos de trabajo en repositorios pueden sincronizar issues, pull requests y comentarios de GitHub a través de un sistema estructurado de operaciones de pull y push. Este SKILL permite a un agente inspeccionar registros específicos proporcionando el nombre del repositorio y el tipo de recurso, como issues o comentarios, o ejecutar cambios previamente decididos mediante el método sync. Soporta el procesamiento por lotes de hasta veinte mutaciones en un solo push, como la creación de nuevos issues o la actualización de pull requests existentes, garantizando que cada cambio sea verificado mediante una lectura de comprobación independiente.
Cuando un agente necesita resumir cambios recientes, la herramienta de actividad proporciona una vista compacta de todo lo actualizado en un repositorio desde una marca de tiempo específica. Esto es útil para generar resúmenes diarios sin tener que procesar todos los registros de GitHub. El SKILL depende de una sesión o token de GitHub existente y requiere identificadores de repositorio explícitos para funcionar. Distingue entre planificar un cambio y ejecutarlo, asegurando que no ocurran efectos remotos hasta que se active explícitamente un push.
Lo que un agente puede hacer con ella
- 1Resumir cambios recientes en el repositorioUn agente puede obtener una lista compacta de todos los issues y pull requests actualizados desde un momento específico para crear un informe de resumen.
- 2Ejecutar actualizaciones de issues por lotesUn desarrollador puede enviar un único comando para aplicar hasta veinte mutaciones diferentes, como cerrar múltiples issues a la vez.
- 3Verificar cambios con readbackEl sistema garantiza que los cambios enviados se hayan aplicado realmente realizando una lectura independiente del elemento tras la actualización.
- 4Planificar tareas de sincronización complejasLos usuarios pueden generar un plan sin efectos para ver exactamente qué pretende hacer una operación de pull o push antes de que se modifique cualquier estado remoto.
Escrito a partir del SKILL.md de la skill. Cada caso de uso se verifica con una cita del mismo.
Cómo instalar la skill github
Cada comando copia la carpeta de la skill al directorio de skills del cliente. Reinicia el cliente o inicia una nueva sesión para cargarla.Instalar la skill github en Claude Code
~/.claude/skills/github/SKILL.md
$ npx degit runxhq/runx/skills/github ~/.claude/skills/githubInstalar la skill github en Claude Code (project)
.claude/skills/github/SKILL.md
$ npx degit runxhq/runx/skills/github .claude/skills/githubInstalar la skill github en Codex
~/.agents/skills/github/SKILL.md
$ npx degit runxhq/runx/skills/github ~/.agents/skills/githubInstalar la skill github en Gemini CLI
~/.gemini/skills/github/SKILL.md
$ npx degit runxhq/runx/skills/github ~/.gemini/skills/githubInstalar la skill github en Claude.ai
npx degit runxhq/runx/skills/github github && zip -r github.zip github # claude.ai → Customize → Skills → + → Create skill → Upload a skill → github.zip
Verificaciones automáticas
Ejecutado 14 nov 2026Informe completo →Superó nuestras comprobaciones automáticas. No es una auditoría de seguridad: lee los scripts antes de dejar que un agente los ejecute. Cómo funcionan las verificaciones · Qué corregir para obtener más puntos
- Repositorio de origen vinculado y accesiblerunxhq/runx/skills/github is public and reachablegithub.com/runxhq/runx/tree/HEAD/skills/github ↗Aprobado
- Licencia de código abierto (OSI)Apache-2.0spdx.org/licenses/Apache-2.0.html ↗Aprobado
- Commit o lanzamiento en el último añoLast commit 2026-11-08github.com/runxhq/runx/commits ↗Aprobado
- Sin descargar y ejecutar ni robo de credenciales en los scripts2 scripts read; no download-and-run, remote eval, base64 execution or credential uploadAprobado
- Sin instrucciones ocultas en SKILL.mdNo override phrases, safeguard switches, credential requests or hidden charactersgithub.com/runxhq/runx/blob/HEAD/skills/github/SKILL.md ↗Aprobado
- Las herramientas preaprobadas están acotadasNo pre-approved tools; the agent asks before using onegithub.com/runxhq/runx/blob/HEAD/skills/github/SKILL.md ↗Aprobado
- SKILL.md sigue el formato de Agent Skillsthe description does not say when to use the skillgithub.com/runxhq/runx/blob/HEAD/skills/github/SKILL.md ↗Hallazgo
SKILL.md
Ver en GitHubGitHub
Read actual GitHub issues, pull requests and comments with the selected account,
or apply exact already-decided changes and confirm them independently. For a
normal read, give repo and optionally kind, number, page and limit.
The read authority is selected by the existing native operation; callers do not
need to construct synchronization direction or scope just to inspect an issue.
The default github runner reads one bounded page or exact numbered record.
kind is issues (the shared GitHub issue feed, including PRs), pull_requests
or comments. Comments are issue/PR conversation comments; review diff comments
are a different capability. comments requires the issue or PR number. Exact
numbered reads return the actual current record; state/label filters are for
list queries. Raw provider records and the original native operation evidence
are preserved. A bounded page never establishes complete conversation/history
coverage, including when filtering PRs out of an issue-feed page.
The explicit sync runner performs the requested advanced pull or push. plan
is the explicit no-effect runner; pull and push remain explicit execution
lanes for compatible callers. Pulls are bounded reads. A push carries one to
twenty typed mutations per call that one GitHub operation applies, and returns each
item's outcome. It closes only on an independent GitHub readback of every
applied item. An item whose outcome is unknown holds the push for
reconciliation and is never silently retried. activity reads what changed
in a repository since a time, compact enough to summarise. No GitHub token
enters this package.
When to use it
Use the default for actual bounded records. Resolve an omitted repository in the host with ordinary git remote/context tools, verify the exact owner/name, and pass it explicitly. Do not guess a repository, treat a folder name as one, or introduce a separate repository/cursor state store.
Use sync when an operator needs a reproducible pull or push contract for
issues, pull requests, or threads, especially when cursor state must survive
across runs. Use plan only when the requested outcome is a plan. Use pull
for an explicitly selected read lane. Use activity to learn what changed in
a repository since a time, such as since the last check of a daily summary:
it reads issues and pull requests together and returns the fields a reader
needs rather than GitHub's whole records. Use push for already-decided issue,
pull-request, or comment changes of one kind. A call accepts up to twenty changes, matching the connector's batch contract; split larger work into separate calls and retain each result. Batches are bounded and
best-effort, not atomic: a refused item does not stop the rest, the result
identifies each item, and the operator reconciles before retrying. Use github-issue-triage to decide what an issue means
and github-issue-to-pr to govern an implementation lane.
Do not use a plan as evidence that remote state was read or changed. Only the
native runx.provider.operation.v1 result from pull or push is provider
evidence. Do not silently turn a denied push into a pull.
How it works
- Validate the exact
owner/namerepository, direction, resource kind, bounded filters, maximum result count, and requested scope. - A
pullplan requires read scope and records the exact resources a provider may fetch. - A
pushplan requires write scope and one to twenty typed mutations per call that one GitHub operation applies:issues.create,issues.update,pullrequests.update,comments.create, orcomments.update. It rejects unknown fields, oversized content, and mixed kinds, then returnsready_for_execution; planning itself does not grant provider authority. - Optional
plan_and_append_cursorcalls the store'sevents.appendandprojection.readto append the bounded plan and read the projection back. That proves local cursor persistence, not GitHub synchronization; this package does not own a second cursor database or storage adapter. - The explicit
syncrunner selects the same bounded read or write path from the validated direction.pullcalls the planned read (issues.list,issues.read,pullrequests.list,pullrequests.read, orcomments.list) withrepo.read.pushcalls the planned write once underrepo.writefor issue and pull-request changes orissue.commentfor comment changes: the runtime sends each item, records each outcome, and reads every applied item back before the push closes. Both run under the GitHub instance selected here: the signed-inghsession or a stored token. activitycallsissues.listwithrepo.readfor one page of 100 of everything updated at or aftersince, open or closed. GitHub's listing holds pull requests too, so one read finds both. The result keeps each item's number, kind, title, state (mergedfor a merged pull request), whether it was opened at or aftersince, its author and whether that is a bot, its times, labels, assignees, comment count and link, and the first 600 characters of its body with the count left out. The provider is queried in updated/descending order, then the page is projected in that order; a full page names a possiblenext_page.
Inputs and result
repois exactlyowner/name.- The default needs only
repo: e.g.{repo: "runxhq/runx", kind: "pull_requests", number: 554}reads that exact PR. To continue comments usekind: comments, itsnumber, and the nextpage, retaining the same query and original provider receipt. directionispullorpushfor the explicitsyncand planning phases.resourcescontains the issue, PR, thread, orbatchselector and a limit no greater than 100. A push has one to twentymutationsentries withpath,op, and an exact typedpayload. Issue and PR changes useop: update; a new issue usespath: issuesandop: create; new thread comments useop: comment. Bodies are capped at 65,536 characters. Pulls return GitHub's records whole.scopeis the requested read or write scope.activitytakesrepo,since(RFC 3339) and an optionalpage, and returnsactivity: the repository,since, the page, its items, andnext_pagewhen more may follow. Its provider evidence is the read'srunx.provider.operation.v1, kept in the run's record.
The runx/github.sync_plan.v1 plan records exact direction, provider operation,
scope, filters, blockers, authority posture, cursor state when used, and the
explicit absence of remote effects. Execution additionally emits the native
provider-operation packet; it does not rewrite the planning packet to imply a
remote effect.
Stop conditions
- Refuse malformed repositories, unknown resource kinds, unbounded selectors, limits above the contract, more than twenty mutations in one call, unknown mutation fields, or content beyond the declared bounds.
- Refuse push when write scope is missing; do not degrade silently.
- Do not treat local cursor persistence as remote provider readback.
- Refuse a push that mixes new issues, issue, pull-request, and comment changes; send each kind as its own push.
- Refuse when no GitHub instance is selected, or the selected one lacks the scope. Never treat an available instance as evidence of the intended repository.
- Do not claim comments, labels, issues, or PRs were read or changed until the native provider operation proves the expected access, operation, and readback.
Example
A caller wants to pull the next 50 open issues after cursor 2. Planning can
persist that cursor locally; pull then performs issues.list through the
selected instance and returns the provider result. To close issue 241, a push
carries path: issues/241, op: update, and
payload: {state: closed, state_reason: completed}. Runx applies only that
issue update through issues.update under repo.write, and reads issue 241
back. A morning summary calls activity with since set to its last check
and reports the items that are new, or changed by someone else.
For composition, consume the returned native provider-operation packet directly.
Pass already read issue fields to github-issue-triage respond, preserving
repository, exact number, title, state, full relevant body and original source
link/receipt. This path does not fetch or post again. pull and push retain
their complete typed selectors for power users; the common reader does not
replace them. Local cursor persistence remains the explicit store-owned phase.
Archivos de esta skill
6Preguntas sobre la skill github
¿Cómo instalo la skill github en Claude Code?
Ejecuta npx degit runxhq/runx/skills/github ~/.claude/skills/github. Claude Code carga las skills desde ~/.claude/skills (todos los proyectos) o .claude/skills (un proyecto) y usa una skill cuando su descripción coincide con la tarea.
¿Qué clientes pueden usar la skill github?
Cualquier cliente que lea el formato Agent Skills: Claude Code, Codex, Gemini CLI y claude.ai (subir como ZIP). Los scripts de la skill se ejecutan solo donde el cliente permite la ejecución de código.
¿Qué puede hacer el activity runner?
El activity runner lee qué ha cambiado en un repositorio desde un momento específico, proporcionando un resumen compacto de issues y pull requests.
¿Cuántas mutaciones se pueden incluir en una sola llamada de push?
Una sola llamada de push puede incluir entre una y veinte mutaciones tipadas.
¿Puedo mezclar diferentes tipos de cambios en una sola operación de push?
No, no puedes mezclar nuevos issues, pull requests y cambios en comentarios en un mismo push; cada tipo debe enviarse en su propio push.