Skip to content

docs: clarify plugin system is kept, not removed#2544

Merged
alexey-pelykh merged 1 commit intomainfrom
docs/clarify-plugin-retention
Apr 24, 2026
Merged

docs: clarify plugin system is kept, not removed#2544
alexey-pelykh merged 1 commit intomainfrom
docs/clarify-plugin-retention

Conversation

@alexey-pelykh
Copy link
Copy Markdown

Summary

Evidence that plugin system is kept

  • Plugin SDK at src/plugin-sdk/ (~112 files) — published as part of the main remoteclaw npm package.
  • Plugin registrar API at src/plugins/types.ts:275-297 exposes 11 register methods (registerTool, registerChannel, registerHook, registerHttpRoute, registerGatewayMethod, registerCli, registerCommand, registerService, registerProvider, registerContextEngine, plus others).
  • 29 bundled extensions in extensions/*, all as @remoteclaw/{name} workspace packages with real versions. Active usage count across extensions: 21 registerChannel, 10 registerTool, 6 registerGatewayMethod, 4 registerCommand, 4 registerService, 2 registerHttpRoute, 1 registerCli.
  • Active loading path: src/cli/program/routes.ts:18 (loadPlugins: (argv) => !hasFlag(argv, "--json")), src/plugins/loader.ts:442 (activatePluginRegistry).
  • Live config schema section: plugins.enabled, plugins.allow, plugins.deny, plugins.load, plugins.slots, plugins.entries, plugins.installs — 7 properties + 29 uiHints per spike(ui): audit SECTION_META entries for schema orphans #2526 SPIKE audit.

Test plan

  • CI docs job passes (markdown-only change)
  • CI build, test, test-ui-smoke, lint all pass (no code changes)

…ext staleness

Plugin subsystem is the fork's primary extensibility mechanism (plugin SDK at src/plugin-sdk, 29 bundled channel/tool plugins in extensions/*, active registerTool / registerChannel / registerGatewayMethod usage). The previous "plugin system" entry under "What's being removed" misled issue authors into filing gut-plugin follow-ups (#2522 ui-narrowing, #2523 SECTION_META removal, #2537 backend-narrowing) on a false premise.

Move plugin system from "being removed" to "stays", with a brief pointer to where it lives. Skills marketplace and Pi-era model provider ecosystem remain in the "removed" list.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@alexey-pelykh alexey-pelykh enabled auto-merge (squash) April 24, 2026 14:08
@alexey-pelykh alexey-pelykh merged commit 2bd2fe6 into main Apr 24, 2026
16 checks passed
@alexey-pelykh alexey-pelykh deleted the docs/clarify-plugin-retention branch April 24, 2026 14:14
alexey-pelykh added a commit that referenced this pull request Apr 24, 2026
…re plugin tag after #2522 over-narrowing

Plugin system is a kept, load-bearing extensibility mechanism of the fork (10 active registerTool calls across 5 bundled extensions; buildPluginGroups in src/gateway/server-methods/tools-catalog.ts:71-123 emits source: "plugin" at runtime). PR #2522/#2534 narrowed the UI type system to source: "core" only on the premise that plugins were being gutted — premise was false, corrected in CLAUDE.md via #2544.

Widens ToolCatalogEntry.source and ToolCatalogGroup.source back to "core" | "plugin" and restores the pluginId? field on both. Protocol schema (src/gateway/protocol/schema/agents-tools.ts) already carries the full union, so no schema change needed.

UI has no current consumer of the tool catalog (removed in #2520), so there is no immediate behavior change — this corrects the latent type lie before any future tool-browsing UI inherits the wrong shape.

Closes #2543

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
alexey-pelykh added a commit that referenced this pull request Apr 24, 2026
…re plugin tag after #2522 over-narrowing (#2548)

Plugin system is a kept, load-bearing extensibility mechanism of the fork (10 active registerTool calls across 5 bundled extensions; buildPluginGroups in src/gateway/server-methods/tools-catalog.ts:71-123 emits source: "plugin" at runtime). PR #2522/#2534 narrowed the UI type system to source: "core" only on the premise that plugins were being gutted — premise was false, corrected in CLAUDE.md via #2544.

Widens ToolCatalogEntry.source and ToolCatalogGroup.source back to "core" | "plugin" and restores the pluginId? field on both. Protocol schema (src/gateway/protocol/schema/agents-tools.ts) already carries the full union, so no schema change needed.

UI has no current consumer of the tool catalog (removed in #2520), so there is no immediate behavior change — this corrects the latent type lie before any future tool-browsing UI inherits the wrong shape.

Closes #2543

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant