Phase 9: Plugin system for extensibility and advanced customization
This commit is contained in:
1 parent
c54f2a33c8
commit
98b6f10ea4
5 files changed
+596
No files matched your search
@@ -18,6 +18,7 @@ Un agente configurabile basato su DeepAgents che supporta più provider LLM.
|
||||
- **Web UI**: Interfaccia web per gestione configurazioni
|
||||
- **Comandi integrati**: Comandi speciali con prefisso "/" per gestione rapida
|
||||
- **Monitoraggio**: Sistema di logging e monitoraggio delle performance
|
||||
- **Sistema di plugin**: Estendi le funzionalità con plugin personalizzati
|
||||
|
||||
## Installazione
|
||||
|
||||
@@ -206,6 +207,7 @@ Quando interagisci con l'agente, puoi usare comandi speciali preceduti da "/" pe
|
||||
/config use <name> - Cambia la configurazione attiva
|
||||
/models - Elenca i modelli disponibili per il provider attivo
|
||||
/clear - Pulisce lo schermo
|
||||
/plugins - Elenca i plugin disponibili
|
||||
/exit, /quit - Esci dall'agente
|
||||
```
|
||||
|
||||
@@ -402,6 +404,67 @@ Gli strumenti Ollama specifici sono ancora disponibili per retrocompatibilità:
|
||||
- `ollama_status`: Controlla se Ollama è in esecuzione
|
||||
- `ollama_running_models`: Mostra i modelli attualmente in esecuzione
|
||||
|
||||
## Sistema di Plugin
|
||||
|
||||
MaxClaw Agent include un sistema di plugin per estendere le funzionalità.
|
||||
|
||||
### Plugin Inclusi
|
||||
|
||||
- **Example Plugin**: Plugin di esempio che dimostra come creare plugin
|
||||
|
||||
### Creare un Plugin
|
||||
|
||||
Per creare un plugin, crea un file Python nella directory `plugins/`:
|
||||
|
||||
```python
|
||||
from plugins.base import BasePlugin
|
||||
from langchain.tools import Tool
|
||||
|
||||
class MyPlugin(BasePlugin):
|
||||
def __init__(self):
|
||||
super().__init__(
|
||||
name="my_plugin",
|
||||
version="1.0.0",
|
||||
description="My custom plugin"
|
||||
)
|
||||
|
||||
def get_tools(self):
|
||||
return [
|
||||
Tool(
|
||||
name="my_tool",
|
||||
func=self.my_tool_func,
|
||||
description="My custom tool"
|
||||
)
|
||||
]
|
||||
|
||||
def get_commands(self):
|
||||
return {
|
||||
"/mycommand": self.my_command_func
|
||||
}
|
||||
|
||||
def my_tool_func(self):
|
||||
return "Hello from my plugin!"
|
||||
|
||||
def my_command_func(self, args=None):
|
||||
return "My command executed!"
|
||||
```
|
||||
|
||||
### Gestire i Plugin
|
||||
|
||||
```bash
|
||||
# Elenca i plugin disponibili
|
||||
/plugins
|
||||
|
||||
# Carica tutti i plugin
|
||||
python -c "from plugins.manager import plugin_manager; plugin_manager.load_all_plugins()"
|
||||
|
||||
# Usa un tool di un plugin
|
||||
"Use my_tool from my_plugin"
|
||||
|
||||
# Usa un comando di un plugin
|
||||
/mycommand
|
||||
```
|
||||
|
||||
## Test
|
||||
|
||||
Esegui la suite di test:
|
||||
@@ -462,6 +525,7 @@ Per personalizzare l'agente, modifica `main.py`:
|
||||
- Cambia il prompt di sistema predefinito in `create_maxclaw_agent`
|
||||
- Aggiungi strumenti personalizzati alla chiamata `create_deep_agent`
|
||||
- Configura i sub-agenti o altre funzionalità di DeepAgents
|
||||
- Crea plugin per estendere le funzionalità
|
||||
|
||||
## Monitoraggio e Logging
|
||||
|
||||
|
||||
Reference in new issue
Block a user