SessionProcess

works.iterative.claude.effectful.internal.cli.SessionProcess

Starts and manages a long-lived Claude Code CLI session process.

The process is spawned once and kept alive for multiple turns. A background fiber writes stdin from a queue (keeping the pipe open across sends); a second fiber continuously reads stdout lines into a message queue; a third fiber captures stderr for diagnostics. Cleanup is handled by the Resource finalizer.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def start(executablePath: String, options: SessionOptions)(using logger: Logger[IO]): Resource[IO, Session]