Herramientas del Gestor de GitHub

Guía completa para usar las herramientas de voz del Gestor de GitHub para la gestión de repositorios

El Gestor de GitHub proporciona un conjunto completo de herramientas activadas por voz para gestionar repositorios de GitHub, issues, pull requests y más. Cada herramienta está diseñada para ser activada por comandos de lenguaje natural y palabras clave específicas.

Gestión de Repositorios

Obtener Repositorios del Usuario

Herramienta: get_user_repositories

Descripción: Recuperar una lista de repositorios para el usuario autenticado.

Frases de activación:

  • "Mostrar mis repositorios"
  • "Listar mis repos de GitHub"
  • "¿Qué repos tengo?"
  • "Mostrar mis repositorios privados/públicos"
  • "Obtener mis últimos repositorios"

Parámetros:

  • visibility: Filtrar por visibilidad del repositorio (all, public, private)
  • affiliation: Filtrar por afiliación del usuario (owner, collaborator, organization_member)
  • sort: Ordenar repositorios por (created, updated, pushed, full_name)
  • per_page: Número de resultados por página

Obtener Detalles del Repositorio

Herramienta: get_repository_details

Descripción: Obtener información completa sobre un repositorio específico.

Frases de activación:

  • "Mostrar detalles de [nombre del repo]"
  • "Háblame del repositorio [propietario]/[repo]"
  • "¿Cuál es el estado de [repo]?"
  • "Obtener información sobre [repo]"
  • "Describir repositorio [repo]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)

Obtener Contenidos del Repositorio

Herramienta: get_repository_contents

Descripción: Explorar el contenido de un directorio o archivo en un repositorio.

Frases de activación:

  • "Mostrarme los archivos en [repo]"
  • "Listar contenidos de [ruta] en [repo]"
  • "¿Qué hay en el directorio [carpeta]?"
  • "Explorar estructura del repositorio [repo]"
  • "Mostrarme el directorio raíz de [repo]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • path: Ruta al directorio o archivo (opcional, predeterminado raíz)
  • ref: Rama o referencia de commit (opcional, predeterminado rama principal)

Obtener Contenido de Archivo

Herramienta: get_file_content

Descripción: Recuperar el contenido sin procesar de un archivo específico en un repositorio.

Frases de activación:

  • "Mostrarme el contenido de [archivo]"
  • "Leer [archivo] de [repo]"
  • "Obtener el código de [archivo]"
  • "Mostrar contenido de [archivo]"
  • "Abrir [archivo] en [repo]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • path: Ruta al archivo (requerido)
  • ref: Rama o referencia de commit (opcional)

Obtener Árbol del Repositorio

Herramienta: get_repository_tree

Descripción: Obtener la estructura completa del árbol Git de un repositorio.

Frases de activación:

  • "Mostrarme la estructura completa de [repo]"
  • "Obtener el árbol de archivos completo"
  • "Mostrar jerarquía del repositorio"
  • "Mostrar todos los archivos y carpetas en [repo]"
  • "Mapear la estructura del proyecto"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • tree_sha: SHA del árbol o nombre de rama (opcional, predeterminado rama principal)
  • recursive: Obtener árbol recursivamente (opcional, predeterminado true)

Buscar Código en el Repositorio

Herramienta: search_repository_code

Descripción: Buscar patrones de código, funciones o texto dentro de un repositorio.

Frases de activación:

  • "Buscar [término] en [repo]"
  • "Encontrar [nombre de función] en el código"
  • "Buscar [patrón] en [repo]"
  • "Buscar en [repo] por [palabra clave]"
  • "Encontrar todas las ocurrencias de [texto]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • query: Consulta de búsqueda (requerido)
  • path: Limitar búsqueda a ruta específica
  • language: Filtrar por lenguaje de programación
  • per_page: Resultados por página

Analizar Estructura de Código

Herramienta: analyze_code_structure

Descripción: Proporcionar información sobre organización del proyecto, arquitectura y patrones.

Frases de activación:

  • "Analizar la estructura de [repo]"
  • "¿Cuál es la arquitectura de este proyecto?"
  • "Dame información sobre [repo]"
  • "Analizar base de código de [repo]"
  • "Describir la organización del proyecto"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • include_dependencies: Incluir análisis de dependencias (opcional)

Obtener Ramas del Repositorio

Herramienta: get_repository_branches

Descripción: Listar todas las ramas en un repositorio.

Frases de activación:

  • "Mostrar ramas en [repo]"
  • "Listar todas las ramas"
  • "¿Qué ramas existen en [repo]?"
  • "Obtener lista de ramas para [repo]"
  • "Mostrarme las ramas disponibles"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)

Obtener Etiquetas del Repositorio

Herramienta: get_repository_labels

