pub enum Command {
Show 36 variants
Init {
template: Option<InitTemplate>,
from: Option<String>,
force: bool,
agent: Option<String>,
},
ExportTemplate {
name: String,
},
ExportRun,
Retro {
events: Option<PathBuf>,
},
Start {
attach: bool,
},
Stop,
Attach,
Status {
json: bool,
},
Send {
from: Option<String>,
role: String,
message: String,
},
Assign {
engineer: String,
task: String,
},
Validate {
show_checks: bool,
},
Config {
json: bool,
},
Board {
command: Option<BoardCommand>,
},
Inbox {
command: Option<InboxCommand>,
member: Option<String>,
limit: usize,
all: bool,
},
Read {
member: String,
id: String,
},
Ack {
member: String,
id: String,
},
Merge {
engineer: String,
},
Task {
command: TaskCommand,
},
Review {
task_id: u32,
disposition: ReviewAction,
feedback: Option<String>,
reviewer: String,
},
Completions {
shell: CompletionShell,
},
Nudge {
command: NudgeCommand,
},
Pause,
Resume,
Grafana {
command: GrafanaCommand,
},
Telegram,
Load,
Queue,
Cost,
Scale {
command: ScaleCommand,
},
Doctor {
fix: bool,
yes: bool,
},
Metrics,
Telemetry {
command: TelemetryCommand,
},
Chat {
agent_type: String,
cmd: Option<String>,
cwd: String,
sdk_mode: bool,
},
Shim {
id: String,
agent_type: String,
cmd: String,
cwd: String,
rows: u16,
cols: u16,
pty_log_path: Option<String>,
sdk_mode: bool,
},
ConsolePane {
project_root: String,
member: String,
events_log_path: String,
pty_log_path: String,
},
Daemon {
project_root: String,
resume: bool,
},
}Variants§
Init
Scaffold .batty/team_config/ with default team.yaml and prompt templates
Fields
template: Option<InitTemplate>Template to use for scaffolding
ExportTemplate
Export the current team config as a reusable template
ExportRun
Export run state for debugging
Retro
Generate a run retrospective
Start
Start the team daemon and tmux session
Stop
Stop the team daemon and kill the tmux session
Attach
Attach to the running team tmux session
Status
Show all team members and their states
Send
Send a message to an agent role (human → agent injection)
Fields
Assign
Assign a task to an engineer (used by manager agent)
Validate
Validate team config without launching
Config
Show resolved team configuration
Board
Show the kanban board
Fields
command: Option<BoardCommand>Inbox
List inbox messages for a team member, or purge delivered inbox messages
Fields
command: Option<InboxCommand>Read
Read a specific message from a member’s inbox
Ack
Acknowledge (mark delivered) a message in a member’s inbox
Merge
Merge an engineer’s worktree branch into main
Task
Manage workflow task state and metadata
Fields
command: TaskCommandReview
Record a structured review disposition for a task
Fields
disposition: ReviewActionReview disposition
Completions
Generate shell completions
Fields
shell: CompletionShellShell to generate completion script for
Nudge
Per-intervention runtime toggles
Fields
command: NudgeCommandPause
Pause nudges and standups
Resume
Resume nudges and standups
Grafana
Manage Grafana monitoring (setup, status, open)
Fields
command: GrafanaCommandTelegram
Set up Telegram bot for human communication
Load
Estimate team load and show recent load history
Queue
Show pending dispatch queue entries
Cost
Estimate current run cost from agent session files
Scale
Dynamically scale team topology (add/remove agents)
Fields
command: ScaleCommandDoctor
Dump diagnostic state from Batty state files
Fields
Metrics
Show consolidated telemetry dashboard (tasks, cycle time, rates, agents)
Telemetry
Query the telemetry database for agent and task metrics
Fields
command: TelemetryCommandChat
Interactive chat with an agent via the shim protocol
Fields
Shim
Internal: run a shim process (spawned by batty chat or orchestrator)
Fields
ConsolePane
Internal: interactive shim pane bridge for tmux
Fields
Daemon
Internal: run the daemon loop (spawned by batty start)
Trait Implementations§
Source§impl FromArgMatches for Command
impl FromArgMatches for Command
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut<'b>(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut<'b>( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§impl Subcommand for Command
impl Subcommand for Command
Source§fn augment_subcommands<'b>(__clap_app: Command) -> Command
fn augment_subcommands<'b>(__clap_app: Command) -> Command
Source§fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
fn augment_subcommands_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§fn has_subcommand(__clap_name: &str) -> bool
fn has_subcommand(__clap_name: &str) -> bool
Self can parse a specific subcommandAuto Trait Implementations§
impl Freeze for Command
impl RefUnwindSafe for Command
impl Send for Command
impl Sync for Command
impl Unpin for Command
impl UnsafeUnpin for Command
impl UnwindSafe for Command
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.