robonix_api.atlas_types

Python dataclass mirrors of atlas.proto types.

Keeps the rest of robonix_api free of raw protobuf access. Frozen + slotted to keep the runtime cost negligible.

Functions

from_pb_capability(pb_cap)

from_pb_contract(pb_c)

from_pb_field_spec(pb_f)

from_pb_params(transport, pb_params)

from_pb_provider(pb_rec)

Classes

Capability(provider_id, provider_kind, ...)

One declared Capability on a CapabilityProvider, mirrored from pb::Capability.

CapabilityProvider(id, kind, namespace[, ...])

One registered Primitive / Service / Skill and the Capabilities it currently offers.

Channel(provider_id, contract_id, transport, ...)

Open consumer->provider edge returned by ATLAS.connect_capability.

ContractDescriptor(id, version, kind, mode, ...)

FieldSpec(name, type_name[, is_primitive, ...])

GrpcParams([proto_file, service_name, method])

Kind(*values)

Closed set of CapabilityProvider kinds.

LifecycleState(*values)

McpParams([input_schema_json])

Ros2Params([qos_profile])

Transport(*values)

class robonix_api.atlas_types.Capability(provider_id: str, provider_kind: Kind, contract_id: str, transport: Transport, description: str = '', params: GrpcParams | Ros2Params | McpParams | None = None)[source]

Bases: object

One declared Capability on a CapabilityProvider, mirrored from pb::Capability. Carries provider_id / provider_kind so consumers can flatten without rebuilding the relationship from outer providers. endpoint is omitted on purpose (see ConnectCapability).

contract_id: str
description: str
params: GrpcParams | Ros2Params | McpParams | None
provider_id: str
provider_kind: Kind
transport: Transport
class robonix_api.atlas_types.CapabilityProvider(id: str, kind: Kind, namespace: str, capability_md_path: str = '', last_heartbeat_ms: int = 0, state: LifecycleState = LifecycleState.UNSPECIFIED, state_detail: str = '', capabilities: tuple[Capability, ...] = ())[source]

Bases: object

One registered Primitive / Service / Skill and the Capabilities it currently offers. Mirrored from pb::CapabilityProvider.

capabilities: tuple[Capability, ...]
capability_md_path: str
id: str
kind: Kind
last_heartbeat_ms: int
namespace: str
state: LifecycleState
state_detail: str
class robonix_api.atlas_types.Channel(provider_id: str, contract_id: str, transport: Transport, endpoint: str, channel_id: str, params: GrpcParams | Ros2Params | McpParams | None = None, _closer: Any = None, _closed: bool = False)[source]

Bases: object

Open consumer->provider edge returned by ATLAS.connect_capability. Context-manager — __exit__ calls close() (which fires DisconnectCapability on atlas, idempotent).

channel_id: str
close() None[source]
contract_id: str
endpoint: str
params: GrpcParams | Ros2Params | McpParams | None = None
provider_id: str
transport: Transport
class robonix_api.atlas_types.ContractDescriptor(id: 'str', version: 'str' = '', kind: 'Kind' = <Kind.UNSPECIFIED: 0>, mode: 'str' = '', io_msg_type: 'str' = '', io_srv_type: 'str' = '', source_toml_path: 'str' = '', description: 'str' = '', msg_fields: 'tuple[FieldSpec, ...]'=(), srv_request_fields: 'tuple[FieldSpec, ...]'=(), srv_response_fields: 'tuple[FieldSpec, ...]'=())[source]

Bases: object

description: str
id: str
io_msg_type: str
io_srv_type: str
kind: Kind
mode: str
msg_fields: tuple[FieldSpec, ...]
source_toml_path: str
srv_request_fields: tuple[FieldSpec, ...]
srv_response_fields: tuple[FieldSpec, ...]
version: str
class robonix_api.atlas_types.FieldSpec(name: 'str', type_name: 'str', is_primitive: 'bool' = False, is_array: 'bool' = False, array_size: 'int' = 0)[source]

Bases: object

array_size: int
is_array: bool
is_primitive: bool
name: str
type_name: str
class robonix_api.atlas_types.GrpcParams(proto_file: 'str' = 'robonix_contracts.proto', service_name: 'str' = '', method: 'str' = '')[source]

Bases: object

method: str
proto_file: str
service_name: str
class robonix_api.atlas_types.Kind(*values)[source]

Bases: IntEnum

Closed set of CapabilityProvider kinds. Internal: developers interact with the concrete Primitive / Service / Skill classes, not with this enum directly.

PRIMITIVE = 1
SERVICE = 2
SKILL = 3
UNSPECIFIED = 0
class robonix_api.atlas_types.LifecycleState(*values)[source]

Bases: IntEnum

ACTIVE = 3
ERROR = 4
INACTIVE = 2
REGISTERED = 1
TERMINATED = 5
UNSPECIFIED = 0
class robonix_api.atlas_types.McpParams(input_schema_json: 'str' = '{}')[source]

Bases: object

input_schema_json: str
class robonix_api.atlas_types.Ros2Params(qos_profile: 'str' = '')[source]

Bases: object

qos_profile: str
class robonix_api.atlas_types.Transport(*values)[source]

Bases: IntEnum

GRPC = 1
MCP = 3
ROS2 = 2
UNSPECIFIED = 0
robonix_api.atlas_types.from_pb_capability(pb_cap) Capability[source]
robonix_api.atlas_types.from_pb_contract(pb_c) ContractDescriptor[source]
robonix_api.atlas_types.from_pb_field_spec(pb_f) FieldSpec[source]
robonix_api.atlas_types.from_pb_params(transport: Transport, pb_params) GrpcParams | Ros2Params | McpParams | None[source]
robonix_api.atlas_types.from_pb_provider(pb_rec) CapabilityProvider[source]