vein-database 0.1.0

Database layer for Vein - shared memory system for AI agents and tools
Documentation
use std::path::PathBuf;
use directories::BaseDirs;

pub struct Paths;

impl Paths {
    fn base_dirs() -> BaseDirs {
        BaseDirs::new()
            .expect("Failed to get base directories")
    }

    pub fn get_insights_db() -> PathBuf {
        std::env::var("VEIN_INSIGHTS_DB")
            .map(PathBuf::from)
            .unwrap_or_else(|_| Self::base_dirs().data_dir().join("vein/insights"))
    }

    pub fn get_dialogues_db() -> PathBuf {
        std::env::var("VEIN_DIALOGUES_DB")
            .map(PathBuf::from)
            .unwrap_or_else(|_| Self::base_dirs().data_dir().join("vein/dialogues"))
    }
}