OpenAgentID documentation
Source referencesRust module referenceopenagent-aegis-sdk

openagent-aegis-sdk · config

Declared module signatures, types, configuration, and source documentation.

Source: aegis/openagent-aegis-sdk/src/config.rs. SHA-256: 06a2b6645268ef69be09316360676a4fbdf065ffc1b428de4559bd41fd97615f.

This source reference follows declared modules and preserves feature attributes. It includes public declarations and implementation methods in those modules. Private-module exports and trait resolution still require the compiler; not every declaration is a crate-root import. Function bodies and constant values are omitted. Source comments describe their implementation context and are not a production deployment claim.

config::AegisConfig

Top-level AEGIS SDK configuration.

Corresponds to the YAML configuration format defined in AEGIS Spec Appendix B. Controls verification behaviour, session lifetimes, and key storage parameters.

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
pub struct AegisConfig {
/// Verification pipeline settings.

#[serde(default)]
pub verification: VerificationConfig,
/// Session lifetime settings.

#[serde(default)]
pub sessions: SessionConfig,
/// Key storage settings.

#[serde(default)]
pub keys: KeyConfig,
/// Storage backend selection.

#[serde(default)]
pub storage_backend: StorageBackend
}

Source line: 13.

config::SessionConfig

Session lifetime configuration.

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SessionConfig {
/// Maximum lifetime for human sessions in seconds (default: 86400 = 24h).

pub human_lifetime_secs: u64,
/// Maximum lifetime for agent sessions in seconds (default: 3600 = 1h).

pub agent_lifetime_secs: u64,
/// Maximum lifetime for session keys in seconds (default: 86400 = 24h).

pub session_key_max_secs: u64
}

Source line: 33.

config::StorageBackend

Storage backend selection.

Controls which persistence layer the SDK uses for sessions, nonces, delegations, revocations, and verification cache.

#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(tag = "type", rename_all = "snake_case")]
pub enum StorageBackend {
    /// In-memory storage (default). Suitable for testing and single-instance
    /// deployments.
    #[default]
    InMemory,
    /// PostgreSQL-backed storage. Requires a valid connection URL.
    Postgres {
        /// PostgreSQL connection URL (e.g., `postgres://user:pass@host/db`).
        url: String,
    },
}

Source line: 58.

config::KeyConfig

Key storage configuration.

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct KeyConfig {
/// Encryption algorithm for at-rest keys (default: "AES-256-GCM").

pub encryption_algorithm: String,
/// Whether to zeroize key material on drop (default: true).

pub zeroize_on_drop: bool
}

Source line: 72.

On this page