pub struct CopilotTarget;Trait Implementations§
Source§impl Target for CopilotTarget
impl Target for CopilotTarget
fn name(&self) -> &'static str
fn display_name(&self) -> &'static str
Source§fn shell_tool_name(&self) -> &'static str
fn shell_tool_name(&self) -> &'static str
The harness’s SHELL tool — the only tool this hook should decide about. Droid’s is
Execute, Gemini’s run_shell_command; most are Bash. Defaults to Bash, the common
case.fn detect_paths(&self, home: &Path) -> Vec<PathBuf>
fn install(&self, home: &Path) -> Result<InstallOutcome, String>
fn hook_format(&self) -> Option<&dyn HookFormat>
Source§fn hook_format_for(&self, _stdin: &str) -> Option<&dyn HookFormat>
fn hook_format_for(&self, _stdin: &str) -> Option<&dyn HookFormat>
The format that answers THIS envelope. Most harnesses send one hook event, so it is
hook_format. Codex sends PreToolUse and PermissionRequest to the same command and
expects a different answer to each, so it picks by the event the envelope names.Source§fn hook_formats(&self) -> Vec<&dyn HookFormat>
fn hook_formats(&self) -> Vec<&dyn HookFormat>
Every format
hook_format_for can return, so the contract guards that need no envelope walk
all of them and a second event’s format cannot ship unchecked. The foreign-tool guard is
driven by sample_envelope and reaches only the format that envelope routes to; Codex’s
PermissionRequest tool filter has its own test in codex.rs.Auto Trait Implementations§
impl Freeze for CopilotTarget
impl RefUnwindSafe for CopilotTarget
impl Send for CopilotTarget
impl Sync for CopilotTarget
impl Unpin for CopilotTarget
impl UnsafeUnpin for CopilotTarget
impl UnwindSafe for CopilotTarget
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