Plugin Marketplace
Phase 10 — Integration & Ecosystem (v0.7.0)
The XYBEROS plugin marketplace is a registry of community-contributed plugins that extend the platform with new capabilities. While XYBEROS ships with 54 built-in plugins across 12 entry-point groups, the marketplace lets the ecosystem contribute more.
Available Plugins
Below is the registry of known community and first-party plugins. To add your plugin, see Publishing a Plugin.
Official Plugins
| Plugin | Type | Description | Repository |
|---|---|---|---|
| Coming soon | First-party plugins will be listed here. |
Community Plugins
| Plugin | Type | Description | Author | Repository |
|---|---|---|---|---|
| None yet | Be the first! |
How Plugins Work
XYBEROS discovers plugins via Python entry points defined in pyproject.toml:
Supported entry-point groups:
| Group | Purpose |
|---|---|
xyberos.processors |
Perception processors (10 built-in) |
xyberos.providers |
Reasoning, action, and security providers (6 built-in) |
xyberos.memory |
Memory tier providers (6 built-in) |
xyberos.knowledge |
Knowledge providers (4 built-in) |
xyberos.embeddings |
Embedding models (1 built-in) |
xyberos.llm_backends |
LLM backends (9 built-in) |
xyberos.agents |
Specialized agents (4 built-in) |
xyberos.skills |
Reusable skills (3 built-in) |
xyberos.strategies |
Reasoning & decision strategies (7 built-in) |
xyberos.storage |
Storage providers (2 built-in) |
xyberos.database |
Database providers (2 built-in) |
xyberos.tools |
Pluggable tools (4 built-in) |
Publishing a Plugin
1. Implement the Plugin ABC
from xyberos.plugins import Plugin, Component
class MyToolPlugin(Plugin):
def __init__(self) -> None:
self.name = "my-tool"
self.version = "1.0.0"
self.description = "Does something useful"
def components(self) -> list[Component]:
return [
Component(kind="tool", name="my_tool", instance=self),
]
async def initialize(self) -> None:
# Setup logic here
pass
async def shutdown(self) -> None:
# Teardown logic here
pass
2. Register Entry Points
In your pyproject.toml:
3. Package & Distribute
4. Submit to Marketplace
Open a PR or issue at github.com/xyberos/xyberos with:
- Plugin name and version
- Brief description
- Link to repository
- Entry-point group
Plugin Requirements
- Must implement
xyberos.plugins.PluginABC - Must define entry points in
pyproject.toml - Must not shadow built-in plugin names
- Should include a
READMEwith usage examples - Should declare dependencies clearly
Discovery Commands
CLI (when available)
# List installed plugins
xyberos plugin list
# Show plugin details
xyberos plugin show my-tool
# Register a marketplace plugin
xyberos plugin install my-tool
Programmatic
from xyberos.plugins.manager import PluginManager
mgr = PluginManager()
mgr.discover()
# List loaded plugins
for plugin in mgr.list():
print(f"{plugin.name} v{plugin.version}")
# Get components by kind
tools = mgr.get_components("tool")
Roadmap
| Feature | Status |
|---|---|
| Plugin listing page | ✅ Done (this page) |
| Entry-point discovery | ✅ Built-in |
| Plugin lifecycle hooks | ✅ Built-in |
| Plugin manifest/deps | ✅ Built-in |
plugin install CLI |
🚧 Planned |
| Remote plugin registry | 🚧 Planned |
| Plugin sandboxing | 🚧 Planned |
| Plugin signing/verification | 🚧 Planned |
| Usage metrics dashboard | 🚧 Planned |