pub struct CustomCli {
pub command: String,
pub display_name: Option<String>,
pub submit_delay_ms: Option<u64>,
pub settings_path: Option<String>,
}Expand description
A custom CLI definition from config.
Fields§
§command: StringCommand or path to the CLI binary.
display_name: Option<String>Optional human-readable display name.
submit_delay_ms: Option<u64>Optional override for the boot-prompt settle delay (milliseconds)
before the submit Enter.
git-paw injects the boot block, waits this long for a paste-aware CLI
to settle the paste, then sends Enter separately. The default
(crate::DEFAULT_SUBMIT_DELAY_MS) suits most CLIs; raise it for a
CLI whose large-paste handling needs longer before the submit lands.
Set per-CLI rather than hardcoded so the launcher stays CLI-agnostic.
settings_path: Option<String>Optional path to this CLI’s claude-format settings file
(the file carrying allowed_bash_prefixes).
When set and the broker is enabled, git-paw seeds the broker-curl
allowlist into this path too, so the CLI’s boot-time broker curl
does not raise a permission prompt. Use for claude-family variants
that read a non-default config dir (e.g. a CLI reading
~/.claude-oss/settings.json). A leading ~ is expanded to the
home directory. Left unset, only the repo-local .claude/settings.json
is seeded.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CustomCli
impl<'de> Deserialize<'de> for CustomCli
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for CustomCli
impl StructuralPartialEq for CustomCli
Auto Trait Implementations§
impl Freeze for CustomCli
impl RefUnwindSafe for CustomCli
impl Send for CustomCli
impl Sync for CustomCli
impl Unpin for CustomCli
impl UnsafeUnpin for CustomCli
impl UnwindSafe for CustomCli
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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>
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>
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