005-new-chat-picker: выбор ассистента при создании диалога (только если их больше одного)

This commit is contained in:
Porfiry
2026-09-19 04:56:18 +03:00
parent d5f4c67779
commit 48b7cd1b4b
4 changed files with 548 additions and 0 deletions
+69
View File
@@ -0,0 +1,69 @@
# Вариант 5 — Новый диалог: выбор ассистента
## Суть
Окно, которое появляется при нажатии «+» (новый диалог), **когда ассистентов
больше одного**. Спрашиваем, в каком ассистенте создать диалог.
**Когда окно показывается и когда нет:**
| Сколько ассистентов | Что происходит по «+» |
|---|---|
| **0** | Кнопки «+» **нет вообще** — создавать диалог не в ком |
| **1** | Окно **не показывается**: диалог создаётся сразу в этом ассистенте |
| **2 и больше** | Окно с выбором — этот макет |
## Состояния (переключатель сверху)
1. **Выбор: 2 ассистента** — основной вид. Сверху подсказка «В каком ассистенте
создать диалог?», ниже список. Первый отмечен **по умолчанию** — чтобы создать
диалог, достаточно одного нажатия.
2. **Третий не отвечает** — выбран ассистент без связи. Окно **предупреждает**,
но выбрать даёт: ассистент мог просто перезапускаться. Из списка не выкидываем.
3. **Ассистент один** — окна нет, затемнения нет.
4. **Ассистентов нет** — кнопки «+» нет, пустой список объясняет, что делать,
и ведёт в настройки.
5. **Диалог создан** — новый диалог первым в списке, шапка чата показывает
выбранного ассистента (его цвет и имя).
## Что видно в списке выбора
- **Значок ассистента** — цвет или картинка, как настроено в `004-settings-agents`.
- **Имя** и **адрес сервера** — чтобы различить похожие имена.
- **Состояние связи**: «на связи» зелёным, «не отвечает» красным.
- **Кружок отметки** справа.
- У ассистента без связи предупреждение появляется **при выборе**, а не сразу:
пока не выбран — шума нет.
## Решения
- **Выбран первый по умолчанию.** Открыл окно → сразу «Создать диалог» работает.
Лишнее движение нужно только если нужен не первый.
- **Ассистента без связи выбирать можно.** Запрещать нечестно: связь может
пропасть на секунду, а диалог человек создаёт осознанно. Окно предупреждает
словами, но не мешает.
- **Кнопку «+» при нуле ассистентов не рисуем.** Нажимать нечего — диалог
создавать не в ком.
- **Окно маленькое (480 px) и без вкладок.** Одно действие — один выбор.
Окно настроек (`004`) — 620 px, оно про управление; здесь просто выбор.
## Что НЕ делаем
- Не даём создавать диалог «без ассистента» — по библиотеке `client` диалог
живёт **внутри** агента, отдельно его не создать.
- Не показываем окно ради одного варианта — это лишнее нажатие.
- Не прячем ассистентов без связи (см. решения выше).
## Открытые вопросы
- Что делать, если **все** ассистенты не отвечают: показывать окно со всеми
красными или сразу писать «никто не отвечает»? Сейчас — показываем список.
- Нужен ли в этом окне шорткат «создать и сразу написать», то есть открывать
диалог с фокусом в поле ввода. Пока просто создаём.
- Нужна ли в окне ссылка «добавить нового ассистента» — сейчас её нет, за
добавлением идём в настройки.
## Из чего собрано
Стиль и классы взяты из `004-settings-agents` — тема та же (`#121218`, `#17212B`,
`#6AB2F2`), окно и затемнение устроены так же. Ничего нового не изобреталось.