@bman654/clodex 2.11.1 → 2.11.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -9
- package/dist/cli.js +516 -170
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -362,7 +362,12 @@ clodex --version # version
|
|
|
362
362
|
avoid near-immediate termination; the 1h/6h ceilings allow deliberately long
|
|
363
363
|
calls without leaving stalls attached indefinitely. At either deadline,
|
|
364
364
|
clodex aborts the SDK call; cancellation is cooperative, so a provider
|
|
365
|
-
transport that ignores the abort signal can settle later.
|
|
365
|
+
transport that ignores the abort signal can settle later. clodex also asks
|
|
366
|
+
the provider to stop as soon as the client that made the request goes away —
|
|
367
|
+
a Ctrl-C, a killed agent, or a closed browser — instead of waiting for a
|
|
368
|
+
deadline, whether the answer had started arriving or not. The same
|
|
369
|
+
cooperative limit applies: clodex stops relaying and requests cancellation,
|
|
370
|
+
but cannot guarantee the provider stops generating. These are
|
|
366
371
|
server-side limits, and callers may stop sooner. Claude Code currently
|
|
367
372
|
defaults to about 180s of downstream byte silence in proxy mode and 300s in
|
|
368
373
|
endpoint mode, with
|
|
@@ -379,11 +384,16 @@ clodex --version # version
|
|
|
379
384
|
… backoff, so a shorter idle timeout automatically lowers both. The ceiling
|
|
380
385
|
is `5` at the default timeout and can rise to `10` at the maximum. Larger
|
|
381
386
|
integers clamp with a one-time warning that names the active idle timeout.
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
+
Without a retry hint, five retries can add roughly 62s of fallback
|
|
388
|
+
backoff instead of the SDK default's roughly 6s, giving a transiently
|
|
389
|
+
unavailable provider more time to recover. When OpenAI explicitly states an
|
|
390
|
+
acceptable delay for a WebSocket throttle, clodex gives that value to the
|
|
391
|
+
SDK instead of its fallback schedule. Clodex's existing 5s default remains a
|
|
392
|
+
client-facing hint for upgrade 403s and WebSocket connection-limit errors
|
|
393
|
+
that state no delay; it does not replace the SDK's fallback. Other hintless
|
|
394
|
+
429s also retain the fallback schedule. Provider `retry-after` hints and time
|
|
395
|
+
spent in failed attempts can mean fewer retries start before a streaming idle
|
|
396
|
+
deadline; the shared abort signal still
|
|
387
397
|
interrupts backoff when that deadline fires. If a deadline interrupts a
|
|
388
398
|
retry delay, clodex preserves the provider failure that prompted the retry;
|
|
389
399
|
if a currently active call is silent, clodex reports the timeout instead.
|
|
@@ -407,10 +417,17 @@ clodex --version # version
|
|
|
407
417
|
burst of parallel work less likely to trip OpenAI's own rate limit. (In the
|
|
408
418
|
traffic we sampled, the rejections clustered in the busiest minutes; that the
|
|
409
419
|
rate is what triggers them is a reasonable reading of that, not something we
|
|
410
|
-
can prove.) A follow-up turn that
|
|
411
|
-
never delayed by this;
|
|
420
|
+
can prove.) A follow-up turn that already has a connection it can reuse when
|
|
421
|
+
it arrives is never delayed by this;
|
|
412
422
|
what goes through the limiter is work that needs a *new* connection — a first
|
|
413
|
-
turn, a conversation that branched, or several agents running at once.
|
|
423
|
+
turn, a conversation that branched, or several agents running at once. If a
|
|
424
|
+
turn that is waiting its place in the queue finds, on being let through, that
|
|
425
|
+
a connection has freed up and is carrying exactly the conversation it is
|
|
426
|
+
continuing, it picks that one up instead of opening another. That is
|
|
427
|
+
uncommon — it needs another turn to finish inside the few seconds this one
|
|
428
|
+
spends waiting AND to have been on the same conversation history — so treat
|
|
429
|
+
it as an edge taken when it appears, not as agents routinely sharing
|
|
430
|
+
connections. The
|
|
414
431
|
default is 60 new connections a minute, with an allowance of 10 opened back
|
|
415
432
|
to back after a quiet spell.
|
|
416
433
|
**This is a real throughput ceiling, not a brief pause.** One new connection
|