Files
open-design/plugins
b034609cde chore(plugins): remove the shamoni example plugin (duplicate preview imagery) (#4040)
* chore(plugins): remove the shamoni example plugin

The Shamoni scroll-driven gallery example ships a baked preview that
duplicates luxury-botanical's hero imagery, so the Community shelf
shows the same perfume tile twice. Curator call: drop the example
entirely — plugin folder, baked-preview manifest entry, and its slot
in the pinned curated ordering.

* fix(daemon): prune persisted bundled rows when their folder leaves the image

The bundled boot walker only upserted folders that still exist, so a
plugin removed from the daemon image (like the Shamoni example this PR
deletes) survived in upgraded installs' installed_plugins table — and
/api/plugins kept serving a record whose backing files were gone.

Make bundled rows mirror the bundled tree: after a successful walk,
delete source_kind='bundled' rows whose folder was not seen this boot.
Folders that still ship but fail to parse stay registered (warned, not
pruned), the ENOENT early-return never prunes (a missing bundledRoot is
a packaging bug, not a removal), and user-installed rows are untouched.

---------

Co-authored-by: qiongyu1999 <2694684348@qq.com>
2026-06-10 08:07:12 +00:00
..

Open Design Plugins

Language: English | 简体中文

This directory has two different jobs:

  • _official/ - first-party plugins bundled with Open Design. The daemon scans this tree at startup and registers these plugins as official.
  • community/ - community plugin source folders. These are installable plugins, but they are not preinstalled unless a registry entry points at them and the user installs one.
  • registry/ - default registry source manifests (open-design-marketplace.json) for official and community catalogs. These feed the Plugins Available/Sources UI.
  • spec/ - the portable plugin specification, templates, examples, and agent handoff kit for building, testing, publishing, or opening a PR back to Open Design.

The common contract is the same everywhere: a plugin is a portable agent skill folder with a SKILL.md, plus an optional versioned open-design.json sidecar that gives Open Design marketplace metadata, inputs, previews, pipelines, and trust/capability hints.

Start here: