mod achievements; mod bridge_manager; mod commands; mod config; mod notifications; mod stats; mod types; mod wsl_bridge; mod wsl_notifications; mod vbs_notification; mod windows_toast; use commands::*; use notifications::*; use bridge_manager::create_shared_bridge_manager; use commands::load_saved_achievements; use wsl_notifications::*; use vbs_notification::*; use windows_toast::*; #[cfg_attr(mobile, tauri::mobile_entry_point)] pub fn run() { let bridge_manager = create_shared_bridge_manager(); tauri::Builder::default() .plugin(tauri_plugin_dialog::init()) .plugin(tauri_plugin_opener::init()) .plugin(tauri_plugin_shell::init()) .plugin(tauri_plugin_store::Builder::new().build()) .plugin(tauri_plugin_notification::init()) .plugin(tauri_plugin_os::init()) .manage(bridge_manager.clone()) .setup(move |app| { // Initialize the app handle in the bridge manager bridge_manager.lock().set_app_handle(app.handle().clone()); Ok(()) }) .invoke_handler(tauri::generate_handler![ start_claude, stop_claude, interrupt_claude, send_prompt, is_claude_running, get_working_directory, select_wsl_directory, get_config, save_config, get_usage_stats, load_saved_achievements, send_windows_notification, send_simple_notification, send_windows_toast, send_notify_send, send_wsl_notification, send_vbs_notification, ]) .run(tauri::generate_context!()) .expect("error while running tauri application"); }