## Установка — одна команда

> ## ⛔ НЕ запускайте установку «от имени администратора»
>
> **Обычное** окно PowerShell, под учёткой получателя. Повышение прав — главная причина отказа: папки в доме агента уходят другой учётной записи. От администратора запускается **только** `FIX.cmd` (или `WIPE.cmd`).

```
$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
```

## Что нового в v1.5.2

### Рабочие папки больше не строятся от `%TEMP%`

Вторая, настоящая починка той же поломки на удалённых машинах. Версия 1.5.1 проверяла `%TEMP%` на существование — и **не помогала**: папку с коротким именем 8.3 (`C:\Users\E4FB5~1.KAS`) проверка `Test-Path` считает существующей, её же создаёт `New-Item`, а `Remove-Item` по ней падает. Проверкой такой случай не отличить, поэтому `%TEMP%` для своих путей **не используется вовсе**. Все рабочие папки строятся от `%LOCALAPPDATA%` (папка `ailab-scratch`) и приводятся к **длинному** виду. Затронуты все четыре места: рабочая папка дистрибутива, переносимый Git, проба движка и загрузка приложения.

### В протокол печатаются пути

Первые строки лога показывают, с чем работает скрипт:

```
  TEMP          = …
  TMP           = …
  LOCALAPPDATA  = …
  рабочая папка = …
```

### Обновление поверх

Повторно запустите ту же команду. Ключ, память и переписка сохраняются. **После обновления перезапустите приложение.**

## Что было раньше

| Версия | Что |
|---|---|
| v1.5.0 | счётчик времени сессии в композере; ночная проверка и установка обновлений |
| v1.5.1 | уборка рабочей папки больше не подменяет настоящую ошибку; первая (неудачная) попытка починить `%TEMP%` |

**Ночное автообновление:** раз в сутки около 03:00 со случайным разбросом до 45 минут агент сравнивает свою версию с последним релизом и, если вышла новая, ставит её. Условие одно — окно агента в этот момент должно быть закрыто. Журнал: `%LOCALAPPDATA%\hermes\logs\update-check.log`. Отключить:

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

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

| | |
|---|---|
| Excel `.xlsx`, CSV | создаёт, читает, правит, пересчитывает формулы |
| Word `.docx` | создаёт, читает, шаблоны, комментарии и правки |
| PowerPoint `.pptx` | создаёт и правит колоды |
| PDF | создаёт из спецификации, формы, объединение, шифрование, извлечение текста |
| Голос | распознавание речи и синтез, без ключей |
| Номер сборки | чип `AILab v1.5.2` в заголовке окна |
| Время сессии | счётчик в композере рядом с чипом Polza.ai |
| Навигация | «Сообщения» убраны из боковой панели |

## Что делает установщик (9 шагов)

1) находит дистрибутив → 2) снимает метку «из интернета» → 3) проверяет, что дом свободен (останавливается ДО первой записи, если тут работает чужой агент) → 4) ставит переносимый Git и движок Hermes → 5) ставит агента и плагины → 6) открывает Блокнот для ключа → 7) проверяет ответ агента → 8) прогревает окружение, ставит пакеты документов и голоса → 8b) готовит движок для окна → 9) ставит окно приложения, ярлык и задачу автообновления.

## Если установка остановилась — файлы помощи

В той же папке, запускаются **двойным кликом**:

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

---

`SHA256SUMS.txt` рядом — контрольные суммы файлов релиза.

Источник релиза: https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/tag/v1.5.2
