CascadeIDE — философский слой продукта (v1)¶
Статус: справочник для людей (не нормативный ADR).
Назначение: вводный текст для новых участников и для внешнего User Guide — смысл продукта и метафор до чтения конкретных ADR.
Дата: 2026-04-19
Связь: ADR 0071 (принципы и анти-паттерны интеграции AI), ADR 0060 §10 (невидимый инструмент, overlay; три входа команд — §7 ниже, 0119), ADR 0021 (PFD/MFD, модель внимания), north-star, ADR 0020, ADR 0008, ADR 0028.
Источник нарратива: линия обсуждений Comet (внешний диалог), зафиксированная в каноне personal-слоя KB; здесь — продуктовая выжимка без привязки к датам релизов сторонних IDE.
Эпистемика: политики лицензирования и состава пакетов у вендоров меняются; примеры ниже иллюстрируют класс риска UX, а не вечные факты о конкретной версии продукта.
1. «Хороший актёр» и IDE¶
Хороший актёр — тот, которого не видно: на сцене остаётся персонаж, а не исполнитель.
IDE как невидимый инструмент не «играет сама себя»: не требует постоянного внимания к своим панелям, меню и «фишкам». В фокусе — код, задача, мысль разработчика. Кокпит CascadeIDE (0021) — метафора того же: приборы — продолжение мышления пилота, а не отдельный спектакль про «интерфейс IDE».
2. Зачем авиационная метафора (и что она здесь не значит)¶
Это не декоративная «тема» ради визуала и не ролевой косплей. Авиация выбрана как носитель готового языка про дисциплину внимания в среде, где ошибка стоит дорого: там десятилетиями отрабатывают, куда смотреть в первую очередь, что держать в периферии, и когда интерфейс обязан молчать, чтобы не отвлекать.
Зачем это переносить в IDE:
| Идея | Зачем для CascadeIDE |
|---|---|
| Иерархия внимания | Один и тот же экран может показать всё; без явной иерархии пользователь тонет в панелях. PFD / лобовое / Forward задают роль «сейчас главное» vs «вторичный контекст» — см. 0021. |
| MFD и «земля» | Диагностика, логи, карта, инструменты — не конкурируют с редактированием за фокус по умолчанию; их место и плотность политикой, а не случайным нагромождением окон. |
| Dark Cockpit | В норме приборы не кричат: тревога — когда есть что сказать. Аналог для IDE: меньше визуального шума и «маркетинговых» пульсаций, больше спокойного фона для кода (0021 § про кокпит и осведомлённость). |
| Скан и предсказуемость | У пилота есть порядок обхода приборов; у разработчика — порядок команд и зон. Три входа в одну модель command_id (§7, 0060, 0013, 0119) поддерживают привычку, а не хаотичный поиск кнопки. |
| Общий словарь | PFD/MFD/EFB, режимы, «тактика vs стратегия» (0059) дают одинаковые имена в ADR, коде и разговоре команды — меньше «я про верхнюю панель, ты про правую». |
| Агент в том же контуре | Самолёт сравнивают с экипажем: кто сейчас несёт ответственность за траекторию. Agent-first north-star (north-star, 0002) — про наблюдаемость чужого действия, а не про «магию сбоку». |
Чего метафора не обещает: мы не симулируем кабину 1:1 и не переносим авиационную сертификацию на текстовый редактор. Речь о переносе принципов: внимание, роли зон, тишина в норме, явная тревога при отклонении — как вводный язык для дизайна и документации. Детали размещения и канон — в ADR по ссылкам выше.
3. Почему в истории полезен ориентир «классический» Visual Studio¶
Долгое время экосистема Visual Studio служила ориентиром DX для .NET:
| Качество | Смысл |
|---|---|
| Единая экосистема | Отладчик, рефакторинг, IntelliSense, обозреватель решения — согласованный контур |
| Прозрачность | Предсказуемые действия: отладка, комментирование, сборка — ожидаемый эффект без «магии» |
| Инструменты по делу | Элементы UI с понятным назначением; меньше декоративного шума |
Это близко к принципу «инструмент исчезает»: пользователь держит в голове задачу, а не рекламу возможностей среды.
4. Класс риска: облачный ассистент как «плохой актёр»¶
Когда в тот же контур встроен встроенный облачный ассистент (условный «Copilot-style»), возможен другой UX-профиль:
| Эффект | Почему бьёт по DX |
|---|---|
| Заметность | Подсказки появляются там и тогда, где пользователь не просил — инструмент требует внимания |
| Непредсказуемость | Сложно держать ментальную модель «что сейчас изменится в файле» |
| Суверенитет | Если помощь нельзя полностью отключить или вынести из критичного пути — страдает ощущение контроля |
| Локальность | Привязка к подписке/аккаунту/облаку ослабляет обещание «IDE работает как локальный инструмент» |
| Когнитивная налог | Вместо кода в фокусе — вопросы «что предложит модель», «не перезапишет ли она моё» |
В терминологии §1 это плохой актёр: выходит на передний план, перебивает сцену, зритель перестаёт понимать, что происходит.
Для CascadeIDE это полезно как анти-паттерн: интеграция AI и агентности должна оставаться прозрачной, отключаемой по слоям, согласованной с MCP и ADR, а не непрозрачным фоном в каждом символе.
5. Что закрепляет CascadeIDE (согласование с архитектурой)¶
| Принцип | Где в продукте |
|---|---|
| Локальность и контролируемые границы | MCP как наблюдаемый протокол; хост агента снаружи — не чёрный ящик внутри редактора (0008) |
| Суверенитет пользователя | settings.toml, hotkeys.toml, секреты отдельно (0028) |
| Прозрачность решений | ADR и репозиторий как канон, не смысл «в голове модели» |
| Невидимость и клавиатурный контур | Кокпит, аккорды, overlay как суфлёр (0060); intent-first грамматика и surface routing — отдельные оси (обсуждение Comet / intent-first) |
| Честность про провайдеров | Слои видимости рассуждения агента, лимиты API (0020) |
6. Метафоры в одном направлении¶
(См. также ADR 0060 §10 — Пярт, Сати, «хороший актёр».)
| Метафора | Здесь |
|---|---|
| Тинтиннабули | Минимальный каркас + «мелодия» намерений — строгая структура ввода |
| Мебельная музыка | Среда как фон работы, не постоянный объект внимания |
| Хороший актёр | IDE исчезает — остаются код и задача |
7. Три входа команд: палитра, аккорд, слэш¶
Один каталог command_id (0013, 0030) — три поверхности discoverability, не три исполнителя:
| Режим | Вход | Зачем |
|---|---|---|
| Репетиция | Палитра (Ctrl+Q) | Полный каталог, fuzzy-поиск, онбординг, редкие команды |
| Выступление | CascadeChord (Ctrl+K) + Melody c: |
Быстрый вход для освоенных действий без отрыва от клавиатуры; короткие мнемоники — здесь, не в / |
| Канал сессии | Слэш в composer Intercom (/ + autocomplete) |
Те же команды, когда руки уже в поле сообщения: иерархия /build run, /topic open, /help — без зубрёжки и без смены фокуса на палитру (0119, 0124–0126) |
Слэш дополняет палитру и аккорд (0013); обычный текст в composer — агенту, неизвестный / — отклонять локально.
8. Агент как партнёр для проектирования (до кода)¶
Ключевой сдвиг эпохи AI в разработке — не только «быстрее писать код», а дешёвый внутренний диалог до реализации.
| Роль агента | Что даёт человеку |
|---|---|
| Собеседник | Обсудить, поспорить, пройти ветвления («а если attach не selection?») без стыда отвлечь и без типичного социального трения (расписание, усталость, «мы же решили») |
| Не замена людей | Вкус, ответственность, приёмка ADR и scope — остаются у оператора; агент не арбитр продукта |
| Тот же контур | После договорённости — исполнение теми же command_id, MCP, Intercom; не «сначала наговорили в чате, потом заново объясняем IDE» |
Экономика работы: длинный разговор + ADR/playbook (дешево вниманием) → короткий спринт реализации (быстро в коде), когда ветвления уже сняты. Риск — не «слишком много думали», а быстро накодить лишнее без явного MVP; стоп-кран — фазы в ADR и решение капитана.
Согласование: IOP manifest (коммуникация и Intercom), 0071 (границы интеграции), §5–§7 выше (как помощь не становится «плохим актёром»).
8.1. Память команды, не «лычка» в промпте¶
Senior architect в живой команде — не тон ответа в чате, а накопленное: память (что уже ломалось), договорённости (ADR, MLP vs идеал), опыт (узнаваемые запахи гонок и lock), ошибки (отклонённые альтернативы и history в ADR). Промпт «веди себя как senior» без этого — костюм на один сеанс.
Культура работы с агентом в контуре CascadeIDE (человек и модель):
| Делать | Не делать |
|---|---|
| Читать ADR и playbook до спора и кода | Ждать «класса» от роли в system prompt |
| Спорить с нормой (что в MLP, что отложено) | Соглашаться ради вежливости |
| Дописывать историю (ADR history, open questions, rejected) | Оставлять инсайт только в чате сессии |
Операционная формула (для людей и агентов): читай ADR → спорь с нормой → дописывай историю. Не замена оркестратору и не «магия имени» — внешняя память, которая переживает сессию. Пример: 0148 (verify epoch, substrate bundle — опыт ошибок, вшитый в среду).
Инструментальный режим («сделай дифф», «найди баг») остаётся нормальным; партнёрский — когда есть зачем и куда фиксировать решение. См. playbook-agent-environment-v1.md §«Культура сессии».
9. Два порога входа (канон в IOP-манифесте)¶
IOP — манифест (дисциплина); экосистема Cascade — use case в том же файле. Здесь — продуктовый слой CIDE: handbook §1.1.
10. Обновления документа¶
Правки v1: по мере того как продуктовые решения по AI/агентам крепнут в ADR, короткие дополнения сюда; дублировать полную нормативку ADR не требуется — держать ссылку на 0071.
| Дата | Изменение |
|---|---|
| 2026-05-25 | §8.1: память команды vs «лычка» senior; формула читай ADR → спорь → дописывай историю; ссылка на 0148/playbook. |
| 2026-05-19 | §8: агент как партнёр для проектирования до кода; IOP/Intercom — ссылка. |
| 2026-05-19 | §9: два порога — ссылка на IOP-манифест (канон); handbook §1.1 — CIDE. |