plugins
AI Agent Plugin Module for PraisonAI Agents. Provides dynamic plugin loading and hook-based extension system. Features:- Dynamic plugin discovery and loading
- Hook-based extension points
- Protocol-driven plugin interfaces
- Built-in plugins (logging, metrics)
- Plugin SDK for easy plugin development
- plugins/sdk/ - Plugin SDK (base classes, decorators)
- plugins/builtin/ - Built-in plugins (logging, metrics)
- plugins/protocols.py - Plugin protocols for type safety
Create plugin manager
manager = PluginManager()Load plugins from directory
manager.load_from_directory(”./plugins”)Use built-in plugins
from praisonaiagents.plugins.builtin import LoggingPlugin, MetricsPlugin manager.register(LoggingPlugin())Use plugin SDK
from praisonaiagents.plugins.sdk import plugin @plugin(name=“my_plugin”, hooks=[PluginHook.BEFORE_TOOL]) def my_plugin_func(hook_type, *args, **kwargs): return args[0] if args else NoneImport
Functions
enable()
Enable the plugin system.
disable()
Disable plugins.
list_plugins()
List all discovered plugins.
is_enabled()
Check if plugins are enabled.

