Skip to main content

CLI и эксплуатация

CLI нужен для первичной настройки, локального общения с Велесом, запуска сервера, OAuth-входа, диагностики каналов и эксплуатации в Docker/systemd.

Основные команды

Onboard

Если файл конфигурации уже существует, обычный onboard предлагает:
  • перезаписать значения по умолчанию;
  • обновить конфигурацию, сохранив существующие значения и добавив новые поля.

Локальный чат

Одно сообщение:
Интерактивно:
С отдельной сессией:
С отдельной рабочей областью или конфигурацией:
Флаги вывода:

Сервер Велеса

Сервер запускает:
  • цикл обработки сообщений Велеса;
  • HTTP API и внутренние вызовы;
  • управление каналами;
  • службу расписаний;
  • службу периодических проверок;
  • подключения MCP.
При остановке сервер закрывает MCP, каналы, расписания, периодические проверки и сохраняет ожидающие сессии на диск.

Статус

Команда показывает:
  • путь к конфигурации;
  • рабочую область;
  • модель по умолчанию;
  • состояние ключей API, OAuth и локальных провайдеров.

Уплотнение базы векторной памяти

Обычная очистка индекса делает освобождённые страницы доступными для повторного использования, но файл memory/vector.db обычно не становится меньше. Для физического уплотнения используйте отдельную команду. Сначала остановите veles gateway и все процессы veles agent, которые используют эту рабочую область. При запуске с --yes команда проверяет межпроцессную блокировку владельца и отказывается работать, если индекс открыт другим процессом этой версии. Старая версия Велеса такую блокировку не создаёт, поэтому остановка всех процессов остаётся обязательной. Не обходите проверку и не запускайте Велес до завершения операции. Без --yes команда только показывает план и не меняет базу:
После проверки плана примените его явно:
Во время уплотнения Велес:
  • после получения блокировки выполняет контрольную точку WAL, чтобы ожидающие записи вошли в стабильный снимок исходной базы;
  • создаёт свежую теневую базу на той же файловой системе;
  • копирует только живые файлы и фрагменты индекса;
  • переносит достоверные старые JSON-векторы в двоичное хранилище; исторические нулевые заглушки считаются отсутствующими смысловыми данными, но их фрагменты остаются в полнотекстовом поиске;
  • заново строит полнотекстовый индекс и проверяет целостность результата;
  • заменяет активную базу атомарно только после всех проверок.
Команда не обращается к поставщику модели, не создаёт новые векторы и не удаляет исходные файлы или записи памяти. До запуска оцените свободное место: в каталоге memory одновременно могут находиться исходная, теневая и резервная базы. После успеха в memory всегда остаётся байт-в-байт резервная копия с отметкой времени; команда не удаляет её автоматически. Поэтому активный vector.db становится меньше, но общий занятый объём не освобождается. Сначала запустите Велес, проверьте известные запросы поиска и сохраните внешнюю копию. Только после этого резервный файл можно вручную переместить на другой носитель или удалить.

OAuth

Для Codex с зашифрованным хранилищем нужен VELES_SECRETS_MASTER_KEY. Сгенерировать:

Каналы

channels login нужен для сценариев с мостом вроде WhatsApp. Для Telegram обычно достаточно токена в конфигурации и запущенного сервера.

Периодические проверки

Периодическая проверка читает HEARTBEAT.md в рабочей области и выполняет задачи через обычный цикл Велеса. Пример:
Сервер должен быть запущен, а Велес должен знать последний активный внешний канал, куда доставлять результат.

Docker Compose

Docker

Монтирование ~/.veles сохраняет конфигурацию, рабочую область, служебное состояние и зашифрованные секреты между запусками.

Пользовательская служба systemd

Минимальный unit:
Команды: