refactor: move commands to seperated plugin

This commit is contained in:
Junyan Qin
2025-09-15 18:10:18 +08:00
parent 6741850081
commit 521a941792
14 changed files with 186 additions and 468 deletions
+17 -17
View File
@@ -1,23 +1,23 @@
from __future__ import annotations
# from __future__ import annotations
import typing
# import typing
from .. import operator
from langbot_plugin.api.entities.builtin.command import context as command_context, errors as command_errors
# from .. import operator
# from langbot_plugin.api.entities.builtin.command import context as command_context, errors as command_errors
@operator.operator_class(name='prompt', help='查看当前对话的前文', usage='!prompt')
class PromptOperator(operator.CommandOperator):
async def execute(
self, context: command_context.ExecuteContext
) -> typing.AsyncGenerator[command_context.CommandReturn, None]:
"""执行"""
if context.session.using_conversation is None:
yield command_context.CommandReturn(error=command_errors.CommandOperationError('当前没有对话'))
else:
reply_str = '当前对话所有内容:\n\n'
# @operator.operator_class(name='prompt', help='查看当前对话的前文', usage='!prompt')
# class PromptOperator(operator.CommandOperator):
# async def execute(
# self, context: command_context.ExecuteContext
# ) -> typing.AsyncGenerator[command_context.CommandReturn, None]:
# """执行"""
# if context.session.using_conversation is None:
# yield command_context.CommandReturn(error=command_errors.CommandOperationError('当前没有对话'))
# else:
# reply_str = '当前对话所有内容:\n\n'
for msg in context.session.using_conversation.messages:
reply_str += f'{msg.role}: {msg.content}\n'
# for msg in context.session.using_conversation.messages:
# reply_str += f'{msg.role}: {msg.content}\n'
yield command_context.CommandReturn(text=reply_str)
# yield command_context.CommandReturn(text=reply_str)