seyd_core/lib.rs
1// Copyright 2026 Anton Gravestam
2// SPDX-License-Identifier: Apache-2.0
3//! Seyd agent core — the whole robot side of Seyd, as a Rust API.
4//!
5//! Bottom to top: channel bookkeeping (`channels`), turning encoded frames
6//! into wire chunks with FEC (`packer`), the control-stream vocabulary
7//! (`control`), the session engine that binds those to `seyd-transport`
8//! (`engine`), and the lifecycle that turns a configuration into a running,
9//! announced, self-maintaining robot (`agent`).
10//!
11//! [`agent::Agent`] is the entry point every host uses — `seydd`, `seyd-ffi`
12//! and the SDKs above it (ADR 0004). A host supplies media and consumes
13//! [`agent::AgentEvent`]; it never reimplements discovery, signaling or
14//! certificate maintenance, which is what keeps the form factors from
15//! drifting.
16
17pub mod agent;
18pub mod channels;
19pub mod control;
20pub mod engine;
21pub mod packer;
22
23pub use agent::{Agent, AgentConfig, AgentEvent};
24pub use channels::{ChannelKind, ChannelSpec};
25pub use engine::{Role, VideoFrame};