MultiAgent ставится на Windows мастером установки — программой PastukhovMultiAgent-Setup-<версия>.exe. Мастер ставит MultiAgent как службу Windows: она запускается сама при загрузке компьютера и продолжает управлять вашими серверами, даже когда в систему никто не вошёл, а после сбоя Windows перезапускает её автоматически. Веб-интерфейс открывается по адресу http://localhost:3991, серверы подключаются по SSH. Docker и SSH-инструменты на самом Windows не нужны — всё, что нужно серверам, MultiAgent установит на них сам. Если агенты должны работать прямо на этой машине, служба умеет управлять локальным дистрибутивом WSL (см. ниже).
Системные требования
- Windows 10 или новее (64-разрядная);
- права администратора — установка идёт на всю машину: мастер создаёт службу, пишет ключи реестра и при необходимости добавляет правило брандмауэра, поэтому подтвердите запрос UAC;
- минимум 1 ГБ оперативной памяти, около 500 МБ свободного места на диске;
- среда выполнения .NET не требуется — установщик включает всё необходимое, ничего дополнительно ставить не нужно;
- для управления удалёнными серверами Docker и SSH-инструменты на этом компьютере не нужны; агентам на самой машине понадобится WSL2 с Docker (см. «Локальные серверы в WSL»).
Мастер установки
Запустите установщик и пройдите шаги мастера:
- Порт — по умолчанию 3991, веб-интерфейс будет работать по адресу
http://localhost:3991; порт можно поменять во время установки (диапазон 1–65535); - Папка данных — по умолчанию
C:\ProgramData\Pastukhov\MultiAgent\data: здесь хранятся база данных, ключи и сертификаты, а также файл активированной лицензии. Папка лежит вне каталога приложения, поэтому данные сохраняются при переустановке и удалении; повторный запуск установщика запоминает ранее выбранную папку. Чтобы отказаться от локальной базы, укажите адрес PostgreSQL вMULTIAGENT_DATABASE; - Вход — имя пользователя (по умолчанию
admin) и пароль (хранится в виде защищённого отпечатка). Учётная запись создаётся при первом запуске службы, а при повторном запуске мастера пароль обновляется; если оставить поле пароля пустым, текущий сохранится; - Лицензия — пустой ключ даёт встроенную 30-дневную пробную лицензию; ключ можно ввести сразу или обновить позже мастером или диалогом лицензии в приложении. Приобрести лицензию можно на странице лицензирования;
- Служба — когда её запускать: «Автоматически» (по умолчанию), «Автоматически (отложенно)» или «Вручную», и флажок «Разрешить подключения с других компьютеров» (выключен): он открывает заданный порт в брандмауэре Windows и привязывает все сетевые интерфейсы, иначе веб-интерфейс доступен только с самой машины;
- Ярлык на рабочем столе — по желанию.
Что устанавливается
- Файлы приложения в
C:\Program Files\Pastukhov\MultiAgent: исполняемый файл и библиотеки .NET, веб-клиент, встроенные шаблоны инструментов и продуктов, файлы переводов; - Служба Windows «MultiAgent (Pastukhov)»: стартует вместе с системой и перезапускается после сбоя; управлять ею можно как любой другой службой — через
services.mscили командойsc; - Настройки службы — её значение
Environmentв ветке реестраHKLM\SYSTEM\CurrentControlSet\Services\PastukhovMultiAgent(Windows-аналог блока окружения в Docker) и зеркальный ключHKLM\Software\Pastukhov\MultiAgent\PastukhovMultiAgent, из которого мастер подставляет прежние ответы при повторном запуске; - Группа в меню «Пуск»
Pastukhov MultiAgent: ярлыки открывают веб-интерфейс в браузере — порт принадлежит службе, отдельно запускать программу не нужно.
Переменные окружения
Настройки служба читает из своего значения Environment — это Windows-аналог блока окружения в Docker. Мастер записывает туда всё нужное сам:
MULTIAGENT_DATA— корень данных (база, ключи, сертификаты, лицензия);MULTIAGENT_PROJECT_PATH— корень приложения (файлы переводов брендов);ASPNETCORE_URLS— адрес и порт веб-интерфейса;AGENT_TOOLS/AGENT_PRODUCTS— встроенные шаблоны инструментов и продуктов;MULTIAGENT_LOGIN/MULTIAGENT_PASSWORD— учётная запись: создаётся при первом запуске службы, а при изменении хеша пароль обновляется (пароль — SHA256-хеш);AGENT_LICENSE— ключ лицензии при первом запуске.
Необязательные переменные можно дописать в то же значение Environment (например, редактором реестра) и перезапустить службу:
MULTIAGENT_DATABASE— строка подключения PostgreSQL вместо локальной базы в папке данных;MULTIAGENT_BRAND— закрепить бренд интерфейса; обычно он определяется по имени exe-файла;AGENT_API_URL/AGENT_API_KEY/MULTIAGENT_HASH— подключение собственного ассистента: встроенный чат и программный API (входящий ключ принимается как отпечаток). На стороне самого агента адрес Мультиагента приходит переменнойMULTIAGENT_URL, а ключ —MULTIAGENT_KEY.
Необязательные настройки удобно держать не в реестре, а в файле .env рядом с файлами приложения (его адрес хранится в MULTIAGENT_PROJECT_PATH): служба читает файл при запуске и на лету, а значения из него важнее переменных службы. Строки — вида КЛЮЧ=ЗНАЧЕНИЕ; MULTIAGENT_PROJECT_PATH в файле указывать нельзя. Подробнее — на странице Установка в Docker.
Тот же exe можно запустить и вручную из командной строки с правами администратора — тогда MultiAgent работает как обычное консольное приложение и читает настройки службы. Для разового запуска параметры можно передать прямо в командной строке в формате КЛЮЧ=ЗНАЧЕНИЕ:
:: Изменить порт для одного запуска
PastukhovMultiAgent.exe --urls=http://localhost:3992
:: Указать другую папку данных
PastukhovMultiAgent.exe MULTIAGENT_DATA=D:\MultiAgentData
:: Использовать PostgreSQL вместо локального SQLite
PastukhovMultiAgent.exe MULTIAGENT_DATABASE="Host=db.local;Port=5432;User Id=multiagent;Password=secret;Database=multiagent"
Локальные серверы в WSL
Если агенты должны работать не на удалённом сервере, а на этом же компьютере, добавьте сервер с типом подключения «Локальный WSL» и выберите дистрибутив. Пароль, ключ и адрес не нужны: команды внутри дистрибутива выполняет сама служба Windows. В списке — установленные дистрибутивы (служебные дистрибутивы Docker Desktop скрыты); «Дистрибутив по умолчанию» — тот, который запускается по команде wsl, а пункт «Другой…» позволяет ввести имя вручную.
Режим появляется только там, где WSL доступен, — в Linux и в Docker-развёртываниях этого выбора не будет. Нужны WSL2 и Docker внутри дистрибутива: либо включённая для него интеграция с WSL в Docker Desktop, либо docker-ce с systemd. Дальше с таким сервером работают так же, как с удалённым: проверки, развёртывание, файлы, терминал и маршруты.
Пока в поле адреса стоит localhost, ссылки на приложения открываются только с этого компьютера; укажите сетевое имя или адрес машины, чтобы открывать их и с других устройств. Служба запускается под системной учётной записью Windows и поэтому может работать с WSL; если список дистрибутивов оказался пустым, запустите службу под учётной записью, которая эти дистрибутивы регистрировала.
После установки
Откройте ярлык в меню «Пуск» → Pastukhov MultiAgent → MultiAgent: он открывает веб-интерфейс в браузере. Войдите с учётными данными, заданными при установке, и добавьте первый сервер: имя, хост, SSH-порт, пользователь и пароль или приватный ключ (ключи хранятся в базе в зашифрованном виде) — либо тип подключения «Локальный WSL». Всё остальное — установку Docker и зависимостей на серверах — MultiAgent сделает сам.
Если веб-интерфейс не открывается, загляните в журнал <папка данных>\service.log: служба дописывает туда свой вывод, и чаще всего причина в занятом порте. Управлять службой можно как любой другой — в services.msc она называется «MultiAgent (Pastukhov)», из командной строки работают sc stop PastukhovMultiAgent и net start PastukhovMultiAgent.
Бренд интерфейса определяется по имени исполняемого файла: сохраняйте имя PastukhovMultiAgent.exe либо закрепите бренд переменной MULTIAGENT_BRAND.
Обновление и удаление
Обновление — повторный запуск установщика новой версии: мастер предложит «Перенастроить или обновить» — можно изменить любую настройку (порт, папку данных, учётные данные, лицензию, запуск службы), служба пересоздаётся, файлы заменяются, а папка данных остаётся нетронутой. Если на компьютере осталась старая установка для одного пользователя (0.1.x), мастер удалит её сам и подставит прежнюю папку данных — база, ключи и лицензия переедут.
Удаление — через «Параметры → Приложения» или выбором «Удалить» в мастере: вместе с файлами приложения удаляются служба, правило брандмауэра и ключи реестра, а папка данных сохраняется — мастер спрашивает отдельно, удалять ли базу, SSH-ключи и сертификаты.