AstrBot 4.10.2__py3-none-any.whl → 4.10.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. astrbot/builtin_stars/astrbot/long_term_memory.py +186 -0
  2. astrbot/builtin_stars/astrbot/main.py +120 -0
  3. astrbot/builtin_stars/astrbot/metadata.yaml +4 -0
  4. astrbot/builtin_stars/astrbot/process_llm_request.py +245 -0
  5. astrbot/builtin_stars/builtin_commands/commands/__init__.py +31 -0
  6. astrbot/builtin_stars/builtin_commands/commands/admin.py +77 -0
  7. astrbot/builtin_stars/builtin_commands/commands/alter_cmd.py +173 -0
  8. astrbot/builtin_stars/builtin_commands/commands/conversation.py +366 -0
  9. astrbot/builtin_stars/builtin_commands/commands/help.py +88 -0
  10. astrbot/builtin_stars/builtin_commands/commands/llm.py +20 -0
  11. astrbot/builtin_stars/builtin_commands/commands/persona.py +142 -0
  12. astrbot/builtin_stars/builtin_commands/commands/plugin.py +120 -0
  13. astrbot/builtin_stars/builtin_commands/commands/provider.py +329 -0
  14. astrbot/builtin_stars/builtin_commands/commands/setunset.py +36 -0
  15. astrbot/builtin_stars/builtin_commands/commands/sid.py +36 -0
  16. astrbot/builtin_stars/builtin_commands/commands/t2i.py +23 -0
  17. astrbot/builtin_stars/builtin_commands/commands/tool.py +31 -0
  18. astrbot/builtin_stars/builtin_commands/commands/tts.py +36 -0
  19. astrbot/builtin_stars/builtin_commands/commands/utils/rst_scene.py +26 -0
  20. astrbot/builtin_stars/builtin_commands/main.py +237 -0
  21. astrbot/builtin_stars/builtin_commands/metadata.yaml +4 -0
  22. astrbot/builtin_stars/python_interpreter/main.py +536 -0
  23. astrbot/builtin_stars/python_interpreter/metadata.yaml +4 -0
  24. astrbot/builtin_stars/python_interpreter/requirements.txt +1 -0
  25. astrbot/builtin_stars/python_interpreter/shared/api.py +22 -0
  26. astrbot/builtin_stars/reminder/main.py +266 -0
  27. astrbot/builtin_stars/reminder/metadata.yaml +4 -0
  28. astrbot/builtin_stars/session_controller/main.py +114 -0
  29. astrbot/builtin_stars/session_controller/metadata.yaml +5 -0
  30. astrbot/builtin_stars/web_searcher/engines/__init__.py +111 -0
  31. astrbot/builtin_stars/web_searcher/engines/bing.py +30 -0
  32. astrbot/builtin_stars/web_searcher/engines/sogo.py +52 -0
  33. astrbot/builtin_stars/web_searcher/main.py +436 -0
  34. astrbot/builtin_stars/web_searcher/metadata.yaml +4 -0
  35. astrbot/cli/__init__.py +1 -1
  36. astrbot/core/agent/message.py +32 -1
  37. astrbot/core/agent/runners/tool_loop_agent_runner.py +26 -8
  38. astrbot/core/astr_agent_hooks.py +6 -0
  39. astrbot/core/backup/__init__.py +26 -0
  40. astrbot/core/backup/constants.py +77 -0
  41. astrbot/core/backup/exporter.py +477 -0
  42. astrbot/core/backup/importer.py +761 -0
  43. astrbot/core/config/astrbot_config.py +2 -0
  44. astrbot/core/config/default.py +47 -6
  45. astrbot/core/knowledge_base/chunking/recursive.py +10 -2
  46. astrbot/core/log.py +1 -1
  47. astrbot/core/pipeline/process_stage/method/agent_sub_stages/internal.py +184 -174
  48. astrbot/core/pipeline/result_decorate/stage.py +65 -57
  49. astrbot/core/pipeline/waking_check/stage.py +31 -3
  50. astrbot/core/platform/sources/aiocqhttp/aiocqhttp_platform_adapter.py +15 -29
  51. astrbot/core/platform/sources/dingtalk/dingtalk_adapter.py +1 -6
  52. astrbot/core/platform/sources/dingtalk/dingtalk_event.py +15 -1
  53. astrbot/core/platform/sources/lark/lark_adapter.py +2 -10
  54. astrbot/core/platform/sources/misskey/misskey_adapter.py +0 -5
  55. astrbot/core/platform/sources/misskey/misskey_utils.py +0 -3
  56. astrbot/core/platform/sources/qqofficial/qqofficial_platform_adapter.py +4 -9
  57. astrbot/core/platform/sources/qqofficial_webhook/qo_webhook_adapter.py +4 -9
  58. astrbot/core/platform/sources/satori/satori_adapter.py +6 -1
  59. astrbot/core/platform/sources/slack/slack_adapter.py +3 -6
  60. astrbot/core/platform/sources/webchat/webchat_adapter.py +0 -1
  61. astrbot/core/platform/sources/wechatpadpro/wechatpadpro_adapter.py +3 -5
  62. astrbot/core/provider/entities.py +41 -10
  63. astrbot/core/provider/provider.py +3 -1
  64. astrbot/core/provider/sources/anthropic_source.py +140 -30
  65. astrbot/core/provider/sources/fishaudio_tts_api_source.py +14 -6
  66. astrbot/core/provider/sources/gemini_source.py +112 -29
  67. astrbot/core/provider/sources/minimax_tts_api_source.py +4 -1
  68. astrbot/core/provider/sources/openai_source.py +93 -56
  69. astrbot/core/provider/sources/xai_source.py +29 -0
  70. astrbot/core/provider/sources/xinference_stt_provider.py +24 -12
  71. astrbot/core/star/context.py +1 -1
  72. astrbot/core/star/star_manager.py +52 -13
  73. astrbot/core/utils/astrbot_path.py +34 -0
  74. astrbot/core/utils/pip_installer.py +20 -1
  75. astrbot/dashboard/routes/__init__.py +2 -0
  76. astrbot/dashboard/routes/backup.py +1093 -0
  77. astrbot/dashboard/routes/config.py +45 -0
  78. astrbot/dashboard/routes/log.py +44 -10
  79. astrbot/dashboard/server.py +9 -1
  80. {astrbot-4.10.2.dist-info → astrbot-4.10.4.dist-info}/METADATA +1 -1
  81. {astrbot-4.10.2.dist-info → astrbot-4.10.4.dist-info}/RECORD +84 -44
  82. {astrbot-4.10.2.dist-info → astrbot-4.10.4.dist-info}/WHEEL +0 -0
  83. {astrbot-4.10.2.dist-info → astrbot-4.10.4.dist-info}/entry_points.txt +0 -0
  84. {astrbot-4.10.2.dist-info → astrbot-4.10.4.dist-info}/licenses/LICENSE +0 -0
@@ -46,6 +46,46 @@ def try_cast(value: Any, type_: str):
46
46
  return None
47
47
 
48
48
 
49
+ def _expect_type(value, expected_type, path_key, errors, expected_name=None):
50
+ if not isinstance(value, expected_type):
51
+ errors.append(
52
+ f"错误的类型 {path_key}: 期望是 {expected_name or expected_type.__name__}, "
53
+ f"得到了 {type(value).__name__}"
54
+ )
55
+ return False
56
+ return True
57
+
58
+
59
+ def _validate_template_list(value, meta, path_key, errors, validate_fn):
60
+ if not _expect_type(value, list, path_key, errors, "list"):
61
+ return
62
+
63
+ templates = meta.get("templates")
64
+ if not isinstance(templates, dict):
65
+ templates = {}
66
+
67
+ for idx, item in enumerate(value):
68
+ item_path = f"{path_key}[{idx}]"
69
+ if not _expect_type(item, dict, item_path, errors, "dict"):
70
+ continue
71
+
72
+ template_key = item.get("__template_key") or item.get("template")
73
+ if not template_key:
74
+ errors.append(f"缺少模板选择 {item_path}: 需要 __template_key")
75
+ continue
76
+
77
+ template_meta = templates.get(template_key)
78
+ if not template_meta:
79
+ errors.append(f"未知模板 {item_path}: {template_key}")
80
+ continue
81
+
82
+ validate_fn(
83
+ item,
84
+ template_meta.get("items", {}),
85
+ path=f"{item_path}.",
86
+ )
87
+
88
+
49
89
  def validate_config(data, schema: dict, is_core: bool) -> tuple[list[str], dict]:
