use crate::error::Result;
use crate::storage::{discover_sessions, initialize_index};
pub fn run(enable_otel: bool) -> Result<()> {
println!(" Discovering Claude Code sessions...\n");
let sessions = discover_sessions()?;
println!(" Found {} session(s)\n", sessions.len());
println!(" Scanned directories:");
println!(" ~/.claude/projects/");
println!(" Building session index...");
let indexed = initialize_index()?;
println!(" Indexed {} session(s)\n", indexed);
println!(" Initialization complete!\n");
println!(" Summary:");
let mut projects: std::collections::HashMap<String, usize> = std::collections::HashMap::new();
for session in &sessions {
*projects.entry(session.project_name.clone()).or_insert(0) += 1;
}
for (project, count) in projects.iter() {
println!(" {} - {} session(s)", project, count);
}
println!("\n Next steps:");
println!(" hindsight list - List all sessions");
println!(" hindsight show <id> - Analyze a session");
println!(" hindsight watch - Monitor current session");
if enable_otel {
println!("\n OpenTelemetry integration not yet implemented");
}
Ok(())
}