Cursor CLI: агент Cursor в терминале — установка и настройка
Агент Cursor работает не только в редакторе, но и в терминале командой agent. Ставим, настраиваем, запускаем в скриптах и сравниваем с Claude Code и Codex.
5 мин · · агенты · IDE
Cursor CLI — это тот же агент Cursor, только в терминале: вы запускаете команду agent, описываете задачу, а он читает проект, предлагает правки и выполняет команды. Подходит для работы на сервере по SSH, для скриптов и CI. Ниже — установка, вход, режимы, запуск без диалога и честное сравнение с Claude Code и Codex CLI, включая то, что важно про собственный ключ. Опираемся на официальную документацию Cursor; флаги и названия сверяйте с agent --help: CLI обновляется часто.
Установка Cursor CLI
По документации, установка одной командой.
macOS, Linux и Windows через WSL:
curl https://cursor.com/install -fsS | bashWindows (PowerShell, нативно):
irm 'https://cursor.com/install?win32=true' | iexЗапуск скрипта установки из сети без просмотра — компромисс. Если хотите осторожнее, сначала скачайте файл, прочитайте его и только потом выполните. После установки проверьте версию:
agent --versionЕсли команда не находится, добавьте ~/.local/bin в PATH, как показано в документации:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc(для bash замените ~/.zshrc на ~/.bashrc). Обновление: CLI старается обновляться сам, вручную — agent update.
Вход и первый запуск
Cursor CLI работает через ваш аккаунт Cursor. Войти можно командой:
agent loginПроверка состояния: agent status (или agent whoami). Для скриптов и CI, где нет браузера, есть переменная окружения CURSOR_API_KEY или флаг --api-key: это ключ из вашего аккаунта Cursor, а не ключ стороннего шлюза.
Первый интерактивный запуск:
cd ~/projects/my-app
agentИли сразу с задачей:
agent "объясни структуру проекта и найди точки входа"Команда agent models (или флаг --list-models) покажет модели, доступные вашему аккаунту; выбрать можно флагом --model или командой /model внутри сессии.
Режимы работы
CLI поддерживает те же режимы, что и редактор:
| Режим | Что делает | Как включить |
|---|---|---|
| Agent | Полный доступ к инструментам, по умолчанию | без флагов |
| Plan | Сначала план, уточняющие вопросы, потом код | Shift+Tab, /plan, --plan |
| Ask | Только чтение, ничего не меняет | /ask, --mode=ask |
Практический порядок: новую задачу начните в Plan, утвердите план, затем переходите в Agent. Перед запуском команд в терминале CLI просит подтверждение (y или n). Изменения можно просмотреть по Ctrl+R, файлы и папки добавляются в контекст через @, а освободить место в контексте помогает /summarize.
Запуск без диалога: скрипты и CI
Флаг -p (--print) выводит ответ в консоль и подходит для автоматизации. Важно: по документации, в этом режиме у агента есть доступ ко всем инструментам, включая запись и shell, но без --force (или --yolo) правки только предлагаются и не применяются:
agent -p "найди потенциальные проблемы с производительностью" --output-format text # только анализ
agent -p --force "добавь JSDoc-комментарии в src/utils.js" # с применением правок, осознанноФормат вывода задаётся флагом --output-format: text, json или stream-json (для потокового разбора). В CI задайте CURSOR_API_KEY секретом, а --force включайте только на изолированной ветке или в песочнице. Для безопасности есть режим sandbox (--sandbox enabled), а флаг -w / --worktree запускает агента в отдельном git-worktree, чтобы не трогать текущий каталог.
Если вам нужен консольный агент именно для CI, сравните этот режим с запуском Claude Code без диалога: там агент тоже работает из скрипта, но ходит в модель по вашему ключу.
Конфигурация и разрешения
Настройки лежат в JSON-файле ~/.cursor/cli-config.json (в Windows — в %USERPROFILE%\.cursor\). На уровне проекта действует .cursor/cli.json, но только для раздела permissions. Пример, который разрешает ls и echo, а rm запрещает:
{
"version": 1,
"editor": { "vimMode": false },
"permissions": {
"allow": ["Shell(ls)", "Shell(echo)"],
"deny": ["Shell(rm)"]
}
}Файл должен быть чистым JSON без комментариев; при ошибке документация советует переименовать его и перезапустить CLI. Остальные параметры (например, режим подтверждений, песочница, прокси) смотрите в справочнике по конфигурации Cursor CLI.
Правила, MCP и инструкции
CLI использует ту же систему правил, что и редактор: читает .cursor/rules, а также файлы AGENTS.md и CLAUDE.md в корне проекта. Это удобно, если в репозитории уже есть инструкции для других агентов (AGENTS.md для Codex, CLAUDE.md для Claude Code). MCP-серверы подхватываются из того же mcp.json, что и в редакторе; управлять ими можно командами agent mcp list, agent mcp list-tools <имя>, agent mcp enable <имя>.
Cursor CLI, Claude Code и Codex CLI: что отличается
Все три — консольные агенты, но устроены по-разному.
| Cursor CLI | Claude Code | Codex CLI | |
|---|---|---|---|
| Команда | agent | claude | codex |
| Откуда модели и оплата | аккаунт Cursor и его тариф | Anthropic-формат, можно указать свой адрес и ключ | OpenAI-совместимый формат, можно указать своего провайдера |
| Свой base URL | в документации не найден | ANTHROPIC_BASE_URL, без /v1 | настройка провайдера, адрес с /v1 |
| Файл инструкций | .cursor/rules, AGENTS.md, CLAUDE.md | CLAUDE.md | AGENTS.md |
Главное отличие для тех, кто хочет платить по токенам со своего баланса: Claude Code и Codex подключаются к шлюзу напрямую. Для Claude Code это ANTHROPIC_BASE_URL=https://api.zukko.pro и ANTHROPIC_AUTH_TOKEN=fetch_... без /v1 (подробно в документации Claude Code), для Codex провайдер указывается с адресом https://api.zukko.pro/v1 (документация Codex). В документации Cursor CLI мы не нашли настройки собственного адреса API: CLI ходит через аккаунт Cursor. Если вам важна оплата по токенам на ключе Zukko, ориентируйтесь на Claude Code или Codex, либо на ключ в редакторе Cursor (инструкция по Cursor). Если вы проверите в актуальной документации, что у CLI появилась такая настройка, действуйте по ней.
Скидку за чтение кэша в Zukko получает Claude в Anthropic-формате, то есть в Claude Code. Чем Claude Code и Codex отличаются между собой, разобрано в статье Codex или Claude Code.
Частые вопросы
Можно ли подключить ключ Zukko к Cursor CLI?
Мы не нашли в документации Cursor CLI параметра для собственного base URL, поэтому прямого способа назвать не можем. В редакторе Cursor ключ подключается в настройках моделей, в Claude Code и Codex — через их настройки. Проверьте актуальную документацию Cursor.
Чем agent отличается от cursor-agent?
Название команды в документации сегодня — agent. В старых материалах встречается другое имя; ориентируйтесь на agent --help на вашей машине.
Безопасно ли запускать с --force?
Только в изолированной среде: флаг разрешает прямые изменения файлов без подтверждения. Используйте отдельную ветку или worktree, режим sandbox и список deny в разрешениях.
Нужна ли подписка Cursor для CLI?
CLI авторизуется через аккаунт Cursor, а условия использования определяет ваш тариф. Актуальные условия смотрите на cursor.com/pricing.
Если вам нужен терминальный агент на своём ключе, создайте ключ на странице API-ключей Zukko и подключите его к Claude Code или Codex.
zukko
Платите в 25×
меньше
за Claude Code & ChatGPT
Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.
Похожие статьи
- Claude Code в Zed: подключение внешнего агента к своему ключуВ Zed Claude Code можно открыть терминальным потоком, внешним агентом через ACP или настроить встроенного агента. Разбираем каждый вариант и подключаем к своему ключу.
- Claude Code для 1С: настройка агента для работы с конфигурациейАгент правит текстовые модули BSL, а не информационную базу. Показываем, как выгрузить конфигурацию, что записать в CLAUDE.md, как проверять правки и сколько это стоит.
- Cline в России: установка и подключение моделей без зарубежной картыРасширение Cline работает локально, а вопрос только в том, куда уходят запросы к модели и чем за них платить. Пошаговая настройка через один ключ и расчёт стоимости задачи.
- Cline Rules: как писать правила проекта для агента в .clinerulesПравила в .clinerules избавляют от повторения одних и тех же просьб в каждой задаче. Показываем структуру, примеры для Python и TypeScript и цену лишних строк.