vfa-tui 0.0.18

Enterprise-grade terminal UI for the Vanguard Frontier Agentic marketplace catalog
Documentation
use std::collections::HashMap;

use serde::{Deserialize, Serialize};

/// Top-level structure of install-roles.json.
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct RoleCatalog {
    pub version: String,
    pub description: String,
    pub roles: HashMap<String, Role>,
}

/// A single install role definition.
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
pub struct Role {
    pub label: String,
    pub description: String,
    pub agents: Vec<String>,
    #[serde(default)]
    pub skills: Vec<String>,
}