Newer
Older
AI_Lab_SCRUME_Co / INSTALL.md

Инструкция по установке

⛔ НЕ запускайте установку «от имени администратора»

Откройте обычное окно PowerShell. Не «Запуск от имени администратора».

Запуск с повышением прав — главная причина отказа: папки в доме агента создаются от другой учётной записи, и потом движок не может прочитать свой собственный Python. Установка встаёт мгновенно с Access is denied, ещё до любой загрузки. Подробно — раздел «Если установка остановилась» ниже.

От администратора запускается только FIX.cmd (или WIPE.cmd) — и только если установка уже остановилась.

Агент AILab SCRUME Agent — Hermes Agent: личный помощник. Ключ API выдаёт владелец агента — его вы впишете один раз при установке.

Агент ставится в единственный профиль Hermes. Переключателей профилей и лишних настроек в сборке нет: получается один помощник и больше ничего.

Вам передают два архива:

Архив Что внутри Размер
agent-setup.zip (в релизе он же ailab-setup-v<версия>.zip) агент: персона, настройки, 58 скиллов, установщик ~1,2 МБ
app-setup.zip (он же hermes-desktop-scrum.zip) приложение Hermes с фирменным логотипом на пустом чате ~158 МБ

Второй архив нужен, чтобы был графический интерфейс с логотипом. Без него агент работает, но только в командной строке и с обычной заставкой Hermes.


Быстрый путь

Одна команда — и всё готово

Вставьте в PowerShell (Win+R → powershell), целиком, одной строкой:

$d = Join-Path $env:LOCALAPPDATA 'ailab-setup'; New-Item -ItemType Directory -Force -Path $d | Out-Null; Set-Location $d; Remove-Item -Recurse -Force ailab -ErrorAction SilentlyContinue; curl.exe -L --fail -o ailab.zip "https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/latest/download/agent-setup.zip"; if (-not (Test-Path ailab.zip) -or (Get-Item ailab.zip).Length -lt 1MB) { throw "Архив не скачался. Папка: $d" }; Expand-Archive ailab.zip ailab -Force; .\ailab\setup.cmd

Установщик сам делает всё по порядку:

  1. находит рядом файл агента;
  2. снимает метку «скачано из интернета» (иначе Windows блокирует запуск);
  3. проверяет, что установка свободна, и останавливается, если на машине уже работает другой агент Hermes — чтобы не потерять чужие данные. Проверка идёт до первой записи: при чужом агенте в доме не появляется ни одного файла;
  4. при необходимости ставит переносимый Git (с GitHub, 58 МБ) и Hermes Agent; Git кладётся ровно туда, где его ищет официальный установщик Hermes — поэтому его стадия prerequisites ничего не качает и не падает; если Git в системе уже есть, ничего не скачивается;
  5. ставит агента (при повторном запуске — обновляет);
  6. создаёт файл ключа и открывает его в Блокноте — впишите туда ключ от владельца;
  7. проверяет, что агент отвечает;
  8. готовит окружение (hermes pm repair) — окно приложения поднимает бэкенд и ждёт его ответа считаные секунды, а на неподготовленной машине зависимости ставятся минутами; поэтому они ставятся заранее. Установка зависимостей идёт с отчётом на экране (на медленном интернете это может занять до 10 минут); 8b. готовит движок для окна — проверяет, что окно поднимет его сразу, и даёт запас по времени. Без этого шага окно на холодной машине решало, что движок не работает, и само уходило в доустановку, где падало с ошибкой «Отказано в доступе»;
  9. скачивает и ставит окно приложения (~158 МБ) и кладёт ярлык «AILab SCRUME Agent» на рабочий стол.

Запускайте установку обычным пользователем — НЕ «от имени администратора». Это главная причина отказа: папки в доме агента уходят другой учётной записи, и потом ни движок, ни pm repair не могут прочитать свой собственный Python. Подробности — в разделе «Если установка остановилась».

Больше ничего делать не нужно: после установки запускайте агента ярлыком с рабочего стола.

Windows может один раз спросить подтверждение (SmartScreen) — это нормально. Установка занимает несколько минут (качается приложение ~158 МБ), окно закрывать нельзя. Протокол сохраняется рядом: setup-log.txt.

