VS Code
Cusp в VS Code, Cursor и Kiro — правки проверяются в редакторе диффов, контекст берётся из выделения и диагностики, а запросы на подтверждение приходят нативно.
Расширение Cusp открывает агента на панели VS Code. Оно работает как клиент локального демона (daemon) Cusp, поэтому сессии те же, что в десктопном приложении и CLI cusp: начните в редакторе и продолжите в терминале или наоборот.
Расширение появится в VS Code Marketplace и Open VSX с первым публичным релизом.
Требования
- VS Code 1.105 или новее либо совместимый редактор, например Cursor или Kiro.
- Доверенная рабочая область. В режиме ограниченного доступа (Restricted Mode) расширение не работает.
- Провайдер моделей, настроенный в Cusp, или ключ провайдера в переменных окружения.
Установка
Установите расширение
Будет доступно с первым публичным релизом.
Откройте Cusp
Нажмите значок Cusp на панели действий или ⌘⎋ (Ctrl+Esc).
Что вы получаете
- Панель Cusp на панели действий или во вкладке редактора (Cusp: Open in New Tab): сессии этой рабочей области, потоковая переписка с вызовами инструментов, подтверждениями и вопросами, а также выбор режима, модели и уровня рассуждений.
- Проверка правок в редакторе диффов. Когда Cusp хочет изменить файл, предложение открывается рядом с ним. Нажмите Accept (⌘↵) или Reject (⌘⌫) в заголовке редактора. Готовые изменения можно снова открыть из переписки и откатить.
- Контекст из редактора. Выделенный фрагмент предлагается вместе со следующим сообщением. ⌥K добавляет его как упоминание вида
@src/app.ts#L10-20. Через@можно упомянуть файлы, включая несохранённые изменения. Cusp: Fix Problems in This File отправляет диагностику файла. - Нативные запросы. Когда панель скрыта, подтверждения, вопросы и проверка планов также приходят как уведомления и быстрый выбор (quick pick) VS Code.
- Строка состояния. Показывает подключение к демону и то, работает ли сессия или ждёт вас.
- Передача в терминал. Cusp: Continue Session in Terminal открывает сессию в терминальном интерфейсе
cusp.cusp, запущенный во встроенном терминале этого окна, может читать ваше выделение и диагностику и открывать диффы в редакторе.
Горячие клавиши
| Команда | macOS | Windows / Linux |
|---|---|---|
| Открыть Cusp | ⌘⎋ | Ctrl+Esc |
| Новая сессия | ⌘⇧⎋ | Ctrl+Shift+Esc |
| Добавить выделение в чат | ⌥K | Alt+K |
| Принять / отклонить предложение (редактор диффов) | ⌘↵ / ⌘⌫ | Ctrl+Enter / Ctrl+Backspace |
| Ответить на ожидающий запрос | ⌘⌥Y | Ctrl+Alt+Y |
| Сменить режим разрешений (в поле ввода) | ⇧⇥ | Shift+Tab |
Другие команды в категории Cusp: New Session, Show Sessions, Add File, Interrupt, Revert Change и Reconnect to Daemon.
Настройки
| Настройка | По умолчанию | Назначение |
|---|---|---|
cusp.daemon.url | Подключаться к этому демону, а не искать его | |
cusp.daemon.path | Путь к исполняемому файлу cusp-daemon, который нужно запустить | |
cusp.daemon.dataDir | ~/.cusp | Папка данных для демона, который запускает расширение |
cusp.permissions.nativePrompts | whenHidden | Показывать подтверждения как уведомления VS Code: always, whenHidden или never |
cusp.diffs.reviewEdits | true | Открывать предложенные правки на проверку в редакторе диффов |
cusp.context.shareSelection | true | Предлагать выделение в редакторе вместе со следующим сообщением |
cusp.terminal.bridge | true | Разрешить cusp во встроенных терминалах обращаться к этому окну |
Как расширение находит демон
Расширение подключается по порядку:
- К демону по адресу
cusp.daemon.url, если он задан. - К уже работающему демону, например демону десктопного приложения, который находится через
~/.cusp/daemon.json. - К демону, который оно запускает само:
cusp.daemon.path, затемcusp-daemonиз комплекта десктопного приложения, затемcusp-daemonизPATH. Запущенный так демон останавливается, когда окно закрывается.
Мост с терминалом
cusp во встроенном терминале связывается с VS Code через WebSocket на 127.0.0.1 со случайным портом и случайным токеном для каждого окна. Адрес и токен передаются только терминалам этого окна через переменные окружения и никогда не записываются на диск. Токен проверяется за постоянное время, а любой запрос из браузера (с заголовком Origin) отклоняется. Отключить мост можно настройкой cusp.terminal.bridge.
Дальше
- Редакторы с ACP: IDE JetBrains, Zed и другие.
- Разрешения: режимы и правила.
Расписания и триггеры
Будите участников команды по расписанию cron, когда их упоминают или назначают им работу, или когда что-то происходит на GitHub.
JetBrains, Zed и редакторы с ACP
Запускайте Cusp командой `cusp acp` в любом редакторе, который поддерживает Agent Client Protocol, — в IDE JetBrains, Zed, Kiro и других.