openlatch-client 0.1.5

The open-source security layer for AI agents — client forwarder
#[cfg(feature = "full-cli")]
pub mod cli;
/// OpenLatch client library crate.
///
/// Re-exports all modules so integration tests and external callers can access
/// internal types without going through the binary entry point.
///
/// Physical layout groups code by component:
/// - `core/` — shared leaf modules (auth, cloud, config, crash_report, envelope,
///   error, hook_state, logging, net, privacy, supervision, telemetry, update)
/// - `cli/` — CLI-specific code (commands, output formatting)
/// - `daemon/` — HTTP server that composes leaf modules
/// - `hook_output/` — agent-specific stdout translators (ungated leaf)
/// - `hooks/` — agent hook config generators
///
/// Re-exports from `core/` preserve flat `crate::config`, `crate::error`, etc. paths.
///
/// The `full-cli` feature gates all heavy modules. Without it, only the minimal
/// hook-compatible surface is compiled (used by the `openlatch-hook` binary).
#[cfg(feature = "full-cli")]
pub mod core;
#[cfg(feature = "full-cli")]
pub mod daemon;
#[cfg(feature = "full-cli")]
pub mod generated;
/// Agent-specific hook-output translation. Ungated so `openlatch-hook`
/// (which builds without `full-cli`) can translate daemon verdicts into
/// the stdout JSON each agent expects.
pub mod hook_output;
#[cfg(feature = "full-cli")]
pub mod hooks;

// Re-exports: preserve crate::config, crate::error, etc. paths
#[cfg(feature = "full-cli")]
pub use core::auth;
#[cfg(feature = "full-cli")]
pub use core::cloud;
#[cfg(feature = "full-cli")]
pub use core::config;
#[cfg(all(feature = "full-cli", feature = "crash-report"))]
pub use core::crash_report;
#[cfg(feature = "full-cli")]
pub use core::envelope;
#[cfg(feature = "full-cli")]
pub use core::error;
#[cfg(feature = "full-cli")]
pub use core::hook_state;
#[cfg(feature = "full-cli")]
pub use core::logging;
#[cfg(feature = "full-cli")]
pub use core::net;
#[cfg(feature = "full-cli")]
pub use core::privacy;
#[cfg(feature = "full-cli")]
pub use core::supervision;
#[cfg(feature = "full-cli")]
pub use core::telemetry;
#[cfg(feature = "full-cli")]
pub use core::update;