Об этом проекте
# VibeCoder
**Создавайте GitHub issues с телефона, получайте PR (Pull Requests) автоматически, проверяйте и запрашивайте исправления с помощью большого пальца вверх.**
VibeCoder — это автоматизированный обработчик GitHub issues, управляемый CLI кодирующего агента. Он отслеживает ваши репозитории, берёт issues, пишет код, запускает проверки качества и открывает pull requests — всё без вашего прикосновения к клавиатуре.
Он **не зависит от провайдера**: `claude` ([Claude Code](https://docs.anthropic.com/en/docs/claude-code)) используется по умолчанию, а `codex` (OpenAI Codex CLI), `gemini` (Gemini CLI) и `deepseek` (DeepSeek, обслуживаемый через Claude Code CLI) встроены и выбираются через конфигурацию.
## Как это работает
1. Вы создаёте issue на GitHub (например, с телефона).
2. VibeCoder Worker обнаруживает issue и назначает его на себя.
3. Worker создаёт feature-ветку и делегирует работу настроенному Coding Agent.
4. Агент вносит изменения в код.
5. Worker запускает проверки качества (линтинг, тестирование, форматирование).
6. Если проверки проходят, worker открывает Pull Request на GitHub.
7. Вы проверяете PR, оставляете комментарии или ставите большой палец вверх, чтобы запустить исправления.
8. Worker применяет обратную связь и отправляет обновления.
9. Вы одобряете и сливаете PR.
## Выберите своего кодирующего агента
Кодирующий агент — это отделяемый слой. Встроены четыре провайдера:
| ID провайдера | Агент | Файл учётных данных |
| --- | --- | --- |
| `claude` (по умолчанию) | Claude Code | `claude/provider.env` |
| `codex` | Codex CLI | `codex/provider.env` |
| `gemini` | Gemini CLI | `gemini/provider.env` |
| `deepseek` | DeepSeek (через Claude Code CLI) | `deepseek/provider.env` |
Выберите один с помощью ключа `agent_provider` в `.config.json`. Смешанные хосты могут включить выбор с учётом квот.
## Ключевые возможности
- **Конвейер issue-to-PR**: Напишите issue, получите PR. Worker обрабатывает ветвление, кодирование, тестирование и создание PR.
- **Цикл обратной связи по ревью**: Оставляйте комментарии к PR, ставьте большой палец вверх, чтобы запустить исправления.
- **Уточнение и доработка**: Если issue неясен, worker задаёт вопросы перед началом.
- **Режим планирования**: Добавьте метку `planning`, чтобы получить разбивку задач и под-issues вместо прямой реализации.
- **Ответы на вопросы**: Добавьте метку `question`, чтобы получить ответы о кодовой базе без реализации.
- **Автоисправление орфографии**: Неудачные проверки орфографии в PR автоматически исправляются.
- **Автоисправление сбоев CI**: Неудачные проверки CI в открытых PR автоматически диагностируются и исправляются.
- **Фреймворк idle-задач**: Когда нет доступной для взятия работы, worker создаёт низкоприоритетные idle-задачи (безопасность, лучшие практики и т. д.).
- **Сканирование безопасности**: Idle-запуски сканируют безопасность отслеживаемых репозиториев.
- **Очередь работ на основе приоритетов**: Приоритизирует обратную связь по PR, затем исправления орфографии, устранение CI и т. д.
- **Оптимизация затрат**: Выбор модели по фазам, кэширование промптов и отслеживание использования токенов.
- **Post-run callbacks**: Опциональные исполняемые файлы запускаются после успешных/неудачных запусков.
- **Конфигурация для каждого репозитория**: Настройте поведение worker для каждого репозитория.
- **Улучшения milestone**: Уведомления о прогрессе, автоматический откат застрявших веток.
- **Самовосстановление**: Выполнение в теневой копии, автоматические сбросы репозитория, очистка диска, устойчивость к сбоям.
- **Безопасность по умолчанию**: Обрабатывает только issues от разрешённых авторов с настроенными метками.
- **Расширяемость**: Добавляйте новую функциональность через команды Deno/TypeScript.
## Качество и контроль
Ничего не попадает в ветку по умолчанию (prod) без вашего ревью. Каждое изменение приходит как PR; вы проверяете, запрашиваете исправления и одобряете перед слиянием. Worker следует TDD, KISS, DRY и запускает полные проверки качества (`deno test`, `deno lint`, `deno check`, `deno fmt --check` и semgrep).
## Быстрый старт
### macOS / Linux
```bash
# Клонируйте репозиторий
gh repo clone <your-org>/VibeCoder
cd VibeCoder
# Настройте через переменные окружения
VIBE_ALLOWED_AUTHOR=myusername \
VIBE_REPOS="myorg/repo1,myorg/repo2" \
./setup.sh
# Запустите worker
./run.sh
```
### Windows (PowerShell)
```powershell
# Клонируйте репозиторий
gh repo clone <your-org>/VibeCoder
cd VibeCoder
# Настройте
$env:VIBE_ALLOWED_AUTHOR = "myusername"
$env:VIBE_REPOS = "myorg/repo1,myorg/repo2"
.\setup.ps1
# Запустите worker
.\run.ps1
```
## Архитектура
Worker использует архитектуру тонкого лаунчера + Deno TypeScript. Точки входа — это минимальные shell/PowerShell скрипты, которые делегируют всю бизнес-логику Deno. Кроссплатформенность: macOS, Linux и Windows.
Worker работает внутри контейнера с минимальными привилегиями. Изоляция обязательна. GitHub — единственная обычная удалённая плоскость управления.
## Требования
- Поддерживаемая среда выполнения контейнеров: Apple `container` на macOS, Docker или Podman на Linux и Windows.
- [Deno](https://deno.com/) 2+ — единственный хостовый инструмент лаунчера.
- `bash` (macOS/Linux) или PowerShell (Windows) для запуска лаунчера.
- Только для настройки: Git и аутентифицированный GitHub CLI.
## Документация
- [Обзор](docs/OVERVIEW.md): Одностраничное руководство.
- [Потоки меток](docs/workflows/label-flows.md): Какая метка когда.
- [Руководство по использованию](docs/USAGE.md): Создание issues, рабочий процесс PR.
- [Обзор рабочих процессов](docs/workflows/README.md): Руководство пользователя для владельцев репозиториев.
- [Quorum](docs/QUORUM.md): Запуск нескольких провайдеров одновременно.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.