Если качать архивом вручную

  1. Скачайте agent-setup.zip (в релизе он же ailab-setup-v<версия>.zip), распакуйте в пустую папку, запустите setup.cmd двойным кликом — дальше как выше (шаги 1–9 делает скрипт).
  2. Отдельно качать hermes-desktop-scrum.zip не нужно — установщик сам его скачает и поставит. Этот архив нужен, только если на машине нет интернета или хочется поставить приложение вручную: тогда распакуйте его в постоянную папку (например C:\Hermes), запустите Hermes.exe, затем make-shortcut.cmd.

Приложение ставится в %LOCALAPPDATA%\AILabSCRUME\App. Ярлык ведёт на неё — папку не удаляйте и не переносите. В «Загрузки» распаковывать нельзя: Windows их периодически чистит, и приложение сломается. Остальные разделы нужны, только если что-то пошло не так или вы ставите агента вручную.


Если установка остановилась

Рядом с setup.cmd (в той же распакованной папке) лежат файлы помощи. Запускаются двойным кликом — вводить команды не нужно:

Файл Что делает От администратора?
CHK.cmd показывает, что видит установщик: путь к агенту, пакеты и права на них нет
ACL.cmd показывает правила доступа к папке агента, отдельно помечает запреты нет
FIX.cmd починка прав: возврат владения и выдача прав пользователю. Ключ сохраняется да
WIPE.cmd полностью удаляет папку агента, чтобы поставить заново. Ключ вписывать заново да

CHK и ACL ничего не меняют — их можно запускать в любой момент.

Запуск от администратора: правой кнопкой по файлу → «Запуск от имени администратора». Установку (setup.cmd) так запускать НЕЛЬЗЯ — только файлы починки.

Симптом: «Отказано в доступе» или «движок не запускается»

Причина — права, а не сеть. Папки внутри %LOCALAPPDATA%\hermes\tools принадлежат другой учётной записи: сама папка «видна», а войти внутрь нельзя. Движок не находит свой Python и падает мгновенно, ещё до любой загрузки.

Признак: установка встаёт сразу, с сообщением Access is denied, без попыток что-то скачать.

Лечение: запустите FIX.cmd от администратора и дождитесь окончания (несколько минут), затем запустите setup.cmd обычным пользователем.

Такое состояние создаёт запуск установки от администратора. Если один раз так вышло — больше не повышайте права для установки.


0. Что нужно заранее

Что Проверка Если нет
Windows 10/11 — —
Git git --version не нужен — установщик положит сам
Hermes Agent hermes --version см. раздел 1 (setup.cmd поставит сам)
Свой ключ Polza.ai — получить у владельца агента
Файл агента ailab-*.bundle — получить у владельца (раздел 2)

Данные Hermes лежат в %LOCALAPPDATA%\hermes — это и есть дом агента.

Важно. Если здесь уже стоит рабочий агент (своя персона, ключи, память, переписка) — этот комплект ставить нельзя, он рассчитан на единственного агента. setup.cmd это проверит и остановится сам.


1. Поставить Hermes Agent (если ещё нет)

PowerShell (обычный, без администратора):

iex (irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1)

После установки закрыть и открыть терминал заново — установщик добавляет hermes в PATH. Проверка:

hermes --version

2. Что вам передаёт владелец

Один файл: ailab-<версия>.bundle (например ailab-v<версия>.bundle). Внутри — весь агент с историей версий. Больше ничего не нужно, доступ к репозиторию не требуется.


3. Установить агента (вручную)

Если не хотите запускать setup.cmd, положите файл, например, в Downloads и откройте PowerShell:

cd $env:USERPROFILE\Downloads
git clone ailab-<версия>.bundle ailab-dist
Remove-Item -Recurse -Force .\ailab-dist\.git

Скопируйте персону, настройки и скиллы в дом агента:

Copy-Item .\ailab-dist\SOUL.md     $env:LOCALAPPDATA\hermes\ -Force
Copy-Item .\ailab-dist\config.yaml $env:LOCALAPPDATA\hermes\ -Force
Copy-Item .\ailab-dist\skills      $env:LOCALAPPDATA\hermes\ -Recurse -Force

Строка с удалением .git — не украшение: git помечает файлы внутри .git/objects/pack атрибутом «только чтение», и копирование может упасть с PermissionError: [WinError 5].

Проверить, что стало:

hermes doctor

4. Ключ Polza.ai — обязательный шаг

Ключ вам выдаёт владелец агента. Вписать его нужно один раз.