Descripción: Obtener todas las etiquetas disponibles en un repositorio.

Frases de activación:

  • "Mostrar etiquetas para [repo]"
  • "Listar etiquetas de issues"
  • "¿Qué etiquetas están disponibles?"
  • "Obtener todas las etiquetas en [repo]"
  • "Mostrarme las opciones de etiquetas"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)

Gestión de Issues

Obtener Issues del Repositorio

Herramienta: get_repository_issues

Descripción: Recuperar issues para un repositorio específico con opciones de filtrado.

Frases de activación:

  • "Mostrar issues en [repo]"
  • "Listar todos los issues abiertos"
  • "Obtener issues con etiqueta [etiqueta]"
  • "Mostrar issues cerrados"
  • "¿Qué issues necesitan atención?"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • state: Filtrar por estado (open, closed, all)
  • labels: Filtrar por etiquetas (separadas por comas)
  • sort: Ordenar por (created, updated, comments)
  • direction: Dirección de ordenamiento (asc, desc)
  • per_page: Resultados por página

Obtener Detalles del Issue

Herramienta: get_issue_details

Descripción: Obtener información completa sobre un issue específico.

Frases de activación:

  • "Mostrarme el issue #[número]"
  • "Obtener detalles del issue [número]"
  • "¿Cuál es el estado del issue #[número]?"
  • "Háblame del issue [número]"
  • "Abrir issue número [número]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • issue_number: Número del issue (requerido)

Crear Issue

Herramienta: create_issue

Descripción: Crear un nuevo issue en un repositorio. Automáticamente menciona @claude en la descripción.

Frases de activación:

  • "Crear un nuevo issue"
  • "Abrir un issue sobre [tema]"
  • "Reportar un bug"
  • "Registrar un issue para [problema]"
  • "Crear issue titulado [título]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • title: Título del issue (requerido)
  • body: Descripción del issue
  • labels: Etiquetas a aplicar
  • assignees: Usuarios a asignar

Actualizar Issue

Herramienta: update_issue

Descripción: Modificar un issue existente. Automáticamente menciona @claude en las actualizaciones.

Frases de activación:

  • "Actualizar issue #[número]"
  • "Cambiar título del issue [número]"
  • "Cerrar issue #[número]"
  • "Reabrir issue [número]"
  • "Agregar etiquetas al issue [número]"
  • "Asignar issue [número] a [usuario]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • issue_number: Número del issue (requerido)
  • title: Nuevo título
  • body: Nueva descripción
  • state: Cambiar estado (open, closed)
  • labels: Actualizar etiquetas
  • assignees: Actualizar asignados

Agregar Comentario al Issue

Herramienta: add_issue_comment

Descripción: Agregar un comentario a un issue o pull request. Automáticamente menciona @claude.

Frases de activación:

  • "Comentar en el issue #[número]"
  • "Agregar un comentario al issue [número]"
  • "Responder al issue [número]"
  • "Publicar comentario en el PR #[número]"
  • "Responder al issue [número]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • issue_number: Número del issue o PR (requerido)
  • body: Texto del comentario (requerido)

Obtener Comentarios del Issue

Herramienta: get_issue_comments

Descripción: Recuperar todos los comentarios para un issue o pull request.

Frases de activación:

  • "Mostrar comentarios en el issue #[número]"
  • "Obtener comentarios del issue [número]"
  • "Leer comentarios del PR #[número]"
  • "Listar todos los comentarios en el issue [número]"
  • "¿Qué dice la gente sobre el issue [número]?"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • issue_number: Número del issue o PR (requerido)

Obtener Comentario del Issue

Herramienta: get_issue_comment

Descripción: Obtener detalles sobre un comentario específico por su ID.

Frases de activación:

  • "Mostrar comentario [id]"
  • "Obtener comentario con ID [id]"
  • "Leer comentario específico [id]"
  • "Mostrar comentario número [id]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • comment_id: ID del comentario (requerido)

Gestión de Pull Requests

Obtener Pull Requests

Herramienta: get_pull_requests

Descripción: Listar pull requests para un repositorio con opciones de filtrado.

Frases de activación:

  • "Mostrar pull requests"
  • "Listar PRs abiertos"
  • "Obtener PRs para [repo]"
  • "Mostrar pull requests fusionados"
  • "¿Qué PRs necesitan revisión?"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • state: Filtrar por estado (open, closed, all)
  • head: Filtrar por rama head
  • base: Filtrar por rama base
  • sort: Ordenar por (created, updated, popularity)
  • direction: Dirección de ordenamiento (asc, desc)
  • per_page: Resultados por página

Obtener Detalles del Pull Request

Herramienta: get_pull_request_details

Descripción: Obtener información completa sobre un pull request específico.

