AILab SCRUME Agent — настольный помощник на базе ИИ. Релиз v1.5.2: рабочие папки не от %TEMP%, починка установки на удалённых машинах. Установка — одной командой PowerShell.

@AI Lab SCRUME AI Lab SCRUME authored 23 days ago
desktop-plugins v1.5.0: счётчик времени сессии в композере; ночная автопроверка и установка обновлений 23 days ago
scripts/ polza-limits v1.3.1: чип расхода Polza.ai в дистрибутиве (плагин + скрипты), фирменная иконка 28 days ago
skills fix: .gitignore резал скилл hermes-agent — правило привязано к корню 1 month ago
.env.template v1.0.0: агент Dionis для Василия (SOUL, config без ключей, 58 скиллов) 1 month ago
.gitignore fix: .gitignore резал скилл hermes-agent — правило привязано к корню 1 month ago
INSTALL.md v1.5.0: счётчик времени сессии в композере; ночная автопроверка и установка обновлений 23 days ago
README.md v1.5.0: счётчик времени сессии в композере; ночная автопроверка и установка обновлений 23 days ago
SOUL.md v1.3.0: агент переименован Dionis -> AILab SCRUME Agent, роль 'личный помощник' 28 days ago
config.yaml v1.4.0: возвращён голос (stt, tts, client_direct); max_turns как в ядре 26 days ago
distribution.yaml v1.5.0: счётчик времени сессии в композере; ночная автопроверка и установка обновлений 23 days ago
update-check.ps1 v1.5.0: счётчик времени сессии в композере; ночная автопроверка и установка обновлений 23 days ago
README.md

AILab SCRUME Agent

Дистрибутив Hermes Agent: персона личного помощника, базовый конфиг, 58 скиллов.
Автор: AI laboratory SCRUM company.

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

Откройте обычное окно PowerShell (Win+R → powershell). Не «Запуск от имени
администратора».

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

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

Получателю агента: не нужно ничего скачивать и распаковывать руками. Откройте
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

Дальше всё делает установщик: ставит движок и агента, открывает Блокнот для ключа,
прогревает окружение, качает и ставит окно приложения, кладёт ярлык «AILab SCRUME Agent»
на рабочий стол. Ключ API выдаёт владелец агента. Доступ к репозиторию не нужен.

Ссылка постоянная — не меняется при выпуске новых версий, повторный запуск обновляет агента
(ключ, память и переписка сохраняются). Подробности — INSTALL.md.

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

В той же распакованной папке лежат файлы помощи — запускаются двойным кликом:

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

CHK и ACL ничего не меняют.

Автору: это исходник дистрибутива. Пакет для передачи собирается скриптом
dist/vasily-setup/build-package.ps1 (имя папки историческое).

Что внутри

Путь Что это
distribution.yaml манифест: имя, версия, автор, требуемые переменные окружения
SOUL.md персона агента: AILab SCRUME Agent, личный помощник
config.yaml модель, провайдер (Polza.ai), инструменты, язык — без ключей
skills/ 58 штатных скиллов Hermes (документы, таблицы, PDF, поиск, почта, заметки, код)
INSTALL.md пошаговая инструкция для получателя
update-check.ps1 ночная проверка обновлений; ставится задачей Планировщика AILabAgentUpdate
desktop-plugins/ четыре плагина окна: version-badge, hide-messaging, session-time, polza-limit
.env.template шаблон .env, устанавливается как .env.EXAMPLE

Ключ API живёт только в .env получателя: в config.yaml стоит
key_env: HERMES_CUSTOM_POLZA_AI_API_KEY — имя переменной, а не значение.
В репозитории ключей нет.

Куда ставится

Агент ставится в корневой дом Hermes (%LOCALAPPDATA%\hermes), а не в именованный
профиль. Так у получателя ровно один агент и нет меню профилей — это требование сборки.

hermes profile install здесь не используется: он умеет только именованные профили, а
запарковать корневой профиль ядро Hermes не даёт (намеренно игнорирует gateway.parked
для default). Поэтому setup.ps1 копирует SOUL.md, config.yaml и skills/ в корень
сам и ставит файл-маркер .ailab-install.json, по которому следующий запуск понимает,
что это обновление, а не чужая установка.

Что агент умеет

