Expand description
Seyd agent core — the whole robot side of Seyd, as a Rust API.
Bottom to top: channel bookkeeping (channels), turning encoded frames
into wire chunks with FEC (packer), the control-stream vocabulary
(control), the session engine that binds those to seyd-transport
(engine), and the lifecycle that turns a configuration into a running,
announced, self-maintaining robot (agent).
agent::Agent is the entry point every host uses — seydd, seyd-ffi
and the SDKs above it (ADR 0004). A host supplies media and consumes
agent::AgentEvent; it never reimplements discovery, signaling or
certificate maintenance, which is what keeps the form factors from
drifting.
Re-exports§
pub use agent::Agent;pub use agent::AgentConfig;pub use agent::AgentEvent;pub use channels::ChannelKind;pub use channels::ChannelSpec;pub use engine::Role;pub use engine::VideoFrame;
Modules§
- agent
- Agent lifecycle: everything between a configuration and a running robot —
sockets, candidate discovery, certificate, QUIC endpoint, the session
Engine, signaling, and the maintenance that keeps all of it alive (port-mapping lease renewal, certificate rotation, network-change re-gather). - channels
- control
- Control-stream vocabulary (docs/protocol/control-stream.md). NDJSON.
- engine
- Session engine: binds the packer and control vocabulary to
seyd-transportsessions. Owns nothing network-discovery related and nothing vendor related; the host (seydd, or an SDK wrapper) feeds frames and messages in and consumesEvents out. - packer
- Frames → wire chunks (docs/protocol/chunks.md).