Skip to main content

systemprompt_models/modules/
cli_paths.rs

1//! CLI command path constants - prevents hardcoded strings from getting out of
2//! sync.
3//!
4//! Copyright (c) systemprompt.io — Business Source License 1.1.
5//! See <https://systemprompt.io> for licensing details.
6
7#[derive(Debug, Clone, Copy)]
8pub struct CliPaths;
9
10impl CliPaths {
11    pub const ADMIN: &'static str = "admin";
12    pub const INFRA: &'static str = "infra";
13    pub const AGENTS: &'static str = "agents";
14    pub const DB: &'static str = "db";
15    pub const SERVICES: &'static str = "services";
16    pub const RUN: &'static str = "run";
17    pub const MIGRATE: &'static str = "migrate";
18    pub const SERVE: &'static str = "serve";
19
20    pub const fn agent_run_args() -> [&'static str; 3] {
21        [Self::ADMIN, Self::AGENTS, Self::RUN]
22    }
23
24    pub const fn db_migrate_args() -> [&'static str; 3] {
25        [Self::INFRA, Self::DB, Self::MIGRATE]
26    }
27
28    pub const fn db_migrate_cmd() -> &'static str {
29        "infra db migrate"
30    }
31
32    pub const fn services_serve_cmd() -> &'static str {
33        "infra services serve"
34    }
35
36    pub const fn agent_run_cmd_pattern() -> &'static str {
37        "admin agents run"
38    }
39}