Expand description
Configuration types: AgentOsConfig (= TS AgentOsOptions), the permissions tree, root
filesystem config, mount config, and the schedule-driver abstraction.
Ported from packages/core/src/agent-os.ts (AgentOsOptions), runtime.ts (Permissions),
layers.ts / overlay-filesystem.ts (root/overlay), and cron/ (schedule driver).
Non-serializable parameters (MountConfig::Plain.driver, CronAction::Callback) are in-process
only and become Arc<dyn ...> trait objects; they cannot cross the wire and are gated exactly as
the actor layer gates them.
Structs§
- AcpLimits
- Agent
OsConfig - Resolved client options (= TS
AgentOsOptions). All fields optional with documented defaults. - Agent
OsConfig Builder - Builder for
AgentOsConfig. - Agent
OsLimits - Operator-tunable runtime limits for a VM. Every field is optional; unset fields fall back to the sidecar defaults.
- FsPermission
Rule { mode; operations?; paths? }.- Host
Tool - A single host tool within a
ToolKit. - Http
Limits - JsRuntime
Limits - Mount
Plugin - A native mount plugin descriptor.
- Overlay
Mount Config - Overlay mount filesystem config.
- Pattern
Permission Rule { mode; operations?; patterns? }.- Permissions
- Top-level permission policy. All domains optional (
allowAllwhen omitted). - Plugin
Limits - Python
Limits - Resource
Limits - Root
Filesystem Config - Root filesystem configuration. Default: overlay + bundled base snapshot.
- Rule
Permissions { default?: PermissionMode; rules: T[] }.- Schedule
Entry - A schedule entry handed to a
ScheduleDriver. Mirrors TSScheduleEntry(cron/schedule-driver.ts). - Schedule
Handle - Handle to a scheduled entry. Mirrors TS
ScheduleHandle { id }. Identifies the entry to cancel viaScheduleDriver::cancel. - Sidecar
JsBridge Call - A sidecar-initiated
js_bridge-style filesystem callback. - Software
Input - A flattened software package input.
- Timer
Schedule Driver - Default schedule driver backed by
tokiotimers and the system clock. - ToolKit
- A registered tool kit (in-process; tool implementations stay host-side). Tools are exposed to the
guest as
<toolkit>:<tool>and dispatched back toHostTool::executevia the sidecar host-callback channel. - Tool
Limits - Wasm
Limits
Enums§
- Agent
OsSidecar Config - How the client obtains its sidecar handle.
- FsPermissions
PermissionMode | RulePermissions<FsPermissionRule>.- Mount
Config - A filesystem mount.
Plain.driveris an in-process trait object and cannot cross the wire. - Pattern
Permissions PermissionMode | RulePermissions<PatternPermissionRule>(network/childProcess/process/env/binding).- Permission
Mode "allow"or"deny".- Root
Filesystem Kind - The root filesystem kind.
- Root
Filesystem Mode - Root filesystem mode.
- Root
Lower Input - A lower (immutable) snapshot layer input.
- Software
Kind - The kind of a software package, which decides how it is mounted into the VM. Mirrors the TS
descriptor
typediscriminator (packages/core/src/packages.ts).
Traits§
- Schedule
Driver - Driver-owned scheduling abstraction. Mirrors the TS
ScheduleDriverinterface (cron/schedule-driver.ts) exactly: the driver parses the schedule, arms the timer, reschedules cron entries after each fire, and tears everything down onScheduleDriver::dispose. This is the documented extension point: a custom driver (deterministic virtual-time test driver, fire-immediately driver, etc.) fully controls timing.
Type Aliases§
- Schedule
Callback - The callback fired by a
ScheduleDriverwhen a schedule entry triggers. - Sidecar
JsBridge Callback - Host-side handler for sidecar
JsBridgeCallRequestpayloads. - Tool
Callback - A host-side tool execute callback. Receives the validated JSON input, returns a JSON result or an error string. Stays host-side (never crosses to the guest); the guest invokes it by name via the sidecar host-callback channel.