mirror of
https://github.com/RockChinQ/QChatGPT.git
synced 2024-11-16 11:42:44 +08:00
28 lines
854 B
Python
28 lines
854 B
Python
from __future__ import annotations
|
|
from typing import AsyncGenerator
|
|
|
|
from .. import operator, entities, cmdmgr
|
|
|
|
|
|
@operator.operator_class(name="func", help="查看所有已注册的内容函数", usage='!func')
|
|
class FuncOperator(operator.CommandOperator):
|
|
async def execute(
|
|
self, context: entities.ExecuteContext
|
|
) -> AsyncGenerator[entities.CommandReturn, None]:
|
|
reply_str = "当前已加载的内容函数: \n\n"
|
|
|
|
index = 1
|
|
|
|
all_functions = await self.ap.tool_mgr.get_all_functions()
|
|
|
|
for func in all_functions:
|
|
reply_str += "{}. {}{}:\n{}\n\n".format(
|
|
index,
|
|
("(已禁用) " if not func.enable else ""),
|
|
func.name,
|
|
func.description,
|
|
)
|
|
index += 1
|
|
|
|
yield entities.CommandReturn(text=reply_str)
|