PublisherRunner
Java-friendly wrapper around a Runner. A run is exposed as a Reactive Streams Publisher of events, so Java callers never touch Flow; collect it with AsyncJavaHelpers.collect/forEach or any Reactive Streams consumer. Session management is not a runner concern: to call the session service from Java, create it wrapped in a CompletableFutureSessionService and build the runner with the wrapper's asKotlinSessionService().
Functions
The wrapped engine runner, for code that has dropped into Kotlin.
Rewinds the session to before rewindBeforeInvocationId; see Runner.rewindAsync. The returned future completes once the rewind has been applied.
Experimental: runs the agent over a live connection, streaming the whole conversation's events (see Runner.runLive). Each subscription starts its own run, which ends when liveRequestQueue is closed or the model ends the session; cancelling the subscription closes the connection and leaves the queue open. Events arrive on Dispatchers.IO, never on the thread that sends to the queue; hand slow work in onNext to your own executor.