zeroclaw-labs/zeroclaw · error · anyhow::Error

Open-skill markdown not found: {}

Error message

Open-skill markdown not found: {}

What it means

Error "Open-skill markdown not found: {}" thrown in zeroclaw-labs/zeroclaw.

Source

Thrown at crates/zeroclaw-runtime/src/skills/audit.rs:79

        .iter()
        .any(|name| canonical_root.join(name).is_file());
    if !has_canonical && !has_deprecated {
        report.findings.push(format!(
            "Skill root must include {SKILL_MANIFEST_FILENAME} (canonical) or one of {SKILL_DEPRECATED_MANIFESTS:?} (deprecated) for deterministic auditing.",
        ));
    }

    for path in collect_paths_depth_first(&canonical_root)? {
        report.files_scanned += 1;
        audit_path(&canonical_root, &path, &mut report, options)?;
    }

    Ok(report)
}

pub fn audit_open_skill_markdown(path: &Path, repo_root: &Path) -> Result<SkillAuditReport> {
    if !path.exists() {
        bail!(
            "Open-skill markdown not found: {}",
            path.display().to_string()
        );
    }
    let canonical_repo = repo_root
        .canonicalize()
        .with_context(|| format!("failed to canonicalize {}", repo_root.display().to_string()))?;
    let canonical_path = path
        .canonicalize()
        .with_context(|| format!("failed to canonicalize {}", path.display().to_string()))?;
    if !canonical_path.starts_with(&canonical_repo) {
        bail!(
            "Open-skill markdown escapes repository root: {}",
            path.display()
        );
    }

    let mut report = SkillAuditReport {

View on GitHub (pinned to 88bb9c8533)

Solutions

  1. Add the expected open-skill markdown file at the path, or fix the configured path.

When it happens

Trigger: Thrown at crates/zeroclaw-runtime/src/skills/audit.rs:79 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23). Data as JSON: /api/errors/4cd7e2ca1d1cd1e9. Report an issue: GitHub.