Skip to content

Add agent plugin marketplaces and catalog sync #2185

Description

@Aaronontheweb

Product contract

A marketplace is a metadata catalog. Marketplace add and update do not install a plugin or grant runtime authority.

Keep direct public GitHub plugin install from #2134. Keep private skill-server feeds. Keep netclaw skill sync as one complete external-source pass.

CLI surface

  • netclaw plugin marketplace add <owner/repository> [--id <id>]
  • netclaw plugin marketplace list [--json]
  • netclaw plugin marketplace update <id>|--all
  • netclaw plugin marketplace remove <id>
  • netclaw plugin search <query> [--marketplace <id>]
  • netclaw plugin show <name>@<marketplace>
  • netclaw plugin install <name>@<marketplace>
  • netclaw plugin update <source-id> updates only the named installed package.
  • netclaw skill sync refreshes skill-server feeds, installed Git plugins, and registered catalogs.

Boundaries

The daemon owns catalog validation, durable snapshots, package source resolution, and source identity. A catalog entry supplies metadata and a candidate location. It does not bypass Git acquisition, path checks, the content scanner, or the skill registry.

A failed catalog refresh keeps the last valid snapshot. The sync result reports that failure. Feed and installed-plugin sync continue. A marketplace removal does not remove installed plugins without an explicit operator action.

The Agent Plugins 1.0.0 specification defines package format. It does not define a marketplace catalog format. The planning change must select and document the initial catalog format. The first release supports public GitHub sources only.

Acceptance

  • Marketplace add and refresh install no plugin.
  • Catalog search and show use one validated durable snapshot.
  • A catalog install creates a managed plugin source with marketplace provenance.
  • A named plugin update touches no other plugin or feed source.
  • netclaw skill sync reports separate feed, installed-plugin, and catalog rows.
  • Invalid entries and unsafe locations fail before persistence or acquisition.
  • A catalog failure retains the last valid catalog and does not hide the failure.
  • Tests prove the positive and negative boundaries.

Update PRD-004 and SPEC-004. Create an OpenSpec change through the repository workflow before implementation. Reuse the existing sync actor and registry.

Direct Git plugin work: #2134 and PRs #2160, #2161, #2162, #2157, #2158. Website documentation: netclaw-dev/netclaw-website#121.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions