Установка и настройка Claude Code для Ollama, llama.cpp и тарифы
Агентное программирование теперь с локальными бэкендами моделей.
Claude Code — это не просто автодополнение с улучшенным маркетингом. Это агентский инструмент для программирования: он анализирует вашу кодовую базу, редактирует файлы, запускает команды и интегрируется с инструментами разработки.
Эта разница имеет значение, потому что единица работы перестает быть «строкой кода» и становится «задачей с конечным состоянием».
Anthropic четко формулирует это различие: автодополнение кода предлагает следующую строку по мере ввода, тогда как Claude Code работает на уровне проекта, планирует изменения в нескольких файлах, выполняет модификации, запускает тесты и итеративно исправляет ошибки. На практике это делает его похожим на младшего инженера, работающего в терминале, который быстро выполняет рутину, но все еще нуждается в проверке.
Тенденция между скоростью и надзором — это то, что люди часто объединяют под понятием «vibe coding»; Что такое Vibe Coding? разбирает этот термин, его происхождение, а также то, как выглядят эффективность и риски на практике.

Одна деталь, которую легко пропустить при беглом чтении документации: Терминальный CLI (и интерфейс VS Code) можно настроить на использование сторонних провайдеров. Именно здесь на сцену выходят Ollama и llama.cpp.
Как только Claude Code указывает на локальный HTTP-эндпоинт, компромиссы между средой выполнения, оборудованием и размещением выходят за рамки клиента; это сравнение размещения LLM в 2026 году собирает в одном месте Ollama, специализированные стеки инференса и облачные опции.
Чтобы увидеть, как Claude Code вписывается в другие рабочие процессы, поддерживаемые ИИ, это руководство по инструментам для разработчиков ИИ объединяет ассистенты в стиле Copilot, автоматизацию и паттерны редакторов в одном месте.
Для обзора инструментов-ассистентов для написания кода в той же категории, Сравнение ИИ-ассистентов для написания кода проходит по Cursor, Copilot, Cline и остальным на более высоком уровне, чем это руководство по установке.
Установка и быстрый старт Claude Code
Варианты установки и их смысл
Существует несколько путей установки, и они не равнозначны:
- Нативные скрипты установки — это вариант «всегда актуально», так как они обновляются автоматически.
- Homebrew и WinGet — это вариант «контролируемых изменений», так как вы обновляетесь явно.
Команды установки (официальный быстрый старт):
# macOS, Linux, WSL
curl -fsSL https://claude.ai/install.sh | bash
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
:: Windows CMD
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
Затем запустите интерактивную сессию из папки проекта:
cd /path/to/your/project
claude
Вход в систему и типы учетных записей
Для работы в режиме первого лица Claude Code требуется учетная запись. Процесс быстрого старта поддерживает вход через подписку на Claude (Pro, Max, Team, Enterprise), учетную запись Console (кредиты API) или поддерживаемых облачных провайдеров. Полезное примечание к эксплуатации: при первом входе в Console создается рабочее пространство “Claude Code” для централизованного отслеживания расходов.
Конфигурация Claude Code: settings.json и переменные окружения
Если Claude Code кажется волшебным, когда он работает, то часто кажется «загадочным», когда он не работает. Лечением является понимание слоев его конфигурации и нескольких переменных окружения, которые действительно важны.
Файлы настроек и приоритет
Настройки Claude Code иерархичны, с тремя файлами, ориентированными на разработчика:
- Пользовательский уровень, применяется везде: ~/.claude/settings.json
- Проектный уровень, общий в репозитории: .claude/settings.json
- Локальный уровень, переопределения для конкретной машины: .claude/settings.local.json (исключен из git)
Приоритет (от высшего к низшему): управляемая политика, флаги CLI, локальные, проектные, пользовательские. Этот порядок объясняет несколько моментов «почему моя конфигурация игнорируется».
Вы можете управлять настройками интерактивно через команду /config, которая открывает интерфейс настроек внутри REPL.
Переменные окружения, контролирующие маршрутизацию провайдера
Поведение Claude Code можно управлять переменными окружения во время выполнения. Два странности поведения стоит рассматривать как ограничения дизайна:
-
Если установлена ANTHROPIC_API_KEY, Claude Code будет использовать ключ вместо подписки Claude, даже если вы вошли в систему. В режиме печати (-p) ключ всегда используется, если он присутствует.
-
Если ANTHROPIC_BASE_URL указывает на хост не первого лица (прокси, шлюз или локальный сервер), некоторые функции намеренно консервативны. Например, поиск инструментов MCP отключен по умолчанию, если вы явно не включите его.
Минимальный паттерн «использовать шлюз» выглядит так:
export ANTHROPIC_BASE_URL=https://your-gateway.example
export ANTHROPIC_API_KEY=sk-your-key
Примечание по шлюзу: Claude Code ожидает определенные форматы API. Для формата Anthropic Messages шлюз должен открывать /v1/messages и /v1/messages/count_tokens и должен передавать заголовки anthropic-beta и anthropic-version. Если шлюз отклоняет эти заголовки, есть специальный переключатель для удаления экспериментальных бета-версий.
Выбор модели в Claude Code, когда вы не используете Anthropic напрямую
В Claude Code есть концепция псевдонимов (opus, sonnet, haiku), а также поддержка привязки конкретных идентификаторов моделей. Также существует белый список, который может ограничивать выбор пользователей в селекторе моделей, даже при маршрутизации через сторонних провайдеров.
Прагматичный паттерн — установить начальную модель и ограничить селектор, затем привязать то, что «по умолчанию» разрешается через окружение:
{
"model": "claude-sonnet-4-5",
"availableModels": ["claude-sonnet-4-5", "haiku"],
"env": {
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5"
}
}
Запуск самодостаточных LLM через Ollama
Ollama в настоящее время является способом с наименьшим трением для запуска Claude Code на моделях, не принадлежащих Anthropic, потому что он предоставляет API, совместимый с Anthropic, чтобы Claude Code мог с ним общаться.
Быстрая настройка с помощью ollama launch
Если у вас установлен и запущен Ollama, быстрый путь:
ollama launch claude
Или укажите модель при запуске:
ollama launch claude --model glm-4.7-flash
Ручная настройка с явными переменными окружения
Документация интеграции Ollama описывает простую ручную настройку, где Claude Code общается с Ollama через API-эндпоинт, совместимый с Anthropic:
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_API_KEY=""
export ANTHROPIC_BASE_URL=http://localhost:11434
claude --model qwen3.5
Этот паттерн является авторским в полезном смысле: он рассматривает «маршрутизацию провайдера» как проблему окружения, а не что-то, что вы нажимаете в GUI.
Проверка реальности окна контекста
Агентское программирование требует большого контекста. Ollama прямо об этом заявляет: Claude Code требует большого окна контекста и рекомендует не менее 64k токенов. Если ваша локальная модель ограничивается 8k или 16k, Claude Code все равно будет работать, но обещание «уровня проекта» станет хрупким.
Для практического поведения локальных моделей в похожей настройке терминального агента (Ollama и llama.cpp, задачи программирования и честные заметки об ошибках), Лучшие LLM для OpenCode - протестированы локально является полезной перепроверкой при составлении списка GGUF или тегов Ollama для Claude Code.
Запуск самодостаточных LLM через llama.cpp
llama.cpp привлекательна по противоположной причине: она не пытается быть платформой. Это быстрый, легкий сервер, который может открывать маршруты, совместимые с OpenAI, и маршрут, совместимый с API Anthropic Messages.
Для путей установки, поведения llama-cli и llama-server за пределами приведенных ниже фрагментов, Быстрый старт llama.cpp с CLI и сервером является справочником от начала до конца.
Что запускать на стороне сервера
HTTP-сервер llama.cpp (llama-server) поддерживает API сообщений Anthropic на POST /v1/messages со стримингом через SSE. Он также предлагает count_tokens на /v1/messages/count_tokens.
Две детали важны для Claude Code:
- Сервер явно не заявляет о полной совместимости со спецификацией API Anthropic, но утверждает, что работает достаточно хорошо для многих приложений.
- Использование инструментов требует запуска llama-server с флагом –jinja. Если вы упустите это, Claude Code будет вести себя так, будто он внезапно забыл, как быть агентом.
Минимальный локальный запуск выглядит так:
# Скомпилируйте или загрузите llama-server, затем запустите с моделью GGUF
./llama-server -m /models/your-model.gguf --jinja --host 127.0.0.1 --port 8080
Если вы хотите жесткую границу аутентификации, llama-server можно настроить с API-ключом:
./llama-server -m /models/your-model.gguf --jinja --api-key my-local-key --host 127.0.0.1 --port 8080
Направление Claude Code на llama-server
При работающем сервере сторона Claude Code в основном представляет собой переопределение базового URL:
export ANTHROPIC_BASE_URL=http://127.0.0.1:8080
export ANTHROPIC_API_KEY=my-local-key # только если вы включили --api-key на llama-server
claude --model your-model-alias
Если вы не установите API-ключ или токен аутентификации, Claude Code может попытаться вернуться к входу через подписку, что является источником многих жалоб «почему открывается браузер».
Проверки здоровья и первая диагностика сбоев
llama-server открывает простой эндпоинт здоровья, который возвращает «загрузка модели», пока модель не будет готова, и «ok», когда она будет готова к использованию. Когда Claude Code, кажется, зависает на первом запросе, проверка /health — это быстрый способ отличить «баг конфигурации клиента» от «сервер все еще загружается».
Ценообразование и модель расходов
Ценообразование Claude Code меньше связано с «покупкой CLI» и больше с «какой биллинг поддерживает токены».
Подписки включают Claude Code
Anthropic включает Claude Code в платные уровни подписки Claude. По состоянию на апрель 2026 года опубликованное ценообразование перечисляет:
- Pro за $17 в месяц со скидкой за год ($200 оплачивается сразу) или $20 при ежемесячной оплате, и это включает Claude Code.
- Планы Max, начиная с $100 в месяц.
- Планы Team, ценообразуемые за место, с стандартным местом за $20 за место в месяц при годовой оплате ($25 ежемесячно) и премиум-местом за $100 за место в месяц при годовой оплате ($125 ежемесячно).
Ценообразование за токены API
Если вы используете Claude Code через биллинг API, расходы следуют ставкам за токен. Anthropic публикует ценообразование за миллион токенов (MTok) для таких моделей, как:
- Haiku 4.5 за $1/MTok на ввод и $5/MTok на вывод.
- Sonnet 4.5 за $3/MTok на ввод и $15/MTok на вывод.
- Opus 4.5 за $5/MTok на ввод и $25/MTok на вывод.
Контроль расходов в CLI
Режим печати (-p) поддерживает прямые лимиты бюджета, такие как –max-budget-usd, что удобно при скриптовании задач и желании предсказуемых расходов.
Внутри интерактивных сессий /cost показывает статистику использования токенов.
Локальные бэкенды меняют счет, а не физику
Маршрутизация Claude Code на Ollama или llama.cpp может устранить биллинг за токен API, но это не делает работу бесплатной. Вы меняете облачные расходы на локальные вычисления, память и «кто-то владеет временем работы». Для некоторых команд этот компромисс является самой сутью.
Типичный рабочий процесс: от плана до PR
Моя предвзятость заключается в том, что Claude Code наиболее силен, когда вы относитесь к нему как к двигателю рабочего процесса, а не как к чат-боту. Инструменты намекают на это.
Начните с модели разрешений, а не с промпта
Claude Code спроектирован с защитой по разрешениям. Документация описывает многоуровневую модель: разрешены операции только для чтения, такие как чтение файлов и grep, тогда как команды bash и модификации файлов требуют одобрения.
Режимы разрешений существуют для управления трением. В CLI вы можете переключать режимы с Shift+Tab (по умолчанию -> acceptEdits -> plan). Режим Plan читает и предлагает изменения, но не редактирует. Режим acceptEdits позволяет Claude Code создавать и редактировать файлы в вашей рабочей директории без запросов, но все еще запрашивает одобрение для команд с побочными эффектами вне его безопасного списка.
Auto mode — это более новый вариант, который снижает количество запросов, делегируя одобрения классификатору, позиционируясь как более безопасный средний путь между постоянными запросами и полным отключением запросов. Он требует минимальной версии Claude Code и определенных требований к плану и модели.
Используйте встроенные команды, чтобы держать сессии честными
Некоторые команды превращают Claude Code из «ассистента» в «инструмент»:
- /init генерирует проект-руководство CLAUDE.md, что является легким способом подачи последовательного контекста.
- /diff дает интерактивный обзор изменений, включая диффы по ходам.
- /rewind позволяет откатить разговор и/или код к предыдущей точке, используя контрольные точки.
- /debug включает отладочное логирование в середине сессии.
- /doctor диагностирует и проверяет вашу установку и настройки.
Это не уловки; это защитные рельсы, на которые вы опираетесь, когда агент редактирует больше, чем вы ожидали.
Когда переходить на неинтерактивный режим
Для однократных задач (объяснить, суммировать, создать план патча) режим печати является хорошим выбором:
claude -p "Summarise the repository architecture and list the riskiest modules"
Он завершается после ответа, что хорошо работает в скриптах и CI.
Контрольный список устранения неполадок
Большинство проблем с Claude Code — это проблемы конфигурации в маске. Вот контрольный список, который сопоставляет распространенные симптомы с лежащим в основе механизмом.
Claude Code продолжает запрашивать вход в систему при использовании локального сервера
Это обычно означает, что Claude Code все еще пытается использовать аутентификацию подписки первого лица. Убедитесь, что вы установили явный режим аутентификации для прокси:
- Установите ANTHROPIC_API_KEY для шлюзов, ожидающих X-Api-Key.
- Или установите ANTHROPIC_AUTH_TOKEN для шлюзов, использующих Authorization Bearer.
Помните, что ANTHROPIC_API_KEY переопределяет использование подписки, даже если вы вошли в систему, и в интерактивном режиме вам может потребоваться одобрить это переопределение один раз.
Шлюз ошибается на заголовках anthropic-beta
Некоторые шлюзы отклоняют неизвестные заголовки или бета-поля. Для этого режима сбоя предусмотрена переменная окружения:
export CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1
Документация шлюза LLM также отмечает, что вам может потребоваться это при использовании формата Anthropic Messages с Bedrock или Vertex.
Вызов инструментов не работает на llama.cpp
Проверьте флаги сервера. llama-server документирует, что использование инструментов требует флага –jinja. Без него сервер может отвечать, но агентский цикл деградирует.
Запросы на разрешения прерывают каждую команду
Это может быть нормально, в зависимости от режима и правил разрешений. Варианты включают:
- Временное переключение на acceptEdits (редактирование файлов идет быстрее).
- Написание явных правил разрешения для известных безопасных команд bash в settings.json.
- Использование /sandbox для изоляции инструмента bash и уменьшения запросов.
- Оценка режима auto, если ваш план и версия поддерживают его, как промежуточное решение.
Что-то кажется неправильным, и вам нужна наблюдаемость
Используйте встроенные средства:
- /doctor для проверки установки и настроек.
- /debug для начала захвата логов с этого момента.
- Если вы в режиме печати, рассмотрите жесткий максимальный бюджет и максимальное количество ходов, чтобы ограничить эксперименты.