External Worker Runtime for Non-Java Plugins #43
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#43
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
Synapse is planned as a backend-first AI platform with a strong Java/Spring Boot core and a plugin ecosystem. Java-native plugins are useful for deeply integrated extensions, but not every plugin should run inside the Synapse JVM.
Future plugins may be written in Python, Go, Node.js or other languages. Running those directly inside the main backend process would make the core harder to isolate, secure and operate.
A worker-based runtime would allow Synapse to support non-Java plugins while keeping the core stable and controlled.
Related issues:
Proposed Solution
Introduce an external worker runtime model for non-Java plugins.
The runtime should allow plugins to run outside the main Synapse backend and communicate through a stable API layer.
Possible communication options:
Possible runtime model:
Worker plugins should be able to:
Capability / Permission Model
Worker plugins should not automatically receive full access to Synapse.
Each worker should declare required capabilities, for example:
Synapse should approve and enforce these capabilities centrally.
This fits the controlled plugin approach instead of a free Minecraft-style plugin model where plugins can do anything inside the process.
Security Requirements
Developer Experience
The worker runtime should later integrate with SDKs from #39.
Possible SDK helpers:
Example future usage:
Alternatives
Priority
High / Long-Term Architecture
This should be considered before external runtimes become stable and before the public plugin ecosystem grows too much.