Files
pftom 9e196d34af feat(daemon, web): enhance plugin sharing workflows and UI components
- Updated the plugin sharing prompts to utilize local daemon endpoints for publishing to GitHub and contributing to Open Design, streamlining the user experience.
- Refactored the `PluginsView` and `PluginShareMenu` components to support new sharing functionalities, including confirmation modals and improved link handling.
- Enhanced the CSS styles for the plugin share confirmation modal and related UI elements for better visual consistency.
- Added tests to verify the functionality of the new sharing workflows and ensure proper integration within the existing plugin management system.

This update significantly improves the plugin sharing experience, making it easier for users to publish and contribute their plugins effectively.
2026-05-13 14:35:09 +08:00

1.3 KiB

name, description, triggers, od
name description triggers od
od-plugin-publish-github Publish a local Open Design plugin to a new public GitHub repository using gh CLI.
publish plugin
github repo
open source plugin
mode platform scenario
utility desktop plugin-sharing

Publish Plugin to GitHub

Use this workflow when the active project contains a copied plugin folder and the user wants it published as a new public GitHub repository.

Workflow

  1. Read the active plugin inputs. plugin_context_path is the copied plugin folder relative to the project working directory.
  2. Inspect open-design.json, SKILL.md, and any compatibility metadata in the copied folder.
  3. Call the local daemon endpoint instead of hand-rolling GitHub commands: curl -sS -X POST "$OD_DAEMON_URL/api/projects/$OD_PROJECT_ID/plugins/publish-github" -H 'content-type: application/json' -d '{"path":"<plugin_context_path>"}'
  4. Read the JSON response. If ok is true, report the final repository URL and any useful log/validation summary.
  5. If the endpoint fails, report its message, code, and useful log lines. When authentication is missing, tell the user to run gh auth login --hostname github.com.

Prefer the manifest name as the repository slug. If that repository already exists, choose the next clear slug and mention the rename.