QueryProcess

works.iterative.claude.kyo.internal.cli.QueryProcess
object QueryProcess

The messages of one run of the CLI, from spawn to exit.

The process is started when the stream is run and belongs to the scope the stream runs in: closing that scope ends it, whether the stream ran out, failed, or the consumer stopped pulling. A consumer that stops early and goes on with other work closes the scope to end the process at once. Ending it ends the whole tree the CLI started, since the CLI runs its tools as subprocesses. stderr is read beside stdout, so neither pipe can fill and stall the other, and is carried by the error a non-zero exit fails with.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def stream(command: List[String], options: QueryOptions)(using Frame): Stream[Message, Async & Abort[CLIError] & Scope]

Runs command (the executable and its arguments) configured by options, and streams the messages it prints.

Runs command (the executable and its arguments) configured by options, and streams the messages it prints.

A fired timeout is the failure whatever the stream raised after it: the kill it makes surfaces first as a read of a closed pipe or as a non-zero exit, and neither is what went wrong.

Attributes