pub struct HostConfig {
pub workspace_root: PathBuf,
pub extra_roots: Vec<PathBuf>,
pub path_policy: PathPolicy,
pub exec: ExecLimits,
pub shell_program: String,
pub login_shell: bool,
}Expand description
Construction-time configuration for a Host.
Fields§
§workspace_root: PathBufThe path-jail root (canonicalized at Host::new).
extra_roots: Vec<PathBuf>Additional jail roots (--add-dir), canonicalized at Host::new.
A jailed path is accepted when it resolves under workspace_root or any
of these. Empty by default — the jail stays single-rooted unless a caller
explicitly widens it (ADR-0008 amendment 2026-07-25).
path_policy: PathPolicyWhether FS tools are jailed to workspace_root (default PathPolicy::Jailed).
exec: ExecLimitsShell execution limits.
shell_program: StringThe shell program to run commands through (default bash). A configurable field
so a later pack / shell-detection can override it.
login_shell: boolRun the shell as a login shell (-lc, loads the user’s profile/RC — matches all
four studied harnesses) rather than -c. Default true.
Implementations§
Source§impl HostConfig
impl HostConfig
Sourcepub fn new(workspace_root: impl Into<PathBuf>) -> HostConfig
pub fn new(workspace_root: impl Into<PathBuf>) -> HostConfig
A config for workspace_root with all defaults (jailed, bash -lc, grok limits).
Trait Implementations§
Source§impl Clone for HostConfig
impl Clone for HostConfig
Source§fn clone(&self) -> HostConfig
fn clone(&self) -> HostConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more