pub enum Command {
Run {
issues: Vec<i64>,
common: Common,
loop_flags: LoopFlags,
triage_flags: TriageFlags,
plan_out: PathBuf,
no_worktrees: bool,
},
Followup {
common: Common,
loop_flags: LoopFlags,
triage_flags: TriageFlags,
file: Option<PathBuf>,
screen_only: bool,
file_only: bool,
plan_out: PathBuf,
no_worktrees: bool,
},
Triage {
issues: Vec<i64>,
common: Common,
plan_out: PathBuf,
},
Resume {
prs: Vec<i64>,
common: Common,
loop_flags: LoopFlags,
next_actor: Option<String>,
},
Checkin {
items: Vec<i64>,
common: Common,
dry_run: bool,
reply_only: bool,
any_author: bool,
again: bool,
keep_worktrees: bool,
},
Review {
items: Vec<i64>,
common: Common,
dry_run: bool,
max_rounds: Option<u32>,
},
Post {
prs: Vec<i64>,
repo: PathBuf,
config: Option<PathBuf>,
file: Option<PathBuf>,
dry_run: bool,
},
Init {
out: PathBuf,
force: bool,
update: bool,
},
Clean {
repo: PathBuf,
config: Option<PathBuf>,
all: bool,
pr_state: bool,
},
Doctor {
config: Option<PathBuf>,
},
ScrubFilter,
}Variants§
Run
Triage the issues, then work them in dependency order.
Fields
triage_flags: TriageFlagsFollowup
Work the follow-ups recorded in .spar/followups.md.
One agent reads every entry against the current checkout and rules on it: still there, already fixed, not worth it, or a duplicate. What survives is filed as an issue and worked like any other, which means both agents still triage it before anything is implemented. An entry that was filed or dropped leaves the queue and is kept in .spar/followups.done.md.
Takes no numbers: an entry has no number a person could type. –limit caps how many are taken, and –min-number does nothing here.
Fields
triage_flags: TriageFlagsTriage
Triage only. Writes the plan and touches nothing else.
Fields
Resume
Continue the review loop on existing PRs, including ones spar did not create.
Fields
Checkin
Answer the comments on a pull request, and act on the ones worth acting on.
Reads every comment somebody else left that has not been answered. Both agents judge each one. A change they both agree is right and belongs here is made, pushed, answered in its own thread, and the thread marked resolved. One they both judge wrong gets the reason and the thread is left open for you. One they disagree about is parked.
Fields
items: Vec<i64>Pull request numbers. An issue number resolves to its open PR. Omit to take every open PR, up to –limit.
Act on a comment from anyone, not only from somebody who can write to this repository.
Review
Review pull requests without changing them, including from a fork.
Both agents review independently, then rule on each other’s findings, then answer the objections. Nothing is committed, pushed, or merged.
Fields
Post
Post a review a dry run produced, without running the agents again.
spar review <pr> --dry-run saves what it produced. Read it, edit the
file if you like, then post exactly that.
Fields
Init
Detect installed agent CLIs and write a spar.toml.
On an existing config, --update appends any settings it does not
mention, which is how to pick up options added by a newer release.
Fields
Clean
Remove worktrees, branches, and state whose PR is merged or closed.
Fields
Doctor
Check prerequisites and resolve each configured agent.
ScrubFilter
Read a commit message on stdin and write the scrubbed version to stdout.
Used by git filter-branch, not by people.
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 subcommand