pub struct Shell {Show 16 fields
pub spawn: String,
pub ephemeral: bool,
pub broadcast: Option<Broadcast>,
pub command_receipt: Option<CommandReceipt>,
pub pre_close: Option<String>,
pub close_timeout_ms: Option<u64>,
pub persistent: bool,
pub wake_command: Option<String>,
pub can_shutdown: bool,
pub require_approval: ShellApproval,
pub max_instances_per_owner: Option<u32>,
pub over_cap: OverCap,
pub capabilities: BTreeMap<String, ShellCapability>,
pub sensory: Sensory,
pub drive: Drive,
pub tunnel: Tunnel,
}Expand description
[shell] — the body of a kind = "shell" adapter (a driven surface).
Fields§
§spawn: StringBroker-launched opaque spawn command.
ephemeral: boolEphemeral ⇒ no offline perch + no history retention.
broadcast: Option<Broadcast>§command_receipt: Option<CommandReceipt>How the shell receives agent commands.
pre_close: Option<String>Instruction sent to the binary on link-break.
close_timeout_ms: Option<u64>Graceful-termination window before force-close.
persistent: boolAuto-online whenever the owner endpoint is online.
wake_command: Option<String>Long-running wake-watcher run WHILE offline; exit ⇒ revive.
can_shutdown: boolWhether the shell may fire api owner-shutdown to suspend its owner.
require_approval: ShellApprovalPer-spawn user approval gate (floor; a node/endpoint setting may tighten).
Absent ⇒ none. (Modeled now; conducted when shells land.)
max_instances_per_owner: Option<u32>Optional ceiling on concurrent-existing instances per owner endpoint (online + offline both count). Absent ⇒ unlimited.
over_cap: OverCapWhat happens at the cap: reject (default) or approve (per-spawn
approval beyond the cap; does not raise it). Only meaningful with a cap.
capabilities: BTreeMap<String, ShellCapability>[shell.capabilities] — the command vocabulary (agent→shell).
sensory: Sensory[shell.sensory] — the sensory vocabulary (shell→agent).
drive: Drive[shell.drive] — the drive vocabulary (agent→shell, REST-only ephemeral
control; M11-W2, REQ-SHELL-3). The owner→shell mirror of [shell.sensory].
tunnel: Tunnel[shell.tunnel] — opt-in for the opaque reliable-ordered byte tunnel
(M11-W3, REQ-SHELL-4). Absent ⇒ no tunnel.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Shell
impl<'de> Deserialize<'de> for Shell
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>,
Source§impl JsonSchema for Shell
impl JsonSchema for Shell
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more