tinyhumansai/openhuman · error · anyhow::Error
Missing 'selector' for get_text
Error message
Missing 'selector' for get_text
What it means
Action-argument validation in parse_browser_action: the `get_text` action was requested but its required `selector` argument is absent or not a string. Fires before any browser automation runs; get_title/get_url need no arguments, get_text does.
Source
Thrown at src/openhuman/tools/impl/browser/action_parser.rs:72
"type" => {
let selector = args
.get("selector")
.and_then(|v| v.as_str())
.ok_or_else(|| anyhow::anyhow!("Missing 'selector' for type"))?;
let text = args
.get("text")
.and_then(|v| v.as_str())
.ok_or_else(|| anyhow::anyhow!("Missing 'text' for type"))?;
Ok(BrowserAction::Type {
selector: selector.into(),
text: text.into(),
})
}
"get_text" => {
let selector = args
.get("selector")
.and_then(|v| v.as_str())
.ok_or_else(|| anyhow::anyhow!("Missing 'selector' for get_text"))?;
Ok(BrowserAction::GetText {
selector: selector.into(),
})
}
"get_title" => Ok(BrowserAction::GetTitle),
"get_url" => Ok(BrowserAction::GetUrl),
"wait" => Ok(BrowserAction::Wait {
selector: args
.get("selector")
.and_then(|v| v.as_str())
.map(String::from),
ms: args.get("ms").and_then(serde_json::Value::as_u64),
text: args.get("text").and_then(|v| v.as_str()).map(String::from),
}),
"press" => {
let key = args
.get("key")
.and_then(|v| v.as_str())View on GitHub (pinned to 7491200858)
Solutions
- Include `selector` as a string in the get_text args
- Take the selector from a prior snapshot
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/openhuman/tools/impl/browser/action_parser.rs:72 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/f43dc2e0920d7d55.
Report an issue: GitHub.