Space records

What a Space listing returns, and the Spaces tools `cua mcp` serves with the typed method that covers each.

SpaceInfo is one row of a Spaces listing. spaces_tool_methods lists every Spaces tool with the method of Spaces or Space that covers it.

SpaceInfo record#

A registered Space.

Returned by Space.info, Spaces.add, Spaces.add_with_service, Spaces.list, Spaces.rename, Spaces.resolve.

FieldTypeDefaultDescription
idStringId, for example direct:10.0.0.5:3211 or cloud:<name> (the sandbox ref scheme).
nameStringDisplay name.
display_name / displayNameString""The name it was given with Spaces.rename, which apps show in place of name; empty when it keeps the one it was created with. A Space that is a machine on the relay is renamed there, so its name changes instead.
providerStringcloud, local, direct or relay (the location words).
spacesd_version / spacesdVersionStringspacesd version at the last handshake.
featuresVec<String>Supported features at the last handshake.
osStringGuest OS family at the last handshake: linux, macos, windows, or empty when not reported.
os_name / osNameStringGuest OS product or distribution at the last handshake ("Ubuntu", "macOS"), or empty when not reported.
os_pretty_name / osPrettyNameStringThe guest's full OS string at the last handshake ("Ubuntu 24.04.3 LTS", "macOS 26.5.2 (25F84)"), or empty from older drivers.
imageStringThe image the sandbox runs ("ghcr.io/trycua/linux:24.04"), or empty when unknown (a Space added by address).
image_digest / imageDigestStringThe digest of the variant that runs ("sha256:..."), or empty.
kindStringcontainer, vm or microvm, or empty when unknown.
archStringThe guest's CPU architecture (arm64, amd64), or empty when unknown.
servicesVec<String>Declared services (never env), reachable with list_tools / call_tool (service). A Space without cua-spacesd has an empty features list and only these.
added_at / addedAtOption<String>When it was added (RFC 3339).
hostStringFor a Space one of your machines provides (created with on="host:<machine>"): that host's relay machine id; empty otherwise. Lists group these Spaces under their host.
host_name / hostNameStringThe host's display name, when known.
powerStringHow it turns off and on again (Spaces.stop, Spaces.start): suspend (its memory is kept), stop (its disk is kept), or empty when it cannot (a cloud Space, a Space added by address).
power_state / powerStateStringrunning, suspended or stopped as cua last recorded it; empty when unknown (a Space one of your machines provides answers while it runs).
cloudStringA Space in your own cloud: the provider (aws, gcp, hetzner, modal); empty otherwise.
cloud_place / cloudPlaceStringWhere it runs ("AWS · us-west-2").
cloud_delete / cloudDeleteStringHow delete would delete it permanently from here: here (this device created it), host:<machine> (the device that created it, through the relay) or elsewhere (only there; remove keeps it). Empty for other Spaces.
durableString""A durable Space (SpaceCreateOptions.durable): its name. It is created again on another of your machines when its machine goes away, and keeps this name. Empty for other Spaces.
stop_reason / stopReasonString""Why a local Space stopped without being asked to, in plain words ("out of memory", "killed", "exited with code 1"); empty otherwise, and once it is started again.
labelsHashMap<String, String>Labels set at create (SpaceCreateOptions.labels).
expires_at_unix / expiresAtUnixi64When the Space ends (Unix seconds), as set by Spaces.set_lifetime; 0 when it has none.
on_expire / onExpireStringWhat happens then: delete or suspend; empty without a lifetime.
created_at_unix / createdAtUnixi64When the Space was created (Unix seconds; the time it was added, for a Space added by address); 0 when unknown.
egressEgressPolicyThe egress policy last set on the Space; empty when it has none.
egress_enforced / egressEnforcedOption<EgressEnforcement>Where egress is enforced; None without one.
networkOption<NetworkSettings>Its network settings; None for a Space this computer keeps no record of, or one created before they existed (it gets them on its next start).
network_note / networkNoteOption<String>Why its network is not what was asked, in plain words (a runtime that can't protect it yet started it without network); None otherwise.
network_notice_pending / networkNoticePendingboolAn update changed its network settings (an old Space moved to the new defaults): say so once.
parentOption<String>The Space it was created from, by id; None for a top-level Space.
rootOption<String>The top-level Space of its tree, by id; None for a top-level Space.
depthu32How far below its tree's top-level Space it is (0: top-level).
volumesVec<VolumeMount>Named volumes mounted in the Space (see SpaceCreateOptions.volumes).
sharingOption<SpaceSharing>NoneA Space that is a machine on the relay: who owns it and who else has it, as this account sees it. None for other Spaces.

spaces_tool_methods#

Which SDK method covers each Spaces contract tool. Language test suites check every listed method exists on the generated class.

def spaces_tool_methods() -> List[SpacesToolMethod]

Returns Vec<SpacesToolMethod>

SpacesToolMethod record#

One row of SPACES_TOOL_METHODS.

Returned by spaces_tool_methods.

FieldTypeDefaultDescription
toolStringContract tool name.
methodStringClass.method (Rust / Python spelling; camelCase in TS, Swift and Kotlin).