Skip to content

Commit 7dd95d8

Browse files
Dt8333Soulter
andauthored
chore: auto ann fix by ruff (#4903)
* chore: auto fix by ruff * refactor: 统一修正返回类型注解为 None/bool 以匹配实现 * refactor: 将 _get_next_page 改为异步并移除多余的请求错误抛出 * refactor: 将 get_client 的返回类型改为 object * style: 为 LarkMessageEvent 的相关方法添加返回类型注解 None --------- Co-authored-by: Soulter <37870767+Soulter@users.noreply.github.com>
1 parent e1b7154 commit 7dd95d8

183 files changed

Lines changed: 785 additions & 732 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

astrbot/builtin_stars/astrbot/long_term_memory.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818

1919
class LongTermMemory:
20-
def __init__(self, acm: AstrBotConfigManager, context: star.Context):
20+
def __init__(self, acm: AstrBotConfigManager, context: star.Context) -> None:
2121
self.acm = acm
2222
self.context = context
2323
self.session_chats = defaultdict(list)
@@ -111,7 +111,7 @@ async def need_active_reply(self, event: AstrMessageEvent) -> bool:
111111

112112
return False
113113

114-
async def handle_message(self, event: AstrMessageEvent):
114+
async def handle_message(self, event: AstrMessageEvent) -> None:
115115
"""仅支持群聊"""
116116
if event.get_message_type() == MessageType.GROUP_MESSAGE:
117117
datetime_str = datetime.datetime.now().strftime("%H:%M:%S")
@@ -148,7 +148,7 @@ async def handle_message(self, event: AstrMessageEvent):
148148
if len(self.session_chats[event.unified_msg_origin]) > cfg["max_cnt"]:
149149
self.session_chats[event.unified_msg_origin].pop(0)
150150

151-
async def on_req_llm(self, event: AstrMessageEvent, req: ProviderRequest):
151+
async def on_req_llm(self, event: AstrMessageEvent, req: ProviderRequest) -> None:
152152
"""当触发 LLM 请求前,调用此方法修改 req"""
153153
if event.unified_msg_origin not in self.session_chats:
154154
return
@@ -171,7 +171,9 @@ async def on_req_llm(self, event: AstrMessageEvent, req: ProviderRequest):
171171
)
172172
req.system_prompt += chats_str
173173

174-
async def after_req_llm(self, event: AstrMessageEvent, llm_resp: LLMResponse):
174+
async def after_req_llm(
175+
self, event: AstrMessageEvent, llm_resp: LLMResponse
176+
) -> None:
175177
if event.unified_msg_origin not in self.session_chats:
176178
return
177179

astrbot/builtin_stars/astrbot/main.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,9 @@ async def on_message(self, event: AstrMessageEvent):
8585
logger.error(f"主动回复失败: {e}")
8686

8787
@filter.on_llm_request()
88-
async def decorate_llm_req(self, event: AstrMessageEvent, req: ProviderRequest):
88+
async def decorate_llm_req(
89+
self, event: AstrMessageEvent, req: ProviderRequest
90+
) -> None:
8991
"""在请求 LLM 前注入人格信息、Identifier、时间、回复内容等 System Prompt"""
9092
if self.ltm and self.ltm_enabled(event):
9193
try:
@@ -94,7 +96,9 @@ async def decorate_llm_req(self, event: AstrMessageEvent, req: ProviderRequest):
9496
logger.error(f"ltm: {e}")
9597

