GitHub
Utilice HanuBees en problemas y solicitudes de extracción de GitHub.
HanuBees se integra con su flujo de trabajo GitHub. Mencione /HanuBees o /oc en su comentario y HanuBees ejecutará tareas dentro de su corredor de acciones GitHub.
Características
- Clasificación de problemas: Pídele a HanuBees que investigue un problema y te lo explique.
- Reparar e implementar: pídale a HanuBees que solucione un problema o implemente una función. Y funcionará en una nueva sucursal y enviará un PR con todos los cambios.
- Seguro: HanuBees se ejecuta dentro de los corredores de tu GitHub.
Instalación
Ejecute el siguiente comando en un proyecto que se encuentra en un repositorio GitHub:
HanuBees github installEsto lo guiará a través de la instalación de la aplicación GitHub, la creación del flujo de trabajo y la configuración de secretos.
Configuración manual
O puede configurarlo manualmente.
-
Instale la aplicación GitHub
Dirígete a github.com/apps/HanuBees-agent. Asegúrese de que esté instalado en el repositorio de destino.
-
Agregar el flujo de trabajo
Agregue el siguiente archivo de flujo de trabajo a
.github/workflows/HanuBees.ymlen su repositorio. Asegúrese de configurar las clavesmodelapropiadas y API requeridas enenv..github/workflows/HanuBees.yml name: HanuBeeson:issue_comment:types: [created]pull_request_review_comment:types: [created]jobs:HanuBees:if: |contains(github.event.comment.body, '/oc') ||contains(github.event.comment.body, '/HanuBees')runs-on: ubuntu-latestpermissions:id-token: writesteps:- name: Checkout repositoryuses: actions/checkout@v6with:fetch-depth: 1persist-credentials: false- name: Run HanuBeesuses: varsansri/hanubees-coding-agent/github@latestenv:ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}with:model: anthropic/claude-sonnet-4-20250514# share: true# github_token: xxxx -
Guarda las claves API en secretos
En la configuración de tu organización o proyecto, expande Secretos y variables a la izquierda y selecciona Acciones. Y agregue las claves API requeridas.
Configuración
-
model: El modelo a usar con HanuBees. Toma el formato deprovider/model. Esto es obligatorio. -
agent: El agente a utilizar. Debe ser un agente primario. Vuelve adefault_agentdesde la configuración o"build"si no se encuentra. -
share: si se comparte la sesión HanuBees. El valor predeterminado es verdadero para repositorios públicos. -
prompt: mensaje personalizado opcional para anular el comportamiento predeterminado. Utilice esto para personalizar cómo HanuBees procesa las solicitudes. -
token: token de acceso GitHub opcional para realizar operaciones como crear comentarios, confirmar cambios y abrir solicitudes de extracción. De forma predeterminada, HanuBees usa el token de acceso a la instalación de la aplicación HanuBees GitHub, por lo que las confirmaciones, los comentarios y las solicitudes de extracción aparecen como provenientes de la aplicación.Alternativamente, puede usar el GitHub Action Runner
GITHUB_TOKENincorporado sin instalar la aplicación HanuBees GitHub. Solo asegúrese de otorgar los permisos necesarios en su flujo de trabajo:permissions:id-token: writecontents: writepull-requests: writeissues: writeTambién puede utilizar tokens de acceso personal(PAT) si lo prefiere.
Eventos admitidos
HanuBees puede desencadenarse por los siguientes eventos GitHub:
| Tipo de evento | Activado por | Detalles |
|---|---|---|
issue_comment | Comentar sobre un tema o PR | Mencione /HanuBees o /oc en su comentario. HanuBees lee el contexto y puede crear ramas, abrir relaciones públicas o responder. |
pull_request_review_comment | Comente líneas de código específicas en un PR | Mencione /HanuBees o /oc mientras revisa el código. HanuBees recibe la ruta del archivo, los números de línea y el contexto de diferencias. |
issues | Número abierto o editado | Activa automáticamente HanuBees cuando se crean o modifican problemas. Requiere entrada prompt. |
pull_request | PR abierto o actualizado | Activa automáticamente HanuBees cuando los PR se abren, sincronizan o vuelven a abrir. Útil para revisiones automatizadas. |
schedule | Programación basada en cron | Ejecute HanuBees según una programación. Requiere entrada prompt. La salida va a registros y relaciones públicas (no hay temas que comentar). |
workflow_dispatch | Activador manual desde GitHub UI | Active HanuBees a pedido a través de la pestaña Acciones. Requiere entrada prompt. La salida va a registros y relaciones públicas. |
Ejemplo de programación
Ejecute HanuBees según una programación para realizar tareas automatizadas:
name: Scheduled HanuBees Task
on: schedule: - cron: "0 9 * * 1" # Every Monday at 9am UTC
jobs: HanuBees: runs-on: ubuntu-latest permissions: id-token: write contents: write pull-requests: write issues: write steps: - name: Checkout repository uses: actions/checkout@v6 with: persist-credentials: false
- name: Run HanuBees uses: varsansri/hanubees-coding-agent/github@latest env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} with: model: anthropic/claude-sonnet-4-20250514 prompt: | Review the codebase for any TODO comments and create a summary. If you find issues worth addressing, open an issue to track them.Para eventos programados, la entrada prompt es obligatoria ya que no hay comentarios del que extraer instrucciones. Los flujos de trabajo programados se ejecutan sin un contexto de usuario para verificar los permisos, por lo que el flujo de trabajo debe otorgar contents: write y pull-requests: write si espera que HanuBees cree ramas o PR.
Ejemplo de solicitud de extracción
Revisar automáticamente los PR cuando se abren o actualizan:
name: HanuBees-review
on: pull_request: types: [opened, synchronize, reopened, ready_for_review]
jobs: review: runs-on: ubuntu-latest permissions: id-token: write contents: read pull-requests: read issues: read steps: - uses: actions/checkout@v6 with: persist-credentials: false - uses: varsansri/hanubees-coding-agent/github@latest env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: model: anthropic/claude-sonnet-4-20250514 use_github_token: true prompt: | Review this pull request: - Check for code quality issues - Look for potential bugs - Suggest improvementsPara los eventos pull_request, si no se proporciona prompt, HanuBees revisa de forma predeterminada la solicitud de extracción.
Ejemplo de clasificación de problemas
Clasifique automáticamente nuevos problemas. Este ejemplo filtra cuentas con más de 30 días para reducir el spam:
name: Issue Triage
on: issues: types: [opened]
jobs: triage: runs-on: ubuntu-latest permissions: id-token: write contents: write pull-requests: write issues: write steps: - name: Check account age id: check uses: actions/github-script@v7 with: script: | const user = await github.rest.users.getByUsername({ username: context.payload.issue.user.login }); const created = new Date(user.data.created_at); const days = (Date.now() - created) / (1000 * 60 * 60 * 24); return days >= 30; result-encoding: string
- uses: actions/checkout@v6 if: steps.check.outputs.result == 'true' with: persist-credentials: false
- uses: varsansri/hanubees-coding-agent/github@latest if: steps.check.outputs.result == 'true' env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} with: model: anthropic/claude-sonnet-4-20250514 prompt: | Review this issue. If there's a clear fix or relevant docs: - Provide documentation links - Add error handling guidance for code examples Otherwise, do not comment.Para eventos issues, la entrada prompt es obligatoria ya que no hay ningún comentario del que extraer instrucciones.
Indicaciones personalizadas
Anule el mensaje predeterminado para personalizar el comportamiento de HanuBees para su flujo de trabajo.
- uses: varsansri/hanubees-coding-agent/github@latest with: model: anthropic/claude-sonnet-4-5 prompt: | Review this pull request: - Check for code quality issues - Look for potential bugs - Suggest improvementsEsto es útil para hacer cumplir criterios de revisión específicos, estándares de codificación o áreas de enfoque relevantes para su proyecto.
Ejemplos
A continuación se muestran algunos ejemplos de cómo puede utilizar HanuBees en GitHub.
-
Explica un problema
Agregue este comentario en una edición GitHub.
/HanuBees explain this issueHanuBees leerá el hilo completo, incluidos todos los comentarios, y responderá con una explicación clara.
-
Solucionar un problema
En un problema GitHub, diga:
/HanuBees fix thisY HanuBees creará una nueva rama, implementará los cambios y abrirá un PR con los cambios.
-
Revisar relaciones públicas y realizar cambios
Deja el siguiente comentario en un GitHub PR.
Delete the attachment from S3 when the note is removed /ocHanuBees implementará el cambio solicitado y lo comprometerá con el mismo PR.
-
Revisar líneas de código específicas
Deje un comentario directamente en las líneas de código en la pestaña “Archivos” del PR. HanuBees detecta automáticamente el archivo, los números de línea y el contexto de diferencias para proporcionar respuestas precisas.
[Comment on specific lines in Files tab]/oc add error handling hereAl comentar líneas específicas, HanuBees recibe:
- El archivo exacto que se está revisando.
- Las líneas de código específicas.
- El contexto diferencial circundante.
- Información del número de línea
Esto permite solicitudes más específicas sin necesidad de especificar rutas de archivo o números de línea manualmente.