Files
agentik-desktop/sketches/004-settings-agents/README.md
T

70 lines
6.1 KiB
Markdown

# Вариант 4 — Настройки: агенты
## Суть
Два окна друг над другом. Первое — настройки: список агентов и форма нового.
Второе, поверх — **проверка связи**: нажал «Проверить связь» и она идёт
в отдельном окне, а не строкой внутри формы.
## Окно 1: список агентов
- У каждого агента: имя, адрес, состояние — «на связи» зелёным, «не отвечает» серым,
ошибка красным. Видно сразу, а не спрятано в глубине.
- Кнопки в строке: **проверить связь** (⇄), **изменить** (✎), **удалить** (🗑).
Проверка доступна и для уже добавленного агента — из этого же списка.
- Внизу пунктирная «+ Добавить агента».
## Окно 1, вид 2: форма нового агента
- **Название** — с пояснением, что имя придумывает пользователь: сервер своего
имени не сообщает (это из исходников, не догадка).
- **Адрес сервера** — целиком, вместе с путём `/agentik`. Прямо в строке адреса
кнопка **«Проверить связь»**.
- **Чем отличать в списке: цвет или картинка.** Переключатель, выбирается что-то одно.
- **Цвет** — простой выбор из пяти.
- **Картинка** — файл с диска: круглый превью, «Выбрать файл…» и «Убрать».
Картинка показывается там же, где был бы цвет: в списке агентов, в диалогах,
в шапке чата.
- ⚠️ **Картинку копировать себе, а не брать по исходному адресу.** Выбранный файл
сохраняется внутрь клиента; дальше используется только эта копия. Если держать
ссылку на исходный путь, значок пропадёт, когда файл удалят, переименуют или
вынут флешку. То же для картинки по ссылке: скачать и положить себе.
## Окно 2: проверка связи (отдельное, поверх настроек)
Три состояния, сменяются в одном окне:
1. **Идёт** — крутящееся кольцо, «Спрашиваю агента…», под ним адрес.
2. **Отвечает** — зелёная галочка, «Агент отвечает». Подробности: ответ на запрос,
адрес, число диалогов, отклик в миллисекундах. Подсказка «Адрес рабочий».
Кнопка внизу — «Добавить агента» (доступна).
3. **Не отвечает** — красный крестик. Подробности: нет ответа, отклик истёк.
Подсказка: проверить адрес, что агент запущен, что порт открыт и путь `/agentik`
указан целиком. Кнопка внизу заблокирована — добавить нельзя.
Внизу окна всегда есть **«Проверить снова»**. Закрытие окна возвращает к настройкам,
а не выбрасывает из них.
## Почему проверка отдельным окном — лучше
- Места больше: видно и результат, и подробности, и объяснение, что делать дальше.
- Основную форму не дёргает: пока проверяешь — поля на месте, ничего не сбилось.
- Одно и то же окно годится и для формы, и для уже добавленного агента.
## На чём основана проверка (не выдумка)
У сервера агента есть ответ на `GET /agentik/health` (отдаёт «ok») и запрос
списка диалогов. Оба безопасные — ничего не меняют. Адреса взяты из исходников.
⚠️ **Живого агента сейчас не поднято** — на порту 8080 отвечает чужой сервер (404).
Поэтому на настоящем агенте проверка ещё не гонялась: в макете показаны все три
состояния, но замеры времени и число диалогов — условные.
## Фон: папки вернулись
В первом варианте над списком диалогов есть **папки** — «Все чаты», «Работа», «Дом»,
«+». В прошлой версии этого макета я их потерял. Теперь на фоне видны и папки,
и поиск, и значок непрочитанных — как в одобренном варианте 1.
## Плюс: список диалогов с двумя агентами
Диалоги сгруппированы по агентам, у группы цветная точка, у каждой строки цветная
полоска, цвет аватара совпадает с цветом агента из настроек.
## Что слабо / открытые вопросы
- Одного цвета для различения может оказаться мало.
- Где хранится список агентов — не решено.
- Пароля/ключа доступа у библиотеки нет — поля для него нет.