CanvasTTY — пространственный Electron-десктоп для настоящих локальных PTY и CLI-сессий AI-агентов. Здесь описано, как запустить MVP, не нарушить его процессные и визуальные контракты и расширять его честными виджетами, работающими на реальных источниках данных.
| Руководство | Что внутри |
|---|---|
| Быстрый старт | Требования, локальный запуск, первая сессия и команды для проверки |
| Встроенный браузер и журнал аудита | Управление на канвасе, настройки, доступ агентов, границы сайтов/файлов, activity и постоянные очищенные audit-файлы |
| Установка, релизы и локальные данные | Форматы установщиков, оговорки про неподписанное превью, границы доступа к credentials и релизные проверки |
| Создание виджетов | Способы расширения через исходный код, визуальная грамматика, границы процессов и бриф для AI-агента |
| Пиксельные темы терминала | Десять PNG, ZIP, прозрачный проём, импорт и управление агентом |
| Инструкция агенту по созданию темы | Задание с нулевого контекста, проверка архива и визуальная приёмка |
| Runtime-плагины | Manifest v1, permissions, HOME widgets, canvas apps, отдельные окна, media/playlist API для плееров, SDK и установка |
| Метрики и телеметрия | Лимиты подписок, расход токенов за сессию, приоритет источников, приватность, stale-состояния и тесты |
| Политика безопасности | Поддерживаемый релиз, сообщения об уязвимостях, локальные данные, плагины, медиапапки, browser storage и audit log |
| История изменений | Пользовательские исправления и возможности по релизам |
| Контракт | Прочитайте перед… |
|---|---|
| Архитектура | изменением IPC, жизненного цикла PTY/browser, хранения данных, зон ответственности процессов, agent transports или адаптеров провайдеров |
| UI-контракт | изменением Home, сценария запуска, Settings, поведения канваса, карточек терминала/браузера или визуальной семантики |
CanvasTTY поддерживает статические runtime-плагины через manifest API v1. Недоверенный UI остаётся внутри sandboxed iframe/окон и получает только явно подтверждённые capabilities. Доверенные core-интеграции, которым нужен новый main-process service, по-прежнему добавляются на уровне исходников и компилируются вместе с приложением.
Нельзя выдумывать статус сессии, счётчики, квоту, расход токенов, стоимость, таймеры обратного отсчёта или прогресс. Используйте реальный структурированный источник, а если он не может ответить — показывайте loading, stale, unavailable или error.
Вернуться к обзору репозитория.
CanvasTTY распространяется по лицензии MIT.