open-design/plugins
lefarcen c14baf07d3 Merge origin/main into release/v0.8.0
PR #2461 sync prep — resolves 14 conflicts merging 84 main-side commits
on top of 58 release-side commits accumulated during the 0.8.0 cycle.

Resolution summary:

Take main (theirs) where main carried deliberate forward progress:
- apps/web/src/components/PluginCard.tsx — 7 hunks, i18n migration:
  hardcoded English aria-labels/titles replaced with t() calls keyed
  on pluginCard.* (all 8 keys verified present in en.ts).
- apps/web/src/components/TasksView.tsx — 1 hunk, source-ingestion
  feature: sortedRoutines (newest-first), sourceIngestionTemplates,
  patchSourceForm, submitSourceIngestion. activeCount/pausedCount
  semantics preserved (now keyed on sortedRoutines, count unchanged).
- e2e/ui/app.test.ts — new node:fs/promises + tmpdir + path + @/timeouts
  imports needed by main-side test helpers.
- e2e/ui/settings-local-cli-codex-fallback.test.ts — menu-dismissal
  helper block added by main.

Keep both sides where each added a different field to the same object
literal:
- apps/web/src/components/ProjectView.tsx (locale + analyticsHints
  spread).
- apps/web/src/components/DesignSystemFlow.tsx (locale + analyticsHints).

Take release (ours) where release carried deliberate work that ships
0.8.0:
- CHANGELOG.md — release-side 0.8.0 entry + PR link refs; main's
  Unreleased section was the same body of work, now finalized.
- apps/landing-page/public/{apple-touch-icon,favicon}.png +
  apps/web/public/app-icon.svg — release-side visual refresh assets
  consistent with 0.8.0 stable ship.
- tools/pack/src/linux.ts — packageVersion const required by line 466;
  taking main's empty line would build-error.
- e2e/ui/project-management-flows.test.ts +
  e2e/ui/settings-api-protocol.test.ts +
  e2e/ui/settings-memory-routines.test.ts — release-side release-smoke
  hardening (shangxinyu1 + PerishFire) takes precedence on overlap.

Closes-issue / unblocks: PR #2461 sync release/v0.8.0 → main.
2026-05-23 12:17:18 +08:00
..
_official Merge origin/main into release/v0.8.0 2026-05-23 12:17:18 +08:00
community Garnet hemisphere (#1702) 2026-05-14 21:12:50 +08:00
registry Merge origin/main into release/v0.8.0 2026-05-23 12:17:18 +08:00
spec feat(plugins): add specVersion and version fields to plugin and marketplace schemas 2026-05-13 22:24:50 +08:00
AGENTS.md feat(plugins): introduce portable plugin specification and authoring kit 2026-05-13 21:24:36 +08:00
README.md feat(plugins): add registry protocol and enhance plugin management features 2026-05-14 08:55:36 +08:00
README.zh-CN.md feat(plugins): add registry protocol and enhance plugin management features 2026-05-14 08:55:36 +08: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: