Dropped connections & agentic tool timeouts
If your tool closes the connection before the answer comes out, the model has still processed your prompt. Such requests are marked “Dropped by your app” in your usage history.
Why is it still billed?
- Per-request models: the provider bills in full once the prompt is processed → fixed cost.
- Per-token models: only what the provider actually bills; the difference is refunded automatically.
- Dropped because of an issue on Geraikita's side: refunded in full automatically.
Recommended settings
Claude Code
API_TIMEOUT_MS=600000The default is 10 minutes — don't lower it. Set it in env in ~/.claude/settings.json or as an environment variable.
OpenCode
opencode.json → provider.<id>.options.timeout: 600000In milliseconds. If you also set headerTimeout / chunkTimeout, use at least 300000.
Kilo Code · Roo Code · Cline
Provider settings → API request timeout ≥ 300 s; turn off auto retry. The option name may differ between versions.
OpenAI / Anthropic SDK
timeout=600, max_retries=1, stream=Truetimeout in seconds (Python) or milliseconds (Node.js: 600 * 1000). Use streaming so the first token shows up quickly.
Python requests / httpx
requests: timeout=(10, 600)httpx: httpx.Timeout(600, connect=10)First number = connect timeout, second = read timeout. Read timeout at least 300 seconds.
Your own script / proxy
stream: trueUser-Agent: "nama-alatmu/1.0"Read timeout ≥ 300 s, enable streaming, and set the User-Agent to your tool's name so we can help check.
Check your own numbers
Open the Dashboard → Recent usage → filter “Dropped by your app”. Tap a row to see the timeline and why it was charged.
Full per-tool guide (streaming, retries, context size, code samples): Agentic tool settings.