Документы читает и создаёт Excel (.xlsx), Word (.docx), PowerPoint (.pptx), PDF — включая формы, объединение, шифрование и извлечение текста
Файлы чтение и запись, поиск по содержимому
Терминал и код включены — на них построены скиллы документов
Веб-поиск через MCP-серверы, подключаются отдельно
Голос включён: распознавание речи (локальный Whisper, без ключей) и синтез русским голосом (edge)
Номер сборки виден в заголовке окна чипом AILab v<версия> (плагин version-badge)
Время сессии счётчик в композере слева от чипа Polza.ai (плагин session-time)
Обновления проверяются сами раз в сутки ночью, ставятся без человека (задача AILabAgentUpdate)
Навигация строка «Сообщения» убрана из боковой панели (плагин hide-messaging)
Настройки экспорт, импорт и сброс — рабочие; после «Сброса» запустите установку заново
Управление рабочим столом выключено (computer_use)

Терминал и запуск кода включены осознанно. Без них не работают скиллы Excel, Word,
PDF и почты: они построены на запуске python-скриптов, а другого способа запустить
скрипт в Hermes нет. Пакеты для документов (openpyxl, python-docx, python-pptx, pypdf, reportlab, pdfplumber) установщик ставит сам на шаге 8 — на живом доме проверено создание и чтение всех четырёх форматов.

Скрыть их у получателя можно так:

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

Голос работает без ключей: распознавание — локальная модель Whisper, синтез — бесплатный
русский голос edge. Модель распознавания скачается при первом использовании.

Что не входит

  • API-ключи, auth.json, пароли dashboard — только свои, локальные.
  • MCP-серверы (Revit, AutoCAD и прочее) — не подключены, ставятся отдельно под свои задачи.
  • SSH-бэкенд, cron-задачи, память и история автора.

Передать получателю (файлом)

cd "$LOCALAPPDATA/hermes/dist/vasily-setup"
powershell -NoProfile -ExecutionPolicy Bypass -File build-package.ps1

Скрипт берёт версию из distribution.yaml, собирает бандл, копирует setup.cmd,
setup.ps1, INSTALL.md, ПРОЧТИ-МЕНЯ.txt и складывает всё в
../ailab-setup-v<версия>.zip.

Или вручную только бандл:

cd <этот каталог>
git bundle create ../ailab-v<версия>.bundle --all
git bundle verify ../ailab-v<версия>.bundle   # ожидается «is okay» + «complete history»

Получатель разворачивает по INSTALL.md.

Обновить агента у получателя

С v1.5.0 обновляется само. Установщик заводит задачу Планировщика AILabAgentUpdate:
раз в сутки ночью она сравнивает установленную версию с последним релизом на GitHub и,
если вышла новая, ставит её. Условие одно — окно агента в этот момент должно быть закрыто,
иначе проверка отложится до следующей ночи. Журнал: %LOCALAPPDATA%\hermes\logs\update-check.log.
Отключается update-check.ps1 -Off.

Вручную (когда нужно сразу): поднять version в distribution.yaml, закоммитить,
поставить тег, пересобрать пакет build-package.ps1 и передать новый архив. Получателю
достаточно положить новый ailab-<версия>.bundle рядом со setup.cmd и запустить его
снова: маркер в доме подскажет, что это обновление, а .env с ключом, память и переписка
не трогаются.

Проверка перед передачей

Тест на подменённой машине — так собственный дом не участвует:

# 1. "машина" получателя: рантайм без агента
$fake = 'C:\tmp\recv\AppData\Local'
New-Item -ItemType Directory "$fake\hermes" -Force
Copy-Item "$env:LOCALAPPDATA\hermes\tools" "$fake\hermes\tools" -Recurse
Copy-Item "$env:LOCALAPPDATA\hermes\bin"   "$fake\hermes\bin"   -Recurse

# 2. прогон установщика в ней
$env:LOCALAPPDATA = $fake
cd C:\tmp\recv\package          # распакованный ailab-setup-*.zip
powershell -NoProfile -ExecutionPolicy Bypass -File .\setup.ps1

Проверить после прогона: %LOCALAPPDATA%\hermes\SOUL.md (персона без имени автора),
58 скиллов, .ailab-install.json с версией, .env с ключом.

Публикация в git-репозиторий (вариант с обновлением одной командой):

git tag v<версия> && git push origin master --tags

MCP (по желанию)

Добавляется уже в установленном агенте:

hermes mcp add <имя> --command <команда>
hermes mcp catalog          # посмотреть, что есть в каталоге