tinyhumansai/openhuman · error

install_workflow_from_url: invalid params: {e}

Error message

install_workflow_from_url: invalid params: {e}

What it means

install_workflow_from_url could not deserialize its arguments into InstallWorkflowFromUrlParams: the required 'url' string is missing/malformed, or timeout_secs is not a positive integer. Validation guard fired before any network fetch.

Source

Thrown at src/openhuman/skills/tools.rs:642

                "timeout_secs": { "type": "integer", "minimum": 1, "description": "Fetch timeout (default 60, max 600)." }
            },
            "required": ["url"]
        })
    }

    fn permission_level(&self) -> PermissionLevel {
        PermissionLevel::Write
    }

    fn external_effect(&self) -> bool {
        // Fetches remote content over the network.
        true
    }

    async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
        log::debug!("[tool][skills] install_from_url invoked");
        let params: InstallWorkflowFromUrlParams = serde_json::from_value(args)
            .map_err(|e| anyhow::anyhow!("install_workflow_from_url: invalid params: {e}"))?;
        let outcome = install_workflow_from_url(&self.workspace_dir, params)
            .await
            .map_err(|e| anyhow::anyhow!("install_workflow_from_url: {e}"))?;
        Ok(ToolResult::success(serde_json::to_string(&outcome)?))
    }
}

/// Uninstall a user skill. **Deletes from disk** — default-OFF.
pub struct WorkflowUninstallTool;

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

    fn description(&self) -> &str {
        "Uninstall a user-scope workflow by `name`, deleting its directory under \

View on GitHub (pinned to 7491200858)

Solutions

  1. Provide 'url' as a string pointing at the workflow bundle
  2. Keep timeout_secs an integer between 1 and 600, or omit it for the default
  3. Check the serde message {e} for the exact field at fault
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/skills/tools.rs:642 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/70006497e87a013a. Report an issue: GitHub.