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

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

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

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

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

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

---

## Быстрый путь

### Шаг 1. Агент

Распакуйте `dionis-setup-v<версия>.zip` (все файлы должны лежать рядом) и **запустите
`setup.cmd` двойным кликом**. Скрипт сам:

1. найдёт рядом файл агента;
2. снимает метку «скачано из интернета» (иначе Windows блокирует запуск);
3. при необходимости поставит Git и Hermes Agent;
4. проверит, что установка свободна, и **остановится**, если на машине уже работает
   другой агент Hermes — чтобы не потерять чужие данные;
5. поставит агента (при повторном запуске — обновит);
6. создаст файл ключа и **откроет его в Блокноте** — впишите туда ключ от владельца;
7. проверит, что агент отвечает.

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

### Шаг 2. Приложение

Распакуйте `hermes-desktop-scrum.zip` в постоянную папку, например:

```
C:\Hermes
```

В папке окажется `win-unpacked\Hermes.exe` — запустите его.

> Распаковывать нужно в постоянное место: папку «Загрузки» Windows периодически чистит,
> и приложение сломается.

Остальные разделы нужны, только если что-то пошло не так или вы ставите агента вручную.

---

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

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

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

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

---

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

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

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

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

```powershell
hermes --version
```

---

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

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

---

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

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

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

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

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

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

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

```powershell
hermes doctor
```

---

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

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

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

```
HERMES_CUSTOM_POLZA_AI_API_KEY=ваш_ключ
```

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

```powershell
notepad $env:LOCALAPPDATA\hermes\.env
```

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

```powershell
hermes config env-path
```

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

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

---

## 5. Запустить

```powershell
hermes chat
```

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

---

## 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. Обновление агента

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

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

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

```powershell
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 <источник>`.

---

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

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

---

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

Если не хочется возиться с распаковкой вручную — откройте PowerShell (обычный, без
администратора) и вставьте блок целиком:

```powershell
$b = 'https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/download/v1.2.8'
$t = Join-Path $env:TEMP 'dionis'
Invoke-RestMethod "$b/dionis-setup-v1.2.8.zip" -OutFile "$t.zip"
Expand-Archive "$t.zip" $t -Force
& "$t\setup.cmd"
```

Дальше всё делает установщик: Git, Hermes, агент, Блокнот для ключа, проверка.

> Пути собираются через `Join-Path` намеренно. Строка вида `$t="$env:TEMP\dionis"`
> при копировании легко теряет кавычки, и PowerShell падает с
> `Непредвиденная лексема "\dionis"`. `Join-Path` таких кавычек не требует.

Приложение (158 МБ) ставится отдельно:

```powershell
$b = 'https://github.com/AILABSCRUME/AI_Lab_SCRUME_Co/releases/download/v1.2.8'
$z = Join-Path $env:USERPROFILE 'hermes-desktop-scrum.zip'
Invoke-RestMethod "$b/hermes-desktop-scrum.zip" -OutFile $z
Expand-Archive $z 'C:\Hermes' -Force
& 'C:\Hermes\win-unpacked\Hermes.exe'
```
