Koji — это система автоматизированной сборки пакетов и артефактов, разработанная для организации воспроизводимых сборок программного обеспечения в экосистемах, использующих RPM-пакеты. Она предоставляет инфраструктуру для удалённого запуска сборочных заданий в изолированных окружениях, управления исходными материалами, артефактами и метаданными сборок, а также интеграции с системами управления версиями и репозиториями. Koji ориентирован на масштабируемое выполнение задач сборки и обеспечивает учёт ресурсов, журналирование и контроль версий собранных результатов.
Изначально система разрабатывалась в контексте проектов Fedora и Red Hat как часть инфраструктуры для выпуска дистрибутивов и связанных пакетов, но архитектура позволяет её применять и в других организациях, требующих централизованного, автоматизированного подхода к созданию бинарных артефактов. Koji поддерживает взаимодействие через веб-интерфейс, командную строку и XML-RPC API, что даёт возможность интеграции с внешними инструментами непрерывной интеграции и управления жизненным циклом пакетов. Основной акцент сделан на воспроизводимости сборок и управлении зависимостями в контролируемой среде.
- Организация воспроизводимых сборок RPM-пакетов в изолированных окружениях (chroot/контейнеры).
 - Централизованное хранение и управление исходными материалами, метаданными сборки и бинарными артефактами.
 - Поддержка удалённого запуска задач через веб-интерфейс, CLI и XML-RPC API для автоматизации и интеграции.
 - Механизмы управления очередью сборок и распределения заданий по билд-нодам с учётом ресурсов.
 - Ведение журналов сборок, отчётов и истории версий для аудита и отладки.
 - Интеграция с системами управления пакетами и репозиториями для публикации результатов сборки.
 - Поддержка политик безопасности и изоляции, позволяющих ограничивать влияние сборок на хост-систему.
 - Модульность и расширяемость для адаптации под разные рабочие процессы и требования организаций.