Перейти к основному содержимому

Инструменты чата

Включённый ход выполняет несколько раундов: модель запрашивает, Libre WebUI выполняет от пользователя, результат возвращается до ответа — максимум 8 раундов и 8 вызовов за раунд. Stop отменяет модель, инструмент и ожидание.

События chat.tool-call.v1, chat.tool-result.v1, chat.approval.v1 идут через приватный WebSocket и постоянный поток, поэтому обновление воспроизводит состояние.

Включение

По умолчанию выключены. Администратор открывает в Settings → Управление пользователями; каждый ход выбирает точные инструменты и серверы. Профиль может сузить, но не расширить. В приватном чате инструментов нет.

Встроенные

  • web_search
  • search_documents
  • list_documents
  • read_document
  • load_skill
  • read_skill_file
  • list_notes
  • read_note
  • create_note (подтверждение)
  • update_note (подтверждение, версия)
  • list_calendar_events
  • create_calendar_event (подтверждение)
  • delete_calendar_event (подтверждение)

Поиск цитирует источники; навыки загружаются по требованию; изменения требуют подтверждения.

Серверы

  • OpenAPI: JSON 3.x получается один раз и закрепляется SHA-256. GET чтение, остальные — эффект до переопределения. Аргументы не выбирают цель.
  • MCP (Streamable HTTP): список JSON-RPC закреплён. annotations.readOnlyHint oznacza чтение. stdio намеренно не поддерживается.

Изменения после обновления администратором; доступ admin/все/grant.

Учётные данные

На пользователя (Bearer/header), шифруются и привязаны к точному пользователю и серверу.

Исходящие соединения

Разрешает и закрепляет адрес, отклоняет private/loopback/metadata и redirects, ограничивает размер и timeout. TOOLS_PRIVATE_NETWORK_ALLOWLIST разрешает точные хосты. Результат считается недоверенным текстом.

Подтверждения

Чтение выполняется без вопроса. Для эффекта доступны варианты: один раз, этот чат, всегда для инструмента/сервера или отказ. Разрешение «Всегда» сохраняется и может быть отозвано. Через две минуты запрос истекает как отказ. Всё аудируется.

Примеры

web_search z {"query": "SQLite latest release changelog"}; search_documents z {"query": "termination clause"}; load_skill {"slug": "release-notes"} для $release-notes.

OpenAPI: Weather, https://api.example-weather.dev, https://api.example-weather.dev/openapi.json, bearer, инструменты getForecast, createAlert, вызов weather__getForecast {"city": "Montreal"}.

MCP: Issues, https://mcp.example-tracker.dev/mcp, header, X-Api-Key; search_issues чтение, create_issue efekt; issues__search_issues, issues__create_issue.

web_search — поиск

Модель ищет информацию в сети.

search_documents — свои файлы

Модель ищет по документам пользователя.

load_skill — сохранённый навык

Ввод $ открывает навыки.

Сервер OpenAPI

Вызов weather__createAlert требует подтверждения.

Сервер MCP

Сервер MCP udostępnia przypięte инструменты.

Переменные

| TOOLS_ACCESS_MODE | admins/all-users | | TOOLS_PRIVATE_NETWORK_ALLOWLIST | точные хосты |

Границы

WebSocket и постоянный путь, не legacy REST. Агенты Work обращаются к тем же серверам через тот же шлюз: только запуски с сетью, серверы без сохранённых учётных данных отфильтровываются при предложении, инструменты с побочными эффектами проходят через одобрения Work. Gemini/agent CLI без инструментов; Ollama/OpenAI/Responses/Anthropic с инструментами. MCP только статические данные пользователя, не интерактивный OAuth.