Skip to content

[Code Quality] Silent error swallowing in SkillsManager hides malformed skill definitions #12

@coderabbitai

Description

@coderabbitai

Summary

src/skills/manager.tsloadFromDirectory() silently skips skill directories that fail to parse (catch (parseErr) { continue }) and also silently swallows directory-read failures. There is no logging, warning, or way for users to discover why their custom skills are not loading.

Evidence

} catch (parseErr) {
  // Silently skip malformed skills
  continue
}
// ...
} catch (err) {
  // If directory can't be read, just return empty array
}

Recommended Fix

Log a warning at minimum:

} catch (parseErr) {
  console.warn(`[skills] Failed to load skill at ${skillDir}: ${parseErr}`)
  continue
}

Expose a getLoadErrors() method so the skills --list command can surface problems to users.

Backlink: #1

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions