Интеграция с ACP-редакторами

Агент Hermes может работать как ACP-сервер, запуская ACP-совместимые редакторы, связывающиеся с Hermes через stdio и отображающие:

ACP хорошо подходит, когда вы хотите, чтобы Hermes вел себя как встроенный редактор агента кодирования, а не как отдельный CLI или бот для обмена сообщениями.

Что обеспечивает Hermes в режиме ACP

Гермес запускается с подобранным набором инструментов hermes-acp, предназначенным для рабочих процессов в редакторе. Он включает:

Он намерен исключить то, что не записано в типичном UX-редакторе, например, доставку сообщений и управление задачами cron.

Установка

Установите Hermes аналогичным способом, а затем добавьте дополнение ACP:

pip install -e '.[acp]'

Это устанавливает зависимость агент-клиент-протокол и включает:

Запуск ACP-сервера

Любая из следующей команды запускает Гермес в режиме ACP:

hermes acp
hermes-acp
python -m acp_adapter

Hermes записывает логи в stderr, поэтому stdout остается зарезервированным для ACP JSON-RPC трафика.

Настройка редактора

VS-код

Установите расширение ACP Client.

Чтобы подключиться:

  1. Откройте панель ACP Client из панелей действий.
  2. Выберите Агент Hermes из встроенного списка агентов.
  3. Подключитесь и начните чат.

Если вы хотите определить Гермес вручную, добавьте его через настройки VS Code в раздел acp.agents:

{
  "acp.agents": {
    "Hermes Agent": {
      "command": "hermes",
      "args": ["acp"]
    }
  }
}

Зед

Пример настроек фрагмента:

{
  "agent_servers": {
    "hermes-agent": {
      "type": "custom",
      "command": "hermes",
      "args": ["acp"],
    },
  },
}

ДжетБрэйнс

Используйте ACP-совместимый разъем и укажите его:

/path/to/hermes-agent/acp_registry

Манифест реестра

Манифест реестра АКП находится по адресу:

acp_registry/agent.json

Он рекламирует агента на основе команды, чья команда запускает:

hermes acp

Конфигурация и учетные данные

Режим ACP использует ту же конфигурацию Hermes, что и CLI:

Поставщик разрешения использует обычный рантайм-резольвер Hermes, поэтому ACP наследует нынешний настроенный провайдер и учетные данные.

Поведение сессий

Сессии ACP отслеживаются менеджером сессий адаптера ACP в памяти, пока сервер работает.

каждая сессия хранит:

Базовый AIAgent по-прежнему использует обычный способ сохранения/логирования Hermes, но list/load/resume/fork ACP ограничен текущим запущенным процессом ACP-сервера.

Поведение рабочих директорий

Сессии ACP привязывают редактор cwd к задачам ID Hermes, поэтому файлы и терминальные инструменты работают относительно рабочей области редактора, а не серверного процесса cwd.

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

Опасные команды терминала могут быть направлены обратно редактору в качестве запроса на подтверждение. Варианты подтверждения ACP проще, чем в CLI:

При таймауте или Нужен мост подтверждение отклоняет запрос.

Устранение неполадок

ACP-агент не отображается в редакторе

проверить:

АКП запускается, но сразу выдает ошибку

выполните эти проверки:

hermes doctor
hermes status
hermes acp

Отсутствуют учетные данные

Режим АКП не имеет собственного потока входа. Он использует существующую цепь провайдера Hermes. Настроить учетные данные с помощью:

hermes model

или редактируя ~/.hermes/.env.

См. также