Expand description
Shared protocol primitives for the Agent Runtime Control Protocol (ARCP).
This crate ships the wire-format types and abstractions both client and runtime sides depend on:
envelope— the canonical envelope (RFC §6.1).messages— payload structs andMessageType(RFC §6.2).error— canonical error taxonomy.ids— strongly-typed opaque identifiers (JobId,SessionId, …).extensions— extension namespace registry and classification.transport—Transporttrait + in-memory transport.WebSocketand stdio transports gated behind features.auth—Authenticatortrait. Concrete bearer /signed_jwt/ none validators live inarcp-runtime.
Most users should depend on the umbrella arcp crate instead of this
one directly. Pull in arcp-core only when building an alternative
client or runtime that needs the protocol primitives without the
reference implementations.
Re-exports§
pub use envelope::Envelope;pub use envelope::Priority;pub use envelope::RawEnvelope;pub use error::ARCPError;pub use error::ErrorCode;pub use extensions::ExtensionRegistry;pub use extensions::TypeClassification;pub use messages::Capabilities;pub use messages::MessageType;
Modules§
- auth
- Authentication scheme adapters (RFC §8.2).
- envelope
- Canonical message envelope (RFC §6.1).
- error
- Canonical error model (RFC §18).
- extensions
- Extension namespace registry and unknown-message classification (RFC §21).
- ids
- Newtype wrappers for the protocol’s identifier fields (RFC §6.1.1).
- messages
- Wire-level message payload types (RFC §6.2).
- transport
- Transport abstraction (RFC §22).
Constants§
- IMPL_
KIND - Implementation kind reported in
runtime.kind/client.kindblocks (RFC §8.2, §8.3). - IMPL_
VERSION - Implementation version of this crate, derived from
Cargo.toml. Sibling crates in this workspace move in lockstep, so this constant also reflects the runtime / client / umbrella version. - PROTOCOL_
VERSION - Protocol version implemented by this crate, as carried in the
arcpfield of every envelope (RFC §6.1).