Как это происходит: установщик откроет файл .env в Блокноте. Впишите ключ после знака =, без кавычек и пробелов, сохраните (Ctrl+S) и закройте Блокнот:

HERMES_CUSTOM_POLZA_AI_API_KEY=ваш_ключ

Если Блокнот закрылся, а ключ вписать не успели — откройте файл вручную:

notepad $env:LOCALAPPDATA\hermes\.env

Проверить, что Hermes видит файл:

hermes config env-path

Куда ключ не вписывать

Ключ в config.yaml не вписывать — там только имя переменной (key_env: HERMES_CUSTOM_POLZA_AI_API_KEY). Так ключ не уезжает в репозиторий и не теряется при обновлении.


5. Запустить

hermes chat

Первое сообщение для проверки: Как тебя зовут и кому ты помогаешь? Ответ должен быть про AILab SCRUME Agent.


6. Что где менять под себя

Что Файл Как правильно
Имя владельца, персона, тон %LOCALAPPDATA%\hermes\SOUL.md открыть в редакторе, править текст
Модель config.yaml только через hermes config set model.default <модель> — правка файла руками ломает конфиг
Список моделей config.yaml hermes model (интерактивный выбор)
Ключ API .env правка строки HERMES_CUSTOM_POLZA_AI_API_KEY=
Память о вас — набирается в чате само; чистится через /memory в чате

SOUL.md — единственный файл, который стоит править текстом. Всё остальное — командами.


7. Обновление агента

Автоматически: положить новый ailab-<новая версия>.bundle в ту же папку, где лежит setup.cmd, и снова запустить setup.cmd. Скрипт увидит установленного агента, обновит его и оставит ваш ключ, память и переписку. Прежний бандл можно не удалять — берётся самый свежий по имени.

Вручную, если предпочитаете команды: повторите раздел 3 с новым файлом — три команды Copy-Item перезапишут персону, настройки и скиллы. Ключ и память лежат в других файлах и не трогаются.

Обновление само, по ночам

С версии 1.5.0 установщик заводит задачу Планировщика AILabAgentUpdate: раз в сутки, около 03:00 (плюс случайный разброс до 45 минут, чтобы машины не били в GitHub разом), она проверяет, не вышла ли новая сборка, и если вышла — ставит её.

Шаг Действие
1 читает установленную версию из .ailab-install.json
2 спрашивает у GitHub последний релиз
3 сравнивает по числам (1.4.10 новее, чем 1.4.9 — не строкой)
4 если новее — скачивает архив и запускает установку

Обновление не ставится, пока открыто окно агента. Установщик подменяет файлы движка и приложения, а занятые файлы перезаписать нельзя. Проверка просто отложится до следующей ночи — окно никто не закроет за вас. Держать приложение открытым сутками можно, но тогда обновление может ждать долго.

Молча ставится только обновление. Если ключ ещё не вписан, скрипт ничего не делает: первая установка требует Блокнота, а это не ночная операция.

Журнал: %LOCALAPPDATA%\hermes\logs\update-check.log — одна строка на запуск: актуально, отложено, обновление установлено либо причина отказа.

Отключить:

powershell -NoProfile -ExecutionPolicy Bypass -File "$env:LOCALAPPDATA\hermes\update-check.ps1" -Off

Задача снимется, агент останется работать. Вернуть — запустить установку заново.

Проверить, не дожидаясь ночи: запустите тот же файл без ключей — он сделает одну проверку и, если есть что ставить, поставит.

Посмотреть, что стоит:

hermes doctor

8. Чего в комплекте нет — настроить самому (по желанию)

Возможность Команда / где
MCP-серверы (внешние инструменты) hermes mcp catalog, затем hermes mcp add
Мессенджеры (Telegram и др.) hermes gateway setup, затем hermes gateway start
Задачи по расписанию hermes cron add или через десктоп-приложение
Графическое приложение Hermes.exe (из распакованного архива)

Скиллы (58 штук: Word, Excel, PDF, поиск, почта, заметки, карты, код) уже внутри — их доустанавливать не нужно. Свой скилл добавляется командой hermes skills install <источник>.

Голос

Работает из коробки, ключей не требует. Распознавание речи — локальная модель Whisper (скачается при первом использовании, ~40 МБ), синтез — бесплатный русский голос edge (ru-RU-SvetlanaNeural). Язык распознавания — русский.

