pub struct PiAgent;Expand description
Legacy AgentAdapter face for Pi (D-11 removal point). Delegates to
PiDriver.
Trait Implementations§
Source§impl AgentAdapter for PiAgent
impl AgentAdapter for PiAgent
Source§fn exec_command(
&self,
phase: PhaseId,
prompt: &str,
extra_writable_roots: &[PathBuf],
) -> (&'static str, Vec<String>)
fn exec_command( &self, phase: PhaseId, prompt: &str, extra_writable_roots: &[PathBuf], ) -> (&'static str, Vec<String>)
Build the command and arguments to launch this agent headless with the
given
prompt for phase. Returns (program, args). Read moreSource§fn completion_signal_detected(&self, _output: &str) -> bool
fn completion_signal_detected(&self, _output: &str) -> bool
Detect an agent-specific completion signal in captured output.
Source§fn preflight(&self, state: &State) -> Result<(), String>
fn preflight(&self, state: &State) -> Result<(), String>
Adapter-specific pre-launch readiness check (D-13/D-14 adapter hook,
Phase 17c). The default is a no-op — most adapters have nothing extra
to check, mirroring
Self::extra_env’s empty-default shape. The
Err variant is a human-readable failure reason that flows into the
preflight gate’s context (run_preflight in devflow-cli/src/main.rs).
This is the trait surface Phase 18’s Hermes adapter implements to
enforce a non-empty reviewer/receiver set — no built-in adapter
(Claude/Codex/OpenCode) overrides it in Phase 17 because no
reviewer-set storage exists yet in state.rs/config.rs (review
consensus #6).Source§fn render_prompt(&self, intent: &StageIntent) -> String
fn render_prompt(&self, intent: &StageIntent) -> String
Render the stage prompt for this agent from a
crate::prompt::StageIntent. Read moreSource§fn extra_env(&self) -> Vec<(String, String)>
fn extra_env(&self) -> Vec<(String, String)>
Extra environment variables for the agent process tree. Codex uses
this to disable commit/tag signing inside its sandbox: the operator’s
signing agent (ssh-agent/gpg-agent) is unreachable there, so signed
commits fail headless with a passphrase error (13-06 dogfood finding
— same rationale as the unsigned VersionBump tags).
GIT_CONFIG_*
env scoping keeps the override out of every repo/global config.Auto Trait Implementations§
impl Freeze for PiAgent
impl RefUnwindSafe for PiAgent
impl Send for PiAgent
impl Sync for PiAgent
impl Unpin for PiAgent
impl UnsafeUnpin for PiAgent
impl UnwindSafe for PiAgent
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