plugin-web-ui-extension

Maintains the plugin web UI projection contract, exemplar coverage, and recovery flow for mesh-llm.

3.4k|405|Updated Feb 11, 2026
One-click install
npx skills add https://github.com/Mesh-LLM/mesh-llm --skill plugin-web-ui-extension
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: plugin-web-ui-extension
Source: https://github.com/Mesh-LLM/mesh-llm/tree/main/.agents/skills/plugin-web-ui-extension
Command: npx skills add https://github.com/Mesh-LLM/mesh-llm --skill plugin-web-ui-extension

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Maintaining the mesh-llm plugin web UI projection requires keeping the manifest contract, backend routes, UI mounting logic, exemplar package, and documentation in sync, and drift between any of these breaks plugin authors' ability to ship working web UIs.

Core Features & Use Cases

  • Contract Baseline Checks: Verifies the manifest web_ui field, lifecycle states (none, ready, disabled, invalid, plugin_not_running), and the /api/plugins/:plugin/web-ui route namespace against the current implementation.
  • Ownership Boundary Enforcement: Keeps plugin process state separate from web UI projection state so invalid bundles never break non-UI capabilities like MCP tools.
  • Exemplar Drift Guard: Uses the maintained exemplar under docs/plugins/exemplars/web-ui/ to validate manifest, bundle, and settings persistence behavior end to end.
  • Use Case: When a report says a plugin's web UI is broken, follow the ordered triage flow—process running, projection state, bundle root, entry script, config tab, settings endpoint—to isolate the fault without disabling the plugin process.

Quick Start

Use the plugin-web-ui-extension skill to triage why my mesh-llm plugin's web UI page is not mounting and verify the projection contract still matches the implementation.

Frequently Asked Questions about plugin-web-ui-extension

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a web UI page to a mesh-llm plugin?

Define a `web_ui` section in the plugin manifest with a v1 bundle id, slug-only page routes, and package-relative bundle paths. Follow the exemplar under docs/plugins/exemplars/web-ui/ and keep changes additive for older plugins and hosts.

How do I troubleshoot a mesh-llm plugin web UI that is not mounting?

Triage in order: check the plugin process is running, check whether the projection is disabled or invalid, verify the bundle root and entry script exist, confirm the config-section parent tab is integrations, then inspect /api/plugins/:plugin/web-ui/config for settings errors.

Does disabling a plugin web UI affect its non-UI capabilities?

No. The web_ui_enabled projection state is separate from the plugin process enabled state, so toggling the UI off does not stop the process. Non-UI capabilities like the MCP status tool must keep responding after the projection is disabled.

What route and API paths does the plugin web UI use?

Static pages are served at /plugins/$pluginName/$pageId and the API lives under /api/plugins/:plugin/web-ui, with config mutations under /api/plugins/:plugin/web-ui/config. Route classification parses the exact suffix so stapled /http/ paths remain plugin HTTP traffic.

What tests validate plugin web UI contract changes?

Run cargo test serially for mesh-llm-plugin, mesh-llm-plugin-manager, mesh-llm-config, and mesh-llm-host-runtime, plus the UI typecheck, unit tests, and build. Finish with just test-all and confirm it actually invokes each crate's unit tests.