diff --git a/crates/goose-cli/src/main.rs b/crates/goose-cli/src/main.rs index 8c3f13003..380fc0de5 100644 --- a/crates/goose-cli/src/main.rs +++ b/crates/goose-cli/src/main.rs @@ -1,7 +1,7 @@ use anyhow::Result; -use clap::{Args, CommandFactory, Parser, Subcommand}; +use clap::{Args, Parser, Subcommand}; + -use console::style; use goose::config::Config; use goose_cli::commands::configure::handle_configure; use goose_cli::commands::info::handle_info; @@ -292,14 +292,15 @@ async fn main() -> Result<()> { return Ok(()); } None => { - Cli::command().print_help()?; - println!(); if !Config::global().exists() { - println!( - "\n {}: Run '{}' to setup goose for the first time", - style("Tip").green().italic(), - style("goose configure").cyan() - ); + let _ = handle_configure().await; + return Ok(()); + } else { + // Run session command by default + let mut session = build_session(None, false, vec![], vec![]).await; + setup_logging(session.session_file().file_stem().and_then(|s| s.to_str()))?; + let _ = session.interactive(None).await; + return Ok(()); } } }