Files
open-design/plugins/AGENTS.md
T
f1a0b60c6c chore: unify product name display to OpenDesign repo-wide (#6998)
* chore: unify product name display to OpenDesign repo-wide

Rename the user-facing product name from "Open Design" to "OpenDesign"
across documentation, web/desktop UI strings, i18n locales, prompts,
plugin/skill/design-system content, changelogs, and specs, matching the
landing-page rename already in flight.

Deliberately excluded so installed-app identity stays untouched:
- packages/release PRODUCT_NAME and everything derived from it
  (app bundle names, installer/registry identity, updater feeds)
- tools/pack, tools/release, apps/packaged, landing page (PR #6983)
- mocks/ recorded traces and LICENSE
- test fixtures and comments that encode real on-disk install paths
  (Open Design.app, Program Files\Open Design, AppData paths)

Validated with pnpm guard, pnpm typecheck, and targeted web/desktop/host
test runs over the renamed strings.

* fix(web): keep two-letter author monogram for CamelCase brand names

authorInitials split words on whitespace only, so the renamed single-token
author name "OpenDesign" produced a one-letter monogram. Treat lower-to-upper
CamelCase boundaries as word breaks so the avatar fallback stays "OD".

* fix(release): restore spaced Windows source artifact names in win.ps1

tools/pack still derives builder outputs from the unchanged PRODUCT_NAME
("Open Design"), so the asset script must look for the spaced filenames.
Matches the mac/mac-intel/linux asset scripts, which were already kept on
the original names.

---------

Co-authored-by: Joey <236967869+joeylee12629-star@users.noreply.github.com>
2026-08-18 07:09:45 +00:00

2.1 KiB

Plugin Directory Guide

This directory owns OpenDesign plugin content and plugin authoring material.

Boundaries

  • plugins/_official/ contains bundled first-party plugins. The daemon boot walker scans only this subtree and registers it as source_kind='bundled'.
  • plugins/spec/ is the portable plugin specification and authoring kit. It is documentation, starter material, and example source for contributors and external agents; it must not be treated as an installed first-party catalog.
  • Keep runnable plugin examples portable: every example should have a SKILL.md; add open-design.json only as the OD sidecar.
  • Keep SKILL.md bodies free of OD-only marketplace metadata. Put OD display, inputs, preview, pipeline, capabilities, and source information in open-design.json.
  • Do not import app-private code from plugin content. A plugin may reference OD atoms, design systems, craft docs, assets, scripts, MCP servers, or connectors through the manifest.

Authoring Rules

  • New spec examples belong under plugins/spec/examples/<plugin-id>/.
  • New first-party bundled plugins belong under plugins/_official/<tier>/<plugin-id>/ only when the product should auto-register them on daemon startup.
  • Use the v1 JSON schema at docs/schemas/open-design.plugin.v1.json.
  • Contribution-facing spec docs are bilingual. When editing README.md, SPEC.md, CONTRIBUTING.md, AGENT-DEVELOPMENT.md, or example README files under plugins/spec/, update the matching *.zh-CN.md mirror in the same change.
  • Prefer TypeScript for project-owned scripts. Avoid adding new .js, .mjs, or .cjs files unless they are generated, vendored, or explicitly allowlisted by scripts/guard.ts.
  • Keep example plugins concise and agent-readable. Move long reference material to references/ and tell the agent when to load it.

Validation

For plugin content changes, run:

pnpm guard
pnpm --filter @open-design/plugin-runtime typecheck

When the daemon CLI is built and available, also validate runnable plugin folders with:

od plugin validate ./plugins/spec/examples/<plugin-id>