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

Mithril — это открытый движок оркестрации нескольких моделей, написанный на Rust (с Python-обёрткой для CLI), который объединяет несколько LLM-провайдеров в единую точку API. Основная ценность проекта — устранение необходимости управлять отдельными интеграциями для каждого провайдера ИИ: пользователи определяют «fellowship» — команду моделей ИИ — в YAML-файле конфигурации, а затем направляют любой клиент, совместимый с Ollama или OpenAI, на API Mithril. Движок оркестрации поддерживает три типа провайдеров: локальные GGUF-модели (через llama.cpp, бесплатно и приватно), облачные API-провайдеры (Gemini, OpenAI, Anthropic, Groq) и CLI-инструменты (Kiro, Junie, GitHub Copilot или любой CLI с собственным доступом к моделям). Локальная GGUF-модель служит контроллером/маршрутизатором по умолчанию, классифицируя входящие запросы и делегируя их соответствующему агенту на основе конфигурации fellowship. Агенты общаются через протокол NEXT/TASK, что позволяет им делегировать работу друг другу — например, агент-кодер может передать задачу агенту-ревьюеру для проверки кода. Система одновременно предоставляет три API-протокола: API Ollama (для таких инструментов, как Junie, OpenCode, Open WebUI), API, совместимый с OpenAI (для LangChain, LlamaIndex и пользовательских Python-клиентов), и MCP (Model Context Protocol) для интеграции с Claude Desktop. Это означает, что существующие ИИ-инструменты могут подключаться к Mithril без изменений — достаточно изменить базовый URL. Mithril поставляется с 24 встроенными инструментами, охватывающими файловые операции (чтение, запись, редактирование, удаление, apply_patch), выполнение команд в терминале (в песочнице), поиск файлов (list, grep, find, glob, stats), интеграцию с Git (status, log, diff, blame, branch), веб-доступ (search, fetch), анализ кода (поиск символов, структура документа), управление знаниями (запись/чтение lore) и взаимодействие (todo, question). Агентам можно предоставить доступ к конкретным инструментам или ко всем через YAML-файл fellowship. Установка гибкая: однострочный скрипт для Linux/macOS, pip install для Python/Jupyter-сред, Homebrew tap для macOS/Linux, готовые бинарные файлы для всех основных платформ (Linux x86_64/ARM64, macOS Apple Silicon/Intel, Windows x86_64), Docker (один контейнер или Docker Compose), а также сборка из исходников с помощью Cargo. Ключи API хранятся в зашифрованном виде с использованием Argon2id + AES-256-GCM в локальном файле конфигурации или передаются через переменные окружения для Docker/CI-развёртываний. CLI включает интерактивный REPL с автодополнением по табуляции, полноэкранный TUI-режим, неинтерактивное выполнение для CI/скриптов, раскрытие файлов (@file), маршрутизацию агентов (#agent), режимы plan/build, отмену/повтор, сохранение сессий, пользовательские команды и хуки. Также доступен режим Telegram-бота для общения с тем же fellowship через Telegram. Варианты использования включают бэкенд для ИИ-ассистентов программирования (Junie, OpenCode), общий оркестрационный бэкенд для команд через Docker, интеграцию с Python для науки о данных через pip и MCP-сервер для Claude Desktop. Архитектура спроектирована с учётом расширяемости — новые провайдеры, инструменты и типы агентов могут быть добавлены через систему конфигурации fellowship.