MCPcopy Create free account
hub / github.com/ccusage/ccusage / parse_openclaw_command

Function parse_openclaw_command

rust/crates/ccusage-cli/src/parser.rs:507–532  ·  view source on GitHub ↗
(
    parser: &mut ArgParser,
    mut shared: SharedArgs,
    config: &dyn CliConfig,
)

Source from the content-addressed store, hash-verified

505}
506
507fn parse_openclaw_command(
508 parser: &mut ArgParser,
509 mut shared: SharedArgs,
510 config: &dyn CliConfig,
511) -> Result<Command, String> {
512 let kind = parse_agent_report_kind(parser, "openclaw", STANDARD_AGENT_REPORTS)?;
513 let mut open_claw_path = None;
514 let mut codex_speed = CodexSpeed::Auto;
515 config.apply_agent_args(&mut codex_speed, None, Some(&mut open_claw_path));
516 while parser.peek().is_some() {
517 if parse_shared_arg_for_command(parser, &mut shared)? {
518 continue;
519 }
520 match parser.next_flag()?.as_str() {
521 "--open-claw-path" => open_claw_path = Some(parser.value_for("--open-claw-path")?),
522 flag => return Err(format!("Unknown openclaw option '{flag}'")),
523 }
524 }
525 Ok(Command::OpenClaw(AgentCommandArgs {
526 shared,
527 kind,
528 pi_path: None,
529 open_claw_path,
530 codex_speed,
531 }))
532}
533
534fn parse_agent_report_kind(
535 parser: &mut ArgParser,

Callers 1

parse_commandFunction · 0.85

Calls 6

parse_agent_report_kindFunction · 0.85
peekMethod · 0.80
next_flagMethod · 0.80
value_forMethod · 0.80
apply_agent_argsMethod · 0.45

Tested by

no test coverage detected