aboutsummaryrefslogtreecommitdiff
path: root/src/cli/pane.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/cli/pane.rs')
-rw-r--r--src/cli/pane.rs24
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>");
}