North star: Cursor + MCP + CascadeIDE как рабочая скамья (границы v1)¶
Статус: черновик границ продукта (не ADR).
Обновлено: 2026-04-13 — приоритет ближайших итераций: комфортный переход из Cursor (MCP, наблюдаемость, привычный контур агента + IDE); паритет с Visual Studio и «уйти с VS полностью» — долгий горизонт, не критерий скорости первых выпусков.
Обновлено: 2026-04-15 — продуктовый принцип keyboard-first (ниже и в ADR 0013).
Обновлено: 2026-04-16 — граница «не polyglot IDE»; ссылка на ADR 0039.
Связь: architecture-policy.md, architecture-migration.md, ADR 0002, ADR 0013 (палитра команд, discoverability — опора для keyboard-first), ADR 0017, ADR 0039 (навигация; C# / .NET как north-star по языкам), ADR 0043 (MCP-транспорт и граница хоста; ортогонально 0002), MCP-PROTOCOL.md. Философский слой (DX, «невидимый инструмент», принципы AI в IDE): cascadeide-philosophy-v1.md, ADR 0071.
Позиционирование: CascadeIDE изначально и по смыслу — agent-first IDE: агент не «приложение сбоку» от редактора, а опорная ось продукта — общий наблюдаемый контур с человеком (MCP, паритет отладки — ADR 0002); модель кокпита и зон внимания задаёт рамку фокуса и не противоречит agent-first. Параллельно продукт запланирован как keyboard-first: основные сценарии — без обязательной мыши; клавиатура и палитра команд — опорные пути (ADR 0013, реестр хоткеев — ADR 0030), а не «сначала тулбар и клики».
Память агента (KB): устойчивое знание живёт в каноне решения и в MCP-командах, а не в «контексте весов» модели: knowledge (read_knowledge_file, write_knowledge_file, list_knowledge_files, секции, ревизии…), заметки сессии (ide_read_agent_notes, ide_write_agent_notes) — каноничные имена и аргументы в MCP-PROTOCOL.md.
Северная звезда (формулировка)¶
Открыть Cursor, поднять MCP, вести работу в CascadeIDE и видеть действия агента в том же контуре, что и своё: где стоят точки останова, где выполнение остановилось, где затык (сборка, тесты, ожидание, ошибка), без сюрпризов между тем, что делает агент, и тем, что видно в IDE.
Зачем уточняем акцент: для команды сейчас важнее снять трение перехода с Cursor (один сценарий: агент снаружи, правда репозитория и отладки внутри Cascade), чем спорить с Visual Studio по охвату функций. VS остаётся ориентиром там, где без «скучных километров» редактора и отладки не обойтись, но не как главный конкурент по скорости итераций продукта — см. § ниже.
Продуктовое видение: сильнее не «второй Visual Studio»¶
Конкуренция с Visual Studio здесь задумана не как «ещё один шкаф инструментов с тем же количеством окон и панелей». Сила VS — в охвате сценариев; слабость для многих — в том, что в нём легко утонуть: фокус и «что сейчас главное» не являются центральным обещанием продукта.
CascadeIDE при полной реализации принципов (модель зон внимания PFD / лобовое / MFD, Dark Cockpit, осознанная топология окон и агента) претендует на другую ось ценности: иерархия внимания и меньше хаотичного размножения окон — комфорт «кокпита» и прозрачность совместной работы с агентом, а не гонка за паритетом каждой панели VS.
Это не отменяет необходимости «скучных километров» редактора, отладки и языковых сервисов. Но продуктовый смысл — не клонировать VS, а дать иную повседневную работу тем, кому важнее ясность и устойчивый фокус, чем максимум встроенных инструментов на экране.
Keyboard-first: на уровне замысла CascadeIDE не задумывается как IDE, где обязателен постоянный «охват мышью» по плотным панелям. Ориентир — клавиатура + три входа команд (палитра Ctrl+Q, аккорд Ctrl+K, слэш в Intercom — 0119) и согласованность с автоматизацией через те же IdeCommands; широкие панели и тулбар — вторичны; детали — ADR 0013, philosophy §7.
JetBrains: для .NET честнее сравнивать Cascade не с IntelliJ IDEA, а с JetBrains Rider — тот же контур (решение, отладка, рефакторинги в экосистеме .NET). Ось дифференциации та же: не «ещё один насыщенный IDE-стол», а кокпит и иерархия внимания; по глубине и зрелости функций Rider остаётся сильным ориентиром в своей нише.
Связь: 0021 — модель внимания кокпита, режимы и пресеты UI 0010; паритет человек/агент по отладке — 0002.
Границы: что входит в эту цель¶
| Входит | Пояснение |
|---|---|
| Один источник правды в Cascade по отладке и видимому состоянию для человека и агента | См. ADR 0002. |
| MCP как мост между агентом (Cursor и др.) и IDE: команды, снимок UI, действия с редактором/сборкой/тестами | Реализация и контракт — MCP-PROTOCOL.md, исполнение через IIdeMcpActions / маршалинг UI (architecture-migration.md фаза 5). |
| Knowledge base (KB) и заметки агента | Файлы knowledge в workspace решения; MCP API — MCP-PROTOCOL.md (разделы knowledge и agent-notes); коды команд — IdeCommands.Knowledge / agent-notes в исполнителе MCP. |
| Наблюдаемость | Хотя бы: позиция останова, список брейкпоинтов, панель отладки/инструментирования, вывод сборки и тестов — доступны и с клавиатуры IDE, и через MCP там, где это уже проведено. |
| Keyboard-first (принцип) | Типовой рабочий контур — без зависимости от мыши для главных действий: навигация по командам через палитру и хоткеи (0013, 0030); мышь не запрещена, но не является главным обещанием UX. |
| Рабочий цикл без VS для типовых задач агента | Редактирование, сборка, тесты, git по репозиторию, отладка подключённого сценария — в одном окне Cascade, пока хватает возможностей редактора и отладчика. |
| Мультиоконность / зоны экрана по железу пользователя | Семантика presentation, второй TopLevel под MFD и т.д. — ADR 0017. |
Границы: что сознательно не обещаем в этой постановке¶
| Не обещаем | Почему |
|---|---|
| Полная замена Visual Studio по всем сценариям | Другой объём: профилирование, сложный мультипроцессный attach, полный набор рефакторингов Roslyn как в VS, дизайнеры и т.д. |
| Реализация Cursor внутри этого репозитория | Cursor — внешний хост агента; граница — контракт MCP и пользовательский сценарий, а не форк Cursor. |
| Идеальная синхронизация без настройки | Расстановка мониторов, primary vs семантический Forward, строка presentation — ответственность пользователя и ОС; см. ADR 0017 п. 5 доп.. |
| Polyglot IDE с паритетом по всем языкам | North-star по языкам — C# / .NET (решение, Roslyn, типичный рабочий цикл); UI IDE на Avalonia; в контуре продукта — сценарии .NET (в т.ч. Blazor и др.) без обещания «как VS для любого стека». Другие языки после открытия возможны, но не определяют цель v1; см. ADR 0039 § область языков. |
Критерии «мы в зоне цели» (проверяемые)¶
Ниже — не проценты, а сигналы готовности для самопроверки команды:
- Неделя реальной работы над репозиторием: основной контур — Cascade + Cursor + MCP, VS не нужен для типовых задач (или открывается редко и осознанно).
- Паритет отладки: действие агента через MCP по отладке отражается в UI так же, как ручное действие человека (в рамках ADR 0002).
- Наблюдаемость затыка: при остановке, падении сборки, провале тестов пользователь не обязан угадывать состояние по логам Cursor — ключевое видно в Cascade (полосы, панели, редактор).
Матрица: сделано / осталось¶
Оценки субъективные; ссылки — якоря для обсуждения, не жёсткий аудит.
| Область | Уже есть (ориентир) | Осталось к north star |
|---|---|---|
| MCP → IDE, UI-поток | Маршалинг ExecuteCommandAsync, фазы миграции 0–5 (architecture-migration.md). |
Расширять команды по мере сценариев агента; держать контракт MCP-PROTOCOL.md в актуальном виде; паритет восстановления канала и роли хоста — ADR 0043. |
| KB / память агента | Команды knowledge и agent-notes в MCP-PROTOCOL.md; исполнение через MCP к IDE. | Обзор и навигация по KB в UI по мере приоритета; сценарии целостности канона и «что агент записал» без путаницы с выводом модели. |
| Паритет отладки | Решение ADR 0002; DAP/netcoredbg в IDE. | Закрывать дыры «в поле»: расхождения edge-case, удобство панели, явная связка MCP-команд с визуалом редактора. |
| Брейкпоинты / позиция / стек | MainWindowViewModel.Breakpoints, MCP отладки, инструментирование (architecture-migration.md фаза 4). |
«Где агент поставил» — довести до привычного UX (список, подсветка, фильтр шума). |
| Сборка / тесты / Git | Панели, MCP, Git runner (architecture-migration.md фазы 1–3). | Стабильность больших решений, сообщения об ошибках, сценарии агента «почини сборку». |
| Редактор и языковые сервисы | LSP/диагностики по плану (LANGUAGE-SERVICES-PLAN.md). | Сокращать разрыв с VS там, где мешает «жить без VS». |
| Мультиоконность / MFD | MfdHostWindow, presentation, сохранение геометрии (ADR 0017). |
Политика закрытия главного окна, fallback при смене мониторов, подтверждения агента при нескольких TopLevel — открытые пункты ADR. |
| Агент ↔ человек: внимание | Модель зон 0021, UX чата 0031 (частично). | Единая картина «затык / жду ввода / критично» без перегруза модалками (ADR 0017 п. 6). |
| Кокпит / Dark Cockpit | Режимы UI, полосы health/EICAS в концепции 0021, Power/Flight (0010). | Сплошной опыт «не утонуть» при росте функций; согласовать плотность UI с north star выше. |
| Палитра / chord / slash UX | Реестр (0030); палитра, аккорд (0060), слэш (0119 Implemented). | Расширять каталог slash с autocomplete; единая дисциплина имён с MCP; онбординг трёх входов, не «только палитра». |
Следующий шаг документа¶
При согласовании границ: добавить одну целевую неделю или один эталонный репозиторий как «полигон без VS» и при необходимости вынести критерии в architecture-policy.md одной строкой версии (как навигатор, без дублирования ADR).