Plugin API & Ecosystem Architecture Refactor for Long-Term Extensibility #38
Labels
No labels
bug
documentation
duplicate
enhancement
future idea
good first issue
help wanted
invalid
question
roadmap:phase-agents
roadmap:phase-backend
roadmap:phase-cli
roadmap:phase-docs
roadmap:phase-foundation
roadmap:phase-hardening
roadmap:phase-installer
roadmap:phase-plugins
roadmap:phase-runtime
roadmap:phase-store
roadmap:status-active
roadmap:status-blocked
roadmap:status-done
roadmap:status-planned
roadmap:v2-agent-orchestration
roadmap:v2-auth
roadmap:v2-chat-runtime
roadmap:v2-cli
roadmap:v2-dashboard
roadmap:v2-hardening
roadmap:v2-model-providers
roadmap:v2-plugins-store
roadmap:v2-realtime
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
FTMahringer/Synapse#38
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem / Motivation
The current plugin system foundation in Synapse is already strong and ambitious:
synapse-plugin-apiHowever, the ecosystem is growing rapidly and future milestones (v2.6.x → v3.x → v4.x) will likely require a more generalized, future-proof plugin architecture.
The current API is still heavily centered around:
But future roadmap goals include:
This issue proposes a long-term architectural review/refactor of the plugin ecosystem to ensure Synapse can evolve into a large extensible platform without repeatedly redesigning the API.
Current Relevant Roadmap Areas
Related roadmap milestones already exist in:
The goal of this issue is NOT replacing those milestones.
Instead:
This issue tracks the architectural evolution needed underneath those milestones.
Proposed Goals
1. Move toward Provider/Capability Architecture
Instead of hardcoding plugin categories in core logic, plugins should expose capabilities.
Possible future provider/capability interfaces:
This allows Synapse to grow beyond only AI/model/chat plugins.
2. Add Plugin Service Registry
Plugins should be able to register and discover services dynamically.
Example:
And:
This becomes important once plugins begin depending on each other dynamically.
3. Typed Event System
The current event bus is flexible, but future large-scale ecosystems may benefit from typed events.
Example:
Potential benefits:
4. Stable Plugin ABI/API Versioning
As the ecosystem grows, Synapse will need:
Potential future additions:
5. Marketplace & Governance Architecture
The future marketplace/store system likely needs:
Potential plugin permission examples:
6. UI/Dashboard Extension System
Long-term, plugins may need to extend:
Potential future plugin types:
7. Runtime Abstraction Layer
Future external runtimes (Python/Node.js/MCP/etc.) will likely benefit from a unified runtime abstraction.
Instead of:
Potentially:
This could simplify lifecycle handling and governance.
8. Developer Experience & SDK Architecture
The plugin ecosystem will eventually require:
Suggested Future Areas
Potential future architecture modules:
Important Note
This issue is intentionally broad and long-term.
The goal is to track architectural evolution ideas while Synapse is still early enough that large changes are possible without ecosystem breakage.
This should especially be revisited:
Priority
High (Long-Term Architecture)
The plugin system is becoming one of the central pillars of Synapse.
Future extensibility, governance, marketplace stability, and ecosystem growth will depend heavily on how flexible and stable the plugin architecture becomes.