mod agent; mod claude; mod config; mod prompts; mod swym; use clap::Parser; use tracing_subscriber::EnvFilter; #[tokio::main] async fn main() -> anyhow::Result<()> { tracing_subscriber::fmt() .with_env_filter( EnvFilter::try_from_default_env().unwrap_or_else(|_| EnvFilter::new("info")), ) .with_target(false) .init(); let cli = config::Cli::parse(); tracing::info!("scout starting"); tracing::info!(" swym API: {}", cli.swym_url); tracing::info!(" claude API: {}", cli.anthropic_url); tracing::info!(" model: {}", cli.model); tracing::info!(" iterations: {}", cli.max_iterations); tracing::info!(" instruments: {:?}", cli.instruments); tracing::info!(" in-sample: {} → {}", cli.backtest_from, cli.backtest_to); tracing::info!(" OOS: {} → {}", cli.oos_from, cli.oos_to); tracing::info!(" output: {}", cli.output_dir.display()); agent::run(&cli).await }