Files
agentik-desktop/README.md
T

49 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# agentik-desktop — дизайн десктопного клиента
Десктопный клиент агента **agentik** (Jetpack Compose Desktop). UI общается с агентом
через опубликованную библиотеку `pw.binom.agentik:client` — она даёт готовые
`Agent` / `Conversation`, живой поток событий и `interrupt()` для кнопки «Стоп».
Это пока **только дизайн**, не код приложения. Три варианта лежат рядом, чтобы
сравнить и выбрать один; после выбора лишние удаляются.
## Как смотреть
Открыть в браузере любой из трёх файлов — каждый самодостаточный, без сборки:
```
sketches/001-sidebar-utility/index.html # привычный мессенджер
sketches/002-rail-voice-first/index.html # голос — главное действие
sketches/003-three-pane-command/index.html # три панели + состояние агента
```
Кнопка микрофона работает: клик — запись, идёт волна и живая расшифровка,
«Остановить и отправить» кладёт текст в поле. Так видно, как это будет ощущаться.
## Чем отличаются
| | 1. Sidebar | 2. Voice-first | 3. Command center |
|---|---|---|---|
| Экран | список + чат | рейка + список + чат | три панели |
| Голос | круглая кнопка у поля | большая кнопка, живая расшифровка | компактная, строка записи снизу |
| Работа агента | видна в переписке | в переписке | отдельные сворачиваемые шаги |
| Кому | просто чат | кто диктует | кто следит за расходом |
## Общее для всех (решено и не обсуждается)
- Стиль — тёмный, из уже принятой темы клиента assistent: фон `#121218`,
панели `#17212B`, акцент `#6AB2F2`, текст `#EBEBEB`.
- Слева — список диалогов; выбран один; открывается конкретный чат.
- Внизу — поле ввода, кнопка «Отправить» и отдельная кнопка записи микрофона.
- Голос расшифровывается в текст **до** отправки — ошибку видно сразу.
- Для агента важны прерывание ответа («Стоп») и показ хода работы.
## Что предстоит решить
1. **Откуда берётся распознавание речи.** В библиотеке `client` сейчас только текст
и картинки — аудио в протоколе нет. Варианты: звать распознавание напрямую
(у нас поднято на 88.125) либо сначала выяснить, как это делается на сервере агента.
2. **Запись на удержание** (говоришь, пока держишь) или **по нажатию** (нажал —
говоришь — нажал). В варианте 2 работает удержание пробела.
3. **Нужны ли папки** для диалогов, как в мобильном клиенте, или хватит поиска.