aaif-goose/goose · error
Missing tool_use input
Error message
Missing tool_use input
What it means
Error "Missing tool_use input" thrown in aaif-goose/goose.
Source
Thrown at crates/goose-provider-types/src/formats/anthropic.rs:545
match block.get(TYPE_FIELD).and_then(|t| t.as_str()) {
Some(TEXT_TYPE) => {
if let Some(text) = block.get(TEXT_TYPE).and_then(|t| t.as_str()) {
message = message.with_text(text.to_string());
}
}
Some(TOOL_USE_TYPE) => {
let id = block
.get(ID_FIELD)
.and_then(|i| i.as_str())
.ok_or_else(|| anyhow!("Missing tool_use id"))?;
let name = block
.get(NAME_FIELD)
.and_then(|n| n.as_str())
.ok_or_else(|| anyhow!("Missing tool_use name"))?
.to_string();
let input = block
.get(INPUT_FIELD)
.ok_or_else(|| anyhow!("Missing tool_use input"))?;
let tool_call =
CallToolRequestParams::new(name).with_arguments(object(input.clone()));
message = message.with_tool_request(id, Ok(tool_call));
}
Some(THINKING_TYPE) => {
let thinking = block
.get(THINKING_TYPE)
.and_then(|t| t.as_str())
.ok_or_else(|| anyhow!("Missing thinking content"))?
.to_string();
let signature = block
.get(SIGNATURE_FIELD)
.and_then(|s| s.as_str())
.unwrap_or_default();
message = message.with_thinking(thinking, signature);
}
Some(REDACTED_THINKING_TYPE) => {View on GitHub (pinned to 3810898a74)
When it happens
Trigger: Thrown at crates/goose-provider-types/src/formats/anthropic.rs:545 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of aaif-goose/goose@3810898a74 (2026-08-16).
Data as JSON: /api/errors/1eeb90dc3364623c.
Report an issue: GitHub.