pub async fn send_hello<S>( writer: &mut S, agent: &str, settings_dir: &str, vault_locked: bool, provider: Option<&str>, model: Option<&str>, ) -> Result<()>where S: SinkExt<Message> + Unpin,
Build and send a hello frame.