Mistral.rs v0.8.10: запуск агентных скиллов через /v1/skills | Обзор | AiManual
AiManual Logo Ai / Manual.
18 Июн 2026 Инструмент

Обновление mistral.rs v0.8.10: как запускать агентные скиллы через /v1/skills

Разбираем новое API /v1/skills в mistral.rs v0.8.10. Как создавать и запускать агентные скиллы локально, примеры, сравнение с альтернативами.

Реклама
partv1

Запуск агентных скиллов на локальной LLM — штука, которая до недавнего времени требовала костылей. Mistral.rs v0.8.10 кладет конец этому безобразию. Теперь в проекте появился нативный эндпоинт /v1/skills, который позволяет определять и вызывать скиллы прямо через REST API. Никаких самодельных оркестраторов, никаких файловых прослоек. Просто HTTP-запрос и готовый ответ. Посмотрим, что под капотом.

Скиллы без архитектурного танца с бубном

В предыдущих версиях mistral.rs уже умел выполнять функции, но для агентных сценариев приходилось самостоятельно обрабатывать цепочки вызовов, учить модель пайплайнам. С версии 0.8.10 добавили специальный формат скилла — это JSON-схема с описанием действий, которые агент может выполнить. Модель сама решает, какой скилл активировать, а сервер берёт на себя диспетчеризацию.

Ключевое отличие от подходов вроде файловой системы как оркестратора или gskill.md — mistral.rs не требует внешнего рантайма. Скиллы живут прямо в процессе инференса.

Как это выглядит на практике

Определим скилл для поиска по локальным файлам. Создаём JSON-файл search_skill.json:

{
  "name": "file_search",
  "description": "Ищет файлы по шаблону в указанной директории",
  "parameters": {
    "type": "object",
    "properties": {
      "pattern": {"type": "string", "description": "Шаблон поиска, например *.log"},
      "directory": {"type": "string", "description": "Путь к папке"}
    },
    "required": ["pattern", "directory"]
  },
  "handler": {
    "type": "command",
    "command": "find {{directory}} -name '{{pattern}}' 2>/dev/null"
  }
}

Теперь регистрируем скилл в сервере. Отправляем POST на /v1/skills:

curl -X POST http://localhost:8080/v1/skills \
  -H "Content-Type: application/json" \
  -d @search_skill.json

Чтобы активировать скилл, в обычный чат-запрос добавляем поле skills:

curl -X POST http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mistralai/Mistral-7B-Instruct-v0.3",
    "messages": [{"role": "user", "content": "Найди все log-файлы в /var/log"}],
    "skills": ["file_search"]
  }'

Модель генерирует ответ, и если она решает вызвать скилл — сервер выполняет команду и подставляет результат. Агент не замечает подмены, просто видит уточнённый ответ. Звучит логично, но есть нюанс: скилл должен быть размечен как безопасный, иначе сервер его проигнорирует. За это отвечает флаг "safe": true в описании. Не советую так делать, если не хотите, чтобы модель случайно запустила rm -rf /.

Сравнение с альтернативами

Инструмент Способ определения скиллов Выполнение Зависимости
mistral.rs v0.8.10 JSON-схема + REST API встроенное, синхронное только rust-runtime
Claude Skills YAML/текст, сторонний сервер через обёртку Claude API + рантайм
OpenAPI-to-Skills конвертация OpenAPI через прокси-агента отдельный сервис
Ollama (функции) через инструменты в чате внешний код мост-приложение

Как видите, у mistral.rs минимальные внешние зависимости. Всё работает в рамках одного процесса. Но за это приходится платить: скиллы выполняются синхронно, и если команда долгая — заблокируется очередь запросов. Для тяжёлых операций лучше использовать асинхронный обработчик через HTTP-колбэк, но в v0.8.10 такой опции нет, только команды и shell-скрипты.

Архитектура скиллов: что под капотом

Разработчики mistral.rs пошли по пути минимализма. Скилл — это не отдельный микросервис, а просто промпт с JSON-схемой, который модель использует для генерации аргументов. Сервер парсит ответ, проверяет безопасность и выполняет команду. Если команда завершилась ошибкой — модель получает сообщение об ошибке и может попросить пользователя уточнить запрос. В теории это работает так, но на практике первая версия API не поддерживает цепочки скиллов (skill-to-skill). Зато это открывает простор для экспериментов: вы можете комбинировать /v1/skills с Agent Browser Workspace, чтобы дать агенту доступ к вебу через скилл-запрос.

Кому это реально нужно

Инструмент рассчитан на три категории:

  • Разработчики локальных AI-агентов, которые не хотят городить огород из Python-скриптов и файловых наблюдателей (как в Agent Skills на Python).
  • Те, кто мигрирует с OpenClaw или Hermes Agentпереезд становится проще, когда всё упирается в один эндпоинт.
  • Экспериментаторы, которым нужно быстро прототипировать мультиагентные сценарии без развёртывания kubernetes.

Однако если вам нужна сложная оркестрация с под-агентами и динамическим созданием скиллов — лучше посмотрите в сторону MCP и сабагентов. Там больше гибкости, хоть и больше головной боли.

Перспективы

Версия 0.8.10 — это только первый заход. Уже сейчас /v1/skills позволяет запускать одношаговые действия, но roadmap mistral.rs включает поддержку многошаговых сценариев и вложенных скиллов. Если темпы разработки сохранятся, к концу 2026 года мы рискуем увидеть полноценный агентный рантайм, встроенный прямо в инференс-сервер. И тогда вопрос «как собрать AI-агента из LEGO» перестанет быть актуальным — всё уже будет собрано за вас.

Пробуйте, ломайте, пишите фидбек. И не забывайте про флаг safe — он единственное, что стоит между вашим лэптопом и случайным шифрованием диска.

Подписаться на канал