Skip to main content

roboticus_core/
lib.rs

1//! # roboticus-core
2//!
3//! Core types, configuration, error handling, and encrypted credential storage
4//! for the Roboticus agent runtime. This is the leaf crate in the dependency
5//! graph -- every other workspace crate depends on it.
6//!
7//! ## Key Types
8//!
9//! - [`RoboticusConfig`] -- Central configuration loaded from `roboticus.toml`
10//! - [`RoboticusError`] / [`Result`] -- Unified error type (13 variants) used across all crates
11//! - [`Keystore`] -- Encrypted key-value storage for API keys and secrets
12//! - [`SurvivalTier`] -- Financial health tier derived from on-chain balance
13//!
14//! ## Modules
15//!
16//! - `config` -- Configuration structs, TOML parsing, tilde expansion, validation
17//! - `error` -- `RoboticusError` enum and `Result` type alias
18//! - `keystore` -- Encrypted JSON file store with machine-key auto-unlock
19//! - `personality` -- OS/firmware personality loading from workspace
20//! - `style` -- Terminal theme (CRT, typewriter effect, icons)
21//! - `types` -- Shared domain enums: `SurvivalTier`, `AgentState`, `ApiFormat`,
22//!   `ModelTier`, `PolicyDecision`, `RiskLevel`, `SkillManifest`, etc.
23
24pub mod config;
25pub mod config_utils;
26pub mod delegation_tools;
27pub mod error;
28pub mod input_capability_scan;
29pub mod keystore;
30pub mod limits;
31pub mod model;
32pub mod personality;
33pub mod security;
34pub mod style;
35pub mod types;
36
37pub use config::{
38    RoboticusConfig, home_dir, resolve_config_path, rewrite_all_toml_files,
39    rewrite_legacy_paths_in_config,
40};
41pub use error::{Result, RoboticusError};
42pub use keystore::Keystore;
43pub use types::*;