Если синтез молчит — проверьте версию библиотеки, в старых она отвечает отказом сервера:

uv pip install --python "<дом>\installs\<...>\venv\Scripts\python.exe" -U edge-tts

Номер сборки в заголовке окна

В заголовке окна, слева, виден чип AILab v1.5.0 — какая сборка агента стоит. Наведение показывает дату установки и имя исходного файла.

Чип живёт плагином (desktop-plugins/version-badge) и берёт версию из файла %LOCALAPPDATA%\hermes\.ailab-install.json, который пишет установщик. Поэтому номер не устаревает: обновился агент — файл изменился, чип показывает новое. Кликать по нему не нужно, истории версий нет.

Если чипа нет — плагины отключены в настройках приложения (Настройки → Плагины).

Время текущей сессии в композере

В строке управления композером, слева от чипа расхода Polza.ai, виден счётчик времени текущей сессии: 0:07 → 1:05:32. Наведение показывает название сессии, когда она начата и сколько идёт.

Счётчик живёт плагином (desktop-plugins/session-time) и берёт настоящее время старта сессии, а не момент открытия окна: при перезапуске приложения отсчёт не начинается заново. Пока сессии нет (вкладка «Новая сессия») — чипа нет вовсе, а не «0:00».

Отключить — Настройки → Плагины, плагин session-time.

Боковая навигация

Строка «Сообщения» из боковой панели убрана: мессенджеры не подключены, а вкладка ведёт в настройку Telegram, Slack, Discord и в шлюз сообщений — место, куда лезть не нужно.

Это «убрано с глаз», а не отобрана возможность: сочетание клавиш и прямой адрес работают, как раньше. Вернуть строку можно, выключив плагин hide-messaging в Настройки → Плагины.

Если после «Сброса настроек» агент перестал отвечать

Кнопки экспорта, импорта и сброса настроек оставлены намеренно — пользуйтесь ими свободно.

Одна особенность: «Сброс настроек» обнуляет маршрут к модели (в настройках по умолчанию провайдер пустой). Ключ при этом цел, но агент не знает, куда обращаться, и не отвечает.

Лечение — запустить установку заново, ничего не настраивая. Она вернёт рабочий конфигурационный файл; ключ, память и переписка сохранятся.

Импорт настроек безопасен: битый файл не запишется, старый конфиг останется на месте, копия испорченного сохранится в backups\config\.

Установка на удалённый компьютер

Если ставите не на свой компьютер, а через RDP или удалённую сессию — есть особенность, из-за которой установка падает с Permission denied и Архив не скачался.

С версии 1.5.1 установщик справляется с ней сам. Если %TEMP% нерабочий, он проверяет его в самом начале, переводит рабочую папку на %LOCALAPPDATA%\Temp и продолжает — в логе появится строка [!] %TEMP% нерабочий (…) — беру …. Раздел ниже нужен в двух случаях: стоит более старая сборка, либо надо понять, что происходит на экране.

Признак

cd : Объект по указанному пути C:\Users\XXXXX~1.XXX не существует
curl: (23) Failed writing body

Короткое имя вида E4FB5~1.KAS — это битая переменная %TEMP%. Команда cd не находит папку, PowerShell остаётся в C:\Windows\system32, и curl не может туда записать файл. Сеть и VPN тут не при чём — до скачивания дело не доходит.

Почему так бывает

При удалённом входе переменные %TEMP% и %TMP% иногда указывают на путь, которого нет: имена собираются в коротком формате 8.3, а папка не создаётся. При временном профиле Windows та же картина.

Лечение

Выполнить в той же сессии, где ставите, до установки:

$env:TEMP = "$env:LOCALAPPDATA\Temp"
$env:TMP  = "$env:LOCALAPPDATA\Temp"
New-Item -ItemType Directory -Force -Path $env:TEMP | Out-Null

Затем запустить установку командой выше — она создаёт рабочую папку явно в %LOCALAPPDATA%\ailab-setup и не зависит от %TEMP%.

Проверить, постоянный ли профиль

Это важно: во временном профиле ставить нельзя — всё исчезнет после выхода из системы.

whoami
$env:USERPROFILE
$env:TEMP
Test-Path $env:TEMP
Get-ChildItem C:\Users
Что видно О чём говорит
Test-Path $env:TEMP → False переменная битая — лечится командами выше
whoami даёт имя, которого нет в C:\Users временный профиль — ставить нельзя
В C:\Users есть TEMP.000 / TEMP.001 временный профиль, нужен ремонт учётной записи

