pub async fn run_tui_commit( initial_messages: Vec<GeneratedMessage>, custom_instructions: String, selected_preset: String, user_name: String, user_email: String, service: Arc<CommitService>, ) -> Result<()>