Об этом проекте

Dispatch — это самостоятельно размещаемый слой Kanban и диспетчеризации задач для ИИ-агентов, работающих с GitHub Issues и pull request. Он агностичен по отношению к среде исполнения агентов: это означает, что он не монтирует конфигурационные файлы среды агентов и не требует доступа к локальному рабочему пространству агента. GitHub остаётся авторитетным источником данных о issues и PR, тогда как база данных PostgreSQL в Dispatch хранит кэшированные метаданные issues, локальные метаданные проектов, запуски агентов и журналы аудита. Ключевые возможности включают: - Очереди задач, доступных для взятия в работу, управляемые метками GitHub, такими как status/ready, status/in-progress, status/in-review, status/blocked и status/done. - Настраиваемые линии выполнения, которые управляют поведением очереди агентов и доступностью для взятия в работу, с поддержкой пользовательских идентификаторов линий, псевдонимов миграции и маршрутизации классификации на основе ролей. - Отслеживание запусков агентов и страница активности, показывающая историю работы агентов. - Журналирование аудита для переходов статусов и других изменений. - Опциональный размещённый LLM-грумер, который может выполнять триаж issues путём вызова OpenAI-совместимой конечной точки, с режимом dry-run, проверкой структурированного вывода и ограниченным контекстом репозитория GitHub. - Опциональная аутентификация GitHub App, чтобы изменения отображались под идентичностью бота, а не под общим персональным токеном доступа. - Режимы аутентификации, включая HTTP Basic Auth, OIDC/SSO через NextAuth, bearer-токены агентов и отключённый режим только для локальной разработки. - Обработчики входящих вебхуков для последующих действий по PR и событий меток issues с проверкой подписи HMAC-SHA256. - Планировщик для автоматической синхронизации, груминга, последующих действий по PR и задач очистки закрытых issues. Проект построен на Next.js 16 (App Router), React 19, Prisma 7, TypeScript и Tailwind CSS 4. Он рассчитан на работу как контейнеризованный сервис с автоматическими миграциями базы данных при запуске.