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

OnIt — это харнесс для ИИ-агента, предназначенный для автоматизации задач. Он предоставляет языковой модели набор инструментов, рабочую директорию и память о выполненных действиях, а затем итеративно работает до завершения задачи. Агент одинаков во всех интерфейсах — меняется только интерфейс. Интерфейсы: - Терминальный текстовый интерфейс (по умолчанию) - Браузерный чат-интерфейс с входом через Google (onit serve web) - Сервер протокола A2A (onit serve a2a) - Шлюз для ботов Telegram или Viber (onit serve gateway) - Режим Docker-контейнера (onit --container) Поддержка серверов моделей: OnIt подключается к любому совместимому с OpenAI endpoint. Поддерживаемые бэкенды: - Self-hosted: vLLM, SGLang, Ollama, MLX (Apple silicon) - Хостинговые: OpenRouter, Ollama cloud Для работы агента модель должна поддерживать вызов инструментов. MCP-инструменты: Агент выполняет работу через инструменты MCP (Model Context Protocol), включая: - Поиск в вебе (через Ollama web search API или DuckDuckGo как запасной вариант) - Погода (OpenWeatherMap) - Выполнение команд shell (ограничено рабочей директорией) - Редактирование файлов - Поиск по документам (локальная индексация) - Управление репозиториями GitHub - Выполнение кода Установка: Требуется Python 3.10–3.12. Установка из исходников: git clone https://github.com/sibyl-oracles/onit.git cd onit && pip install -U --upgrade-strategy eager -e '.[all]' Конфигурация: onit setup проводит по настройке endpoint (URL, API-ключ, имя модели). API-ключи хранятся в связке ключей ОС, никогда в конфигурационных файлах. Поддерживаются несколько endpoint с отказоустойчивостью и ротацией. Интеграции: - GitHub: git-операции и управление репозиториями через API - Hugging Face: загрузка моделей и датасетов - Локальный поиск по документам с индексацией Управление сессиями: Сессии сохраняются между перезапусками. Команды \model, \host, \key позволяют переключаться в рантайме. \save сохраняет конфигурацию endpoint. Безопасность: - Shell ограничен рабочей директорией - Режим контейнера обеспечивает усиленную изоляцию - В режиме контейнера действует разрешённый список команд - API-ключи хранятся в связке ключей ОС Лицензия: Apache License 2.0