1mod agent;
2mod app;
3mod chart;
4mod cli;
5mod commands;
6mod config;
7mod connection;
8#[allow(dead_code)] mod contracts;
10mod interactive;
11mod render;
12mod runtime_profile;
13mod slash;
14mod stream_render;
15
16#[cfg(test)]
17mod privacy_tests;
18mod profile_identity;
19mod prompt_approval;
20mod state_path;
21
22use clap::Parser;
23
24pub use app::run;
25pub use cli::{
26 ClaimKindArg, Cli, Command, ConfigCommand, ConnectionCommand, ContractsCommand,
27 ForgetReasonArg, FormatArg, GlobalOptions, ReviewDecisionArg,
28};
29pub use commands::{capture_output_start, capture_output_take, run_contracts};
30pub use config::runtime::{RuntimeConfig, approval_name, load_with_sources};
31pub use interactive::session_paths::{default_session_dir, resolve_session_dir};
32pub use interactive::{Session, SessionAction, SessionState};
33pub use profile_identity::profile_identity;
34pub use render::{
35 ContractClaimView, ContractConflictView, ContractQueueItemView, ContractView, RenderFormat,
36 TerminalEvent, render_event,
37};
38pub use slash::{SlashCommand, parse_slash_command};
39pub use state_path::resolve_state_db_path;
40
41pub fn run_from_env() -> i32 {
42 run(Cli::parse_from(std::env::args_os()))
43}