Skip to content

plugins: make plugin-declared skills discoverable by the skill tool #514

Description

@Ashwinhegde19

Summary

Plugin manifests can declare skills, but those skills are not currently merged into Zero's skill discovery. That means an installed plugin can ship a skills: entry in plugin.json, yet the existing skill tool/listing path will not see or load it.

The docs already call this out as a current limitation:

  • AGENTS.md section 3: plugin-declared skills are not yet merged into the loader, so a skills: entry inside a plugin's plugin.json is not visible to the skill tool today.
  • AGENTS.md section 6 repeats the same limitation for plugin-managed skills.

Proposed behavior

Installed, enabled plugins that declare skills in plugin.json should expose those skills through the same discovery path used by regular user skills.

For example, a plugin manifest like:

{
  "id": "github-pr-review",
  "skills": [
    { "path": "./skills/review-checklist/SKILL.md" }
  ]
}

should make review-checklist available to the skill listing/loading flow, using the existing SKILL.md metadata rules.

Suggested scope

  • Merge plugin-declared skills into the skill loader/discovery result.
  • Resolve relative skill paths against the plugin directory.
  • Ignore disabled plugins.
  • Preserve existing duplicate-name behavior or document/handle precedence explicitly.
  • Add tests for plugin skill discovery and relative-path resolution.

Why

This closes a documented feature gap and makes plugins more useful as self-contained capability bundles. Plugin authors can ship tools, hooks, and skills together instead of asking users to install skills separately.

Non-goals

  • Full in-UI plugin manager.
  • Marketplace browsing.
  • Project-scoped skill directories.
  • Redesigning the plugin enable/disable model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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