diff options
Diffstat (limited to 'src/cli')
| -rw-r--r-- | src/cli/pane.rs | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/src/cli/pane.rs b/src/cli/pane.rs index 58d65af6..23218a4a 100644 --- a/src/cli/pane.rs +++ b/src/cli/pane.rs @@ -299,7 +299,7 @@ fn pane_run(args: &[String]) -> std::io::Result<i32> { fn pane_report_agent(args: &[String]) -> std::io::Result<i32> { let Some(raw_pane_id) = args.first() else { - eprintln!("usage: herdr pane report-agent <pane_id> --source ID --agent LABEL --state idle|working|blocked|unknown [--message TEXT] [--custom-status TEXT] [--seq N]"); + eprintln!("usage: herdr pane report-agent <pane_id> --source ID --agent LABEL --state idle|working|blocked|unknown [--message TEXT] [--custom-status TEXT] [--seq N] [--agent-session-id ID] [--agent-session-path PATH]"); return Ok(2); }; @@ -310,6 +310,8 @@ fn pane_report_agent(args: &[String]) -> std::io::Result<i32> { let mut message = None; let mut custom_status = None; let mut seq = None; + let mut agent_session_id = None; + let mut agent_session_path = None; let mut index = 1; while index < args.len() { @@ -362,6 +364,22 @@ fn pane_report_agent(args: &[String]) -> std::io::Result<i32> { seq = Some(super::parse_u64_flag("--seq", value)?); index += 2; } + "--agent-session-id" => { + let Some(value) = args.get(index + 1) else { + eprintln!("missing value for --agent-session-id"); + return Ok(2); + }; + agent_session_id = Some(value.clone()); + index += 2; + } + "--agent-session-path" => { + let Some(value) = args.get(index + 1) else { + eprintln!("missing value for --agent-session-path"); + return Ok(2); + }; + agent_session_path = Some(value.clone()); + index += 2; + } other => { eprintln!("unknown option: {other}"); return Ok(2); @@ -390,6 +408,8 @@ fn pane_report_agent(args: &[String]) -> std::io::Result<i32> { message, custom_status, seq, + agent_session_id, + agent_session_path, })) } @@ -405,6 +425,6 @@ fn print_pane_help() { eprintln!(" herdr pane close <pane_id>"); eprintln!(" herdr pane send-text <pane_id> <text>"); eprintln!(" herdr pane send-keys <pane_id> <key> [key ...]"); - eprintln!(" herdr pane report-agent <pane_id> --source ID --agent LABEL --state idle|working|blocked|unknown [--message TEXT] [--custom-status TEXT] [--seq N]"); + eprintln!(" herdr pane report-agent <pane_id> --source ID --agent LABEL --state idle|working|blocked|unknown [--message TEXT] [--custom-status TEXT] [--seq N] [--agent-session-id ID] [--agent-session-path PATH]"); eprintln!(" herdr pane run <pane_id> <command>"); } |
