add plugin mode

This commit is contained in:
yhjun1026
2023-05-30 17:20:37 +08:00
parent dd5fc529e2
commit 5150cfcf55
14 changed files with 212 additions and 153 deletions

View File

View File

@@ -1,29 +0,0 @@
from typing import Optional
from pilot.configs.config import Config
from pilot.prompts.generator import PromptGenerator
from pilot.prompts.prompt import build_default_prompt_generator
class CommandsLoad:
"""
Load Plugins Commands Info , help build system prompt!
"""
def __init__(self) -> None:
self.command_registry = None
def getCommandInfos(
self, prompt_generator: Optional[PromptGenerator] = None
) -> str:
cfg = Config()
if prompt_generator is None:
prompt_generator = build_default_prompt_generator()
for plugin in cfg.plugins:
if not plugin.can_handle_post_prompt():
continue
prompt_generator = plugin.post_prompt(prompt_generator)
self.prompt_generator = prompt_generator
command_infos = ""
command_infos += f"\n\n{prompt_generator.commands()}"
return command_infos