50
90
  errors = []
51
91
 
@@ -61,6 +101,11 @@ def validate_config(data, schema: dict, is_core: bool) -> tuple[list[str], dict]
61
101
  if value is None:
62
102
  data[key] = DEFAULT_VALUE_MAP[meta["type"]]
63
103
  continue
104
+
105
+ if meta["type"] == "template_list":
106
+ _validate_template_list(value, meta, f"{path}{key}", errors, validate)
107
+ continue
108
+
64
109
  if meta["type"] == "list" and not isinstance(value, list):
65
110
  errors.append(
66
111
  f"错误的类型 {path}{key}: 期望是 list, 得到了 {type(value).__name__}",
@@ -1,15 +1,26 @@
1
1
  import asyncio
2
2
  import json
3
+ import time
4
+ from collections.abc import AsyncGenerator
3
5
  from typing import cast
4
6
 
5
7
  from quart import Response as QuartResponse
6
- from quart import make_response
8
+ from quart import make_response, request
7
9
 
8
10
  from astrbot.core import LogBroker, logger
9
11
 
10
12
  from .route import Response, Route, RouteContext
11
13
 
12
14
 
15
+ def _format_log_sse(log: dict, ts: float) -> str:
16
+ """辅助函数:格式化 SSE 消息"""
17
+ payload = {
18
+ "type": "log",
19
+ **log,
20
+ }
21
+ return f"id: {ts}\ndata: {json.dumps(payload, ensure_ascii=False)}\n\n"
22
+
23
+
13
24
  class LogRoute(Route):
14
25
  def __init__(self, context: RouteContext, log_broker: LogBroker) -> None:
15
26
  super().__init__(context)
@@ -21,21 +32,44 @@ class LogRoute(Route):
21
32
  methods=["GET"],
22
33
  )
23
34
 
24
- async def log(self):
35
+ async def _replay_cached_logs(
36
+ self, last_event_id: str
37
+ ) -> AsyncGenerator[str, None]:
38
+ """辅助生成器:重放缓存的日志"""
39
+ try:
40
+ last_ts = float(last_event_id)
41
+ cached_logs = list(self.log_broker.log_cache)
42
+
43
+ for log_item in cached_logs:
44
+ log_ts = float(log_item.get("time", 0))
45
+
46
+ if log_ts > last_ts:
47
+ yield _format_log_sse(log_item, log_ts)
48
+
49
+ except ValueError:
50
+ pass
51
+ except Exception as e:
52
+ logger.error(f"Log SSE 补发历史错误: {e}")
53
+
54
+ async def log(self) -> QuartResponse:
55
+ last_event_id = request.headers.get("Last-Event-ID")
56
+
25
57
  async def stream():
26
58
  queue = None
27
59
  try:
60
+ if last_event_id:
61
+ async for event in self._replay_cached_logs(last_event_id):
62
+ yield event
63
+
28
64
  queue = self.log_broker.register()
29
65
  while True:
30
66
  message = await queue.get()
31
- payload = {
32
- "type": "log",
33
- **message, # see astrbot/core/log.py
34
- }
35
- yield f"data: {json.dumps(payload, ensure_ascii=False)}\n\n"
67
+ current_ts = message.get("time", time.time())
68
+ yield _format_log_sse(message, current_ts)
69
+
36
70
  except asyncio.CancelledError:
37
71
  pass
38
- except BaseException as e:
72
+ except Exception as e:
39
73
  logger.error(f"Log SSE 连接错误: {e}")
40
74
  finally:
41
75
  if queue:
@@ -53,7 +87,7 @@ class LogRoute(Route):
53
87
  },
54
88
  ),
55
89
  )
56
- response.timeout = None
90
+ response.timeout = None # type: ignore
57
91
  return response
58
92
 
59
93
  async def log_history(self):
@@ -69,6 +103,6 @@ class LogRoute(Route):
69
103
  )
70
104
  .__dict__
71
105
  )
72
- except BaseException as e:
106
+ except Exception as e:
73
107
  logger.error(f"获取日志历史失败: {e}")
74
108
  return Response().error(f"获取日志历史失败: {e}").__dict__
@@ -19,6 +19,7 @@ from astrbot.core.utils.astrbot_path import get_astrbot_data_path
19
19
  from astrbot.core.utils.io import get_local_ip_addresses
20
20
 
21
21
  from .routes import *
22
+ from .routes.backup import BackupRoute
22
23
  from .routes.platform import PlatformRoute
23
24
  from .routes.route import Response, RouteContext
24
25
  from .routes.session_management import SessionManagementRoute
@@ -85,6 +86,7 @@ class AstrBotDashboard:
85
86
  self.t2i_route = T2iRoute(self.context, core_lifecycle)
86
87
  self.kb_route = KnowledgeBaseRoute(self.context, core_lifecycle)
87
88
  self.platform_route = PlatformRoute(self.context, core_lifecycle)
89
+ self.backup_route = BackupRoute(self.context, db, core_lifecycle)
88
90
 
