codetether_agent/tool/computer_use/input/
request.rs1use super::ComputerUseAction;
4
5#[derive(Clone, Debug, serde::Deserialize)]
6#[serde(rename_all = "snake_case")]
7pub struct ComputerUseInput {
8 pub action: ComputerUseAction,
9 #[serde(default)]
10 pub app: Option<String>,
11 #[serde(default)]
12 pub window_title_contains: Option<String>,
13 #[serde(default)]
14 pub text: Option<String>,
15 #[serde(default)]
16 pub key: Option<String>,
17 #[serde(default)]
18 pub button: Option<String>,
19 #[serde(default)]
20 pub modifiers: Vec<String>,
21 #[serde(default)]
22 pub scroll_amount: Option<i32>,
23 #[serde(default)]
24 pub hwnd: Option<i64>,
25 #[serde(default)]
26 pub client_area: bool,
27 #[serde(default)]
28 pub x: Option<f64>,
29 #[serde(default)]
30 pub y: Option<f64>,
31 #[serde(default)]
32 pub x2: Option<f64>,
33 #[serde(default)]
34 pub y2: Option<f64>,
35 #[serde(default)]
36 pub steps: Option<u32>,
37 #[serde(default)]
38 pub duration_ms: Option<u64>,
39 #[serde(default)]
40 pub ms: Option<u64>,
41}