diff options
Diffstat (limited to 'makima/src/daemon/cli/mod.rs')
| -rw-r--r-- | makima/src/daemon/cli/mod.rs | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/makima/src/daemon/cli/mod.rs b/makima/src/daemon/cli/mod.rs index 035a784..91ef87c 100644 --- a/makima/src/daemon/cli/mod.rs +++ b/makima/src/daemon/cli/mod.rs @@ -4,6 +4,7 @@ pub mod chain; pub mod config; pub mod contract; pub mod daemon; +pub mod directive; pub mod server; pub mod supervisor; pub mod view; @@ -14,6 +15,7 @@ pub use chain::ChainArgs; pub use config::CliConfig; pub use contract::ContractArgs; pub use daemon::DaemonArgs; +pub use directive::DirectiveArgs; pub use server::ServerArgs; pub use supervisor::SupervisorArgs; pub use view::ViewArgs; @@ -68,6 +70,14 @@ pub enum Commands { /// in parallel when no dependencies exist. #[command(subcommand)] Chain(ChainCommand), + + /// Directive commands for autonomous goal-driven orchestration + /// + /// Directives are top-level goals that generate chains of steps executed + /// autonomously with configurable guardrails. Steps spawn contracts with + /// supervisors and are verified with programmatic and LLM evaluation. + #[command(subcommand)] + Directive(DirectiveCommand), } /// Config subcommands for CLI configuration. @@ -248,6 +258,52 @@ pub enum ChainCommand { Archive(chain::ArchiveArgs), } +/// Directive subcommands for autonomous goal-driven orchestration. +#[derive(Subcommand, Debug)] +pub enum DirectiveCommand { + /// Create a new directive from a goal + Create(directive::CreateArgs), + + /// Get directive status and progress + Status(directive::StatusArgs), + + /// List all directives + List(directive::ListArgs), + + /// List steps in the directive's chain + Steps(directive::StepsArgs), + + /// Display ASCII DAG visualization + /// + /// Shows the directive's chain structure as an ASCII graph with + /// steps as nodes and dependencies as edges. + Graph(directive::GraphArgs), + + /// Show recent events for a directive + Events(directive::EventsArgs), + + /// Approve a pending approval request + Approve(directive::ApproveArgs), + + /// Deny a pending approval request + Deny(directive::DenyArgs), + + /// Start a directive (generates chain and begins execution) + Start(directive::StartArgs), + + /// Pause a running directive + Pause(directive::PauseArgs), + + /// Resume a paused directive + Resume(directive::ResumeArgs), + + /// Stop a directive + Stop(directive::StopArgs), + + /// Archive a directive + Archive(directive::ArchiveArgs), +} + impl Cli { /// Parse command-line arguments pub fn parse_args() -> Self { |
