Перейти к содержимому

Claude Code как провайдер

Kodik может использовать CLI claude от Anthropic в качестве бэкенда модели. В этом режиме вместо прямого обращения к API Anthropic Kodik запускает исполняемый файл claude, передаёт ему сообщения и читает ответы из его вывода.

  • Исполняемый файл claude должен быть установлен и доступен в PATH, либо его полный путь должен быть явно указан в настройках провайдера.
  • Версия CLI должна быть достаточно новой, чтобы поддерживать флаг --system-prompt-file.

Если при запуске появляется ошибка unknown option '--system-prompt-file', обновите Claude Code до последней версии.

Kodik запускает claude как дочерний процесс со следующими параметрами:

  • --output-format stream-json — ответы передаются в формате потока JSON-строк;
  • --max-turns 1 — Claude Code выполняет ровно один ход на вызов; рекурсивные вызовы управляются самим Kodik;
  • --disallowedTools <список> — встроенные инструменты Claude Code (Bash, Glob, Grep, Edit, Write и другие) отключаются, чтобы использовался инструментальный цикл Kodik;
  • --model <id> — имя модели, выбранной в настройках провайдера.

Входные сообщения (история диалога) передаются в stdin процесса в формате JSON.

Аргументы командной строки на Windows ограничены по длине. Если системный промпт превышает 65 536 символов, или если используется Windows (где действует более жёсткий лимит), Kodik автоматически записывает промпт во временный файл и передаёт его через --system-prompt-file. Временный файл удаляется после завершения запроса.

Claude Code CLI не поддерживает передачу изображений напрямую. Если в истории диалога есть изображения, Kodik заменяет их текстовыми заглушками перед отправкой в Claude Code.

Kodik не использует переменную окружения ANTHROPIC_API_KEY при работе через Claude Code — переменная намеренно удаляется из окружения процесса, чтобы Claude Code мог самостоятельно разрешить аутентификацию через свой стандартный механизм (например, через сохранённую сессию claude login).

Если claude не находится в PATH, укажите полный путь к нему в поле Claude Code path в настройках провайдера.