mirror of
https://github.com/AstrBotDevs/AstrBot
synced 2026-07-16 01:40:15 +08:00
refactor: remove unused echo listener and hello tool; add HelloCommand in test_plugin
This commit is contained in:
@@ -1,12 +0,0 @@
|
||||
from astrbot_sdk.api.components. import ListenerComponent
|
||||
from astrbot.api.v1.event import AstrMessageEvent, filter
|
||||
from astrbot.api.v1.context import Context
|
||||
|
||||
|
||||
class EchoListener(ListenerComponent):
|
||||
def __init__(self, context: Context):
|
||||
super().__init__(context)
|
||||
|
||||
@filter.platform_adapter_type(filter.PlatformAdapterType.ALL)
|
||||
async def on_message(self, event: AstrMessageEvent):
|
||||
yield event.plain_result("Hello, Astrbot!")
|
||||
@@ -1,31 +0,0 @@
|
||||
from mcp.types import CallToolResult
|
||||
from pydantic import Field
|
||||
from pydantic.dataclasses import dataclass
|
||||
|
||||
from astrbot.api.v1.components.agent.tool import FunctionTool
|
||||
from astrbot.api.v1.components.agent import ContextWrapper, AstrAgentContext
|
||||
|
||||
|
||||
@dataclass
|
||||
class HelloWorldTool(FunctionTool):
|
||||
name: str = "hello_world" # 工具名称
|
||||
description: str = "Say hello to the world." # 工具描述
|
||||
parameters: dict = Field(
|
||||
default_factory=lambda: {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"greeting": {
|
||||
"type": "string",
|
||||
"description": "The greeting message.",
|
||||
},
|
||||
},
|
||||
"required": ["greeting"],
|
||||
}
|
||||
) # 工具参数定义,见 OpenAI 官网或 https://json-schema.org/understanding-json-schema/
|
||||
|
||||
async def call(
|
||||
self, context: ContextWrapper[AstrAgentContext], **kwargs
|
||||
) -> str | CallToolResult:
|
||||
# event 在 context.context.event 中可用
|
||||
greeting = kwargs.get("greeting", "Hello")
|
||||
return f"{greeting}, World!" # 也支持 mcp.types.CallToolResult 类型
|
||||
@@ -5,7 +5,7 @@ desc: 一个简单的问候插件示例
|
||||
author: Soulter
|
||||
version: 0.1.0
|
||||
components: # 组件列表,将支持自动生成
|
||||
- class: handlers.commands.hello:HelloCommand
|
||||
- class: test_plugin.commands.hello:HelloCommand
|
||||
type: command
|
||||
name: hello
|
||||
description: 发送问候消息
|
||||
|
||||
Reference in New Issue
Block a user