Sobre el proyecto
# VibeCoder
**Crea issues de GitHub desde tu teléfono, obtén PRs (Pull Requests) automáticamente, revisa y solicita correcciones con un pulgar arriba.**
VibeCoder es un worker automatizado de issues de GitHub impulsado por un CLI de agente de codificación. Monitorea tus repositorios, toma issues, escribe código, ejecuta controles de calidad y abre pull requests — todo sin que toques un teclado.
Es **agnóstico al proveedor**: `claude` ([Claude Code](https://docs.anthropic.com/en/docs/claude-code)) es el predeterminado, y `codex` (el OpenAI Codex CLI), `gemini` (el Gemini CLI) y `deepseek` (DeepSeek, servido a través del Claude Code CLI) están integrados y se eligen por configuración.
## Cómo funciona
1. Creas un issue en GitHub (por ejemplo, desde tu teléfono).
2. El VibeCoder Worker detecta y se autoasigna el issue.
3. El worker crea una rama de feature y delega el trabajo al Coding Agent configurado.
4. El agente escribe cambios de código.
5. El worker ejecuta controles de calidad (linting, testing, formatting).
6. Si los controles pasan, el worker abre un Pull Request en GitHub.
7. Revisas el PR, dejas comentarios o das un pulgar arriba para activar correcciones.
8. El worker aplica la retroalimentación y sube actualizaciones.
9. Apruebas y haces merge del PR.
## Elige tu agente de codificación
El agente de codificación es una capa separable. Cuatro proveedores están integrados:
| Provider id | Agent | Credential file |
| --- | --- | --- |
| `claude` (default) | Claude Code | `claude/provider.env` |
| `codex` | Codex CLI | `codex/provider.env` |
| `gemini` | Gemini CLI | `gemini/provider.env` |
| `deepseek` | DeepSeek (via Claude Code CLI) | `deepseek/provider.env` |
Selecciona uno con la clave `agent_provider` en `.config.json`. Los hosts mixtos pueden optar por una selección consciente de cuotas.
## Características clave
- **Pipeline de issue a PR**: Escribe un issue, obtén un PR. El worker gestiona branching, codificación, testing y creación de PR.
- **Bucle de retroalimentación de revisión**: Deja comentarios en el PR, pulgar arriba para activar correcciones.
- **Aclaración y refinamiento**: Si el issue no está claro, el worker hace preguntas antes de comenzar.
- **Modo de planificación**: Añade la etiqueta `planning` para obtener desgloses de tareas y sub-issues en lugar de implementación directa.
- **Respuesta a preguntas**: Añade la etiqueta `question` para obtener respuestas sobre el código base sin implementación.
- **Autocorrección de ortografía**: Las comprobaciones de ortografía fallidas en PRs se corrigen automáticamente.
- **Autocorrección de fallos de CI**: Las comprobaciones de CI fallidas en PRs abiertos se diagnostican y corrigen automáticamente.
- **Marco de tareas inactivas**: Cuando no existe trabajo reclamable, el worker archiva tareas inactivas de baja prioridad (seguridad, mejores prácticas, etc.).
- **Escaneos de seguridad**: Las ejecuciones inactivas realizan escaneos de seguridad contra repositorios monitoreados.
- **Cola de trabajo basada en prioridad**: Prioriza la retroalimentación de PR, luego correcciones de ortografía, remediación de CI, etc.
- **Optimización de costos**: Selección de modelo por fases, almacenamiento en caché de prompts y seguimiento del uso de tokens.
- **Callbacks posteriores a la ejecución**: Ejecutables opcionales que se ejecutan después de ejecuciones exitosas/fallidas.
- **Configuración por repositorio**: Personaliza el comportamiento del worker por repositorio.
- **Mejoras de hitos**: Notificaciones de progreso, reversión automática de ramas atascadas.
- **Auto-reparación**: Ejecución en copia sombra, reinicios automáticos del repositorio, limpieza de disco, resiliencia ante fallos.
- **Seguro por defecto**: Solo procesa issues de autores permitidos con etiquetas configuradas.
- **Extensible**: Añade nueva funcionalidad mediante comandos Deno/TypeScript.
## Calidad y control
Nada llega a la rama predeterminada (prod) sin tu revisión. Cada cambio llega como un PR; revisas, solicitas correcciones y apruebas antes del merge. El worker sigue TDD, KISS, DRY y ejecuta todas las puertas de calidad (`deno test`, `deno lint`, `deno check`, `deno fmt --check` y semgrep).
## Inicio rápido
### macOS / Linux
```bash
# Clone the repository
gh repo clone <your-org>/VibeCoder
cd VibeCoder
# Configure via environment variables
VIBE_ALLOWED_AUTHOR=myusername \
VIBE_REPOS="myorg/repo1,myorg/repo2" \
./setup.sh
# Start the worker
./run.sh
```
### Windows (PowerShell)
```powershell
# Clone the repository
gh repo clone <your-org>/VibeCoder
cd VibeCoder
# Configure
$env:VIBE_ALLOWED_AUTHOR = "myusername"
$env:VIBE_REPOS = "myorg/repo1,myorg/repo2"
.\setup.ps1
# Start the worker
.\run.ps1
```
## Arquitectura
El worker usa una arquitectura de lanzador fino + Deno TypeScript. Los puntos de entrada son scripts mínimos de shell/PowerShell que delegan toda la lógica de negocio a Deno. Multiplataforma: macOS, Linux y Windows.
El worker se ejecuta dentro de un contenedor de privilegio mínimo. El confinamiento es obligatorio. GitHub es el único plano de control remoto normal.
## Requisitos
- Un runtime de contenedor compatible: Apple `container` en macOS, Docker o Podman en Linux y Windows.
- [Deno](https://deno.com/) 2+ — la única herramienta host del lanzador.
- `bash` (macOS/Linux) o PowerShell (Windows) para ejecutar el lanzador.
- Solo para la configuración: Git y un GitHub CLI autenticado.
## Documentación
- [Overview](docs/OVERVIEW.md): Recorrido de una sola página.
- [Label Flows](docs/workflows/label-flows.md): Qué etiqueta cuándo.
- [Usage Guide](docs/USAGE.md): Creación de issues, flujo de trabajo de PR.
- [Workflows Overview](docs/workflows/README.md): Manual de usuario para propietarios de repositorios.
- [Quorum](docs/QUORUM.md): Ejecutar varios proveedores a la vez.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.