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

Инструменты и toolsets

Инструменты — функции, которые расширяют агента. Они собраны в логические toolsets, которые можно включать и выключать per-platform.

Доступные инструменты​

У VibeOS большой встроенный реестр: веб-поиск, браузер, терминал, файлы, память, делегирование, RL, доставка сообщений, Home Assistant и многое другое.

примечание

Межсессионная память Honcho — плагин memory-провайдера (plugins/memory/honcho/), не встроенный toolset. Установка: Плагины.

Категории верхнего уровня:

КатегорияПримерыОписание
Вебweb_search, web_extractПоиск в интернете и извлечение содержимого страницы.
X Searchx_searchПоиск постов и тем в X (Twitter) через встроенный xAI tool x_search (SuperGrok OAuth или XAI_API_KEY); по умолчанию выключен — включите в vibeos tools → 🐦 X (Twitter) Search.
Терминал и файлыterminal, process, read_file, patchКоманды и работа с файлами.
Браузерbrowser_navigate, browser_snapshot, browser_visionИнтерактивная автоматизация браузера (текст + vision).
Медиаvision_analyze, image_generate, text_to_speechМультимодальный анализ и генерация.
Оркестровкаtodo, clarify, execute_code, delegate_taskПланирование, уточнения, код и субагенты.
Памятьmemory, session_searchДолговременная память и поиск по сессиям.
Автоматизацияcronjob, send_messageCron (create/list/update/pause/resume/run/remove) и исходящие сообщения.
Интеграцииha_*, MCPHome Assistant, MCP и прочее.

Авторитетный реестр — в справочнике инструментов и справочнике toolsets.

Nous Tool Gateway

Платные подписчики Nous Portal получают веб-поиск, image gen, TTS и браузер через Tool Gateway — отдельные API-ключи не нужны. Включить: vibeos model, точечная настройка: vibeos tools.

Использование наборов инструментов​

# Use specific toolsets
vibeos chat --toolsets "web,terminal"

# See all available tools
vibeos tools

# Configure tools per platform (interactive)
vibeos tools

Общие наборы инструментов включают web, search, terminal, file, browser, vision, image_gen, skills, tts, todo, memory, session_search, cronjob, code_execution, delegation, clarify, homeassistant, messaging, spotify, discord, discord_admin, debugging и safe.

Полный набор инструментов см. в Справочнике по наборам инструментов, включая предустановки платформ, такие как vibeos-cli, vibeos-telegram, и динамические наборы инструментов MCP, такие как mcp-<server>`.

Серверные части терминала​

Инструмент терминала может выполнять команды в различных средах:

БэкэндОписаниеВариант использования
localЗапустить на своем компьютере (по умолчанию)Разработка, доверенные задачи
dockerИзолированные контейнерыБезопасность, воспроизводимость
sshУдаленный серверПесочница: держите агента подальше от собственного кода
singularityHPC контейнерыКластерные вычисления, без корней
modalОблачное исполнениеБессерверное масштабирование
daytonaРабочая среда облачной песочницыПостоянные удаленные среды разработки

Конфигурация​

# In ~/.vibeos/config.yaml
terminal:
backend: local # or: docker, ssh, singularity, modal, daytona
cwd: "." # Working directory
timeout: 180 # Command timeout in seconds

Серверная часть Docker​

terminal:
backend: docker
docker_image: python:3.11-slim

Один постоянный контейнер, общий для всего процесса. VibeOS запускает один долгоживущий контейнер при первом использовании (docker run -d ... sleep 2h) и направляет каждый терминал, файл и вызов execute_code через docker exec в этот же контейнер. Изменения рабочего каталога, установленные пакеты, настройки среды и файлы, записанные в /workspace, переносятся от одного вызова инструмента к другому через субагенты /new, /reset и delegate_task в течение всего срока существования процесса VibeOS. Контейнер останавливается и удаляется при выключении.

Это означает, что серверная часть Docker ведет себя как постоянная виртуальная машина в песочнице, а не как новый контейнер для каждой команды. Если вы используете pip install foo один раз, он будет действовать до конца сеанса. Если вы используете cd /workspace/project, последующие вызовы ls увидят этот каталог. См. Конфигурация → Docker Backend для получения полной информации о жизненном цикле и флага container_persistent, который контролирует, будут ли /workspace и /root сохраняться после перезапуска VibeOS.

SSH Бэкэнд​

Рекомендуется в целях безопасности — агент не может изменять собственный код:

terminal:
backend: ssh
# Set credentials in ~/.vibeos/.env
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa

Сингулярность/Apptainer​

# Pre-build SIF for parallel workers
apptainer build ~/python.sif docker://python:3.11-slim

# Configure
vibeos config set terminal.backend singularity
vibeos config set terminal.singularity_image ~/python.sif

Модальное (бессерверное облако)​

uv pip install modal
modal setup
vibeos config set terminal.backend modal

Ресурсы контейнера​

Настройте CPU, память, диск и постоянство для всех серверных частей контейнера:

terminal:
backend: docker # or singularity, modal, daytona
container_cpu: 1 # CPU cores (default: 1)
container_memory: 5120 # Memory in MB (default: 5GB)
container_disk: 51200 # Disk in MB (default: 50GB)
container_persistent: true # Persist filesystem across sessions (default: true)

При container_persistent: true установленные пакеты, файлы и конфигурации сохраняются в течение сеансов.

Безопасность контейнера​

Все серверные части контейнеров работают с усилением безопасности:

  • Корневая файловая система только для чтения (Docker)
  • Все возможности Linux отключены
  • Никакого повышения привилегий
  • Ограничения PID (256 процессов)
  • Полная изоляция пространства имен.
  • Постоянное рабочее пространство через тома, недоступный для записи корневой слой.

Docker может дополнительно получить явный список разрешений env через terminal.docker_forward_env, но пересылаемые переменные видны командам внутри контейнера и должны рассматриваться как открытые для этого сеанса.

Управление фоновыми процессами​

Запускайте фоновые процессы и управляйте ими:

terminal(command="pytest -v tests/", background=true)
# Returns: {"session_id": "proc_abc123", "pid": 12345}

# Then manage with the process tool:
process(action="list") # Show all running processes
process(action="poll", session_id="proc_abc123") # Check status
process(action="wait", session_id="proc_abc123") # Block until done
process(action="log", session_id="proc_abc123") # Full output
process(action="kill", session_id="proc_abc123") # Terminate
process(action="write", session_id="proc_abc123", data="y") # Send input

Режим PTY (pty=true) позволяет использовать интерактивные инструменты CLI, такие как Codex и Claude Code.

Поддержка Судо​

Если для команды требуется sudo, вам будет предложено ввести пароль (кэшированный для сеанса). Или установите SUDO_PASSWORD в ~/.vibeos/.env.

предупреждение

На платформах обмена сообщениями, если sudo завершается неудачно, выходные данные включают подсказку о добавлении SUDO_PASSWORD к ~/.vibeos/.env.