pub struct OpenCodeRunner;Expand description
Runner for OpenCode agent.
Implementations§
Trait Implementations§
Source§impl AgentRunner for OpenCodeRunner
impl AgentRunner for OpenCodeRunner
Source§fn stream_events(&self, event: &Value) -> Vec<StreamEvent>
fn stream_events(&self, event: &Value) -> Vec<StreamEvent>
Transcript steps for one parsed line of this agent’s NDJSON output
Source§fn router_transcript(&self) -> RouterTranscript
fn router_transcript(&self) -> RouterTranscript
Router stdout shape. The router matches on this instead of agent names
Source§fn extract_text(&self, raw: &str) -> Result<String, AgentError>
fn extract_text(&self, raw: &str) -> Result<String, AgentError>
Extract the raw inner text from an agent output envelope, without
attempting to parse it as an
AgentResponse. Read moreSource§fn build_command(
&self,
model: Option<&str>,
timeout_cmd: &str,
sys_file: &str,
msg_file: &str,
permissions: &PermissionRules,
) -> String
fn build_command( &self, model: Option<&str>, timeout_cmd: &str, sys_file: &str, msg_file: &str, permissions: &PermissionRules, ) -> String
Build the CLI command string for the legacy tmux runner. Read more
Source§fn parse_response(&self, raw: &str) -> Result<ParsedResponse, AgentError>
fn parse_response(&self, raw: &str) -> Result<ParsedResponse, AgentError>
Parse raw stdout into a ParsedResponse. Read more
Source§fn classify_error(
&self,
exit_code: i32,
stdout: &str,
stderr: &str,
) -> AgentError
fn classify_error( &self, exit_code: i32, stdout: &str, stderr: &str, ) -> AgentError
Classify an error from exit code + stdout + stderr into an AgentError. Read more
Source§fn free_models(&self) -> Vec<String>
fn free_models(&self) -> Vec<String>
Free/fallback models for last-resort failover.
Source§fn available_models(&self) -> Vec<String>
fn available_models(&self) -> Vec<String>
Models available for this agent (for intra-agent failover).
Source§fn router_command(&self, prompt: &str, model: Option<&str>) -> Result<Command>
fn router_command(&self, prompt: &str, model: Option<&str>) -> Result<Command>
Build a minimal CLI command for LLM-based routing. Read more
Source§fn classify_error_with_elapsed(
&self,
exit_code: i32,
stdout: &str,
stderr: &str,
elapsed_secs: Option<u64>,
) -> AgentError
fn classify_error_with_elapsed( &self, exit_code: i32, stdout: &str, stderr: &str, elapsed_secs: Option<u64>, ) -> AgentError
Classify error with elapsed session time (for accurate timeout reporting).
Auto Trait Implementations§
impl Freeze for OpenCodeRunner
impl RefUnwindSafe for OpenCodeRunner
impl Send for OpenCodeRunner
impl Sync for OpenCodeRunner
impl Unpin for OpenCodeRunner
impl UnsafeUnpin for OpenCodeRunner
impl UnwindSafe for OpenCodeRunner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more