Repository navigation
docs(plugins): remote plugins move from proposal to architecture, with a guide to listing one - #2255
Merged
Merged
Conversation
…only what is not built as the proposal The core/ and remote/ proposals described work that has shipped. What they said that the architecture docs lacked now lives there: the MCP client's rules, what the gateway does today, what a plugin can reach, adding a plugin to the host, who changes proprietary/, and the backend's copy of the scrapers. proposals/plugins/README.md now holds only what is not built: the chat router step, jobs and scaling on the host, organisation policy, later MCP features and the open questions. Bundles stay deferred, with their registry entry moved in. ADRs 0051, 0053 and 0054 are accepted, and links into the deleted files point at the architecture docs. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…hecks them verification replaces publisher, with how a publisher proves verified, and the fields the guide left out: display lengths, auth, about, tools, added and min_app_version. The example entry passes the registry check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The plugin host is a producer and the desktop app a consumer, both built; the backend's capabilities routes and surfsense_mcp are not. Consumer rules and tests now describe what the app and host do. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
plugins/registry/README.md explains that a plugin is an MCP server and walks from getting the server ready to the pull request, with every field, how Verified is proven, what review checks, and a checklist for coding agents. plugins/README.md and CONTRIBUTING.md point to it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The registry, its signature, the OAuth client document and callback, and the plugin host are served there since 2.2.1. Known gaps, ADRs 0053 and 0054, the contracts index and the roadmap say so; no workflow builds or deploys the images. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…idea forms A listed plugin that is broken, misleading or unsafe now has a way to be reported, which is what starts a delisting. The registry guide and the plugins doc link to it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
@AnishSarkar22 is attempting to deploy a commit to the Rohan Verma's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
📒 Files selected for processing: 34
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Proposals → architecture. Deletes
docs/proposals/plugins/core/andremote/, which described work that has shipped. What they said that the architecture docs lacked now lives inplugins.md,plugin-host.md,plugin-registry.mdandagent.md:proprietary/What is not built.
docs/proposals/plugins/README.mdnow holds only unbuilt work:npx/uvxserversBundles stay deferred, and their registry entry moved into
bundles/README.md.ADRs. 0051, 0053 and 0054 are Accepted; 0052 stays Proposed.
plugins.surfsense.comis live (since 2.2.1). Known gaps, ADRs, the contracts index and the roadmap now say so.A guide to listing a plugin,
plugins/registry/README.md, for publishers and coding agents. It covers:plugins/README.mdandCONTRIBUTING.mdpoint to it.Contract 2. Names the plugin host and the desktop app as its built producer and consumer; the backend's license mode and
surfsense_mcpare still unbuilt.Issue forms. A new "Report a plugin" form, the path to delisting, and a Plugins option in the bug and idea forms.
Fixes a broken
studio.md#analysis-runslink inagent.md.Why
The proposals described remote plugins as future work after they had shipped, and the architecture docs still linked to them. Publishers had no complete guide to listing a plugin, and the old one asked for a
publisherfield the registry check no longer accepts. Several docs still saidplugins.surfsense.comwas not deployed.Fixes #
How to test
python scripts/check_docs.pypasses.cd plugins/registry/check && uv run python -m registry_check staticpasses, and the guide's example entry passesentry_problemsboth ascommunityand asverifiedwith adomain.https://plugins.surfsense.com/plugins.jsonmatchesplugins/registry/published/plugins.jsonand verifies withregistry_check verifyand the app's public key.Review note:
37d000fccchangesdocs/contracts/02-scraper-api-auth.md, which needs @CREDO23's review as the other owner ofdocs/contracts/.High-level PR Summary
This pull request updates the plugins documentation to reflect that remote plugins have shipped. It consolidates proposals into architecture docs, adds a comprehensive guide for listing plugins in
plugins/registry/README.md, updates ADR statuses, creates a plugin report issue form, clarifies contract 2's implementation status, and moves deferred work into a single proposals page.⏱️ Estimated Review Time: 15-30 minutes
💡 Review Order Suggestion
.github/ISSUE_TEMPLATE/plugin-report.yml.github/ISSUE_TEMPLATE/bug.yml.github/ISSUE_TEMPLATE/feature.ymldocs/contracts/02-scraper-api-auth.mddocs/adr/0047-premium-plugins-are-source-available.mddocs/adr/0051-plugins-are-mcp-servers-behind-one-tool-gateway.mddocs/adr/0052-the-chat-model-never-calls-tools.mddocs/adr/0053-plugins-are-listed-in-a-registry-and-third-party-ones-start-off.mddocs/adr/0054-surfsenses-plugins-run-on-one-plugin-host.mddocs/adr/README.mdplugins/README.mdplugins/registry/README.mddocs/architecture/plugin-host.mddocs/architecture/plugin-registry.mddocs/architecture/plugins.mddocs/architecture/agent.mddocs/proposals/plugins/README.mddocs/proposals/plugins/bundles/README.mdAGENTS.mdCONTRIBUTING.mddocs/ROADMAP.mddocs/architecture/license/app.mddocs/contracts/README.mdplugins/registry/check/registry_check/static/entry_rules.pyplugins/remote/host/app.pydocs/proposals/plugins/core/01-architecture.mddocs/proposals/plugins/core/02-registry.mddocs/proposals/plugins/core/03-engines.mddocs/proposals/plugins/core/04-trust.mddocs/proposals/plugins/core/05-paid.mddocs/proposals/plugins/core/06-later.mddocs/proposals/plugins/remote/01-mcp-client.mddocs/proposals/plugins/remote/02-surfsense-servers.mddocs/proposals/plugins/remote/README.md