systemprompt_cli/commands/build/
mod.rs1mod core;
2mod mcp;
3pub mod types;
4
5use anyhow::{Context, Result};
6use clap::Subcommand;
7
8use crate::shared::render_result;
9use crate::CliConfig;
10
11#[derive(Debug, Clone, Copy, Subcommand)]
12pub enum BuildCommands {
13 #[command(about = "Build Rust workspace (systemprompt-core)")]
14 Core(core::CoreArgs),
15
16 #[command(about = "Build MCP extensions")]
17 Mcp(mcp::McpArgs),
18}
19
20pub fn execute(cmd: BuildCommands, config: &CliConfig) -> Result<()> {
21 match cmd {
22 BuildCommands::Core(args) => {
23 let result = core::execute(args, config).context("Failed to build core")?;
24 render_result(&result);
25 Ok(())
26 },
27 BuildCommands::Mcp(args) => {
28 let result = mcp::execute(args, config).context("Failed to build MCP extensions")?;
29 render_result(&result);
30 Ok(())
31 },
32 }
33}