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.
- Binding
- A single host binding within a
Bindings. - Binding
Limits - Bindings
- A registered binding collection (in-process; implementations stay host-side). Bindings are exposed to the
guest as
<collection>:<binding>and dispatched back toBinding::executevia the sidecar host-callback channel. - FsPermission
Rule { mode; operations?; paths? }.- Http
Limits - JsRuntime
Limits - Mount
Plugin - A native mount plugin descriptor.
- Overlay
Mount Config - Overlay mount filesystem config.
- Package
Ref - A reference to a packed
.aospkgpackage for the/opt/agentosprojection. A directory path remains accepted for local transition fixtures. - Pattern
Permission Rule { mode; operations?; patterns? }.- Permissions
- Top-level permission policy. All domains optional (
allowAllwhen omitted). - Plugin
Limits - Process
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.
- Sqlite
Limits - Timer
Schedule Driver - Default schedule driver backed by
tokiotimers and the system clock. - VmGroup
Config - VmUser
Account Config - VmUser
Config - Initial Linux-style credentials and account record for processes in a VM.
- 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.
Functions§
- node_
modules_ mount - Mount a host
node_modulesdirectory into the VM at/root/node_modules.
Type Aliases§
- Binding
Callback - A host-side binding 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.
- Schedule
Callback - The callback fired by a
ScheduleDriverwhen a schedule entry triggers. - Sidecar
JsBridge Callback - Host-side handler for sidecar
JsBridgeCallRequestpayloads.