vibe-action 0.1.0

Command router — execute shell commands and LLM prompts via simple YAML actions.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! System provider for `{system_home}` — user home directory.

use crate::models::context::ContextModel;
use crate::system::system::{SystemKey, SystemProvider};
use anyhow::Result;

pub struct SystemDirHomeProvider;

impl SystemProvider for SystemDirHomeProvider {
    fn key(&self) -> SystemKey {
        SystemKey::DirHome
    }

    fn resolve(&self) -> Result<ContextModel> {
        let home = std::env::var("HOME").unwrap_or_default();
        Ok(ContextModel::String(home))
    }
}