89
91
  self.app.add_url_rule(
90
92
  "/api/plug/<path:subpath>",
@@ -108,7 +110,13 @@ class AstrBotDashboard:
108
110
  async def auth_middleware(self):
109
111
  if not request.path.startswith("/api"):
110
112
  return None
111
- allowed_endpoints = ["/api/auth/login", "/api/file", "/api/platform/webhook"]
113
+ allowed_endpoints = [
114
+ "/api/auth/login",
115
+ "/api/file",
116
+ "/api/platform/webhook",
117
+ "/api/stat/start-time",
118
+ "/api/backup/download", # 备份下载使用 URL 参数传递 token
119
+ ]
112
120
  if any(request.path.startswith(prefix) for prefix in allowed_endpoints):
113
121
  return None
114
122
  # 声明 JWT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: AstrBot
3
- Version: 4.10.2
3
+ Version: 4.10.4
4
4
  Summary: Easy-to-use multi-platform LLM chatbot and development framework
5
5
  License-File: LICENSE
6
6
  Keywords: Astrbot,Astrbot Module,Astrbot Plugin
@@ -8,7 +8,41 @@ astrbot/api/platform/__init__.py,sha256=HXvAy_KLtOJspoGVgDtLa7VjIZoF6WK3Puww55yy
8
8
  astrbot/api/provider/__init__.py,sha256=mJVcon0snjn_xYirk2hntwba6ymIYYC-ZKKmxvx-jok,379
9
9
  astrbot/api/star/__init__.py,sha256=OxgHGtWn3lEQGjb4twbpbWnRepUevPu7gxtDAkAsfhQ,250
10
10
  astrbot/api/util/__init__.py,sha256=L1O_mFEUDk8V4lEPsT5iiNbIiOVh7HbrNmitqzUWMZg,180
11
- astrbot/cli/__init__.py,sha256=Lz7nX3XkIPR0fNRX1jz-UKG0VryQUovCCcfeIL4MNJU,23
11
+ astrbot/builtin_stars/astrbot/long_term_memory.py,sha256=Gra7dqiqXLBH_u4M6TZmu49lxiolotbDNTwbh2aVTiA,7676
12
+ astrbot/builtin_stars/astrbot/main.py,sha256=KmiWqfQ1E7VR0Grf4jnO8d5_8tJJINbmFceAQ0FPeMU,4864
13
+ astrbot/builtin_stars/astrbot/metadata.yaml,sha256=GCPK0piMKr4C6Bb0kaBJYhiqPDoMEAYJJp2MV5pXs4k,197
14
+ astrbot/builtin_stars/astrbot/process_llm_request.py,sha256=0BOhk5iYhFvi0OQg8epdQXoND6vKX2KkHzMLF-A9KWQ,9685
15
+ astrbot/builtin_stars/builtin_commands/main.py,sha256=bXZeslvWnwCt_lcoef6Bhiq4QsuuUEijFlBH1SO7-eU,8476
16
+ astrbot/builtin_stars/builtin_commands/metadata.yaml,sha256=x0URUKI3S14RRXQ-ewgJy4dYXMKxZcEo2pSKeApGleg,152
17
+ astrbot/builtin_stars/builtin_commands/commands/__init__.py,sha256=hnIQIH-k2VTTk2CAKezFsOcxvjRRPt6U3a3s6Db9w1w,756
18
+ astrbot/builtin_stars/builtin_commands/commands/admin.py,sha256=MTUfXURpdCiGKPG6bZ68lc9WttyPNXuy-DJCQVkT92M,3339
19
+ astrbot/builtin_stars/builtin_commands/commands/alter_cmd.py,sha256=JL62Es7gCymcRd0SKcPcufFt3fUhaoB4T0WpHbv8PCA,6876
20
+ astrbot/builtin_stars/builtin_commands/commands/conversation.py,sha256=igJTY9BntCSlSvcWLr37aCPX_5qiN7AyhjcKZZgTq54,13861
21
+ astrbot/builtin_stars/builtin_commands/commands/help.py,sha256=rEBRwxqvoO11Mr6erOn2reuBOUVrq_f8YF92TmnxZSI,3008
22
+ astrbot/builtin_stars/builtin_commands/commands/llm.py,sha256=i3gqhfDolpj_KhSSq6LoRM9sbV4fqdZUdv3tXYcJBDs,712
23
+ astrbot/builtin_stars/builtin_commands/commands/persona.py,sha256=34uy4ZmE310aiNgHzJ8UNOBZWfZe4fxVnf2YA2KwDBI,5405
24
+ astrbot/builtin_stars/builtin_commands/commands/plugin.py,sha256=d0X-W8pGISmW3WN_ZIbLZMnPq7uE5klcGXUjRE8zNno,5498
25
+ astrbot/builtin_stars/builtin_commands/commands/provider.py,sha256=_aaeeFIypLF2ODmapGSfhLHSO5-O5PJgbBhfb3bVRl4,13434
26
+ astrbot/builtin_stars/builtin_commands/commands/setunset.py,sha256=MXSostn5tzq5SerKKYeqZ0a-bADq1UW6xhgNkefoawU,1363
27
+ astrbot/builtin_stars/builtin_commands/commands/sid.py,sha256=mQIk2f6zFjO7ukZf-6ZSFMLhuMCafCuRjFBTieO8kj4,1390
28
+ astrbot/builtin_stars/builtin_commands/commands/t2i.py,sha256=cfE8Z75EQEFvpxA2k1hLNWHQk5OUAHQMMn9_m5mMB2k,775
29
+ astrbot/builtin_stars/builtin_commands/commands/tool.py,sha256=lGJZOprJ2DhsBfp6XRRJILGr_FZCpf4maQSgL9PQ5mk,1140
30
+ astrbot/builtin_stars/builtin_commands/commands/tts.py,sha256=HhfzcW0z4KAbFKfX9YmnIjMINNeaKg7lBMvXcQQoVVI,1292
31
+ astrbot/builtin_stars/builtin_commands/commands/utils/rst_scene.py,sha256=dOL-hjTceG-vrxatB9Cv3xLDFfRlTO_ifWb9Pc7Za7k,781
32
+ astrbot/builtin_stars/python_interpreter/main.py,sha256=oEgnMGbeRrDV5P8acOMi0rosuxjkSI7wy3rUGLNC9Lw,21759
33
+ astrbot/builtin_stars/python_interpreter/metadata.yaml,sha256=vTngeJ2opZsSGZ6A629yRlG1TnXlJCWF93xUFPjPkWs,92
34
+ astrbot/builtin_stars/python_interpreter/requirements.txt,sha256=gkpuxm0LE4llu9-su6O-rqBL-WAN6omgCAnkThaCOSU,9
35
+ astrbot/builtin_stars/python_interpreter/shared/api.py,sha256=sWUWVDdKh2e2sdwxtpvnOlgYNYw02F0r_bxhRKX8bXM,595
36
+ astrbot/builtin_stars/reminder/main.py,sha256=hiOS-gQ8Ky_AF7ghdj0yReokt6YWV76707V3ILYoT_A,10584
37
+ astrbot/builtin_stars/reminder/metadata.yaml,sha256=LQ5czq7iDtTVPmxktLRvAjsIVKE1WqXRxG-CNWFJl_Y,83
38
+ astrbot/builtin_stars/session_controller/main.py,sha256=a4rvB65Z-Nzf7Wmhq69Ki6xRBeuWOLkE1IGiI8f-kpE,5406
39
+ astrbot/builtin_stars/session_controller/metadata.yaml,sha256=JyV3_l1BjPdklELpe2L6V5C03i_oymXaQnnf3y_gFgc,126
40
+ astrbot/builtin_stars/web_searcher/main.py,sha256=nRecRp2n3VgDvfmk-deJR5ExZGJS7Vdynhj-5nJzbeQ,17468
41
+ astrbot/builtin_stars/web_searcher/metadata.yaml,sha256=aHAKtP8UZJaddzIN2eFfglTOIAnLyJ9-wyM00Io6P7E,99
42
+ astrbot/builtin_stars/web_searcher/engines/__init__.py,sha256=yQtZwF4E19yVcyRIOLP9KEgnADXjeQd-AmCtVZtvjBs,4269
43
+ astrbot/builtin_stars/web_searcher/engines/bing.py,sha256=pn3DPR-5SO2D_RtBIU3l9Ph7PTUB-FCZAMCYuk6kd6Q,1035
44
+ astrbot/builtin_stars/web_searcher/engines/sogo.py,sha256=YA7pA5-335r7UgKpyUPAeGGZQbYEwDBO8bm08Ro8Xg0,1701
45
+ astrbot/cli/__init__.py,sha256=098VyaGkJ7w6UQeToiGhECBj0lK7m_iA3ILF9SSwq9U,23
12
46
  astrbot/cli/__main__.py,sha256=QobgMyFoLNTgI_OYddhGOZ9ZvQeBVjjz79mA2cC2OEU,1758
13
47
  astrbot/cli/commands/__init__.py,sha256=eAgppZQIqFO1ylQJFABeYrzQ0oZqPWjtE80aKIPB3ks,149
14
48
  astrbot/cli/commands/cmd_conf.py,sha256=6-YLicBt_zjWTzaVLUJ1VQLQPbDEPYACB9IVnN8Zvng,6330
@@ -21,7 +55,7 @@ astrbot/cli/utils/plugin.py,sha256=FdLVcDHH5dBpoBhLC6iWriUomp_5ONGlWNJnOG4ZOnM,8
21
55
  astrbot/cli/utils/version_comparator.py,sha256=NVUmshfb5LU4a-S453rI7opqo0QtIHvlT1KUD3pdoVM,3462
22
56
  astrbot/core/__init__.py,sha256=zsaF9IeON4NaHk_Ktr0eB7xQEFC5tUZ4UJCesC3-KHM,1220
23
57
  astrbot/core/astr_agent_context.py,sha256=bJnAm_CGzkhMnC99GA_j0Xwmi-OYoBPmgGanuS36DF4,637
24
- astrbot/core/astr_agent_hooks.py,sha256=QOMtBaamDRiylGIby5D5ApThk94Y_Dcy4gDnhPBHXKo,1073
58
+ astrbot/core/astr_agent_hooks.py,sha256=x2D5_edgbLg19JncxSZ9GgHjderVKGP8KgmQdxkeMWQ,1363
25
59
  astrbot/core/astr_agent_run_util.py,sha256=D_K2MOhAp0O8tQpAkrciiUhjbgDOo7zewMrXpzjdgsM,5534
26
60
  astrbot/core/astr_agent_tool_exec.py,sha256=DpGqVhQzSwL2EN6wfBJrlcwH7b1jLkX5b_1eI5xqUB8,10258
27
61
  astrbot/core/astrbot_config_mgr.py,sha256=SUvusfo8Qk89eNpEmduWcXuczJ9g5TBH-VOV69ax28g,8950
@@ -31,7 +65,7 @@ astrbot/core/event_bus.py,sha256=5Lg5L0UcwcJeL9NuX7DiTSRR7fr2IoaSbR6ECDKD4K8,272
31
65
  astrbot/core/exceptions.py,sha256=GVCUgAjpvUHLL59MkJalFrSp_HbtliChu7XII_Px2WM,219
32
66
  astrbot/core/file_token_service.py,sha256=8X0Qyo-NPGhtxy6IcRsJg7Z2tx_ULPf_7OKvw-KBk6o,3317
33
67
  astrbot/core/initial_loader.py,sha256=q798G8wEti7-p3UC0y1GB3MOK-kO6z1Nt826iO5nJVA,1802
34
- astrbot/core/log.py,sha256=MQ249OPPudl-X8FQrs22IBR1lhPl4q8EdSvHy1K_EH8,8532
68
+ astrbot/core/log.py,sha256=85jID6PgcFx8S6RzBIjF-AJa8FQniqE5NNQuXUSQOCo,8545
35
69
  astrbot/core/persona_mgr.py,sha256=g6Xzhrvlvk9YRrcPNEpevHiCa6GVfut9NoKX7PRNmXM,7434
36
70
  astrbot/core/platform_message_history_mgr.py,sha256=0frxrq6Bt18OXbt24uRnQl039wpi2gK5L9ONLtBuMsM,1580
37
71
  astrbot/core/umop_config_router.py,sha256=PpCZ_SoQ6yXfgCJQiAVtuXYoowhEt2J-lCflHxNPoD0,3642
@@ -41,22 +75,26 @@ astrbot/core/agent/agent.py,sha256=wquvKo18JcsJM56dwKyFFAoGhc5qLyQaeqdZ-LlZsWQ,3
41
75
  astrbot/core/agent/handoff.py,sha256=AxO0yx4Uscy0CO-3Q3fvDOfpfr3gUscLRplH7gH7-Lc,1194
42
76
  astrbot/core/agent/hooks.py,sha256=ooe9uUz7czlVt2W7jTDwkRbI-qDrOOXWjCaXtiAkrvE,830
43
77
  astrbot/core/agent/mcp_client.py,sha256=u52GPgpeZ1DCCVbI6x4kOGyodD_kweB8H1OgaVg-BZs,14085
44
- astrbot/core/agent/message.py,sha256=AdpEkpbZUmrCPhVZCGPTTjkR6NH2p4NAqgaQ9MJRWjw,5939
78
+ astrbot/core/agent/message.py,sha256=ufmUrXjboQHi6j7PGttSR5pk-degwjR1kgV3q0slauw,6901
45
79
  astrbot/core/agent/response.py,sha256=g1aw5zE3Y_PsU7z1SVrNTJRlGnqdyuqG5-49LewsL2E,859
46
80
  astrbot/core/agent/run_context.py,sha256=PJYgGlq_m6eBo1ftHE0M37UzOwTcXJNeKgKri1NC2Hk,677
47
81
  astrbot/core/agent/tool.py,sha256=ITSAmYBp2y-QPWdZkc-KXof3UIHjQ2rmweyUPuYykFA,9440
48
82
  astrbot/core/agent/tool_executor.py,sha256=8GGgVB_JaKGVLQUG1epeL-lvKMqgfQ7mJaOPnVytnXo,438
49
83
  astrbot/core/agent/runners/__init__.py,sha256=KwR34OKGVSQpJ_MaGVP_MX5L1SZ4oU-lv4GuMbSF5Ys,65
50
84
  astrbot/core/agent/runners/base.py,sha256=OHMt15x1C3O_F3EJI2Nb_3hwggGUkJHuPWWCa1kHX9o,1885
51
- astrbot/core/agent/runners/tool_loop_agent_runner.py,sha256=ZXSvTb9SoZ98VfVzneL3pDpoRObasGSU8mTCJB9p91I,19520
85
+ astrbot/core/agent/runners/tool_loop_agent_runner.py,sha256=IryuN7-b3KYnp3JCuHywqJb4iqJ2QBVf_QlVaTD2jKI,20401
52
86
  astrbot/core/agent/runners/coze/coze_agent_runner.py,sha256=bc2GImNsBTyXuotl_ohKYiNqws5Dkcms_xmIoUtDJMM,13846
53
87
  astrbot/core/agent/runners/coze/coze_api_client.py,sha256=0k8pQsFsbjKdF-jkY91qZWsC8YSaSmwC98TMTK-zqw0,10853
54
88
  astrbot/core/agent/runners/dashscope/dashscope_agent_runner.py,sha256=xr3otT0o6kHEy_sWjUv4xh-KmES3fjlowIPrtcKYiVI,13339
55
89
  astrbot/core/agent/runners/dify/dify_agent_runner.py,sha256=LYwpjOcBWf3XlwNVzrDvM4Kg8TK9SHSDtWmHcnmIlj0,13213
56
90
  astrbot/core/agent/runners/dify/dify_api_client.py,sha256=OXukDVgNx3VmYw6OCzjXyP8JmDWEFuy81sD9XnC4VRo,6530
91
+ astrbot/core/backup/__init__.py,sha256=8uBY2FPYWfIsVZcAgfMWh5-Kwkd50HtyiM0gCETuD4U,641
92
+ astrbot/core/backup/constants.py,sha256=_e-SjZ-uvithscUqnqvPVtIPWN3PBPkSu4yHHKM7pHM,2251
93
+ astrbot/core/backup/exporter.py,sha256=tULFmXhYqRhJtAwePFkxXMSKqct1MSMyISv9LrfKwVU,19058
94
+ astrbot/core/backup/importer.py,sha256=efGW5-5ZAfvN1mg4rcc5OrcFTLfyj7L9T0Yd7SBUlNo,28618
57
95
  astrbot/core/config/__init__.py,sha256=vZjtpC7vr-IvBgSUtbS04C0wpulmCG5tPmcEP1WYE_4,172
58
- astrbot/core/config/astrbot_config.py,sha256=6bUTnMCOyaS8s6ELsWctDfUFTB53fKJQNu272dZXkdU,6347
59
- astrbot/core/config/default.py,sha256=_y_rV_Xc0RyeVZurVKKSStCRhTncuWQ2KDI5l60bk6g,147674
96
+ astrbot/core/config/astrbot_config.py,sha256=5r2VhCNO4VuGCqct12g10-TcvAKyXV40-suk5vRMGns,6436
97
+ astrbot/core/config/default.py,sha256=Fv5InD2CM2hpbsMYr_CyTNptfnJ9latrgqyaJctx4YM,149877
60
98
  astrbot/core/config/i18n_utils.py,sha256=HJn_0XeeVS9ryCBelYfnc0nEn10LlX702fcSSFrF1J8,3879
61
99
  astrbot/core/db/__init__.py,sha256=OnvNaC76hYp28Bq9zkFXMl19zn7w-FC1zxyLgsemGvU,13400
62
100
  astrbot/core/db/po.py,sha256=eoI4sjpFb9CwRy6_Gf6-zHVSka6-oJr0LA4qcepqHzU,11804
@@ -81,7 +119,7 @@ astrbot/core/knowledge_base/prompts.py,sha256=4pn1rPvqUZY5-3SnUA0QYuI8LG8IQi0j1b
81
119
  astrbot/core/knowledge_base/chunking/__init__.py,sha256=haajNOd42ZA12a2kIdeZ31_QsTsL4rZRU5xaXJvs0Oo,155
82
120
  astrbot/core/knowledge_base/chunking/base.py,sha256=Zy5q6uA-ttPxpzbOGuFGlNlsCRWUeokMl0adQnWIZBA,471
83
121
  astrbot/core/knowledge_base/chunking/fixed_size.py,sha256=WUHJ400ZHJncAPRMkAIzgUbbuzvIwDkwzy-cORRiCSw,1559
84
- astrbot/core/knowledge_base/chunking/recursive.py,sha256=QaDEHdThlJpw7PJEwcMSicK2AwGuoPUfwbMzUyMcRzM,5790
122
+ astrbot/core/knowledge_base/chunking/recursive.py,sha256=0qu_SVAXCZo3-nl7jD8MQPYEwCx7wFjXekkjEADekSg,6126
85
123
  astrbot/core/knowledge_base/parsers/__init__.py,sha256=8Ol3IFMRUVryh8YKG_izmNs4lz4-lQOzSnXHFYcL5Aw,256
86
124
  astrbot/core/knowledge_base/parsers/base.py,sha256=4bQyCfXaQs5OFHi9fanhXshBaWkKwmpTp3R2eskcLi8,963
87
125
  astrbot/core/knowledge_base/parsers/markitdown_parser.py,sha256=dmlQ1OwAND-e87fL227dAfumZ3CnZN29mmSQimE3naw,701
@@ -111,13 +149,13 @@ astrbot/core/pipeline/process_stage/stage.py,sha256=tOg6HYGVU1GoY921YBYVO1MTM7a5
111
149
  astrbot/core/pipeline/process_stage/utils.py,sha256=q4V5G0PZD5b5mPh1lM-6w79LKGpp7RR7-PqYFhWpopM,4061
112
150
  astrbot/core/pipeline/process_stage/method/agent_request.py,sha256=GlGrGCsCASC4a3PpG6Oc1907aLdl_PrUMXrFiEiEEzc,2043
113
151
  astrbot/core/pipeline/process_stage/method/star_request.py,sha256=C-PTq_Wpq4QMS2ecfRDCcDSX3rYyldfsAN-jAaEEb-w,2430
114
- astrbot/core/pipeline/process_stage/method/agent_sub_stages/internal.py,sha256=RSeEqvJEV33RH6OGHEdDaCYyv6zt7RosG4j-hVdbjnc,21263
152
+ astrbot/core/pipeline/process_stage/method/agent_sub_stages/internal.py,sha256=z8x6KXICQ-JWY8Szd8OyxA-zSHz8-e7yJEGJGmYCTeU,22096
115
153
  astrbot/core/pipeline/process_stage/method/agent_sub_stages/third_party.py,sha256=LNBRItSpZn0MLP4fyHQ_3gUJ8lnmCwuPlqnZDVFLI6Q,7332
116
154
  astrbot/core/pipeline/rate_limit_check/stage.py,sha256=9EVJ0zYtxATFsj7ADyWDYcSGBRqmrMiKWp1kkD9LONI,3962
117
155
  astrbot/core/pipeline/respond/stage.py,sha256=RIYGXTG-XvBhgRqaHyJYWlsZjskS9pgV-2jm5o956ho,11042
118
- astrbot/core/pipeline/result_decorate/stage.py,sha256=Ml7_E5P2YpGLHRc9aIBbL2gylLNsRuQqwxejEgPaIoo,17318
156
+ astrbot/core/pipeline/result_decorate/stage.py,sha256=zbXWWpHUy7hU3Vol8IhWU9bF4yPEA2y3-FSPsCJ17o4,17486
119
157
  astrbot/core/pipeline/session_status_check/stage.py,sha256=cFp6MMdFzeURjmW5LCrzsTGD_hnJN5jhDh_zoPbnFAw,1291
120
- astrbot/core/pipeline/waking_check/stage.py,sha256=u4s-UACcyFhydAbFKutvh1T4Aw6wdUyI_OU2hgCLiao,8650
158
+ astrbot/core/pipeline/waking_check/stage.py,sha256=iJDthpAJtZay42fTda6MTqP1JO5-hZsoYKo1mdsIpXw,9911
121
159
  astrbot/core/pipeline/whitelist_check/stage.py,sha256=x6o4oswIvVtHFRbuKuLFoyFEgx-gSo3IMGYvopu8d9A,2411
122
160
  astrbot/core/platform/__init__.py,sha256=5Hhb2mIb8mS2RWfxILIMuV03XiyfqEbn4pAjvi8ntl0,361
123
161
  astrbot/core/platform/astr_message_event.py,sha256=At8sT8cBrlPSZoozNsw9Bn31dpMjBXGxkwyZMERRtOQ,14746
@@ -129,36 +167,36 @@ astrbot/core/platform/platform.py,sha256=U2jq248bfPaAcIa8PUO5aiPyAOGIN1lz6LVnqQO
129
167
  astrbot/core/platform/platform_metadata.py,sha256=PCqNk-H-V7BtiQXbbyHd84s43BBIZNhUQ9X-SVKP3uM,693
130
168
  astrbot/core/platform/register.py,sha256=ptIPhVvbzODuWwXr8J0jJSzSPfv3rr7F67gXqvIpvvk,1985
131
169
  astrbot/core/platform/sources/aiocqhttp/aiocqhttp_message_event.py,sha256=ycNdNPKUnBJ3hJuDn_S8GM_W7XFbhumpotM8yqcOrqg,8146
132
- astrbot/core/platform/sources/aiocqhttp/aiocqhttp_platform_adapter.py,sha256=y6fx7UVkBAm67aTQO9dDQLpdcnfPt5kXco_sN_mL620,18642
133
- astrbot/core/platform/sources/dingtalk/dingtalk_adapter.py,sha256=FBlNB7BpwGIp0frGNY45seep4hV06fPmckfOH7qFS58,9558
134
- astrbot/core/platform/sources/dingtalk/dingtalk_event.py,sha256=01If6T-YJqlCfmyIh6UO668LA1f5EKUqeoZLVYkxds0,2850
170
+ astrbot/core/platform/sources/aiocqhttp/aiocqhttp_platform_adapter.py,sha256=eoOgIvmwK1pMED6B3D_0dcIQlrvpUDdtOpDYBeo627U,17906
171
+ astrbot/core/platform/sources/dingtalk/dingtalk_adapter.py,sha256=3Ce6BIyPKjRvSqUgkHJxz4g-diKerPirA1JaJujxDAg,9381
172
+ astrbot/core/platform/sources/dingtalk/dingtalk_event.py,sha256=TxKRBlEjYY2YFmHZfLbLSH5YR0ghj2SgTIlDEAiPwF4,3513
135
173
  astrbot/core/platform/sources/discord/client.py,sha256=YGrUSopQKDRFfzjCdcBQm-EcNWonBwAgXzW678G0e_c,5181
136
174
  astrbot/core/platform/sources/discord/components.py,sha256=qKcGssKA3vBLHpad0g96KMD722Ng5jYKgpQBGQFOPX8,3971
137
175
  astrbot/core/platform/sources/discord/discord_platform_adapter.py,sha256=rnHqOrCGCeZ0JzCKj335zjuWMqDNAJ0k8jnpjWqWmoo,19554
138
176
  astrbot/core/platform/sources/discord/discord_platform_event.py,sha256=nVuqZtoF2Vl3Bo5-rik1YFJZz892qkj30T0qCdVSB9c,13332
139
- astrbot/core/platform/sources/lark/lark_adapter.py,sha256=9rDfS_zcsdCODa43WJNiHByPYC_SoVBOjKxhV-viY3Q,14079
177
+ astrbot/core/platform/sources/lark/lark_adapter.py,sha256=mXDdgsWhVMZzZft9CA76-G1MD_7f3KYHZBMruUx_VPA,13734
140
178
  astrbot/core/platform/sources/lark/lark_event.py,sha256=0H1TR-ajktyRhjLxY6-Xf8x7Zkc-2wfz4c-EeBEEOrc,6422
141
179
  astrbot/core/platform/sources/lark/server.py,sha256=athZuUArNqlpCV6_KDkv7AQrYbh7Z99gThN1ZsCvMeg,6385
142
- astrbot/core/platform/sources/misskey/misskey_adapter.py,sha256=JTPcBhCtray4rCk924X8ruy6mL7jPzUsVX0f3vzoO0E,29614
180
+ astrbot/core/platform/sources/misskey/misskey_adapter.py,sha256=hbO9ZL0FCLcL2sxqRnY6E4hsOYl6nzwNCMYlY1Q_kSY,29403
143
181
  astrbot/core/platform/sources/misskey/misskey_api.py,sha256=YlE1zxHs0dPWJVuVsWR0Lr0d9TPQmnTwsLCQKI4p6Gk,35905
144
182
  astrbot/core/platform/sources/misskey/misskey_event.py,sha256=2PYSU9arxzbS71jz5D__3maFFNKqxYZiGmXtLuC_aAc,6550
145
- astrbot/core/platform/sources/misskey/misskey_utils.py,sha256=KEzX-_5-EfzKmLdcrZyQiUR09NHXDT0A6v3DrDp3fyk,17859
183
+ astrbot/core/platform/sources/misskey/misskey_utils.py,sha256=_B1Sr8ajI1ljWBoxhwzOVMNt_pFoVNfhIsOVokKI18g,17741
146
184
  astrbot/core/platform/sources/qqofficial/qqofficial_message_event.py,sha256=cfUsFRmm18-5RvMeYTXl2A3_-Me4sxb1vrjODrbuG4o,13725
147
- astrbot/core/platform/sources/qqofficial/qqofficial_platform_adapter.py,sha256=Qk2Pg-CvHYhhJGabft-aFFMXHp1FuAGitNo4EHPYXsw,7572
148
- astrbot/core/platform/sources/qqofficial_webhook/qo_webhook_adapter.py,sha256=PNQQ9kNvaigG8iE48ZpJ2Y057u0fF1lMkIF8elSWjqQ,5752
185
+ astrbot/core/platform/sources/qqofficial/qqofficial_platform_adapter.py,sha256=p8ifAmXtvs7BBqRukqnkkPQ62niwGTjUIP50YUrQa7E,7388
186
+ astrbot/core/platform/sources/qqofficial_webhook/qo_webhook_adapter.py,sha256=AoELYkwpEUDhe10Yq1ltjpnL2kCIGsgjy3Ok90abWl0,5574
149
187
  astrbot/core/platform/sources/qqofficial_webhook/qo_webhook_event.py,sha256=vqifw9itvrcr7sV9cL0T19qLZ7I9CWORi4oUBgZrOqc,501
150
188
  astrbot/core/platform/sources/qqofficial_webhook/qo_webhook_server.py,sha256=oV5l58IcE732c3Y7lBfJpro52dahC5scPP_SNqEMmg4,4219
151
- astrbot/core/platform/sources/satori/satori_adapter.py,sha256=_pJN4CJE0WH6tI12Q4FEiXxIC6pJ74vyfFrzaJ9bs3s,28043
189
+ astrbot/core/platform/sources/satori/satori_adapter.py,sha256=2utJY9CACAZo70_R91H3ZZrDNgTb-Tf9dQrvQUVhhMs,28142
152
190
  astrbot/core/platform/sources/satori/satori_event.py,sha256=agI9FYUwBZM2CnxPANxDOw9vnRqPQSCGZi6UK5UVrdA,16183
153
191
  astrbot/core/platform/sources/slack/client.py,sha256=JkdC3e12I08cnZv577krfIOlJWW4MdXgdBemVPkPuAE,6039
154
- astrbot/core/platform/sources/slack/slack_adapter.py,sha256=ZUzAyQsb1ZrgWhZz9hNzoGCZJuTAb_eOW_zk3E08rdI,17260
192
+ astrbot/core/platform/sources/slack/slack_adapter.py,sha256=4hzYi3SiA97LWCjTZmqfLanVQDZynjGi0t_J2x38qCg,17057
155
193
  astrbot/core/platform/sources/slack/slack_event.py,sha256=Vb4IHuTsRi22PxxjUZ6TKfDg0DpiYBMxAeV8mhMPBTE,8984
156
194
  astrbot/core/platform/sources/telegram/tg_adapter.py,sha256=juXvp5iiX39oDs9WoK6SblOtQV1ovb3YJIT-pIRL-bg,16099
157
195
  astrbot/core/platform/sources/telegram/tg_event.py,sha256=urZ7qMLXcygx1TQxVC04bVS1Z1_1Yls-5qJqOFHrROA,11782
158
- astrbot/core/platform/sources/webchat/webchat_adapter.py,sha256=CjMpKAqs1DbMhD4irkHS2TwpaYaoKFhLXxR_cfuzjwg,8738
196
+ astrbot/core/platform/sources/webchat/webchat_adapter.py,sha256=3KGvJTowv4HnXXveAkZ7RfjFxpKbpD4r3x5fwf9XGuw,8672
159
197
  astrbot/core/platform/sources/webchat/webchat_event.py,sha256=ZQ6KABOxYIlRsAFzDcVDBI_c7WJkJNK-Iuwuw-yPMJQ,5690
160
198
  astrbot/core/platform/sources/webchat/webchat_queue_mgr.py,sha256=2P0hQRNn7tMs9O6MLQ1GkJSSKz7R5Q8k_0JxEltSKLM,1364
161
- astrbot/core/platform/sources/wechatpadpro/wechatpadpro_adapter.py,sha256=UKXfOwOGW2CtVdx-o4x1VnLXOGSwKgQsUUtQBifM2rE,41511
199
+ astrbot/core/platform/sources/wechatpadpro/wechatpadpro_adapter.py,sha256=jy5xrKPwqtlVOnGh8n83NUEs6SJGAm0t12JdtE6_-Os,41308
162
200
  astrbot/core/platform/sources/wechatpadpro/wechatpadpro_message_event.py,sha256=pdvKtziixnvNrrk3fhJtUZrfX33LY0X9bV5GPmn4ITA,6574
163
201
  astrbot/core/platform/sources/wechatpadpro/xml_data_parser.py,sha256=n1PZRcNjGN_w1-z2CXcIMZL7oSTprteQpPbJ992Lsu4,6306
164
202
  astrbot/core/platform/sources/wecom/wecom_adapter.py,sha256=n0SlqDKoJuH0sPu0rXcvPzXD346l7Vw8lix8mAuPUVI,15608
@@ -178,45 +216,46 @@ astrbot/core/platform/sources/weixin_official_account/weixin_offacc_adapter.py,s
178
216
  astrbot/core/platform/sources/weixin_official_account/weixin_offacc_event.py,sha256=tGfu6DNsqRCrr8P83VVep3Sh035-esKHTXriDsIOdJA,7233
179
217
  astrbot/core/provider/__init__.py,sha256=0NVyKtTapnrUy0lkXVYWyM5KetwtDwXmTwBzqLG0MA4,142
180
218
  astrbot/core/provider/entites.py,sha256=0eYiQ-xttqFTb3WZR2b1oemdZy3d5sevELvj9FixJtE,388
181
- astrbot/core/provider/entities.py,sha256=TxlT1trG3hpD-uS023gmJfTn8jINvwmPYdfkwTJzg1M,13980
219
+ astrbot/core/provider/entities.py,sha256=HR6roJXESNWCRu_VnqA4A6SxnDOJMW2RIGh-yl08-8M,15490
182
220
  astrbot/core/provider/func_tool_manager.py,sha256=2pBKHAuj-6rITOipHmH8hrs8D4N2bAUx5TcJfUVYtsk,21241
183
221
  astrbot/core/provider/manager.py,sha256=ymmjvlOjhEEF6Jlmfg_Z8GSwYWeaj6EO0BzRJoGJ_Pg,29625
184
- astrbot/core/provider/provider.py,sha256=Jc8oXoj2-W1LP9nEung63IHGVN8LYsaCPb5Gc6jYfRE,11954
222
+ astrbot/core/provider/provider.py,sha256=Ixm7IfoIQ-Nlnc12VrzYDEqB630MUrAl2oXwFewO5Gc,12181
185
223
  astrbot/core/provider/register.py,sha256=0WMYrT9vbRjeq-72HD0oRT45kJmeKA96UgSItpTJbX8,1904
186
- astrbot/core/provider/sources/anthropic_source.py,sha256=3LoIq5BegBC7tlBbkLrhKAx2XVo4yjlVQH_fBI1mSJU,17246
224
+ astrbot/core/provider/sources/anthropic_source.py,sha256=Jw0Ky7aq566TAQBdeyqyfYuZROO3gxnoCZGWE8WWwB4,22048
187
225
  astrbot/core/provider/sources/azure_tts_source.py,sha256=m6zbwJGSddyTlhdD80CxWtWWUISmTSx8CboUbYCUKdM,10086
188
226
  astrbot/core/provider/sources/bailian_rerank_source.py,sha256=fsfVqzYMaZHrsPDdJlNRKSnYOYRNwmzl6OuSo-lkF2s,7587
189
227
  astrbot/core/provider/sources/dashscope_tts.py,sha256=-qBMwbIt_QSmWCT_uPAxrXSYuEbYJZ3WzjE_FhMhxgg,5629
190
228
  astrbot/core/provider/sources/edge_tts_source.py,sha256=dsf6YtSGzCJvas3BqBwHSn8vlMgQ_vgD9NEwngqDlEo,4690
191
- astrbot/core/provider/sources/fishaudio_tts_api_source.py,sha256=z5yJuc47iky31N0Za3Li7uwMP15N1gsKJkV9ybIbKew,5556
229
+ astrbot/core/provider/sources/fishaudio_tts_api_source.py,sha256=w3TUrNpJ9preNd4jeyCcjjjXZpaAo8TesSFIDxtLqyA,5917
192
230
  astrbot/core/provider/sources/gemini_embedding_source.py,sha256=bj4iXnMyONTyUBmBFeezPcBpjtfX_UBjMrbwMFyCis8,2607
193
- astrbot/core/provider/sources/gemini_source.py,sha256=o4vrlq6Pp7hcPJpVq4ppx1IOmG_1JPJNrwqt923QlMw,33916
231
+ astrbot/core/provider/sources/gemini_source.py,sha256=puj7RsH7ZXQ-XyElc4ZYRDXFw4JwxkPDk1pVDtXQPBg,37350
194
232
  astrbot/core/provider/sources/gemini_tts_source.py,sha256=6LJIT2aTjoZaMszjYRzDu38prsO9G5Xg7SzJmQb2TzE,2880
195
233
  astrbot/core/provider/sources/groq_source.py,sha256=NqmiQn37mrMsaTyGX25eNzMpIgkCifY-5TJO8DFzHaA,456
196
234
  astrbot/core/provider/sources/gsv_selfhosted_source.py,sha256=RYQgwCc67N7RWPaODN4sSLJZn6o5gpgk_jF_KaRnD0M,5942
197
235
  astrbot/core/provider/sources/gsvi_tts_source.py,sha256=nGGctfkzrAeTofAvB2b_VNTYHW44SzyO12B-mBWb1rY,2011
198
- astrbot/core/provider/sources/minimax_tts_api_source.py,sha256=oQoRYTU-_MrQqCkdtIF4AEa1HSgtQJgD3prk7Yp7b8Q,5925
236
+ astrbot/core/provider/sources/minimax_tts_api_source.py,sha256=IA_q9o7CyrCNl4p0KBMIpHFoSrZcvVdgazdrXVxSpPI,6027
199
237
  astrbot/core/provider/sources/openai_embedding_source.py,sha256=TMUU7J-uo3KrERr1ZKTjoNK9byEm-IU0UZK5YHM3WpM,1614
200
- astrbot/core/provider/sources/openai_source.py,sha256=8Pb7RMRfY8PGjyYiu1_kXhRyv-WHHRFsII2kyfWShxU,25055
238
+ astrbot/core/provider/sources/openai_source.py,sha256=VUXFWdAri8E8WnQXiNiWWhti2eudaF1uoxUwPNAUESc,26761
201
239
  astrbot/core/provider/sources/openai_tts_api_source.py,sha256=DVviGQdBpCk6lW3LjnJHzwZr9wGkXRDNwfoQ3FYFVcs,1667
202
240
  astrbot/core/provider/sources/sensevoice_selfhosted_source.py,sha256=99I6OfSUDJDgXCKK__QNk8EaCbX3TElGIbjBY6VJkWg,3900
203
241
  astrbot/core/provider/sources/vllm_rerank_source.py,sha256=-aXaIPRIgzzGDA7ev4Nuq4FTBM_qwMPgc5SpMtIWTKI,2355
204
242
  astrbot/core/provider/sources/volcengine_tts.py,sha256=pcw4lXbyyiLqJWRHZEaqKMcp8lYPZsDf4OIH4e5mHOw,4065
205
243
  astrbot/core/provider/sources/whisper_api_source.py,sha256=OuhxXufqL61Qax95P4GcsHg9w3gygXeCljyXqsCvkcg,3582
206
244
  astrbot/core/provider/sources/whisper_selfhosted_source.py,sha256=I65tuE34UtyVXJP8QblQK5oUnoSW67qghwzW4v9DhLY,2760
245
+ astrbot/core/provider/sources/xai_source.py,sha256=wxAlbmQnbzhTKsVWK8fe6w7DNadZVkzRhjwPkyFFwd4,1071
207
246
  astrbot/core/provider/sources/xinference_rerank_source.py,sha256=DsF4JVlXGeeqqycyP05zz0I-jJ3R1cXiTUsjDeaQNpE,4692
208
- astrbot/core/provider/sources/xinference_stt_provider.py,sha256=DPEc7cVo2KXKGIgb8IXKagPH9qpNAdp5gx5PAink0j4,7731
247
+ astrbot/core/provider/sources/xinference_stt_provider.py,sha256=A2kzsVZD6Fnbfgv7r1xY1y5tT05mRKZYfRVfe8vN8JA,8198
209
248
  astrbot/core/provider/sources/zhipu_source.py,sha256=oOCPXGsR9PLWOuu3h8RSVNRw1Qy2Se6dwmeFR3zk3GM,612
210
249
  astrbot/core/star/README.md,sha256=LXxqxp3xv_oejO8ocBPOrbmLe0WB4feu43fYDNddHTQ,161
211
250
  astrbot/core/star/__init__.py,sha256=iTlnjfEGJGy--78PhG7F1cKj9VwJVcDNFtGomX8hRO0,2229
212
251
  astrbot/core/star/command_management.py,sha256=V6LT_xNGCEQ6f6vMh0H8vSolsPx0bIPcFQnbN7QyGOY,18100
213
252
  astrbot/core/star/config.py,sha256=FgrBz_fUrBU0-9BxD8enX-xGNGVbFxst3UT10sboYNA,3531
214
- astrbot/core/star/context.py,sha256=zudyvlcVJb5zO7pAh_TGQOUQ3q8JSoKM1wldcciXypw,21234
253
+ astrbot/core/star/context.py,sha256=qkS4HlEK92mdEaaOHw76ZICSgxWXwUl4Ou9Oj_CqzC4,21239
215
254
  astrbot/core/star/session_llm_manager.py,sha256=W_ZgNDyUPjMQGccqnK83hFjZvSCv5BLQeyv5fHvRLUw,5307
216
255
  astrbot/core/star/session_plugin_manager.py,sha256=8sEzOxf_Gq-dwK_S-4rwocAFsYzx7Yi4FJuMRttPTac,2830
217
256
  astrbot/core/star/star.py,sha256=Wkf81teNZ27JE_JrENuP0SrpFc2uFYRxHQsWo8R9-No,1826
218
257
  astrbot/core/star/star_handler.py,sha256=x95UxHomijT6AamIlpij9Q2PweOw0jXPciFlS5IpPVI,7616
219
- astrbot/core/star/star_manager.py,sha256=GDN_aOJLLakQBN0wuEyD3hAtyNln_9UzX8JIryUupUA,41165
258
+ astrbot/core/star/star_manager.py,sha256=o7RWyJ69om2ynB29wPLR1AmY0spsvcaIRKSOejwimt0,43171
220
259
  astrbot/core/star/star_tools.py,sha256=4q8emjyTbyIsVXHmzT88kX9uK28rIhlHc0re40Xm6m0,10847
221
260
  astrbot/core/star/updator.py,sha256=4pl42Ks_yjJ3kydx3BwOqocAczhhFBrRnxhBKh4_0Eo,3106
222
261
  astrbot/core/star/filter/__init__.py,sha256=bC6eHXh0CjzHmn-LTvsanWReoGIPhhMnBSrMLh97hZQ,470
@@ -230,7 +269,7 @@ astrbot/core/star/filter/regex.py,sha256=GHB5YvBMLFbOOiFVUnEHaqHTER7sU1pAVrAcXdw
230
269
  astrbot/core/star/register/__init__.py,sha256=Z2dbNKCsh5wzh9a6XFvb_x-9wO5SvowynJAd8kpWEJU,992
231
270
  astrbot/core/star/register/star.py,sha256=Eto7nD_HFuCNt-VJnXUXKv2D7a5TQ6qkhzLJ_itXo_8,1920
232
271
  astrbot/core/star/register/star_handler.py,sha256=SF_peEWGfAPxGvwvsliMdARsW7e3u86AhNBoSamC1JY,18097
233
- astrbot/core/utils/astrbot_path.py,sha256=tQFD55EFwGbpR1tpoJADpdElPS5iTFAZVLIxCVvKypY,1213
272
+ astrbot/core/utils/astrbot_path.py,sha256=RhuIbIH9sWJQxJYbVkxwD0xBK4lG-ZSQGKg35mLdTpk,2526
234
273
  astrbot/core/utils/command_parser.py,sha256=Cwd4zzyKEoC-er0a-9WZ5n2g4F8eH9p6BHxD96gjaVM,617
235
274
  astrbot/core/utils/file_extract.py,sha256=I9jgcaPYK74-BwuI18oUpoupnPYINeP3QFD3kFodqBA,697
236
275
  astrbot/core/utils/io.py,sha256=WUgM6V9_a-hi3CRKS9a-RFRAkZ5yu0M3WgpbR3-3tCw,10817
@@ -239,7 +278,7 @@ astrbot/core/utils/log_pipe.py,sha256=jphGRAdmzhBVRKdpJwOP1AtpbGlun9v7Cr50kHZtly
239
278
  astrbot/core/utils/metrics.py,sha256=CxEkdV2gJai0mw1IbL4DJ81WiQ5mY7v9M_-T6UtRJDs,2427
240
279
  astrbot/core/utils/migra_helper.py,sha256=NmxAdSGcXZZxgVThbGIHTbtRG4zPYIj5Xzog4l1_ou4,6255
241
280
  astrbot/core/utils/path_util.py,sha256=FXx9oBrsL-dcq-6OlmiSwk2ygqJ9vMmkCBEi2sL50f8,3050
242
- astrbot/core/utils/pip_installer.py,sha256=H8Bk5QKh-GBBRvGp7sDKDkh6A1UDy4xU9AtUL10B6Jg,1969
281
+ astrbot/core/utils/pip_installer.py,sha256=0XIHDAHHmY-hej6sgFdMl0R0FdUAf3Bgsp26t28g6GI,2509
243
282
  astrbot/core/utils/plugin_kv_store.py,sha256=L_XGux1K2a3fSxqukTg1XN0pq7AosZNeXPpXlAk5eWE,854
244
283
  astrbot/core/utils/session_lock.py,sha256=fZDIbyy1nYfgsQSGUc_pWHZp4Kv6inXjENP8ay2bKGI,913
245
284
  astrbot/core/utils/session_waiter.py,sha256=Q4zdrvxs-cLLopLCQES6bYZ6MQrajl4fzqZjmmXX170,7073
@@ -254,17 +293,18 @@ astrbot/core/utils/t2i/renderer.py,sha256=3IH-eLxOCIpEPHjXA1GF-ylGGyKz4GlMIbkjfv
254
293
  astrbot/core/utils/t2i/template_manager.py,sha256=Pfht7PZCdVteF93lja1LZQcUFNeCOKLs6EFx9XMeYKQ,4520
255
294
  astrbot/core/utils/t2i/template/astrbot_powershell.html,sha256=UcjetoIJG3pJRUHMDOor3Nhj7FFmVXXpkySkpXXztO4,4943
256
295
  astrbot/core/utils/t2i/template/base.html,sha256=fQvq4I4lrlH2s_jwAzj62lWeC4g87xXsYJMJ0XunCPA,6619
257
- astrbot/dashboard/server.py,sha256=HfmWHj4aqYcTT1re0vD4Fw6BHedg4bcfqpnWiisFWko,9748
296
+ astrbot/dashboard/server.py,sha256=XMk7F0H7ClfvlbewxYnT40SyJT2QKT-otd8wc3NmWEo,10025
258
297
  astrbot/dashboard/utils.py,sha256=KrAv0lnPaVR0bx8yevT1CLGbSNsJizlfkKkPEtVVANI,5355
259
- astrbot/dashboard/routes/__init__.py,sha256=57ZYHYQfNI-YAiA8K9m2tRJcHzMKcZ02Vu-A_eD0HUE,894
298
+ astrbot/dashboard/routes/__init__.py,sha256=mBpVLnU80EItRZ9ifWfplZs11riZaBli0UrQWcpilno,945
260
299
  astrbot/dashboard/routes/auth.py,sha256=rYkvt3MpCY9BhWjG0DUoX3YaBkJT1Id7M2pKqTmXbvo,2946
300
+ astrbot/dashboard/routes/backup.py,sha256=aDG4cbzLwapSsMiHQktXGyGfQdaaln3dkU9v3YJ8XyY,39301
261
301
  astrbot/dashboard/routes/chat.py,sha256=ntQrgrnOTIep_9Ycb1DCZjZBJPtlIJUO2YnTvC1GXFQ,27120
262
302
  astrbot/dashboard/routes/command.py,sha256=DYwcqUF1ibFVQ4qMX3Nob7f0Kz5HmQE0iBWrVNF3Hk8,2917
263
- astrbot/dashboard/routes/config.py,sha256=4CsabE-ARxmLSGg30ZxlW-EvGHD-ppWHH03jml5-uQc,43326
303
+ astrbot/dashboard/routes/config.py,sha256=86dGTb9z3dX0yNwIdEB7eVB9llM_Yj5ojXdAsZVndZs,44766
264
304
  astrbot/dashboard/routes/conversation.py,sha256=TWGY7BJ9QfmbxurAieBrbMmCi4_Ua2klxsAUlSRXbng,14302
265
305
  astrbot/dashboard/routes/file.py,sha256=gULvXP9PnVOQlyv_PCEzZQE5ptnGQEjFPvwOLxdVgb4,708
266
306
  astrbot/dashboard/routes/knowledge_base.py,sha256=GZ_iDYV2uXXzvGMF-4VJ8hZxLdHIWSSfg_3wlWwsizA,46081
267
- astrbot/dashboard/routes/log.py,sha256=YJWj1982YUSzja_MZQS5UoKf6pImQoeP0zaS0AGp0nY,2299
307
+ astrbot/dashboard/routes/log.py,sha256=YyRG6rrxxCAdbJP4dJyywP1CH_GwXrKCBr5XU_eo230,3335
268
308
  astrbot/dashboard/routes/persona.py,sha256=MEcNHMxJmyvZ3ZhytI5IP7L3FSlMr1JDvdd5efN9Q-M,7833
269
309
  astrbot/dashboard/routes/platform.py,sha256=JfQzzmWSnahKjke3lBUeXo7Auzz_nTB0mUv0fIf_Nag,3392
270
310
  astrbot/dashboard/routes/plugin.py,sha256=CvTUNOaBBjgk7q58bJ4El7BxkUopzPEdqxFnE2LC2UY,25436
@@ -275,8 +315,8 @@ astrbot/dashboard/routes/static_file.py,sha256=7KnNcOb1BVqSTft114LhGsDkfg69X2jHE
275
315
  astrbot/dashboard/routes/t2i.py,sha256=F6smxdL99MF7cRw3hqS6-2GErw8Zhsv0V0mfBUeEk-c,8931
276
316
  astrbot/dashboard/routes/tools.py,sha256=mMwVFw_VOlpqy_WZg1A-ddGtYa5L5QLWYawl37PT0-c,15354
277
317
  astrbot/dashboard/routes/update.py,sha256=qXiqQ_dbqRVftOzGgCQrvK8-qopVK6zKhhVVJ9SK26U,6648
278
- astrbot-4.10.2.dist-info/METADATA,sha256=fYc8r86vaBcNqrUGF0OALaIdd7y-mOXdiwFnzQ4dT9s,11932
279
- astrbot-4.10.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
280
- astrbot-4.10.2.dist-info/entry_points.txt,sha256=OEF09YmhBWYuViXrvTLLpstF4ccmNwDL8r7nnFD0pfI,53
281
- astrbot-4.10.2.dist-info/licenses/LICENSE,sha256=zPfQj5Mq8-gThIiBcxETr7t8gND9bZWOjTGQAr80TQI,34500
282
- astrbot-4.10.2.dist-info/RECORD,,
318
+ astrbot-4.10.4.dist-info/METADATA,sha256=Fpw-dfFypn8prwfGb9zmpzoOSL4dXntrO6Qs1j-oS5o,11932
319
+ astrbot-4.10.4.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
320
+ astrbot-4.10.4.dist-info/entry_points.txt,sha256=OEF09YmhBWYuViXrvTLLpstF4ccmNwDL8r7nnFD0pfI,53
321
+ astrbot-4.10.4.dist-info/licenses/LICENSE,sha256=zPfQj5Mq8-gThIiBcxETr7t8gND9bZWOjTGQAr80TQI,34500
322
+ astrbot-4.10.4.dist-info/RECORD,,