1mod agent;
2mod app;
3mod cli;
4mod commands;
5mod config;
6mod connection;
7mod interactive;
8mod render;
9mod runtime_profile;
10mod slash;
11mod stream_render;
12
13#[cfg(test)]
14mod privacy_tests;
15mod profile_identity;
16mod prompt_approval;
17mod state_path;
18
19use clap::Parser;
20
21pub use app::run;
22pub use cli::{Cli, Command, ConfigCommand, ConnectionCommand, FormatArg, GlobalOptions};
23pub use config::runtime::{RuntimeConfig, approval_name, load_with_sources};
24pub use interactive::session_paths::{default_session_dir, resolve_session_dir};
25pub use interactive::{Session, SessionAction, SessionState};
26pub use render::{RenderFormat, TerminalEvent, render_event};
27pub use slash::{SlashCommand, parse_slash_command};
28pub use state_path::resolve_state_db_path;
29
30pub fn run_from_env() -> i32 {
31 run(Cli::parse_from(std::env::args_os()))
32}