Expand description
Runtime Matters core protocol types and JSON line transport helpers.
This crate is the stable contract shared by rtm clients and rtmd. The
daemon, CLI, platform, launcher, and store crates remain private
implementation details.
§Events contract
v0.3 events use RuntimeRpc::Events and
RuntimeResponse::Events { events, cursor }.
The daemon appends lifecycle observations to a durable JSONL log in global
order. Clients pass the returned cursor as since to resume without
duplicate delivery after client or daemon restarts.
If a cursor is older than the retained log floor, rtmd returns
RuntimeResponse::CursorExpired { oldest }.
Re-exports§
pub use admin::DoctorResponse;pub use admin::KillByPidRequest;pub use admin::KillByPidResponse;pub use admin::LauncherStatus;pub use admin::LifecycleCounts;pub use admin::LifecycleLogAvailability;pub use admin::MigrationState;pub use admin::RecentLostEvent;pub use admin::StatusFilter;pub use admin::StatusResponse;pub use admin::TmuxStatus;pub use admin::WatcherCounts;pub use capture::CaptureError;pub use capture::CaptureRequest;pub use capture::CaptureResponse;pub use capture::LogAvailability;pub use capture::PaneSnapshot;pub use error::ErrorCode;pub use error::ProtocolError;pub use error::RuntimeKindParseError;pub use launcher::LaunchEnv;pub use launcher::LaunchSpec;pub use launcher::LauncherError;pub use launcher::RuntimeLauncher;pub use mcp::JsonRpcError;pub use mcp::JsonRpcRequest;pub use mcp::JsonRpcResponse;pub use mcp::MCP_PROTOCOL_VERSION;pub use mcp::McpBridgeRequest;pub use mcp::McpBridgeResponse;pub use mcp::json_rpc_error;pub use mcp::json_rpc_failure;pub use mcp::json_rpc_result;pub use mcp::tool_error;pub use mcp::tool_success;pub use proto::EVENT_LOG_RETENTION_MIN_AGE_SECS;pub use proto::EVENT_LOG_RETENTION_MIN_EVENTS;pub use proto::EVENT_WAIT_MAX_MS;pub use proto::EventCursor;pub use proto::EventsRequest;pub use proto::RuntimeResponse;pub use proto::RuntimeRpc;pub use proto::StatusRequest;pub use proto::clamped_event_wait_ms;pub use proto::read_json_line;pub use proto::read_json_line_blocking;pub use proto::write_json_line;pub use proto::write_json_line_blocking;pub use spawn_context::CALLER_ENV_DENYLIST;pub use spawn_context::CALLER_ENV_DENYLIST_PREFIXES;pub use spawn_context::capture_caller_cwd;pub use spawn_context::capture_caller_env;pub use spawn_context::capture_env_from;pub use spawn_context::capture_env_from_os;pub use spawn_context::launcher_probe_cwd;pub use types::HeadlessSpawnTarget;pub use types::KillRequest;pub use types::Lifecycle;pub use types::LifecycleState;pub use types::LostEvidence;pub use types::NudgeFailureReason;pub use types::NudgeOutcome;pub use types::NudgeRequest;pub use types::NudgeResponse;pub use types::RuntimeEvent;pub use types::RuntimeExit;pub use types::RuntimeKind;pub use types::RuntimeSignal;pub use types::RuntimeSignalParseError;pub use types::ShimExit;pub use types::ShimLaunchRequest;pub use types::ShimReady;pub use types::SpawnRequest;pub use types::SpawnTarget;pub use types::SpawnTargetParseError;pub use types::TerminationEvidence;pub use types::TmuxAddress;pub use types::TmuxAddressParseError;pub use types::TmuxSpawnTarget;pub use types::ValidateTargetOutcome;pub use types::ValidateTargetRequest;pub use types::ValidateTargetResponse;