9698
@filter.on_llm_response()
97-
async def record_llm_resp_to_ltm(self, event: AstrMessageEvent, resp: LLMResponse):
99+
async def record_llm_resp_to_ltm(
100+
self, event: AstrMessageEvent, resp: LLMResponse
101+
) -> None:
98102
"""在 LLM 响应后记录对话"""
99103
if self.ltm and self.ltm_enabled(event):
100104
try:
@@ -103,7 +107,7 @@ async def record_llm_resp_to_ltm(self, event: AstrMessageEvent, resp: LLMRespons
103107
logger.error(f"ltm: {e}")
104108

105109
@filter.after_message_sent()
106-
async def after_message_sent(self, event: AstrMessageEvent):
110+
async def after_message_sent(self, event: AstrMessageEvent) -> None:
107111
"""消息发送后处理"""
108112
if self.ltm and self.ltm_enabled(event):
109113
try:

astrbot/builtin_stars/builtin_commands/commands/admin.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55

66

77
class AdminCommands:
8-
def __init__(self, context: star.Context):
8+
def __init__(self, context: star.Context) -> None:
99
self.context = context
1010

11-
async def op(self, event: AstrMessageEvent, admin_id: str = ""):
11+
async def op(self, event: AstrMessageEvent, admin_id: str = "") -> None:
1212
"""授权管理员。op <admin_id>"""
1313
if not admin_id:
1414
event.set_result(
@@ -21,7 +21,7 @@ async def op(self, event: AstrMessageEvent, admin_id: str = ""):
2121
self.context.get_config().save_config()
2222
event.set_result(MessageEventResult().message("授权成功。"))
2323

24-
async def deop(self, event: AstrMessageEvent, admin_id: str = ""):
24+
async def deop(self, event: AstrMessageEvent, admin_id: str = "") -> None:
2525
"""取消授权管理员。deop <admin_id>"""
2626
if not admin_id:
2727
event.set_result(
@@ -39,7 +39,7 @@ async def deop(self, event: AstrMessageEvent, admin_id: str = ""):
3939
MessageEventResult().message("此用户 ID 不在管理员名单内。"),
4040
)
4141

42-
async def wl(self, event: AstrMessageEvent, sid: str = ""):
42+
async def wl(self, event: AstrMessageEvent, sid: str = "") -> None:
4343
"""添加白名单。wl <sid>"""
4444
if not sid:
4545
event.set_result(
@@ -53,7 +53,7 @@ async def wl(self, event: AstrMessageEvent, sid: str = ""):
5353
cfg.save_config()
5454
event.set_result(MessageEventResult().message("添加白名单成功。"))
5555

56-
async def dwl(self, event: AstrMessageEvent, sid: str = ""):
56+
async def dwl(self, event: AstrMessageEvent, sid: str = "") -> None:
5757
"""删除白名单。dwl <sid>"""
5858
if not sid:
5959
event.set_result(
@@ -70,7 +70,7 @@ async def dwl(self, event: AstrMessageEvent, sid: str = ""):
7070
except ValueError:
7171
event.set_result(MessageEventResult().message("此 SID 不在白名单内。"))
7272

73-
async def update_dashboard(self, event: AstrMessageEvent):
73+
async def update_dashboard(self, event: AstrMessageEvent) -> None:
7474
"""更新管理面板"""
7575
await event.send(MessageChain().message("正在尝试更新管理面板..."))
7676
await download_dashboard(version=f"v{VERSION}", latest=False)

astrbot/builtin_stars/builtin_commands/commands/alter_cmd.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111

1212

1313
class AlterCmdCommands(CommandParserMixin):
14-
def __init__(self, context: star.Context):
14+
def __init__(self, context: star.Context) -> None:
1515
self.context = context
1616

17-
async def update_reset_permission(self, scene_key: str, perm_type: str):
17+
async def update_reset_permission(self, scene_key: str, perm_type: str) -> None:
1818
"""更新reset命令在特定场景下的权限设置"""
1919
from astrbot.api import sp
2020

@@ -26,7 +26,7 @@ async def update_reset_permission(self, scene_key: str, perm_type: str):
2626
alter_cmd_cfg["astrbot"] = plugin_cfg
2727
await sp.global_put("alter_cmd", alter_cmd_cfg)
2828

29-
async def alter_cmd(self, event: AstrMessageEvent):
29+
async def alter_cmd(self, event: AstrMessageEvent) -> None:
3030
token = self.parse_commands(event.message_str)
3131
if token.len < 3:
3232
await event.send(

astrbot/builtin_stars/builtin_commands/commands/conversation.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717

1818
class ConversationCommands:
19-
def __init__(self, context: star.Context):
19+
def __init__(self, context: star.Context) -> None:
2020
self.context = context
2121

2222
async def _get_current_persona_id(self, session_id):
@@ -33,7 +33,7 @@ async def _get_current_persona_id(self, session_id):
3333
return None
3434
return conv.persona_id
3535

36-
async def reset(self, message: AstrMessageEvent):
36+
async def reset(self, message: AstrMessageEvent) -> None:
3737
"""重置 LLM 会话"""
3838
umo = message.unified_msg_origin
3939
cfg = self.context.get_config(umo=message.unified_msg_origin)
@@ -98,7 +98,7 @@ async def reset(self, message: AstrMessageEvent):
9898

9999
message.set_result(MessageEventResult().message(ret))
100100

101-
async def his(self, message: AstrMessageEvent, page: int = 1):
101+
async def his(self, message: AstrMessageEvent, page: int = 1) -> None:
102102
"""查看对话记录"""
103103
if not self.context.get_using_provider(message.unified_msg_origin):
104104
message.set_result(
@@ -141,7 +141,7 @@ async def his(self, message: AstrMessageEvent, page: int = 1):
141141

142142
message.set_result(MessageEventResult().message(ret).use_t2i(False))
143143

144-
async def convs(self, message: AstrMessageEvent, page: int = 1):
144+
async def convs(self, message: AstrMessageEvent, page: int = 1) -> None:
145145
"""查看对话列表"""
146146
cfg = self.context.get_config(umo=message.unified_msg_origin)
147147
agent_runner_type = cfg["provider_settings"]["agent_runner_type"]
@@ -216,7 +216,7 @@ async def convs(self, message: AstrMessageEvent, page: int = 1):
216216
message.set_result(MessageEventResult().message(ret).use_t2i(False))
217217
return
218218

219-
async def new_conv(self, message: AstrMessageEvent):
219+
async def new_conv(self, message: AstrMessageEvent) -> None:
220220
"""创建新对话"""
221221
cfg = self.context.get_config(umo=message.unified_msg_origin)
222222
agent_runner_type = cfg["provider_settings"]["agent_runner_type"]
@@ -242,7 +242,7 @@ async def new_conv(self, message: AstrMessageEvent):
242242
MessageEventResult().message(f"切换到新对话: 新对话({cid[:4]})。"),
243243
)
244244

245-
async def groupnew_conv(self, message: AstrMessageEvent, sid: str = ""):
245+
async def groupnew_conv(self, message: AstrMessageEvent, sid: str = "") -> None:
246246
"""创建新群聊对话"""
247247
if sid:
248248
session = str(
@@ -273,7 +273,7 @@ async def switch_conv(
273273
self,
274274
message: AstrMessageEvent,
275275
index: int | None = None,
276-
):
276+
) -> None:
277277
"""通过 /ls 前面的序号切换对话"""
278278
if not isinstance(index, int):
279279
message.set_result(
@@ -308,7 +308,7 @@ async def switch_conv(
308308
),
309309
)
310310

311-
async def rename_conv(self, message: AstrMessageEvent, new_name: str = ""):
311+
async def rename_conv(self, message: AstrMessageEvent, new_name: str = "") -> None:
312312
"""重命名对话"""
313313
if not new_name:
314314
message.set_result(MessageEventResult().message("请输入新的对话名称。"))
@@ -319,7 +319,7 @@ async def rename_conv(self, message: AstrMessageEvent, new_name: str = ""):
319319
)
320320
message.set_result(MessageEventResult().message("重命名对话成功。"))
321321

322-
async def del_conv(self, message: AstrMessageEvent):
322+
async def del_conv(self, message: AstrMessageEvent) -> None:
323323
"""删除当前对话"""
324324
cfg = self.context.get_config(umo=message.unified_msg_origin)
325325
is_unique_session = cfg["platform_settings"]["unique_session"]

astrbot/builtin_stars/builtin_commands/commands/help.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
class HelpCommand:
11-
def __init__(self, context: star.Context):
11+
def __init__(self, context: star.Context) -> None:
1212
self.context = context
1313

1414
async def _query_astrbot_notice(self):
@@ -34,7 +34,7 @@ async def _build_reserved_command_lines(self) -> list[str]:
3434
lines: list[str] = []
3535
hidden_commands = {"set", "unset", "websearch"}
3636

37-
def walk(items: list[dict], indent: int = 0):
37+
def walk(items: list[dict], indent: int = 0) -> None:
3838
for item in items:
3939
if not item.get("reserved") or not item.get("enabled"):
4040
continue
@@ -62,7 +62,7 @@ def walk(items: list[dict], indent: int = 0):
6262
walk(commands)
6363
return lines
6464

65-
async def help(self, event: AstrMessageEvent):
65+
async def help(self, event: AstrMessageEvent) -> None:
6666
"""查看帮助"""
6767
notice = ""
6868
try:

astrbot/builtin_stars/builtin_commands/commands/llm.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33

44

55
class LLMCommands:
6-
def __init__(self, context: star.Context):
6+
def __init__(self, context: star.Context) -> None:
77
self.context = context
88

9-
async def llm(self, event: AstrMessageEvent):
9+
async def llm(self, event: AstrMessageEvent) -> None:
1010
"""开启/关闭 LLM"""
1111
cfg = self.context.get_config(umo=event.unified_msg_origin)
1212
enable = cfg["provider_settings"].get("enable", True)

astrbot/builtin_stars/builtin_commands/commands/persona.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010

1111
class PersonaCommands:
12-
def __init__(self, context: star.Context):
12+
def __init__(self, context: star.Context) -> None:
1313
self.context = context
1414

1515
def _build_tree_output(
@@ -50,7 +50,7 @@ def _build_tree_output(
5050

5151
return lines
5252

53-
async def persona(self, message: AstrMessageEvent):
53+
async def persona(self, message: AstrMessageEvent) -> None:
5454
l = message.message_str.split(" ") # noqa: E741
5555
umo = message.unified_msg_origin
5656

astrbot/builtin_stars/builtin_commands/commands/plugin.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88

99

1010
class PluginCommands:
11-
def __init__(self, context: star.Context):
11+
def __init__(self, context: star.Context) -> None:
1212
self.context = context
1313

14-
async def plugin_ls(self, event: AstrMessageEvent):
14+
async def plugin_ls(self, event: AstrMessageEvent) -> None:
1515
"""获取已经安装的插件列表。"""
1616
parts = ["已加载的插件:\n"]
1717
for plugin in self.context.get_all_stars():
@@ -30,7 +30,7 @@ async def plugin_ls(self, event: AstrMessageEvent):
3030
MessageEventResult().message(f"{plugin_list_info}").use_t2i(False),
3131
)
3232

33-
async def plugin_off(self, event: AstrMessageEvent, plugin_name: str = ""):
33+
async def plugin_off(self, event: AstrMessageEvent, plugin_name: str = "") -> None:
3434
"""禁用插件"""
3535
if DEMO_MODE:
3636
event.set_result(MessageEventResult().message("演示模式下无法禁用插件。"))
@@ -43,7 +43,7 @@ async def plugin_off(self, event: AstrMessageEvent, plugin_name: str = ""):
4343
await self.context._star_manager.turn_off_plugin(plugin_name) # type: ignore
4444
event.set_result(MessageEventResult().message(f"插件 {plugin_name} 已禁用。"))
4545

46-
async def plugin_on(self, event: AstrMessageEvent, plugin_name: str = ""):
46+
async def plugin_on(self, event: AstrMessageEvent, plugin_name: str = "") -> None:
4747
"""启用插件"""
4848
if DEMO_MODE:
4949
event.set_result(MessageEventResult().message("演示模式下无法启用插件。"))
@@ -56,7 +56,7 @@ async def plugin_on(self, event: AstrMessageEvent, plugin_name: str = ""):
5656
await self.context._star_manager.turn_on_plugin(plugin_name) # type: ignore
5757
event.set_result(MessageEventResult().message(f"插件 {plugin_name} 已启用。"))
5858

59-
async def plugin_get(self, event: AstrMessageEvent, plugin_repo: str = ""):
59+
async def plugin_get(self, event: AstrMessageEvent, plugin_repo: str = "") -> None:
6060
"""安装插件"""
6161
if DEMO_MODE:
6262
event.set_result(MessageEventResult().message("演示模式下无法安装插件。"))
@@ -77,7 +77,7 @@ async def plugin_get(self, event: AstrMessageEvent, plugin_repo: str = ""):
7777
event.set_result(MessageEventResult().message(f"安装插件失败: {e}"))
7878
return
7979

80-
async def plugin_help(self, event: AstrMessageEvent, plugin_name: str = ""):
80+
async def plugin_help(self, event: AstrMessageEvent, plugin_name: str = "") -> None:
8181
"""获取插件帮助"""
8282
if not plugin_name:
8383
event.set_result(

astrbot/builtin_stars/builtin_commands/commands/provider.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
class ProviderCommands:
11-
def __init__(self, context: star.Context):
11+
def __init__(self, context: star.Context) -> None:
1212
self.context = context
1313

1414
def _log_reachability_failure(
@@ -17,7 +17,7 @@ def _log_reachability_failure(
1717
provider_capability_type: ProviderType | None,
1818
err_code: str,
1919
err_reason: str,
20-
):
20+
) -> None:
2121
"""记录不可达原因到日志。"""
2222
meta = provider.meta()
2323
logger.warning(
@@ -49,7 +49,7 @@ async def provider(
4949
event: AstrMessageEvent,
5050
idx: str | int | None = None,
5151
idx2: int | None = None,
52-
):
52+
) -> None:
5353
"""查看或者切换 LLM Provider"""
5454
umo = event.unified_msg_origin
5555
cfg = self.context.get_config(umo).get("provider_settings", {})
@@ -228,7 +228,7 @@ async def model_ls(
228228
self,
229229
message: AstrMessageEvent,
230230
idx_or_name: int | str | None = None,
231-
):
231+
) -> None:
232232
"""查看或者切换模型"""
233233
prov = self.context.get_using_provider(message.unified_msg_origin)
234234
if not prov:
@@ -293,7 +293,7 @@ async def model_ls(
293293
MessageEventResult().message(f"切换模型到 {prov.get_model()}。"),
294294
)
295295

296-
async def key(self, message: AstrMessageEvent, index: int | None = None):
296+
async def key(self, message: AstrMessageEvent, index: int | None = None) -> None:
297297
prov = self.context.get_using_provider(message.unified_msg_origin)
298298
if not prov:
299299
message.set_result(

0 commit comments

Comments
 (0)