Expand description
deck-core — shared domain types, traits and configuration.
Every other deck-* crate depends on this one. We deliberately keep it
free of heavy runtime deps (no tokio, no rusqlite, no ratatui) so that
cargo check -p deck-core stays under a second.
Re-exports§
pub use config::Config;pub use error::DeckError;pub use error::Result;pub use message::Message;pub use message::Role;pub use message::SessionId;pub use message::ToolCall;pub use message::ToolResult;pub use traits::LlmBackend;pub use traits::McpClient;pub use traits::Sandbox;pub use traits::Store;
Modules§
- config
- User-facing configuration. Resolved from (precedence high → low):
- error
- Crate-wide error type. Libraries use
thiserrorfor typed errors; the binary crate usesanyhowfor application-level chaining. - message
- Core message / session types that the orchestrator and TUI agree on.
- traits
- Backend-agnostic trait surface. Each
deck-*crate is a concrete implementation of one or more of these traits; the orchestrator depends only on these abstractions.