Command reference
oko sessions streams
How many answering turns lost their stream to the model in the last N hours, per provider, and that count per hour: a dropped stream leaves the harness showing it is streaming with nothing answering it.
Invocation#
oko sessions streams --hours N [--json]Inputs and options#
- --hours is the window, a positive whole number of hours; it has no default.
Output and state effect#
- Every reading of `oko sessions agents` (each model policy pass among them) that finds an answering session's live harness holding no TCP connection marks its answer stalled with connectionLostAt and appends {session, provider, model, turn, at} to ~/.oko/dropped-streams.jsonl; a line that cannot be kept is answer.dropUnrecorded with the cause. A turn is counted once by its session and turn (the time of its newest record), however many passes saw it dropped.
- Prints `<provider>: <n> turn(s) dropped their stream in the last <N> hour(s), <rate> per hour` per provider (`a model its transcript does not name` for a session whose transcript names none), or `no answering session dropped its stream in the last <N> hour(s) (<journal>)`; --json prints {journal, since, hours, providers [{provider, dropped, perHour}]}. The native API's sessions domain answers the same to streams {hours}; Oko Desktop → Sessions → model policy offers it as Count dropped streams over the hours typed, with the same lines.
Refusals and safe exits#
- “oko sessions streams --hours takes a positive whole number of hours, got <value>”, “oko sessions streams requires --hours …” and “oko sessions streams does not take <flag>; …” (exit 2).
- “the dropped streams in <path> cannot be read: <error>” and “<path> holds a line that is not a dropped stream (<error>): <line>” (exit 1).