diff --git a/README.md b/README.md
index d513eb5..ee86474 100644
--- a/README.md
+++ b/README.md
@@ -10,8 +10,9 @@
_✨ 使用 OpenAI 标准格式 API 的聊天机器人插件 ✨_
-
-
+[](https://registry.nonebot.dev/plugin/nonebot-plugin-marshoai:nonebot_plugin_marshoai)
+
+
diff --git a/README_EN.md b/README_EN.md
index 8159af9..dd5d018 100644
--- a/README_EN.md
+++ b/README_EN.md
@@ -10,8 +10,9 @@
_✨ A chat bot plugin which use OpenAI standard API ✨_
-
-
+[](https://registry.nonebot.dev/plugin/nonebot-plugin-marshoai:nonebot_plugin_marshoai)
+
+
diff --git a/nonebot_plugin_marshoai/azure.py b/nonebot_plugin_marshoai/azure.py
index 3f85d4d..e628ebd 100644
--- a/nonebot_plugin_marshoai/azure.py
+++ b/nonebot_plugin_marshoai/azure.py
@@ -64,6 +64,13 @@ marsho_cmd = on_alconna(
priority=10,
block=True,
)
+marsho_help_cmd = on_alconna(
+ Alconna(
+ config.marshoai_default_name + ".help",
+ ),
+ priority=10,
+ block=True,
+)
marsho_at = on_message(rule=to_me() & at_enable, priority=11)
nickname_cmd = on_alconna(
Alconna(
@@ -208,6 +215,11 @@ async def refresh_data():
await refresh_data_cmd.finish("已刷新数据")
+@marsho_help_cmd.handle()
+async def marsho_help():
+ await marsho_help_cmd.finish(metadata.usage)
+
+
@marsho_at.handle()
@marsho_cmd.handle()
async def marsho(
@@ -225,8 +237,8 @@ async def marsho(
text = event.get_message() # type: ignore
if not text:
# 发送说明
- await UniMessage(metadata.usage + "\n当前使用的模型:" + model_name).send()
- await marsho_cmd.finish(INTRODUCTION)
+ # await UniMessage(metadata.usage + "\n当前使用的模型:" + model_name).send()
+ await marsho_cmd.finish(INTRODUCTION + "\n当前使用的模型:" + model_name)
try:
user_id = event.get_user_id()
nicknames = await get_nicknames()
diff --git a/nonebot_plugin_marshoai/constants.py b/nonebot_plugin_marshoai/constants.py
index a8cd55b..6294620 100755
--- a/nonebot_plugin_marshoai/constants.py
+++ b/nonebot_plugin_marshoai/constants.py
@@ -2,8 +2,7 @@ import re
from .config import config
-USAGE: str = f"""MarshoAI-NoneBot Beta by Asankilp
-用法:
+USAGE: str = f"""用法:
{config.marshoai_default_name} <聊天内容> : 与 Marsho 进行对话。当模型为 GPT-4o(-mini) 等时,可以带上图片进行对话。
nickname [昵称] : 为自己设定昵称,设置昵称后,Marsho 会根据你的昵称进行回答。使用'nickname reset'命令可清除自己设定的昵称。
reset : 重置当前会话的上下文。 ※需要加上命令前缀使用(默认为'/')。
@@ -26,14 +25,12 @@ SUPPORT_IMAGE_MODELS: list = [
"llama-3.2-11b-vision-instruct",
]
REASONING_MODELS: list = ["o1-preview", "o1-mini"]
-INTRODUCTION: str = """你好喵~我是一只可爱的猫娘AI,名叫小棉~🐾!
-我的代码在这里哦~↓↓↓
-https://github.com/LiteyukiStudio/nonebot-plugin-marshoai
+INTRODUCTION: str = f"""MarshoAI-NoneBot by LiteyukiStudio
+你好喵~我是一只可爱的猫娘AI,名叫小棉~🐾!
+我的主页在这里哦~↓↓↓
+https://marsho.liteyuki.icu
-也可以关注一下还在成长中的 Melobot 酱喵~↓↓↓
-https://github.com/Meloland/melobot
-我与 Melobot 酱贴贴的代码在这里喵~↓↓↓
-https://github.com/LiteyukiStudio/marshoai-melo"""
+※ 使用「{config.marshoai_default_name}.help」命令获取使用说明。"""
# 正则匹配代码块
diff --git a/nonebot_plugin_marshoai/metadata.py b/nonebot_plugin_marshoai/metadata.py
index 5f1185f..e7b18f0 100755
--- a/nonebot_plugin_marshoai/metadata.py
+++ b/nonebot_plugin_marshoai/metadata.py
@@ -11,5 +11,5 @@ metadata = PluginMetadata(
config=ConfigModel,
homepage="https://github.com/LiteyukiStudio/nonebot-plugin-marshoai",
supported_adapters=inherit_supported_adapters("nonebot_plugin_alconna"),
- extra={"License": "MIT, Mulan PSL v2", "Author": "Asankilp"},
+ extra={"License": "MIT, Mulan PSL v2", "Author": "Asankilp, LiteyukiStudio"},
)
diff --git a/nonebot_plugin_marshoai/plugins/marshoai_bangumi/__init__.py b/nonebot_plugin_marshoai/plugins/marshoai_bangumi/__init__.py
old mode 100755
new mode 100644
index 6825364..9b6c37b
--- a/nonebot_plugin_marshoai/plugins/marshoai_bangumi/__init__.py
+++ b/nonebot_plugin_marshoai/plugins/marshoai_bangumi/__init__.py
@@ -2,12 +2,41 @@ import traceback
import httpx
-from nonebot_plugin_marshoai.plugin import PluginMetadata
+from nonebot_plugin_marshoai.plugin import PluginMetadata, on_function_call
+# 定义插件元数据
__marsho_meta__ = PluginMetadata(
- name="Bangumi 番剧信息",
- description="Bangumi 番剧信息",
- usage="Bangumi 番剧信息",
- author="Liteyuki",
- homepage="",
+ name="Bangumi日历",
+ author="MarshoAI",
+ description="这个插件可以帮助你获取Bangumi的日历信息~",
)
+
+
+@on_function_call(description="获取Bangumi日历信息")
+async def get_bangumi_news() -> str:
+ async def fetch_calendar():
+ url = "https://api.bgm.tv/calendar"
+ headers = {
+ "User-Agent": "LiteyukiStudio/nonebot-plugin-marshoai (https://github.com/LiteyukiStudio/nonebot-plugin-marshoai)"
+ }
+ async with httpx.AsyncClient() as client:
+ response = await client.get(url, headers=headers)
+ # print(response.text)
+ return response.json()
+
+ try:
+ result = await fetch_calendar()
+ info = ""
+ for i in result:
+ weekday = i["weekday"]["cn"]
+ # print(weekday)
+ info += f"{weekday}:"
+ items = i["items"]
+ for item in items:
+ name = item["name_cn"]
+ info += f"《{name}》"
+ info += ""
+ return info
+ except Exception as e:
+ traceback.print_exc()
+ return ""
diff --git a/pyproject.toml b/pyproject.toml
index 52dde7a..56a87a5 100755
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -27,7 +27,7 @@ dependencies = [
license = { text = "MIT, Mulan PSL v2" }
[project.urls]
-Homepage = "https://github.com/LiteyukiStudio/nonebot-plugin-marshoai"
+Homepage = "https://marsho.liteyuki.icu/"
[tool.nonebot]