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

@AI Lab SCRUME AI Lab SCRUME authored 26 days ago
desktop-plugins/ polza-limit v1.3.1: чип расхода Polza.ai в дистрибутиве (плагин + скрипты), фирменная иконка 28 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.4.0: возвращён голос (stt, tts, client_direct); max_turns как в ядре 26 days ago
README.md v1.4.0: возвращён голос (stt, tts, client_direct); max_turns как в ядре 26 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.4.0: возвращён голос (stt, tts, client_direct); max_turns как в ядре 26 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) и вставьте целиком, одной строкой:

cd $env:TEMP; Remove-Item -Recurse -Force ailab -ErrorAction SilentlyContinue; Remove-Item -Force ailab.zip -ErrorAction SilentlyContinue; curl.exe -L --fail -o ailab.zip "https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/latest/download/agent-setup.zip"; if ((Get-Item ailab.zip).Length -lt 1MB) { throw "Архив не скачался - повторите (VPN?)" }; 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 пошаговая инструкция для получателя
.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)
Управление рабочим столом выключено (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.

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

Поднять 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          # посмотреть, что есть в каталоге