{ "description": "Synthetic keyboard/mouse input (ydotool/xdotool).", "prompt": "## gui_input\n\nSynthetic keyboard/mouse input (ydotool/xdotool).\n\n- Actions: `key`, `type`, `click`, `move`, `scroll`\n\n```\ngui_input(action=\"key\", keys=\"ctrl+s\")\ngui_input(action=\"type\", text=\"hello world\")\ngui_input(action=\"click\", button=\"1\", x=\"100\", y=\"200\")\n```", "args": { "type": "object", "required": [ "action" ], "properties": { "action": { "type": "string", "description": "key|type|click|move|scroll" }, "keys": { "type": "string", "description": "Key combo (for key action, e.g. ctrl+s)" }, "text": { "type": "string", "description": "Text to type (for type action)" }, "button": { "type": "string", "description": "Mouse button: 1=left, 2=middle, 3=right (for click)" }, "x": { "type": "string", "description": "X coordinate (for click/move)" }, "y": { "type": "string", "description": "Y coordinate (for click/move)" }, "direction": { "type": "string", "description": "Scroll direction: up|down|left|right" }, "amount": { "type": "string", "description": "Scroll amount (default: 3)" }, "relative": { "type": "boolean", "description": "Use relative movement (for move)" } } } }