Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Plugin Manager Plugin

The Plugin Manager Plugin for elizaOS provides comprehensive plugin management capabilities including dynamic loading, unloading, registry integration, and configuration management.

Features

  • Dynamic Plugin Management: Load and unload plugins at runtime
  • Registry Integration: Search, install, clone, and publish plugins
  • Configuration Management: Check plugin configuration status and required API keys
  • Caching: Efficient registry data caching to minimize API calls
  • Hot Reload: Support for development workflows with hot reloading

Installation

npm install @elizaos/plugin-plugin-manager

Usage

import { pluginManagerPlugin } from '@elizaos/plugin-plugin-manager';
import { createAgentRuntime } from '@elizaos/core';

const runtime = createAgentRuntime({
  // ... other configuration
  plugins: [pluginManagerPlugin],
});

Available Actions

Load Plugin

Load a plugin dynamically at runtime.

"Load the weather plugin"
"Enable @elizaos/plugin-weather"

Unload Plugin

Unload a plugin from the runtime.

"Unload the weather plugin"
"Disable plugin-weather"

Search Plugins

Search for plugins in the registry.

"Search for social media plugins"
"Find plugins for image processing"

Install Plugin

Install a plugin from the registry.

"Install plugin @elizaos/plugin-example from registry"
"Install the weather plugin"

Clone Plugin

Clone a plugin repository for development.

"Clone the weather plugin"
"Get the source code for @elizaos/plugin-example"

Publish Plugin

Publish a plugin to npm registry.

"Publish my weather plugin"
"Release the plugin to npm"

Services

PluginManagerService

Core service for managing plugin lifecycle, including loading, unloading, and tracking plugin states.

RegistryService

Manages cached registry data for efficient plugin discovery and search operations. Automatically refreshes cache every 30 minutes.

PluginConfigurationService

Provides basic environment variable checking for plugin configuration requirements.

Providers

  • pluginStateProvider: Provides current state of loaded plugins
  • pluginConfigurationStatusProvider: Shows configuration status and missing API keys
  • registryPluginsProvider: Lists available plugins from the registry
  • pluginKnowledgeProvider: Provides searchable knowledge about plugins

Configuration

Set the plugin directory in your environment:

PLUGIN_DIRECTORY=./plugins

Development

# Install dependencies
npm install

# Build the plugin
npm run build

# Run tests
npm test

# Run linter
npm run lint

Testing

The plugin includes comprehensive unit tests. Run them with:

npm run test:unit

To run all tests including E2E tests:

npm run test
# or
npx elizaos test

E2E Tests Fixed

The SQL plugin camelCase/snake_case issue has been resolved by ensuring Drizzle ORM receives the schema object during initialization. This fix enables proper column name mapping between TypeScript (camelCase) and PostgreSQL (snake_case).

If you encounter any E2E test issues, ensure you have:

  1. Built the SQL plugin: cd packages/plugin-sql && npm run build
  2. Built the CLI: cd packages/cli && npm run build
  3. Built this plugin: npm run build

License

MIT

Metadata

Release files for elizaos-plugin-plugin-manager 2.0.0a5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for elizaos-plugin-plugin-manager 2.0.0a5
File Size Uploaded
elizaos_plugin_plugin_manager-2.0.0a5.tar.gz 11.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for elizaos-plugin-plugin-manager 2.0.0a5
File Interpreter ABI Platform
elizaos_plugin_plugin_manager-2.0.0a5-py3-none-any.whl Python 3 none any Details

Total release size: 25.4 kB

Release files / elizaos_plugin_plugin_manager-2.0.0a5.tar.gz

Download URL elizaos_plugin_plugin_manager-2.0.0a5.tar.gz
Size 11.1 kB
Tags Source
SHA-256 checksum
How to use checksums
babcba3d9aca2d895af7cc754e35c4b2675979808fb295b417ea33a10a0fbb61
BLAKE2b-256 checksum
How to use checksums
67456308d74ec10563bb25429e77cf2f5744cc5bfede788714d61563fdd09524
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release files / elizaos_plugin_plugin_manager-2.0.0a5-py3-none-any.whl

Download URL elizaos_plugin_plugin_manager-2.0.0a5-py3-none-any.whl
Size 14.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2ccfaf4a6bb914ced3b59dd3b40566dfb3a3a7de9e6f0d7defa84a74ec7fc165
BLAKE2b-256 checksum
How to use checksums
3785108719bc2a268c0e75f8b19f1d82e4f94817cad4c83ab69bfa0ead2d5812
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.2

Release history Release notifications | RSS feed

This release

2.0.0a5 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page