tinyhumansai/openhuman · error · anyhow::Error
describe_workflow: workflow `{skill_id}` not found
Error message
describe_workflow: workflow `{skill_id}` not found What it means
`describe_workflow` resolved the workflow id but no workflow with that id exists in the registry (profile-local ids were already checked). This is a not-found result surfaced as an error: the id is unknown, from another profile, or the workflow was uninstalled — distinct from the allowlist denial which has its own message.
Source
Thrown at src/openhuman/skills/tools.rs:236
})
}
async fn execute(&self, args: serde_json::Value) -> anyhow::Result<ToolResult> {
log::debug!("[tool][workflows] describe invoked");
let skill_id = read_workflow_id(&args)?;
let profile_local = profile_local_skill_ids(self.profile_skills_root.as_deref());
if !skill_allowed_including_profile(&self.skill_allowlist, &profile_local, &skill_id) {
log::debug!("[profiles] describe_workflow blocked by profile allowlist: {skill_id}");
return Ok(ToolResult::error(format!(
"describe_workflow: workflow `{skill_id}` is not available to the active agent profile"
)));
}
let def = get_workflow_with_profile(
&self.workspace_dir,
&skill_id,
self.profile_skills_root.as_deref(),
)
.ok_or_else(|| anyhow::anyhow!("describe_workflow: workflow `{skill_id}` not found"))?;
Ok(ToolResult::success(serde_json::to_string(&json!({
"definition": def.definition,
"inputs": def.inputs,
"github_gated": def.github.is_some(),
}))?))
}
fn is_concurrency_safe(&self, _args: &serde_json::Value) -> bool {
true
}
}
/// Read a bundled resource file from a skill.
pub struct WorkflowReadResourceTool {
workspace_dir: PathBuf,
skill_allowlist: SkillAllowlist,
/// Active profile's private skills root — resolves + implicitly allows the
/// owner's profile-local skills. `None` = byte-identical to today.View on GitHub (pinned to 7491200858)
Solutions
- List available workflows and copy a valid id
- Check the workflow wasn't uninstalled or renamed
- If profile-scoped, verify the active agent profile exposes it
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at src/openhuman/skills/tools.rs:236 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/6fd922959bcae45e.
Report an issue: GitHub.