tinyhumansai/openhuman · error

missing required string argument `{key}`

Error message

missing required string argument `{key}`

What it means

Error "missing required string argument `{key}`" thrown in tinyhumansai/openhuman.

Source

Thrown at src/openhuman/agent/learning/tools.rs:51

    Ok(FacetCache::new(client.profile_store()))
}

/// Compose the full facet key from a class string + key suffix.
fn full_key(class_str: &str, key_suffix: &str) -> String {
    format!("{class_str}/{key_suffix}")
}

fn facet_to_json(f: &ProfileFacet) -> serde_json::Value {
    serde_json::to_value(f).unwrap_or(serde_json::Value::Null)
}

fn read_required_str(args: &serde_json::Value, key: &str) -> anyhow::Result<String> {
    args.get(key)
        .and_then(serde_json::Value::as_str)
        .map(str::trim)
        .filter(|s| !s.is_empty())
        .map(str::to_string)
        .ok_or_else(|| anyhow::anyhow!("missing required string argument `{key}`"))
}

/// List learned facets (active + provisional), optionally filtered by class.
pub struct LearningListFacetsTool;

#[async_trait]
impl Tool for LearningListFacetsTool {
    fn name(&self) -> &str {
        "learning_list_facets"
    }

    fn description(&self) -> &str {
        "List the assistant's learned facets about the user (active and \
         provisional states only), optionally filtered by `class` (e.g. \
         style, identity, tooling, goal). Each facet has a key, value, \
         confidence, and state. Use to see what the assistant has inferred."
    }

View on GitHub (pinned to a221052e0d)

When it happens

Trigger: Thrown at src/openhuman/agent/learning/tools.rs:51 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@a221052e0d (2026-08-16). Data as JSON: /api/errors/0fdcb91fcb2b07dc. Report an issue: GitHub.