Started implementing jar-based(plugin) tool loading

Core#plugin:
- Plugin.java: Main framework for plugins
- OllamaTool.java: Used for annotation based loading of tools
- InjectPlugin.java: Annoataion for injecting the Plugin instance, used when annotation based loading is used
- PluginMetadata.java: metadata of the plugin, a class-reflection of plugin.json file within each plugin
- PluginLoadingException.java: Exception thrown when an error happens durring plugin loading
This commit is contained in:
2025-05-28 01:11:07 +02:00
parent 8e44c11385
commit 603b72f2d3
13 changed files with 198 additions and 2 deletions

View File

@@ -53,6 +53,8 @@ public class Display {
//.addFileTools(FileHandlerLocation.DATA_FILES)
.build());
core.enablePlugins(Core.PLUGIN_DIRECTORY);
core.addTool(new TimeTool(), Core.Source.INTERNAL);
//core.addTool(new PythonRunner(core), Core.Source.INTERNAL);
core.addTools(new MALAPITool().getOllamaTools());