146 lines
11 KiB
Markdown
146 lines
11 KiB
Markdown
# Одобренные макеты
|
|
|
|
**Здесь только принятое.** Это не «вариант для сравнения» и не черновик — это
|
|
решение, на которое опираемся в реализации. Правило простое: одобренный макет
|
|
**живёт здесь**, а не остаётся «выбранным» среди вариантов в `sketches/`.
|
|
|
|
| Файл | Что это | Одобрено |
|
|
|---|---|---|
|
|
| `001-sidebar-utility.html` | **Основа дизайна**: привычный мессенджер | 2026-09-18 |
|
|
| `004-settings-agents.html` | Настройки агентов: список, форма, проверка связи | 2026-09-19 |
|
|
| `005-new-chat-picker.html` | Модалка «Новый диалог»: выбор ассистента | 2026-09-19 |
|
|
| `006-groups-manage/` | Управление группами — 4 файла по состояниям | 2026-09-19 |
|
|
|
|
`sketches/` — предложения: `002-rail-voice-first`, `003-three-pane-command`,
|
|
`004-settings-agents`, `005-new-chat-picker` (черновики, из них выросли одобренные).
|
|
|
|
---
|
|
|
|
## 001-sidebar-utility.html — основа дизайна
|
|
|
|
**Это база всего клиента.** Привычный мессенджер: список диалогов слева (320 px),
|
|
чат справа. Узкое окно — как в Телеграме: на экране что-то одно, у открытого
|
|
диалога сверху кнопка «Назад».
|
|
|
|
**Что в нём есть:**
|
|
- **лента папок** — «Все чаты / Работа / Дом / +», со счётчиком непрочитанных;
|
|
- поиск диалога;
|
|
- список диалогов: значок, название, последняя строка, время, кружок непрочитанных;
|
|
- шапка чата со значком, именем и состоянием связи;
|
|
- сообщения: пользователь справа, ассистент слева;
|
|
- поле ввода с кнопкой отправки и круглой кнопкой записи голоса.
|
|
|
|
**Из него убрано при одобрении:**
|
|
- подсказка под полем ввода;
|
|
- кольцо токенов — в библиотеке `client` таких данных нет, а «нет данных — нет цифры».
|
|
|
|
Стиль: фон `#121218`, панели `#17212B`, акцент `#6AB2F2`, текст `#EBEBEB`.
|
|
|
|
---
|
|
|
|
## 005-new-chat-picker.html — Новый диалог
|
|
|
|
**Модалка появляется по «+» (новый диалог), когда ассистентов больше одного.**
|
|
Состоит из одного окна 480 px и больше ничего: заголовок «Новый диалог»,
|
|
подсказка-вопрос, список ассистентов, две кнопки внизу.
|
|
|
|
**Что в карточке ассистента:**
|
|
- значок — цвет или картинка (как настроено в настройках агентов);
|
|
- имя;
|
|
- адрес сервера;
|
|
- состояние связи: «на связи» зелёным, «не отвечает» красным;
|
|
- кружок отметки справа.
|
|
|
|
**Поведение:**
|
|
- **первый отмечен сразу** — создать диалог можно одним нажатием;
|
|
- выбран ассистент без связи → под списком появляется предупреждение,
|
|
но выбор не запрещается (связь может пропасть на секунду);
|
|
- окно маленькое и без вкладок: одно действие — один выбор.
|
|
|
|
**Когда этой модалки не должно быть:**
|
|
- **ассистент один** — диалог создаётся сразу в нём, спрашивать не о чем;
|
|
- **ассистентов ноль** — кнопки «+» нет вообще (создавать диалог не в ком),
|
|
вместо списка диалогов подсказка «добавьте ассистента в настройках».
|
|
|
|
**Отвергнуто при одобрении:** пояснительная панель над окном клиента — она
|
|
попала в макет случайно, это была заметка для проверки, а не часть интерфейса.
|
|
В одобренном файле её нет и быть не должно.
|
|
|
|
---
|
|
|
|
## 004-settings-agents.html — Настройки агентов
|
|
|
|
**Два окна друг над другом.** Первое — настройки (620 px): список агентов и форма
|
|
нового. Второе, поверх — проверка связи (480 px).
|
|
|
|
**Окно 1, список агентов.** У каждого: знак (цвет или картинка), имя, адрес,
|
|
состояние — «на связи» зелёным, «не отвечает» красным, «не проверялся» серым.
|
|
Кнопки в строке: **проверить связь (⇄)**, **изменить (✎)**, **удалить (🗑)**.
|
|
Внизу пунктирная «+ Добавить агента».
|
|
|
|
**Окно 1, форма нового** — три поля:
|
|
- **Название.** Пояснение: имя придумывает пользователь, сервер своего имени
|
|
не сообщает (это из исходников, не догадка).
|
|
- **Адрес сервера** — целиком, вместе с путём `/agentik`. Прямо в строке адреса
|
|
кнопка «Проверить связь».
|
|
- **Как отличать в списке** — вкладки **Цвет / Картинка**, выбирается что-то одно.
|
|
Цвет — из пяти. Картинка — файл с диска, круглый превью, «Выбрать файл…» и «Убрать».
|
|
⚠️ Картинка **копируется внутрь клиента**, не берётся по исходному адресу.
|
|
|
|
**Окно 2, проверка связи — отдельное окно поверх настроек**, три состояния
|
|
в одном окне: идёт (крутится кольцо) → отвечает (зелёная галочка, подробности:
|
|
ответ, адрес, число диалогов, отклик) → не отвечает (красный крестик, подсказка
|
|
что проверить). Внизу всегда «Проверить снова». Кнопка «Добавить агента»
|
|
доступна только при успехе. Работает и для добавленных агентов — кнопкой «⇄».
|
|
|
|
**Почему проверка отдельным окном:** места больше, основную форму не дёргает,
|
|
одно окно годится и для новой формы, и для уже добавленного агента.
|
|
|
|
**Честно о непроверенном:** живого агента на момент макета не поднято — на порту
|
|
8080 отвечал чужой сервер. Адреса запросов взяты из исходников (`GET /agentik/health`
|
|
и список диалогов, оба ничего не меняют), но замеры времени и число диалогов
|
|
в макете условные. На настоящем агенте проверка ещё не гонялась.
|
|
|
|
## 006-groups-manage/ — Управление группами
|
|
|
|
**Четыре файла, по одному состоянию в каждом.** Интерактивности нет намеренно:
|
|
вместо неё отдельный файл на каждое состояние.
|
|
|
|
| Файл | Что показывает |
|
|
|---|---|
|
|
| `1-list.html` | список групп: «изменить» и «удалить» у каждой, внизу «+ Добавить группу» |
|
|
| `2-add.html` | новая группа: только название |
|
|
| `3-edit.html` | изменение: переименование, удаление отдельным блоком «ОПАСНОЕ» |
|
|
| `4-delete.html` | подтверждение: диалоги не удаляются, вернутся в «Все чаты» |
|
|
|
|
**Как открывается:** кнопкой-карандашом (✎) в ленте групп над списком диалогов —
|
|
справа, отдельно от чипов. Прежний «+» на этом месте убран: рядом стоят чипы
|
|
самих групп, и всё похожее на «+» читается как «добавить группу», хотя диалог
|
|
создаётся кнопкой в шапке списка.
|
|
|
|
**Решения внутри:**
|
|
- **«Все чаты» — встроенная группа**, не удаляется и не переименовывается
|
|
(пунктирная рамка, пометка «встроенная»). Нужна как надёжное место, где виден
|
|
весь список.
|
|
- **Удаление группы диалоги не удаляет** — в подтверждении это сказано первым
|
|
делом. Диалоги останутся и будут видны в «Все чаты», «корзины» у них нет.
|
|
- **У группы только название.** Цвет, значок, порядок — не делаем, пока не попросили.
|
|
- **Пустая группа допустима** — можно создать заранее, диалоги разложить потом.
|
|
- **Подсказка при создании:** диалоги в группу попадают позже, из самого диалога.
|
|
|
|
## Про цвета в макетах
|
|
|
|
Цвета в макетах стоят числами — так и надо, иначе макет не будет выглядеть
|
|
задуманным. **В коде так нельзя:** цвет берётся из цветовой схемы по смыслу,
|
|
потому что тем будет несколько. Разбор — `THEMES.md`.
|
|
|
|
## Как смотреть
|
|
|
|
Открыть файл в браузере — самодостаточный, без сборки и без зависимостей.
|
|
|
|
- в `001` переключается узкий/широкий вид и видны состояния сообщений;
|
|
- в `004` переключаются список/форма, вкладки Цвет/Картинка; кнопкой «⇄» или
|
|
«Проверить связь» открывается окно проверки (оба состояния — успех и отказ);
|
|
- в `005` кликом по карточке меняется выбор и появляется предупреждение;
|
|
- `006` — четыре файла, открывать по одному, по состоянию.
|