Skip to main content

mermaid_cli/app/
mod.rs

1// Gateway module for app - follows the Train Station Pattern
2// All external access must go through this gateway
3
4// Private submodules - not directly accessible from outside
5mod config;
6mod editor;
7pub mod event_source;
8pub mod instructions;
9pub mod lifecycle;
10pub mod memory;
11pub mod plugin_assets;
12mod project_config;
13pub mod recorder;
14pub mod replay;
15pub mod run;
16pub mod run_non_interactive;
17pub mod sandbox_exec;
18pub mod skills;
19pub mod terminal;
20
21// Public re-exports - the ONLY way to access app functionality
22pub use config::{
23    get_config_dir, init_config, load_config, load_config_or_warn, load_layered_config,
24    load_layered_config_or_warn, load_project_scoped_config, persist_default_reasoning,
25    persist_last_model, persist_ollama_allow_ram_offload, persist_ollama_num_ctx_for_model,
26    persist_plan_config, persist_reasoning_for_model, persist_ui_theme, remove_user_config_key,
27    resolve_model_id, update_user_config_key,
28};
29pub use event_source::event_to_msg;
30pub use lifecycle::RuntimeLifecycle;
31pub use recorder::{
32    RECORDING_FORMAT_VERSION, RecordLine, Recorder, Replay, ReplayEntry, SessionHeader,
33};
34pub use replay::{ReplayReport, replay_recording, run_replay};
35pub use run::{InteractiveOptions, run_interactive_with};
36pub use run_non_interactive::{RunOptions, RunResult, format_result, run_non_interactive_with};
37pub use terminal::TerminalGuard;