#[derive(Debug, Clone)]
pub struct VoicePipelineConfig {
pub model_cache_dir: std::path::PathBuf,
pub active: bool,
}
impl Default for VoicePipelineConfig {
fn default() -> Self {
Self {
model_cache_dir: default_model_cache_dir(),
active: false,
}
}
}
fn default_model_cache_dir() -> std::path::PathBuf {
if let Some(home) = dirs_fallback() {
home.join(".clawft").join("models").join("voice")
} else {
std::path::PathBuf::from(".clawft/models/voice")
}
}
fn dirs_fallback() -> Option<std::path::PathBuf> {
std::env::var("HOME").ok().map(std::path::PathBuf::from)
}