Обрывы соединения и таймауты агентных инструментов

Если инструмент закрывает соединение до того, как пришёл ответ, модель всё равно уже обработала ваш промпт. Такие запросы помечаются как «Оборвано приложением» в истории использования.

Почему всё равно списывается?

  • Модели за запрос: поставщик выставляет полный счёт, как только промпт обработан → фиксированная стоимость.
  • Модели за токен: ровно столько, сколько реально выставил поставщик; разница возвращается автоматически.
  • Обрыв из-за сбоя на стороне Geraikita: полный автоматический возврат.

Рекомендуемые настройки

Claude Code

API_TIMEOUT_MS=600000

По умолчанию 10 минут — не уменьшайте. Задайте в env файла ~/.claude/settings.json или переменной окружения.

OpenCode

opencode.json → provider.<id>.options.timeout: 600000

В миллисекундах. Если задаёте также headerTimeout / chunkTimeout, используйте не меньше 300000.

Kilo Code · Roo Code · Cline

Настройки провайдера → таймаут API-запроса ≥ 300 с; отключите автоповтор. Название параметра может отличаться в разных версиях.

SDK OpenAI / Anthropic

timeout=600, max_retries=1, stream=True

timeout в секундах (Python) или миллисекундах (Node.js: 600 * 1000). Используйте стриминг, чтобы первый токен появлялся быстро.

Python requests / httpx

requests: timeout=(10, 600)httpx: httpx.Timeout(600, connect=10)

Первое число — таймаут подключения, второе — таймаут чтения. Чтение не меньше 300 секунд.

Свой скрипт / прокси

stream: trueUser-Agent: "nama-alatmu/1.0"

Таймаут чтения ≥ 300 с, включите стриминг и укажите название инструмента в User-Agent, чтобы мы могли помочь с проверкой.

Проверьте свои цифры

Откройте Dashboard → Недавнее использование → фильтр «Оборвано приложением». Нажмите на строку, чтобы увидеть ход событий и причину списания.

Полное руководство по инструментам (стриминг, повторы, размер контекста, примеры кода): Настройки агентных инструментов.