Frases de activación:

  • "Mostrar PR #[número]"
  • "Obtener detalles del pull request [número]"
  • "¿Cuál es el estado del PR [número]?"
  • "Háblame del pull request [número]"
  • "Revisar PR número [número]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • pr_number: Número del pull request (requerido)

Crear Pull Request

Herramienta: create_pull_request

Descripción: Crear un nuevo pull request. Automáticamente menciona @claude en la descripción.

Frases de activación:

  • "Crear un pull request"
  • "Abrir un PR desde [rama] a [base]"
  • "Enviar PR para revisión"
  • "Crear pull request titulado [título]"
  • "Fusionar [head] en [base]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • title: Título del PR (requerido)
  • head: Rama head (requerido)
  • base: Rama base (requerido)
  • body: Descripción del PR
  • draft: Crear como borrador de PR

Actualizar Pull Request

Herramienta: update_pull_request

Descripción: Modificar un pull request existente. Automáticamente menciona @claude.

Frases de activación:

  • "Actualizar PR #[número]"
  • "Cambiar título del pull request [número]"
  • "Cerrar PR [número]"
  • "Editar pull request [número]"
  • "Modificar descripción del PR"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • pr_number: Número del pull request (requerido)
  • title: Nuevo título
  • body: Nueva descripción
  • state: Cambiar estado (open, closed)

Monitoreo de PRs

Iniciar Monitoreo de PRs

Herramienta: start_pr_monitoring

Descripción: Comenzar a monitorear un repositorio para nuevos pull requests con notificaciones de voz.

Frases de activación:

  • "Iniciar monitoreo de [repo] para PRs"
  • "Vigilar [repo] para nuevos pull requests"
  • "Alertarme sobre nuevos PRs en [repo]"
  • "Monitorear pull requests"
  • "Rastrear nuevos PRs en [repo]"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)
  • checkIntervalMs: Intervalo de verificación en milisegundos (opcional, predeterminado: 30000)
  • voiceAnnouncements: Habilitar notificaciones de voz (opcional, predeterminado: true)

Detener Monitoreo de PRs

Herramienta: stop_pr_monitoring

Descripción: Detener el monitoreo de un repositorio para pull requests.

Frases de activación:

  • "Detener monitoreo de [repo]"
  • "Dejar de vigilar PRs"
  • "Deshabilitar alertas de PR para [repo]"
  • "Apagar monitoreo de PRs"
  • "Dejar de rastrear pull requests"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)

Verificar Estado del Monitoreo de PRs

Herramienta: check_pr_monitoring_status

Descripción: Ver el estado actual del monitoreo de PRs para todos o repositorios específicos.

Frases de activación:

  • "¿Qué repos estoy monitoreando?"
  • "Mostrar estado de monitoreo"
  • "Verificar monitoreo de PRs para [repo]"
  • "Listar repositorios monitoreados"
  • "¿Estoy vigilando [repo]?"

Parámetros:

  • owner: Propietario del repositorio (opcional)
  • repo: Nombre del repositorio (opcional)

Verificar Manualmente Nuevos PRs

Herramienta: manually_check_new_prs

Descripción: Realizar una verificación única de nuevos pull requests.

Frases de activación:

  • "Verificar nuevos PRs ahora"
  • "¿Hay nuevos pull requests en [repo]?"
  • "Verificar manualmente [repo] para PRs"
  • "Buscar PRs recientes"
  • "Verificación rápida de pull requests"

Parámetros:

  • owner: Nombre de usuario del propietario del repositorio (requerido)
  • repo: Nombre del repositorio (requerido)

Herramientas de Navegación

Navegar a Ticket

Herramienta: navigate_to_ticket

Descripción: Navegar directamente a un issue o pull request de GitHub por número.

Frases de activación:

  • "Ir al issue #[número]"
  • "Abrir ticket [número]"
  • "Navegar al PR [número]"
  • "Mostrarme el issue número [número]"
  • "Llevarme al pull request [número]"

Parámetros:

  • ticket_number: Número de issue o PR (requerido)
  • reason: Razón de la navegación

Herramienta: navigate_to_path

Descripción: Navegar a rutas y páginas específicas de la aplicación.

Frases de activación:

  • "Ir a [nombre de página]"
  • "Navegar a configuración"
  • "Abrir el panel de control"
  • "Llevarme a [sección]"
  • "Mostrarme la [página]"

Parámetros:

  • path: Ruta de la aplicación (requerido)
  • query: Parámetros de consulta
  • reason: Razón de navegación

Listar Rutas de la Aplicación

Herramienta: list_app_routes

Descripción: Mostrar todas las rutas de aplicación disponibles y opciones de navegación.

