При ежедневной разработке в Cursor с использованием чатов и фоновых агентов разработчик неизбежно упирается в неочевидную механику самого редактора: контекст переполняется старыми диффами, скорость генерации падает, сторонние модели через OpenRouter не получают заявленный контекст в миллион токенов, а кнопка коммита упорно засоряет историю чужими соавторами. Ниже — разбор того, как эти механизмы работают на уровне файловой системы и API, и как настроить редактор под чистый рабочий процесс.
Изоляция диалогов: что на самом деле делает кнопка Archive
В боковой панели Cursor рядом с каждым диалогом находится кнопка Archive (горячая клавиша Ctrl+Alt+Backspace или Cmd+Alt+Backspace). В интерфейсе она выглядит как удаление, но работает принципиально иначе.
В процессе обсуждения задачи диалог обрастает контекстом: редактор подтягивает куски открытых файлов, промежуточные диффы, вывод терминала и историю правок. Когда размер треда переваливает за 50–80 тысяч токенов, начинаются три проблемы:
- Деградация ответов: модель начинает путаться в старых версиях функций, которые вы переписали двадцать минут назад.
- Накладные расходы: каждый новый вопрос повторно отправляет весь накопленный хвост сообщений, впустую сжигая квоты быстрой подписки или баланс API.
- Задержки: генерация первого токена (TTFT) увеличивается пропорционально размеру передаваемого контекста.
Кнопка Archive не стирает диалог из базы. Она отсекает активное контекстное окно. Диалог сохраняется в локальной SQLite-базе редактора в директории пользовательских данных (~/.config/Cursor/User/workspaceStorage/ в Linux или ~/Library/Application Support/Cursor/User/workspaceStorage/ в macOS).
Вы можете в любой момент поднять старый диалог через историю (Ctrl+Alt+L / Cmd+Alt+L), но для текущей задачи создается чистый тред с нулевым контекстом. Это базовая гигиена работы: одна задача или баг — один изолированный диалог.
Подключение сторонних моделей через OpenRouter и ловушка контекстного окна
Штатная подписка Pro за $20 дает 500 быстрых запросов к флагманским моделям, после чего переводит запросы в медленную очередь. Чтобы не зависеть от пула Cursor, редактор поддерживает режим Bring Your Own Key (BYOK).
Самый гибкий сценарий — подключение через шлюз OpenRouter, который позволяет роутить запросы на любые доступные на рынке LLM:
- Открываем Cursor Settings → Models.
- В блоке OpenAI API Key разворачиваем поле Override Base URL и указываем:
https://openrouter.ai/api/v1 - В поле ключа вставляем токен OpenRouter вида
sk-or-v1-.... - В списке моделей нажимаем Add Model и вписываем точный идентификатор, например
deepseek/deepseek-chatилиzhipu/glm-5.3.
Почему контекст в 1M токенов не работает в Cursor
Здесь кроется критическое архитектурное ограничение, о которое спотыкаются разработчики. Если подключить модель вроде Zhipu GLM 5.3 с заявленным контекстным окном в 1 миллион токенов, скормить ей крупный репозиторий через интерфейс Cursor всё равно не удастся.
Причина — на стороне клиента Cursor. Редактор самостоятельно формирует и токенизирует исходящий payload перед отправкой в сеть. Для кастомных строковых идентификаторов, добавленных вручную, в клиентской части редактора зашит жесткий внутренний лимит (hardcap), обычно не превышающий 100k–200k токенов.
Даже если шлюз OpenRouter и удаленная модель технически готовы принять миллион токенов, сам Cursor просто не соберет запрос такого объема и обрежет контекст на клиенте. Поэтому сторонний API в Cursor — это способ оптимизировать расходы и получить доступ к специализированным кодерам (вроде DeepSeek), но не инструмент для безлимитного скармливания гигабайтов кода.
Удаление «Co-authored-by: Cursor» из Git-коммитов
Одна из самых раздражающих деталей при работе со встроенным в Cursor Git-интерфейсом — автоматическая вставка соавтора в сообщение коммита:
Co-authored-by: Cursor <cursor@cursor.com>
Почему правила в .cursorrules здесь бесполезны
Многие пытаются решить проблему добавлением инструкций в системный промпт или файл .cursorrules: «Никогда не добавляй co-authored-by в коммиты». Это не работает.
Файлы .cursorrules влияют исключительно на текст, который генерирует нейросеть в чате или в окне Composer. Кнопка «Commit» в интерфейсе панели Source Control вызывает не LLM, а внутренний обработчик расширения Git в самом редакторе. Этот обработчик подставляет трейлер напрямую в буфер сообщения коммита перед выполнением команды git commit, полностью игнорируя любые правила для нейросети.
Как отключить автоматического соавтора
Есть два надежных способа решить проблему раз и навсегда.
1. Отключение в настройках интерфейса:
В настройках редактора откройте Cursor Settings (через палитру или сочетанием Ctrl+, / Cmd+,). В левом меню перейдите в раздел Git & PRs и найдите блок Attribution:
- Commit Attribution (Mark Agent commits as ‘Made with Cursor’) — переключите тумблер в OFF.
- PR Attribution (Mark pull requests as made with Cursor) — переключите тумблер в OFF, если не хотите видеть автоматические подписи редактора в описаниях Pull Request.
В конфигурационном файле settings.json за это отвечают параметры атрибуции Git:
{
"cursor.git.includeCoAuthor": false,
"cursor.general.attribution": false
}
2. Защита на уровне Git-хуков:
Если после обновлений редактора настройка сбрасывается или коммиты выполняются через терминал агента, добавьте хук prepare-commit-msg в репозиторий (.git/hooks/prepare-commit-msg):
#!/bin/sh
# Удаляем строки соавторства Cursor из сообщения коммита
if [ -f "$1" ]; then
sed -i '/[Cc]o-authored-by:.*[Cc]ursor/d' "$1"
fi
Сделайте файл исполняемым:
chmod +x .git/hooks/prepare-commit-msg
Чтобы хук работал во всех проектах на машине, задайте глобальный путь к хукам в конфигурации Git:
git config --global core.hooksPath ~/.git-hooks
Privacy Mode: изоляция исходного кода от обучающих выборок
При работе с клиентскими проектами и закрытыми репозиториями критично проверить режим приватности в Cursor Settings → General → Privacy Mode.
По умолчанию редактор может сохранять телеметрию сессий и фрагменты кода для улучшения собственных моделей автодополнения (Cursor Tab). Включение Privacy Mode блокирует любое сохранение кода и запросов на серверах разработчиков Cursor: данные проксируются поставщикам моделей без логирования. А при использовании собственного API-ключа (BYOK) запросы уходят напрямую к вашему провайдеру, исключая утечку приватной кодовой базы.