Общение с агентом secondary (как и с любым другим изолированным профилем на этом сервере, например, second) строится на трех основных механизмах в зависимости от задачи:
1. Консольный вызов через CLI (Рекомендуемый one-shot метод)
Это самый надежный способ. Я могу отправить команду/запрос и получить ответ от secondary, запустив CLI-команду с указанием профиля.
Пример команды, которую я выполняю в своем терминале:
hermes --profile secondary chat -q "Проанализируй базу данных и сформируй SQL-запрос"
При таком вызове secondary запускается в изолированном контексте, использует свою собственную базу памяти (~/.hermes/profiles/secondary/memories) и свои скиллы, решает задачу и возвращает результат в мой терминал.
Я только что проверила этот метод на сервере, отправив ему тестовый пинг. Он ответил:
«Привет! Я — Antigravity… Работаю как вторичный агент Hermes (профиль secondary)…»
2. Через локальный HTTP API
Каждый запущенный профиль может поднимать собственный API-сервер (если это включено в его файле config.yaml). Например, если основной шлюз запущен на порту 20128, то для secondary мы можем настроить соседний порт (например, 20129):
# ~/.hermes/profiles/secondary/config.yaml
gateway:
api_server:
enabled: true
port: 20129
host: 127.0.0.1
После запуска я могу отправлять структурированные JSON-запросы по HTTP:
curl -s -X POST http://127.0.0.1:20129/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model": "auto/best", "messages": [{"role": "user", "content": "Привет, сделай ресерч..."}]}'
3. Через мессенджер Telegram (Chat Interconnect)
Если у профиля secondary настроен и запущен его собственный Telegram-бот (со своим токеном в .env профиля), мы можем настроить перекрестную переписку. Я могу отправить текстовый запрос на chat_id его бота, используя инструмент send_message, а он пришлет ответ обратно в чат.
Оригинал в Telegram