Frases de activación:

  • "¿A qué páginas puedo navegar?"
  • "Mostrar rutas disponibles"
  • "Listar todas las páginas"
  • "¿Qué opciones de navegación hay?"
  • "Mostrarme todas las rutas disponibles"

Parámetros: Ninguno


Navegación en la Página

Herramienta: in_page_navigation

Descripción: Controlar el desplazamiento y la navegación dentro de la página actual.

Frases de activación:

  • "Desplazar hacia abajo"
  • "Ir arriba"
  • "Desplazar al final"
  • "Página arriba/abajo"
  • "Desplazar a [elemento]"

Parámetros:

  • action: Acción de navegación (scroll_down, scroll_up, page_down, page_up, scroll_to_top, scroll_to_bottom, scroll_to_element)
  • selector: Selector CSS para scroll_to_element
  • amount: Cantidad de desplazamiento en píxeles

Regresar a la Conversación

Herramienta: return_to_conversation

Descripción: Regresar a la interfaz de conversación por voz después de navegar.

Frases de activación:

  • "Volver a la conversación"
  • "Regresar al chat de voz"
  • "Llevarme de vuelta"
  • "Volver a la conversación"
  • "Regresar a la pantalla principal"

Parámetros:

  • reason: Razón para regresar

Gestión del Sistema

Reiniciar Estado del Agente

Herramienta: reset_agent_state

Descripción: Limpiar varios tipos de estado y contexto del agente para empezar de nuevo.

Frases de activación:

  • "Reiniciar el agente"
  • "Limpiar todo el estado"
  • "Empezar de nuevo"
  • "Limpiar historial de conversación"
  • "Reiniciar espacio de trabajo"

Parámetros:

  • clearWorkspace: Limpiar datos del espacio de trabajo (predeterminado: true)
  • clearConversation: Limpiar historial de conversación (predeterminado: true)
  • clearEventLogs: Limpiar registros de eventos (predeterminado: true)
  • clearNavigationHistory: Limpiar historial de navegación (predeterminado: true)
  • clearToolCallHistory: Limpiar historial de llamadas a herramientas (predeterminado: true)
  • clearPRMonitoring: Limpiar estado de monitoreo de PRs (predeterminado: false)
  • clearAuthentication: Limpiar tokens de autenticación (predeterminado: false)
  • clearUserPreferences: Limpiar preferencias de usuario (predeterminado: false)
  • clearCache: Limpiar cachés (predeterminado: true)
  • clearTempFiles: Limpiar archivos temporales (predeterminado: true)

Consejos para Uso Efectivo

  1. Lenguaje Natural: Las herramientas están diseñadas para entender lenguaje natural. No necesitas usar frases exactas.

  2. Conciencia del Contexto: El agente recuerda el contexto de tu conversación, por lo que puedes referirte a "el repositorio" o "ese issue" después de mencionarlo una vez.

  3. Menciones Automáticas: Al crear o actualizar issues, PRs y comentarios, el agente incluye automáticamente menciones @claude para mantener la trazabilidad.

  4. Retroalimentación por Voz: Muchas herramientas proporcionan retroalimentación por voz cuando se completan las operaciones, especialmente para tareas de monitoreo y navegación.

  5. Encadenamiento de Operaciones: Puedes encadenar múltiples operaciones juntas, como "Crear un issue sobre el bug que acabamos de discutir y asignármelo".

  6. Valores Predeterminados Inteligentes: La mayoría de los parámetros opcionales tienen valores predeterminados sensatos, por lo que solo necesitas especificar lo que quieres cambiar.

  7. Manejo de Errores: El agente proporcionará mensajes de error útiles si algo sale mal y sugerirá alternativas cuando sea posible.

Flujos de Trabajo Comunes

Flujo de Trabajo de Reporte de Bugs

  1. "Crear un issue titulado 'Botón no funciona en móvil'"
  2. "Agregar las etiquetas bug y alta prioridad"
  3. "Asignarlo al equipo móvil"
  4. "Agregar un comentario con la captura de pantalla"

Flujo de Trabajo de Revisión de PR

  1. "Mostrarme los pull requests abiertos"
  2. "Obtener detalles del PR #42"
  3. "Mostrarme los cambios en el PR #42"
  4. "Agregar un comentario aprobando los cambios"

Exploración de Repositorio

  1. "Mostrarme la estructura del repositorio"
  2. "Buscar código de autenticación"
  3. "Mostrarme el contenido de la carpeta auth"
  4. "Obtener el contenido del archivo login.js"

Configuración de Monitoreo

  1. "Iniciar monitoreo de my-repo para nuevos PRs"
  2. "Verificar estado de monitoreo"
  3. "Alertarme por voz cuando lleguen nuevos PRs"
  4. "Detener monitoreo cuando termine"