pub struct CodexAdapter { /* private fields */ }Expand description
Native process-per-turn Codex adapter.
Implementations§
Source§impl CodexAdapter
impl CodexAdapter
pub fn new(slot: RosterSlot, cwd: PathBuf, command: impl Into<String>) -> Self
pub fn with_session_id( slot: RosterSlot, cwd: PathBuf, command: impl Into<String>, session_id: impl Into<String>, ) -> Self
Trait Implementations§
Source§impl AgentAdapter for CodexAdapter
impl AgentAdapter for CodexAdapter
fn slot(&self) -> RosterSlot
Source§fn session_id(&self) -> Option<String>
fn session_id(&self) -> Option<String>
Return the protocol session handle when this adapter has one. Custom
adapters may omit it; runtime metadata then still preserves roster
identity without claiming the session is resumable.
Source§fn protocol(&self) -> &'static str
fn protocol(&self) -> &'static str
Stable protocol label recorded in the runtime session snapshot.
Custom adapters may override this when they expose a resumable
protocol distinct from the built-in native and ACP bridges.
fn capabilities(&self) -> AgentCapabilities
fn start<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send_prompt<'life0, 'async_trait>(
&'life0 mut self,
prompt: String,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn cancel<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = AdapterResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn answer_permission<'life0, 'async_trait>(
&'life0 mut self,
_request_id: String,
_answer: PermissionAnswer,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn set_mode<'life0, 'async_trait>(
&'life0 mut self,
mode: String,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn set_model<'life0, 'async_trait>(
&'life0 mut self,
model: String,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn reload<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stop<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = AdapterResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn next_event<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Option<AdapterResult<AgentEvent>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn display_name(&self) -> String
fn display_name(&self) -> String
Human-readable adapter identity used in the first-turn roster context.
Catalog-backed launchers can override this with their display name;
direct command adapters still get a deterministic fallback.
Source§fn needs_restart(&self) -> bool
fn needs_restart(&self) -> bool
Whether the adapter lost its underlying transport and needs a
coordinator-owned reload before the next prompt. Most adapters keep
their transport alive between turns; ACP overrides this for EOF or
broken-pipe recovery.
Auto Trait Implementations§
impl !RefUnwindSafe for CodexAdapter
impl !UnwindSafe for CodexAdapter
impl Freeze for CodexAdapter
impl Send for CodexAdapter
impl Sync for CodexAdapter
impl Unpin for CodexAdapter
impl UnsafeUnpin for CodexAdapter
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