Чего НЕ делать при удалённой установке

Нельзя Почему
Запускать установку от администратора папки уйдут другой учётке, у пользователя будет Access is denied
Запускать через PsExec -s, Invoke-Command от админа, задачу Планировщика агент поставится в чужой профиль, пользователь увидит пустоту
Ставить во временном профиле всё сотрётся при выходе из системы

Правильно: войти по RDP под учёткой получателя, запустить установку там же обычным PowerShell. От администратора — только FIX.cmd или WIPE.cmd, и только если установка уже остановилась.

Если RDP недоступен

Enter-PSSession -ComputerName <имя> -Credential <учёткаполучателя>

Но сначала убедиться, что профиль получателя уже создан — пользователь должен хотя бы раз войти интерактивно. Иначе установка уйдёт в несуществующий профиль.

Границы возможностей

Терминал и запуск кода включены — на них построены скиллы Excel, Word, PDF, PowerPoint и почты: это запуск python-скриптов, другого способа в Hermes нет.

Пакеты для документов установщик ставит сам на шаге 8:

Формат Пакет
Excel .xlsx openpyxl
Word .docx python-docx
PowerPoint .pptx python-pptx
PDF pypdf, reportlab, pdfplumber

Проверено на живом доме: все четыре формата создаются и читаются обратно.

Если пакеты не встали (нет интернета при установке) — доставить вручную:

uv pip install --python "<дом>\installs\<...>\venv\Scripts\python.exe" openpyxl python-docx python-pptx pypdf reportlab pdfplumber

Управление рабочим столом (computer_use) выключено.

Ограничить сильнее — одной командой:

hermes config set agent.disabled_toolsets "[terminal, code_execution, computer_use]"

и вернуть обратно:

hermes config set agent.disabled_toolsets "[computer_use]"

Эти правки не переживают обновление: установщик кладёт config.yaml из сборки заново. После обновления команду нужно повторить.


9. Если что-то не работает

Симптом Причина / решение
Установка остановилась с перечнем чужих данных на машине уже работает другой агент — ставить нельзя, данные сохранены
hermes: command not found терминал не перезапущен после установки Hermes
Ответы вида «нет доступа к модели», 401 ключ в .env пустой/с опечаткой — проверить строку и hermes config env-path
Установка не находит файл агента файл не рядом со скриптом — положить setup.cmd и ailab-*.bundle в одну папку
PermissionError: [WinError 5] при установке вручную удалить папку .git в распакованном дистрибутиве (раздел 3)
WinError 32 — файл занят другим процессом запущено приложение Hermes: значок в трее → Выход, затем запустить setup.cmd снова
Установка идёт слишком долго первый запуск качает Python, Node и зависимости — это минуты, не ошибка
Общий диагноз hermes doctor

10. Установка одной командой (PowerShell)

Откройте PowerShell (обычный, без администратора) и вставьте целиком, одной строкой:

$d = Join-Path $env:LOCALAPPDATA 'ailab-setup'; New-Item -ItemType Directory -Force -Path $d | Out-Null; Set-Location $d; Remove-Item -Recurse -Force ailab -ErrorAction SilentlyContinue; curl.exe -L --fail -o ailab.zip "https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/latest/download/agent-setup.zip"; if (-not (Test-Path ailab.zip) -or (Get-Item ailab.zip).Length -lt 1MB) { throw "Архив не скачался. Папка: $d" }; Expand-Archive ailab.zip ailab -Force; .\ailab\setup.cmd

Установщик делает всё сам: Git, Hermes, агент, Блокнот для ключа, проверка, скачивание и установка окна приложения, ярлык на рабочем столе. Второй команды не требуется.

Ссылка releases/latest/download/... всегда указывает на последний выпуск — при выходе новой версии команду менять не нужно.

Строка дана одной строкой с ; намеренно: многострочный блок при копировании из письма или мессенджера легко приезжает побитым (пустые $b/$t, ошибка Непредвиденная лексема "\ailab"). Каждую часть можно выполнить и по отдельности — результат тот же.

Приложение качать отдельно не нужно. Если же интернета нет или приложение хочется поставить вручную — распакуйте hermes-desktop-scrum.zip в постоянную папку (например C:\Hermes), запустите Hermes.exe, затем make-shortcut.cmd.