Skip to main content

Module adapters

Module adapters 

Source
Expand description

Adapters (hexagonal architecture) — implementations of ports.

Portable adapters live in looprs_core::adapters and are re-exported here for backwards compatibility. Adapters that depend on looprs internals (PluginsAdapter, RetryProvider) remain in this module.

Re-exports§

pub use plugin_executor::PluginsAdapter;
pub use retry_provider::RetryProvider;
pub use sqlite_session_store::SqliteSessionStore;
pub use ui_output::UiOutput;

Modules§

plugin_executor
PluginExecutor port adapter — bridges domain to Plugins infrastructure.
retry_provider
RetryProvider adapter — wraps any LLMProvider with exponential backoff.
sqlite_session_store
SqliteSessionStore adapter — SessionStore backed by a SQLite database.
ui_output
UiOutput adapter — UserOutput port backed by looprs::ui.

Structs§

ChannelBroker
Thread-safe, cheaply cloneable pub/sub broker backed by tokio broadcast channels.
FsSessionStore
Filesystem-backed session store that appends JSONL lines to a dated log file.
NullOutput
Discards all output. Use in tests where UI side-effects are unwanted.
TerminalOutput
Writes output directly to stdout/stderr with no formatting or sanitization.

Functions§

default_session_store
Create the session store selected by persistence.session_store in config.