Undefined-bot 3.13.3__tar.gz → 3.15.0__tar.gz

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 (827) hide show
  1. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/ARCHITECTURE.md +12 -12
  2. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/CHANGELOG.md +33 -0
  3. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/PKG-INFO +1 -14
  4. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/config.toml.example +164 -8
  5. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/pyproject.toml +13 -22
  6. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/__init__.py +1 -1
  7. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/client/ask_loop.py +2 -4
  8. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/client/setup.py +52 -64
  9. undefined_bot-3.15.0/src/Undefined/ai/crawl4ai_support.py +55 -0
  10. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/_openapi.py +33 -0
  11. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/app.py +42 -8
  12. undefined_bot-3.15.0/src/Undefined/api/routes/onebot_files.py +64 -0
  13. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/render.py +4 -0
  14. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/sender.py +4 -0
  15. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/historian/worker.py +45 -15
  16. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/profile_storage.py +82 -4
  17. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/coercers.py +12 -0
  18. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/config_class.py +64 -22
  19. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/domain_parsers.py +7 -3
  20. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/env_registry.py +2 -0
  21. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/hot_reload.py +174 -43
  22. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/core.py +8 -0
  23. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/knowledge.py +3 -0
  24. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/manager.py +14 -1
  25. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/model_parsers.py +2 -0
  26. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/models.py +68 -2
  27. undefined_bot-3.15.0/src/Undefined/config/onebot.py +63 -0
  28. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/__init__.py +6 -1
  29. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/embedding.py +83 -3
  30. undefined_bot-3.15.0/src/Undefined/knowledge/__init__.py +14 -0
  31. undefined_bot-3.15.0/src/Undefined/knowledge/runtime.py +210 -0
  32. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/main.py +156 -20
  33. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/onebot/client.py +162 -96
  34. undefined_bot-3.15.0/src/Undefined/onebot/file_errors.py +22 -0
  35. undefined_bot-3.15.0/src/Undefined/onebot/file_references.py +107 -0
  36. undefined_bot-3.15.0/src/Undefined/onebot/file_store.py +154 -0
  37. undefined_bot-3.15.0/src/Undefined/onebot/file_transport.py +303 -0
  38. undefined_bot-3.13.3/src/Undefined/services/commands/bugfix.py → undefined_bot-3.15.0/src/Undefined/services/bugfix_command.py +23 -19
  39. undefined_bot-3.15.0/src/Undefined/services/command.py +550 -0
  40. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/background.py +11 -2
  41. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/security.py +0 -8
  42. undefined_bot-3.13.3/src/Undefined/services/commands/stats.py → undefined_bot-3.15.0/src/Undefined/services/stats_command.py +189 -110
  43. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/README.md +35 -36
  44. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/README.md +5 -3
  45. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/handler.py +4 -9
  46. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/handler.py +5 -8
  47. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/web_search/handler.py +1 -1
  48. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/README.md +7 -2
  49. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/bugfix/handler.py +1 -1
  50. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/stats/handler.py +2 -2
  51. undefined_bot-3.15.0/src/Undefined/skills/commands/summary/README.md +14 -0
  52. undefined_bot-3.15.0/src/Undefined/skills/commands/version/README.md +11 -0
  53. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/registry.py +171 -27
  54. undefined_bot-3.15.0/src/Undefined/skills/shared.py +61 -0
  55. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/README.md +2 -2
  56. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/__init__.py +4 -1
  57. undefined_bot-3.15.0/src/Undefined/skills/tools/calculator/README.md +11 -0
  58. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/end/README.md +1 -0
  59. undefined_bot-3.15.0/src/Undefined/skills/tools/fetch_image_uid/README.md +12 -0
  60. undefined_bot-3.15.0/src/Undefined/skills/tools/get_current_time/README.md +17 -0
  61. undefined_bot-3.15.0/src/Undefined/skills/tools/get_picture/README.md +19 -0
  62. undefined_bot-3.15.0/src/Undefined/skills/tools/knowledge_list/README.md +16 -0
  63. undefined_bot-3.15.0/src/Undefined/skills/tools/knowledge_semantic_search/README.md +20 -0
  64. undefined_bot-3.15.0/src/Undefined/skills/tools/knowledge_text_search/README.md +19 -0
  65. undefined_bot-3.15.0/src/Undefined/skills/tools/python_interpreter/README.md +19 -0
  66. undefined_bot-3.15.0/src/Undefined/skills/tools/task_progress/README.md +12 -0
  67. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/README.md +20 -20
  68. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/__init__.py +3 -1
  69. undefined_bot-3.15.0/src/Undefined/skills/toolsets/attachments/README.md +18 -0
  70. undefined_bot-3.15.0/src/Undefined/skills/toolsets/cognitive/README.md +36 -0
  71. undefined_bot-3.15.0/src/Undefined/skills/toolsets/contacts/README.md +22 -0
  72. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_title/handler.py +4 -15
  73. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/README.md +3 -0
  74. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/context_utils.py +13 -0
  75. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/handler.py +12 -37
  76. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_message/handler.py +14 -15
  77. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_poke/handler.py +15 -44
  78. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_private_message/handler.py +14 -15
  79. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_text_file/handler.py +12 -28
  80. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_url_file/handler.py +12 -28
  81. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_voice/handler.py +3 -0
  82. undefined_bot-3.15.0/src/Undefined/skills/toolsets/music/README.md +104 -0
  83. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/README.md +6 -0
  84. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/io.py +42 -0
  85. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/logging.py +5 -4
  86. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/paths.py +1 -0
  87. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/sender.py +32 -97
  88. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/config-form.js +10 -0
  89. undefined_bot-3.13.3/src/Undefined/ai/crawl4ai_support.py +0 -54
  90. undefined_bot-3.13.3/src/Undefined/knowledge/__init__.py +0 -8
  91. undefined_bot-3.13.3/src/Undefined/knowledge/runtime.py +0 -108
  92. undefined_bot-3.13.3/src/Undefined/services/command.py +0 -1582
  93. undefined_bot-3.13.3/src/Undefined/skills/tools/get_current_time/README.md +0 -9
  94. undefined_bot-3.13.3/src/Undefined/skills/tools/get_picture/README.md +0 -15
  95. undefined_bot-3.13.3/src/Undefined/skills/tools/python_interpreter/README.md +0 -14
  96. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/.gitignore +0 -0
  97. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/LICENSE +0 -0
  98. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/README.md +0 -0
  99. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/config/README.md +0 -0
  100. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/config/mcp.json.example +0 -0
  101. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/img/undefined-9527.png +0 -0
  102. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/img/xlwy.jpg +0 -0
  103. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/IMPORTANT/each.md +0 -0
  104. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/README.md +0 -0
  105. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/agent_self_intro.txt +0 -0
  106. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/analyze_multimodal.txt +0 -0
  107. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/describe_image.txt +0 -0
  108. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/describe_meme_image.txt +0 -0
  109. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/generate_title.txt +0 -0
  110. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/historian_profile_merge.md +0 -0
  111. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/historian_rewrite.md +0 -0
  112. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/image_gen_moderation.txt +0 -0
  113. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/injection_detector.txt +0 -0
  114. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/injection_response_agent.txt +0 -0
  115. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/judge_meme_image.txt +0 -0
  116. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/merge_message_summaries.txt +0 -0
  117. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/merge_summaries.txt +0 -0
  118. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/message_summary.txt +0 -0
  119. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/naga_message_moderation.txt +0 -0
  120. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/stats_analysis.txt +0 -0
  121. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/summarize.txt +0 -0
  122. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/undefined.xml +0 -0
  123. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/res/prompts/undefined_nagaagent.xml +0 -0
  124. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/README.md +0 -0
  125. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/README.md +0 -0
  126. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/__main__.py +0 -0
  127. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/__init__.py +0 -0
  128. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/client/__init__.py +0 -0
  129. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/client/queue.py +0 -0
  130. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/http.py +0 -0
  131. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/__init__.py +0 -0
  132. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/requester.py +0 -0
  133. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/retry.py +0 -0
  134. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/sanitize.py +0 -0
  135. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/streaming.py +0 -0
  136. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/thinking.py +0 -0
  137. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/llm/types.py +0 -0
  138. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/model_selector.py +0 -0
  139. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/multimodal/__init__.py +0 -0
  140. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/multimodal/analyzer.py +0 -0
  141. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/multimodal/constants.py +0 -0
  142. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/multimodal/detection.py +0 -0
  143. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/multimodal/parsing.py +0 -0
  144. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/parsing.py +0 -0
  145. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/__init__.py +0 -0
  146. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/builder.py +0 -0
  147. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/cognitive.py +0 -0
  148. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/constants.py +0 -0
  149. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/current_input.py +0 -0
  150. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/file_includes.py +0 -0
  151. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/system_context.py +0 -0
  152. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/prompts/system_info.py +0 -0
  153. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/queue_budget.py +0 -0
  154. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/retrieval.py +0 -0
  155. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/summaries.py +0 -0
  156. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/tokens.py +0 -0
  157. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/tool_search.py +0 -0
  158. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/tooling.py +0 -0
  159. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/transports/__init__.py +0 -0
  160. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/transports/anthropic_transport.py +0 -0
  161. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/transports/openai_transport.py +0 -0
  162. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/ai/transports/replay.py +0 -0
  163. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/__init__.py +0 -0
  164. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/_context.py +0 -0
  165. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/_helpers.py +0 -0
  166. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/_naga_state.py +0 -0
  167. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/_probes.py +0 -0
  168. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/naga_store.py +0 -0
  169. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/__init__.py +0 -0
  170. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/automations.py +0 -0
  171. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/chat.py +0 -0
  172. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/cognitive.py +0 -0
  173. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/commands.py +0 -0
  174. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/health.py +0 -0
  175. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/memes.py +0 -0
  176. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/memory.py +0 -0
  177. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/naga/__init__.py +0 -0
  178. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/naga/auth.py +0 -0
  179. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/naga/bind.py +0 -0
  180. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/naga/send.py +0 -0
  181. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/naga/unbind.py +0 -0
  182. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/schedules.py +0 -0
  183. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/system.py +0 -0
  184. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/tools.py +0 -0
  185. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/routes/weixin.py +0 -0
  186. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/api/webchat_store.py +0 -0
  187. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/__init__.py +0 -0
  188. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/client.py +0 -0
  189. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/downloader.py +0 -0
  190. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/models.py +0 -0
  191. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/parser.py +0 -0
  192. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/arxiv/sender.py +0 -0
  193. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/__init__.py +0 -0
  194. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/forward_snapshot.py +0 -0
  195. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/models.py +0 -0
  196. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/registry.py +0 -0
  197. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/attachments/segments.py +0 -0
  198. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/__init__.py +0 -0
  199. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/address.py +0 -0
  200. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/catalog.py +0 -0
  201. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/clock.py +0 -0
  202. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/constants.py +0 -0
  203. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/engine.py +0 -0
  204. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/extract.py +0 -0
  205. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/logutil.py +0 -0
  206. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/match.py +0 -0
  207. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/mentions.py +0 -0
  208. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/migrate.py +0 -0
  209. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/runner.py +0 -0
  210. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/service.py +0 -0
  211. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/short.py +0 -0
  212. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/storage.py +0 -0
  213. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/template.py +0 -0
  214. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/triggers.py +0 -0
  215. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/automations/validate.py +0 -0
  216. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/__init__.py +0 -0
  217. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/api_client.py +0 -0
  218. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/danmaku.py +0 -0
  219. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/download_core.py +0 -0
  220. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/downloader.py +0 -0
  221. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/errors.py +0 -0
  222. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/models.py +0 -0
  223. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/parser.py +0 -0
  224. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/wbi.py +0 -0
  225. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/bilibili/wbi_request.py +0 -0
  226. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/changelog.py +0 -0
  227. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/__init__.py +0 -0
  228. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/chroma_scheduler.py +0 -0
  229. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/historian/__init__.py +0 -0
  230. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/historian/helpers.py +0 -0
  231. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/historian/tools.py +0 -0
  232. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/job_queue.py +0 -0
  233. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/service/__init__.py +0 -0
  234. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/service/helpers.py +0 -0
  235. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/service/service.py +0 -0
  236. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/vector_store.py +0 -0
  237. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/cognitive/vector_store_compat.py +0 -0
  238. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/__init__.py +0 -0
  239. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/admin.py +0 -0
  240. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/api_modes.py +0 -0
  241. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/build_config.py +0 -0
  242. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/__init__.py +0 -0
  243. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/access.py +0 -0
  244. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/domains.py +0 -0
  245. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/finalize.py +0 -0
  246. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/history_skills.py +0 -0
  247. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/integrations.py +0 -0
  248. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/logging_tools.py +0 -0
  249. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/models.py +0 -0
  250. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/load_sections/network.py +0 -0
  251. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/loader.py +0 -0
  252. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/naga_policy.py +0 -0
  253. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/agent.py +0 -0
  254. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/chat.py +0 -0
  255. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/grok.py +0 -0
  256. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/helpers.py +0 -0
  257. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/historian.py +0 -0
  258. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/image.py +0 -0
  259. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/naga.py +0 -0
  260. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/pool.py +0 -0
  261. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/security.py +0 -0
  262. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/summary.py +0 -0
  263. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/parsers/vision.py +0 -0
  264. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/resolvers.py +0 -0
  265. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/search.py +0 -0
  266. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/toml_io.py +0 -0
  267. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/config/webui_settings.py +0 -0
  268. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/context.py +0 -0
  269. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/context_resource_registry.py +0 -0
  270. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/__init__.py +0 -0
  271. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/client.py +0 -0
  272. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/downloader.py +0 -0
  273. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/models.py +0 -0
  274. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/parser.py +0 -0
  275. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/douyin/sender.py +0 -0
  276. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/end_summary_storage.py +0 -0
  277. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/faq.py +0 -0
  278. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/github/__init__.py +0 -0
  279. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/github/client.py +0 -0
  280. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/github/models.py +0 -0
  281. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/github/parser.py +0 -0
  282. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/github/sender.py +0 -0
  283. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/handlers/__init__.py +0 -0
  284. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/handlers/auto_extract.py +0 -0
  285. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/handlers/message_flow.py +0 -0
  286. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/handlers/poke.py +0 -0
  287. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/handlers/repeat.py +0 -0
  288. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/injection_response_agent.py +0 -0
  289. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/knowledge/chunker.py +0 -0
  290. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/knowledge/embedder.py +0 -0
  291. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/knowledge/manager.py +0 -0
  292. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/knowledge/reranker.py +0 -0
  293. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/knowledge/store.py +0 -0
  294. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/mcp/__init__.py +0 -0
  295. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/mcp/registry.py +0 -0
  296. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/__init__.py +0 -0
  297. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/_image_utils.py +0 -0
  298. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/ingest.py +0 -0
  299. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/models.py +0 -0
  300. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/search.py +0 -0
  301. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/service.py +0 -0
  302. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/store.py +0 -0
  303. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/vector_store.py +0 -0
  304. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memes/worker.py +0 -0
  305. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/memory.py +0 -0
  306. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/onebot/__init__.py +0 -0
  307. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/onebot/message.py +0 -0
  308. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/py.typed +0 -0
  309. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/rate_limit.py +0 -0
  310. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/render.py +0 -0
  311. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/__init__.py +0 -0
  312. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/commands/__init__.py +0 -0
  313. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/commands/catalog.py +0 -0
  314. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/commands/context.py +0 -0
  315. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/commands/registry.py +0 -0
  316. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/__init__.py +0 -0
  317. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/batching.py +0 -0
  318. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/group.py +0 -0
  319. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/message_ids.py +0 -0
  320. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/coordinator/private.py +0 -0
  321. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/message_batcher/__init__.py +0 -0
  322. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/message_batcher/scheduler.py +0 -0
  323. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/message_batcher/state.py +0 -0
  324. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/message_summary_fetch.py +0 -0
  325. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/model_pool.py +0 -0
  326. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/services/queue_manager.py +0 -0
  327. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/__init__.py +0 -0
  328. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/__init__.py +0 -0
  329. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/agent_tool_registry.py +0 -0
  330. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/config.json +0 -0
  331. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/docker_utils.py +0 -0
  332. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/handler.py +0 -0
  333. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/intro.md +0 -0
  334. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/mcp.json +0 -0
  335. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/prompt.md +0 -0
  336. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/config.json +0 -0
  337. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/handler.py +0 -0
  338. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/config.json +0 -0
  339. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/handler.py +0 -0
  340. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/config.json +0 -0
  341. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/handler.py +0 -0
  342. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/config.json +0 -0
  343. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/config.json +0 -0
  344. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/handler.py +0 -0
  345. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/config.json +0 -0
  346. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/handler.py +0 -0
  347. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/config.json +0 -0
  348. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/handler.py +0 -0
  349. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/config.json +0 -0
  350. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/handler.py +0 -0
  351. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/config.json +0 -0
  352. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/handler.py +0 -0
  353. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/config.json +0 -0
  354. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/handler.py +0 -0
  355. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/config.json +0 -0
  356. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/handler.py +0 -0
  357. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/config.json +0 -0
  358. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/handler.py +0 -0
  359. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/README.md +0 -0
  360. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/config.json +0 -0
  361. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/handler.py +0 -0
  362. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/intro.md +0 -0
  363. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/prompt.md +0 -0
  364. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/__init__.py +0 -0
  365. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/config.json +0 -0
  366. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/handler.py +0 -0
  367. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/config.json +0 -0
  368. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/handler.py +0 -0
  369. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/config.json +0 -0
  370. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/handler.py +0 -0
  371. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/config.json +0 -0
  372. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/handler.py +0 -0
  373. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/config.json +0 -0
  374. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/handler.py +0 -0
  375. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/README.md +0 -0
  376. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/__init__.py +0 -0
  377. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/config.json +0 -0
  378. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/handler.py +0 -0
  379. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/intro.md +0 -0
  380. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/prompt.md +0 -0
  381. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/__init__.py +0 -0
  382. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/config.json +0 -0
  383. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/handler.py +0 -0
  384. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/config.json +0 -0
  385. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/handler.py +0 -0
  386. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/config.json +0 -0
  387. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/handler.py +0 -0
  388. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/config.json +0 -0
  389. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/handler.py +0 -0
  390. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/config.json +0 -0
  391. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/handler.py +0 -0
  392. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/config.json +0 -0
  393. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/handler.py +0 -0
  394. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/config.json +0 -0
  395. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/handler.py +0 -0
  396. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/config.json +0 -0
  397. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/handler.py +0 -0
  398. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/config.json +0 -0
  399. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/handler.py +0 -0
  400. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/config.json +0 -0
  401. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/handler.py +0 -0
  402. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/config.json +0 -0
  403. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/handler.py +0 -0
  404. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/config.json +0 -0
  405. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/handler.py +0 -0
  406. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/README.md +0 -0
  407. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/config.json +0 -0
  408. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/handler.py +0 -0
  409. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/intro.md +0 -0
  410. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/prompt.md +0 -0
  411. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/__init__.py +0 -0
  412. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/config.json +0 -0
  413. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/handler.py +0 -0
  414. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/config.json +0 -0
  415. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/handler.py +0 -0
  416. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/base64/config.json +0 -0
  417. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/base64/handler.py +0 -0
  418. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/config.json +0 -0
  419. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/handler.py +0 -0
  420. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/config.json +0 -0
  421. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/handler.py +0 -0
  422. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/config.json +0 -0
  423. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/handler.py +0 -0
  424. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/config.json +0 -0
  425. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/handler.py +0 -0
  426. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/hash/config.json +0 -0
  427. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/hash/handler.py +0 -0
  428. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/history/config.json +0 -0
  429. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/history/handler.py +0 -0
  430. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/net_check/config.json +0 -0
  431. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/net_check/handler.py +0 -0
  432. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/config.json +0 -0
  433. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/handler.py +0 -0
  434. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/speed/config.json +0 -0
  435. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/speed/handler.py +0 -0
  436. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/tcping/config.json +0 -0
  437. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/tcping/handler.py +0 -0
  438. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/config.json +0 -0
  439. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/handler.py +0 -0
  440. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/config.json +0 -0
  441. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/handler.py +0 -0
  442. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/whois/config.json +0 -0
  443. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/info_agent/tools/whois/handler.py +0 -0
  444. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/intro_generator.py +0 -0
  445. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/intro_utils.py +0 -0
  446. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/README.md +0 -0
  447. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/config.json +0 -0
  448. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/handler.py +0 -0
  449. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/intro.md +0 -0
  450. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/mcp.json +0 -0
  451. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/prompt.md +0 -0
  452. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/__init__.py +0 -0
  453. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/config.json +0 -0
  454. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/handler.py +0 -0
  455. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/config.json +0 -0
  456. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/handler.py +0 -0
  457. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/config.json +0 -0
  458. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/handler.py +0 -0
  459. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/config.json +0 -0
  460. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/handler.py +0 -0
  461. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/config.json +0 -0
  462. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/handler.py +0 -0
  463. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/runner/__init__.py +0 -0
  464. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/runner/context.py +0 -0
  465. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/runner/loop.py +0 -0
  466. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/runner/tools.py +0 -0
  467. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/runner/webchat_utils.py +0 -0
  468. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/__init__.py +0 -0
  469. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/config.json +0 -0
  470. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/handler.py +0 -0
  471. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/intro.md +0 -0
  472. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/prompt.md +0 -0
  473. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/tools/__init__.py +0 -0
  474. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/config.json +0 -0
  475. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/handler.py +0 -0
  476. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/README.md +0 -0
  477. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/__init__.py +0 -0
  478. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/config.json +0 -0
  479. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/handler.py +0 -0
  480. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/intro.md +0 -0
  481. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/prompt.md +0 -0
  482. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/__init__.py +0 -0
  483. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/_shared.py +0 -0
  484. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/config.json +0 -0
  485. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/handler.py +0 -0
  486. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/config.json +0 -0
  487. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/handler.py +0 -0
  488. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/config.json +0 -0
  489. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/handler.py +0 -0
  490. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/config.json +0 -0
  491. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/handler.py +0 -0
  492. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/README.md +0 -0
  493. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/callable.json +0 -0
  494. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/config.json +0 -0
  495. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/handler.py +0 -0
  496. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/intro.md +0 -0
  497. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/mcp.json +0 -0
  498. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/prompt.md +0 -0
  499. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/__init__.py +0 -0
  500. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/config.json +0 -0
  501. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/config.json +0 -0
  502. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/handler.py +0 -0
  503. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/config.json +0 -0
  504. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/handler.py +0 -0
  505. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/agents/web_agent/tools/web_search/config.json +0 -0
  506. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/anthropic_skills/__init__.py +0 -0
  507. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/anthropic_skills/loader.py +0 -0
  508. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/admin/README.md +0 -0
  509. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/admin/config.json +0 -0
  510. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/admin/handler.py +0 -0
  511. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/bugfix/README.md +0 -0
  512. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/bugfix/config.json +0 -0
  513. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/changelog/README.md +0 -0
  514. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/changelog/config.json +0 -0
  515. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/changelog/handler.py +0 -0
  516. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/copyright/README.md +0 -0
  517. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/copyright/config.json +0 -0
  518. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/copyright/handler.py +0 -0
  519. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/faq/README.md +0 -0
  520. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/faq/config.json +0 -0
  521. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/faq/handler.py +0 -0
  522. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/feedback/README.md +0 -0
  523. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/feedback/config.json +0 -0
  524. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/feedback/handler.py +0 -0
  525. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/help/README.md +0 -0
  526. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/help/config.json +0 -0
  527. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/help/handler.py +0 -0
  528. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/naga/README.md +0 -0
  529. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/naga/config.json +0 -0
  530. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/naga/handler.py +0 -0
  531. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/naga/policy.py +0 -0
  532. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/profile/README.md +0 -0
  533. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/profile/config.json +0 -0
  534. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/profile/handler.py +0 -0
  535. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/stats/README.md +0 -0
  536. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/stats/config.json +0 -0
  537. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/summary/config.json +0 -0
  538. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/summary/handler.py +0 -0
  539. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/version/config.json +0 -0
  540. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/commands/version/handler.py +0 -0
  541. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/http_client.py +0 -0
  542. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/http_config.py +0 -0
  543. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/__init__.py +0 -0
  544. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/arxiv/config.json +0 -0
  545. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/arxiv/handler.py +0 -0
  546. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/bilibili/config.json +0 -0
  547. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/bilibili/handler.py +0 -0
  548. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/context.py +0 -0
  549. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/douyin/config.json +0 -0
  550. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/douyin/handler.py +0 -0
  551. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/github/config.json +0 -0
  552. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/github/handler.py +0 -0
  553. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/models.py +0 -0
  554. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/pipelines/registry.py +0 -0
  555. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/arxiv_paper/README.md +0 -0
  556. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/arxiv_paper/callable.json +0 -0
  557. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/arxiv_paper/config.json +0 -0
  558. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/arxiv_paper/handler.py +0 -0
  559. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/bilibili_video/README.md +0 -0
  560. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/bilibili_video/callable.json +0 -0
  561. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/bilibili_video/config.json +0 -0
  562. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/bilibili_video/handler.py +0 -0
  563. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/calculator/callable.json +0 -0
  564. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/calculator/config.json +0 -0
  565. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/calculator/handler.py +0 -0
  566. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/changelog_query/README.md +0 -0
  567. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/changelog_query/config.json +0 -0
  568. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/changelog_query/handler.py +0 -0
  569. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/douyin_video/README.md +0 -0
  570. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/douyin_video/callable.json +0 -0
  571. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/douyin_video/config.json +0 -0
  572. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/douyin_video/handler.py +0 -0
  573. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/end/config.json +0 -0
  574. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/end/handler.py +0 -0
  575. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/fetch_image_uid/config.json +0 -0
  576. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/fetch_image_uid/handler.py +0 -0
  577. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_current_time/callable.json +0 -0
  578. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_current_time/config.json +0 -0
  579. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_current_time/handler.py +0 -0
  580. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_picture/config.json +0 -0
  581. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_picture/handler.py +0 -0
  582. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_user_info/README.md +0 -0
  583. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_user_info/config.json +0 -0
  584. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/get_user_info/handler.py +0 -0
  585. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_list/config.json +0 -0
  586. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_list/handler.py +0 -0
  587. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_semantic_search/config.json +0 -0
  588. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_semantic_search/handler.py +0 -0
  589. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_text_search/config.json +0 -0
  590. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/knowledge_text_search/handler.py +0 -0
  591. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/python_interpreter/config.json +0 -0
  592. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/python_interpreter/handler.py +0 -0
  593. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/qq_like/README.md +0 -0
  594. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/qq_like/config.json +0 -0
  595. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/qq_like/handler.py +0 -0
  596. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/task_progress/config.json +0 -0
  597. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/tools/task_progress/handler.py +0 -0
  598. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/config.json +0 -0
  599. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/handler.py +0 -0
  600. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/config.json +0 -0
  601. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/handler.py +0 -0
  602. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/README.md +0 -0
  603. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/_runtime.py +0 -0
  604. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/create/config.json +0 -0
  605. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/create/handler.py +0 -0
  606. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/delete/config.json +0 -0
  607. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/delete/handler.py +0 -0
  608. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/get/config.json +0 -0
  609. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/get/handler.py +0 -0
  610. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/list/config.json +0 -0
  611. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/list/handler.py +0 -0
  612. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/set_enabled/config.json +0 -0
  613. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/set_enabled/handler.py +0 -0
  614. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/update/config.json +0 -0
  615. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/automation/update/handler.py +0 -0
  616. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/get_profile/config.json +0 -0
  617. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/get_profile/handler.py +0 -0
  618. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/search_events/config.json +0 -0
  619. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/search_events/handler.py +0 -0
  620. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/config.json +0 -0
  621. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/handler.py +0 -0
  622. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/commands/README.md +0 -0
  623. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/commands/get/config.json +0 -0
  624. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/commands/get/handler.py +0 -0
  625. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/commands/search/config.json +0 -0
  626. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/commands/search/handler.py +0 -0
  627. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/contacts/query_friends/config.json +0 -0
  628. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/contacts/query_friends/handler.py +0 -0
  629. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/contacts/query_groups/config.json +0 -0
  630. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/contacts/query_groups/handler.py +0 -0
  631. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/README.md +0 -0
  632. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/find_member/config.json +0 -0
  633. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/find_member/handler.py +0 -0
  634. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_avatar/config.json +0 -0
  635. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_avatar/handler.py +0 -0
  636. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_files/config.json +0 -0
  637. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_files/handler.py +0 -0
  638. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_honor_info/config.json +0 -0
  639. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_honor_info/handler.py +0 -0
  640. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_info/config.json +0 -0
  641. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_info/handler.py +0 -0
  642. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_list/config.json +0 -0
  643. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_list/handler.py +0 -0
  644. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group/get_member_title/config.json +0 -0
  645. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/README.md +0 -0
  646. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/config.json +0 -0
  647. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/handler.py +0 -0
  648. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/config.json +0 -0
  649. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/handler.py +0 -0
  650. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/config.json +0 -0
  651. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/handler.py +0 -0
  652. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/config.json +0 -0
  653. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/handler.py +0 -0
  654. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/config.json +0 -0
  655. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/handler.py +0 -0
  656. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/config.json +0 -0
  657. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/handler.py +0 -0
  658. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/config.json +0 -0
  659. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/handler.py +0 -0
  660. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/config.json +0 -0
  661. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/handler.py +0 -0
  662. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/config.json +0 -0
  663. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/handler.py +0 -0
  664. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/config.json +0 -0
  665. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/handler.py +0 -0
  666. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/config.json +0 -0
  667. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/handler.py +0 -0
  668. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/mcp/README.md +0 -0
  669. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/mcp/__init__.py +0 -0
  670. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memes/README.md +0 -0
  671. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memes/search_memes/config.json +0 -0
  672. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memes/search_memes/handler.py +0 -0
  673. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/config.json +0 -0
  674. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/handler.py +0 -0
  675. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/README.md +0 -0
  676. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/add/config.json +0 -0
  677. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/add/handler.py +0 -0
  678. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/delete/config.json +0 -0
  679. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/delete/handler.py +0 -0
  680. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/list/config.json +0 -0
  681. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/list/handler.py +0 -0
  682. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/update/config.json +0 -0
  683. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/memory/update/handler.py +0 -0
  684. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/config.json +0 -0
  685. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/handler.py +0 -0
  686. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/config.json +0 -0
  687. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/handler.py +0 -0
  688. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/config.json +0 -0
  689. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/handler.py +0 -0
  690. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/list_emojis/config.json +0 -0
  691. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/list_emojis/handler.py +0 -0
  692. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/config.json +0 -0
  693. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/handler.py +0 -0
  694. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/config.json +0 -0
  695. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_group_sign/config.json +0 -0
  696. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_group_sign/handler.py +0 -0
  697. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_message/config.json +0 -0
  698. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_poke/config.json +0 -0
  699. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_private_message/config.json +0 -0
  700. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_text_file/callable.json +0 -0
  701. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_text_file/config.json +0 -0
  702. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_url_file/callable.json +0 -0
  703. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_url_file/config.json +0 -0
  704. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/messages/send_voice/config.json +0 -0
  705. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/_client.py +0 -0
  706. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/_constants.py +0 -0
  707. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/_tools.py +0 -0
  708. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/_track_refs.py +0 -0
  709. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/browse_playlists/config.json +0 -0
  710. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/browse_playlists/handler.py +0 -0
  711. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/browse_rankings/config.json +0 -0
  712. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/browse_rankings/handler.py +0 -0
  713. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/find_song_matches/config.json +0 -0
  714. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/find_song_matches/handler.py +0 -0
  715. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_audio/config.json +0 -0
  716. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_audio/handler.py +0 -0
  717. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_comments/config.json +0 -0
  718. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_comments/handler.py +0 -0
  719. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_cover/config.json +0 -0
  720. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_cover/handler.py +0 -0
  721. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_hot_search/config.json +0 -0
  722. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_hot_search/handler.py +0 -0
  723. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_lyrics/config.json +0 -0
  724. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/get_lyrics/handler.py +0 -0
  725. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/search_playlists/config.json +0 -0
  726. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/search_playlists/handler.py +0 -0
  727. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/search_songs/config.json +0 -0
  728. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/music/search_songs/handler.py +0 -0
  729. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/README.md +0 -0
  730. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/get/config.json +0 -0
  731. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/get/handler.py +0 -0
  732. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/list/config.json +0 -0
  733. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/list/handler.py +0 -0
  734. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/stats/config.json +0 -0
  735. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/notices/stats/handler.py +0 -0
  736. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/layout.py +0 -0
  737. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_html/config.json +0 -0
  738. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_html/handler.py +0 -0
  739. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_latex/config.json +0 -0
  740. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_latex/handler.py +0 -0
  741. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_markdown/config.json +0 -0
  742. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/skills/toolsets/render/render_markdown/handler.py +0 -0
  743. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/token_usage_storage.py +0 -0
  744. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/__init__.py +0 -0
  745. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/cache.py +0 -0
  746. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/coerce.py +0 -0
  747. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/common.py +0 -0
  748. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/cors.py +0 -0
  749. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/easter_egg_calls.py +0 -0
  750. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/fake_at.py +0 -0
  751. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/file_lock.py +0 -0
  752. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/group_metrics.py +0 -0
  753. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/history.py +0 -0
  754. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/http_download.py +0 -0
  755. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/member_utils.py +0 -0
  756. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/message_reply.py +0 -0
  757. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/message_targets.py +0 -0
  758. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/message_turn.py +0 -0
  759. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/message_utils.py +0 -0
  760. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/qq_emoji.py +0 -0
  761. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/queue_intervals.py +0 -0
  762. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/recent_messages.py +0 -0
  763. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/render_cache.py +0 -0
  764. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/request_params.py +0 -0
  765. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/resources.py +0 -0
  766. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/scheduler.py +0 -0
  767. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/self_update.py +0 -0
  768. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/sender_helpers.py +0 -0
  769. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/time_utils.py +0 -0
  770. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/tool_calls.py +0 -0
  771. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/utils/xml.py +0 -0
  772. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/__init__.py +0 -0
  773. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/__main__.py +0 -0
  774. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/app.py +0 -0
  775. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/core.py +0 -0
  776. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/__init__.py +0 -0
  777. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_auth.py +0 -0
  778. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_bot.py +0 -0
  779. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_config.py +0 -0
  780. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_index.py +0 -0
  781. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_logs.py +0 -0
  782. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_memes.py +0 -0
  783. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_runtime.py +0 -0
  784. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_shared.py +0 -0
  785. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_system.py +0 -0
  786. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/routes/_weixin.py +0 -0
  787. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/.stylelintrc.json +0 -0
  788. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/app.css +0 -0
  789. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/base.css +0 -0
  790. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/components.css +0 -0
  791. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/highlight-github.min.css +0 -0
  792. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/landing.css +0 -0
  793. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/responsive.css +0 -0
  794. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/style.css +0 -0
  795. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/variables.css +0 -0
  796. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/css/workflow.css +0 -0
  797. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/favicon.svg +0 -0
  798. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/api.js +0 -0
  799. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/auth.js +0 -0
  800. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/bot.js +0 -0
  801. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/i18n.js +0 -0
  802. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/log-view.js +0 -0
  803. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/logs.js +0 -0
  804. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/main.js +0 -0
  805. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/memes.js +0 -0
  806. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/runtime.js +0 -0
  807. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/schedules.js +0 -0
  808. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/state.js +0 -0
  809. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/ui.js +0 -0
  810. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/vendor/highlight.min.js +0 -0
  811. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/vendor/highlightjs.LICENSE +0 -0
  812. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/vendor/marked.min.js +0 -0
  813. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/weixin.js +0 -0
  814. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/workflow-canvas.js +0 -0
  815. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/workflow-graph.js +0 -0
  816. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/static/js/workflow-inspector.js +0 -0
  817. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/templates/index.html +0 -0
  818. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/utils/__init__.py +0 -0
  819. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/utils/comment.py +0 -0
  820. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/utils/config_io.py +0 -0
  821. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/utils/config_sync.py +0 -0
  822. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/webui/utils/toml_render.py +0 -0
  823. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/weixin/__init__.py +0 -0
  824. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/weixin/audio.py +0 -0
  825. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/weixin/models.py +0 -0
  826. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/weixin/service.py +0 -0
  827. {undefined_bot-3.13.3 → undefined_bot-3.15.0}/src/Undefined/weixin/store.py +0 -0
@@ -18,7 +18,7 @@ graph TB
18
18
  ConfigLoader["ConfigManager<br/>配置管理器<br/>[config/manager.py + loader.py]"]
19
19
  ConfigHotReload["ConfigHotReload<br/>热更新应用器<br/>[config/hot_reload.py]"]
20
20
  ConfigModels["配置模型<br/>[config/models.py]<br/>ChatModelConfig<br/>VisionModelConfig<br/>SecurityModelConfig<br/>AgentModelConfig"]
21
- OneBotClient["OneBotClient<br/>WebSocket 客户端<br/>[onebot/ + onebot.py shim]"]
21
+ OneBotClient["OneBotClient<br/>WebSocket 客户端<br/>[onebot/]"]
22
22
  Context["RequestContext<br/>请求上下文<br/>[context.py]"]
23
23
  WebUI["webui.py<br/>配置控制台<br/>[src/Undefined/webui.py]"]
24
24
  end
@@ -47,10 +47,10 @@ graph TB
47
47
 
48
48
  CommandDispatcher["CommandDispatcher<br/>命令分发器<br/>• /help /stats /admin<br/>• /bugfix /faq<br/>[services/command.py]"]
49
49
 
50
- MessageBatcher["MessageBatcher<br/>同 sender 短时合并<br/>• 按 (scope, sender_id) 分桶<br/>• T1=window_seconds 结束 batch<br/>• T2=pre_send_seconds 投机预发送<br/>• 拍一拍/buffer 内 @bot 旁路<br/>• 首条 @bot 整批走 mention 队列<br/>[services/message_batcher/ + shim]"]
50
+ MessageBatcher["MessageBatcher<br/>同 sender 短时合并<br/>• 按 (scope, sender_id) 分桶<br/>• T1=window_seconds 结束 batch<br/>• T2=pre_send_seconds 投机预发送<br/>• 拍一拍/buffer 内 @bot 旁路<br/>• 首条 @bot 整批走 mention 队列<br/>[services/message_batcher/]"]
51
51
 
52
52
  subgraph QueueSystem["车站-列车 队列系统 (services/)"]
53
- AICoordinator["AICoordinator<br/>AI 协调器<br/>• Prompt 构建<br/>• 队列管理<br/>• 回复执行<br/>[services/coordinator/ + ai_coordinator.py shim]"]
53
+ AICoordinator["AICoordinator<br/>AI 协调器<br/>• Prompt 构建<br/>• 队列管理<br/>• 回复执行<br/>[services/coordinator/]"]
54
54
  QueueManager["QueueManager<br/>队列管理器<br/>[queue_manager.py]"]
55
55
 
56
56
  subgraph ModelQueues["ModelQueue 队列组 (按模型隔离)"]
@@ -66,14 +66,14 @@ graph TB
66
66
 
67
67
  %% ==================== AI 核心能力层 ====================
68
68
  subgraph AILayer["AI 核心能力层 (src/Undefined/ai/)"]
69
- AIClient["AIClient<br/>AI 客户端主入口<br/>[ai/client/ + client.py shim]<br/>• 技能热重载 • MCP 初始化<br/>• Agent intro 生成"]
69
+ AIClient["AIClient<br/>AI 客户端主入口<br/>[ai/client/]<br/>• 技能热重载 • MCP 初始化<br/>• Agent intro 生成"]
70
70
 
71
71
  subgraph AIComponents["AI 组件"]
72
- PromptBuilder["PromptBuilder<br/>提示词构建器<br/>[ai/prompts/ + prompts.py shim]"]
72
+ PromptBuilder["PromptBuilder<br/>提示词构建器<br/>[ai/prompts/]"]
73
73
  ToolSearchSession["ToolSearchSession<br/>请求级工具按需投影<br/>[ai/tool_search.py]<br/>• 名称检索 • schema 逐轮扩展"]
74
- ModelRequester["ModelRequester<br/>模型请求器<br/>[ai/llm/ + llm.py shim]<br/>• OpenAI SDK • 工具清理<br/>• Thinking 提取"]
74
+ ModelRequester["ModelRequester<br/>模型请求器<br/>[ai/llm/]<br/>• OpenAI SDK • 工具清理<br/>• Thinking 提取"]
75
75
  ToolManager["ToolManager<br/>工具管理器<br/>[tooling.py]<br/>• 工具执行 • Agent 工具合并<br/>• MCP 工具注入"]
76
- MultimodalAnalyzer["MultimodalAnalyzer<br/>多模态分析器<br/>[ai/multimodal/ + multimodal.py shim]<br/>• 图片/音频/视频"]
76
+ MultimodalAnalyzer["MultimodalAnalyzer<br/>多模态分析器<br/>[ai/multimodal/]<br/>• 图片/音频/视频"]
77
77
  SummaryService["SummaryService<br/>总结服务<br/>[summaries.py]<br/>• 聊天记录总结<br/>• 标题生成"]
78
78
  TokenCounter["TokenCounter<br/>Token 统计<br/>[tokens.py]"]
79
79
  Parsing["Parsing<br/>响应解析<br/>[parsing.py]"]
@@ -663,7 +663,7 @@ graph TB
663
663
 
664
664
  subgraph Features["特性"]
665
665
  F1["非阻塞: 即使前一个请求未完成,<br/>新请求也会按时分发"]
666
- F2["优先级: 四级优先级,<br/>确保重要消息优先响应"]
666
+ F2["优先级: 六条车道,<br/>确保重要消息优先响应"]
667
667
  F3["隔离性: 每个模型独立队列,<br/>互不干扰"]
668
668
  F4["自动修剪: 普通队列超过10条时,<br/>只保留最新2条"]
669
669
  F5["可配置节奏: 每个模型可独立设置<br/>队列发车间隔"]
@@ -860,10 +860,10 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
860
860
  ### 8层架构分层
861
861
 
862
862
  1. **外部实体层**:用户、管理员、OneBot 协议端 (NapCat/Lagrange.Core)、大模型 API 服务商
863
- 2. **核心入口层**:main.py 启动入口、配置管理器 (config/loader.py + parsers/ + load_sections/)、热更新应用器 (config/hot_reload.py)、OneBotClient (onebot/ + onebot.py shim)、WeixinService (`weixin/` + `weixin-ilink-client`)、RequestContext (context.py)、Runtime API Server (api/app.py → api/routes/ 路由子模块,含 naga/ 子包)
864
- 3. **消息处理层**:MessageHandler (`handlers/`)、统一 DeliveryAddress 路由 (`utils/message_targets.py`)、SecurityService (security.py)、CommandDispatcher (services/command.py + commands/ mixins)、自动处理管线 (skills/pipelines/)、AutomationService (`automations/service.py`,pipeline 之后、对应 AI loop 之前 await,命中可拦截)、MessageBatcher (services/message_batcher/)、AICoordinator (services/coordinator/ + ai_coordinator.py 门面)、QueueManager (queue_manager.py)、Bilibili/arXiv/GitHub 解析与发送模块
863
+ 2. **核心入口层**(目录级事实来源见 [docs/development.md](docs/development.md)):main.py 启动入口、配置管理器 (config/loader.py + parsers/ + load_sections/)、热更新应用器 (config/hot_reload.py)、OneBotClient (onebot/)、WeixinService (`weixin/` + `weixin-ilink-client`)、RequestContext (context.py)、Runtime API Server (api/app.py → api/routes/ 路由子模块,含 naga/ 子包)
864
+ 3. **消息处理层**:MessageHandler (`handlers/`)、统一 DeliveryAddress 路由 (`utils/message_targets.py`)、SecurityService (security.py)、CommandDispatcher (services/command.py + services/commands/)、自动处理管线 (skills/pipelines/)、AutomationService (`automations/service.py`,pipeline 之后、对应 AI loop 之前 await,命中可拦截)、MessageBatcher (services/message_batcher/)、AICoordinator (services/coordinator/)、QueueManager (queue_manager.py)、Bilibili/arXiv/GitHub 解析与发送模块
865
865
  自动提取由 `PipelineRegistry` 并行检测、并行处理全部命中的管线;随后 `await` 自动化工作流,未拦截时再进入 AI 自动回复。
866
- 4. **AI 核心能力层**:AIClient (ai/client/ + client.py shim)、PromptBuilder (ai/prompts/ + prompts.py shim)、ModelRequester (ai/llm/ + llm.py shim)、ToolManager (tooling.py)、MultimodalAnalyzer (ai/multimodal/ + multimodal.py shim)、SummaryService (summaries.py)、TokenCounter (tokens.py)。OpenAI Chat Completions / Responses、Anthropic Messages SDK 归一化、CoT 续传与文本 Tool Call 容错见[模型 API 与兼容层](docs/model-compatibility.md)。
866
+ 4. **AI 核心能力层**:AIClient (ai/client/)、PromptBuilder (ai/prompts/)、ModelRequester (ai/llm/)、ToolManager (tooling.py)、MultimodalAnalyzer (ai/multimodal/)、SummaryService (summaries.py)、TokenCounter (tokens.py)。OpenAI Chat Completions / Responses、Anthropic Messages SDK 归一化、CoT 续传与文本 Tool Call 容错见[模型 API 与兼容层](docs/model-compatibility.md)。
867
867
  5. **存储与上下文层**:MessageHistoryManager (utils/history.py, 10000条限制)、MemoryStorage (memory.py, 置顶备忘录, 500条上限)、EndSummaryStorage、CognitiveService + JobQueue + HistorianWorker + VectorStore + ProfileStorage、MemeService + MemeWorker + MemeStore + MemeVectorStore (表情包库)、FAQStorage、AutomationStorage (`data/automations.json`;旧 `scheduled_tasks.json` 启动时一次性转为新格式,不删旧文件、不双写)、TokenUsageStorage (自动归档)
868
868
  6. **技能系统层**:ToolRegistry (registry.py)、AgentRegistry、7个 Agents、13类 Toolsets
869
869
  7. **异步 IO 层**:统一 IO 工具 (utils/io.py),包含 write_json、read_json、append_line、跨平台文件锁 (flock/msvcrt)
@@ -880,7 +880,7 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
880
880
  * **多模型隔离**:每个 AI 模型拥有独立的请求队列组("站台"),互不干扰。
881
881
  * **非阻塞发车**:实现了可配置节奏的非阻塞调度循环(默认 **1Hz**)。列车按节奏出发,带走一个请求到后台异步处理。
882
882
  * **高可用性**:即使前一个请求仍在处理(如耗时的网络搜索),新的请求也会按时被分发,不会造成队列堵塞。
883
- * **优先级管理**:支持四级优先级(超级管理员 > 私聊 > 群聊@ > 群聊普通),确保重要消息优先响应。
883
+ * **优先级管理**:支持六条车道(超级管理员私聊 > 群聊超级管理员 > 普通私聊 > 群聊@ > 群聊普通 > 后台请求),前两条为严格优先级、中间三条轮转发车,确保重要消息优先响应。
884
884
  * **关停收敛**:`MessageHandler.close()` 会先 flush `MessageBatcher`,再调用 `QueueManager.drain()` 等待已入队请求和在途请求自然完成,最后才停止队列处理器,避免缓冲消息只入队未执行。
885
885
 
886
886
  ### 7个智能体 Agent
@@ -1,3 +1,36 @@
1
+ ## v3.15.0 按功能拆分 Embedding 配置与稳定性修复
2
+
3
+ 本版本将嵌入模型配置按功能拆分,知识库、认知记忆与表情包可以共用默认模型或各自覆写连接、维度与指令;同时修复侧写并发合并丢失更新、Agent 技能无法加载、热更新静默失效、SIGTERM 停机缺失等多处影响长期运行的问题。
4
+
5
+ - `[models.embedding]` 保留为全局默认模型与默认参数,新增 `[models.embedding.features.<name>]`(`knowledge` / `cognitive` / `memes`)按功能覆写:`use_default` 整体继承默认表,也可按字段覆写连接信息、`context_window_tokens`、`queue_interval_seconds`、`dimensions`、`query_instruction` / `document_instruction`,`request_params` 与默认表按键合并。WebUI 配置表单同步支持覆写段编辑,`use_proxy` 的三态语义(继承 / 启用 / 禁用)改为下拉选择。
6
+ - 生效配置相同的功能复用同一个 Embedder 与发车队列,重排器全局共享,避免重复加载与重复排队。
7
+ - 修复嵌入指令前缀被剥离的问题:query / document instruction 与文本直接拼接,`"passage: "` 这类带尾随空格的前缀现在原样保留。
8
+ - 修复认知侧写并发合并丢失更新:同一实体的「读取 → LLM 改写 → 写入」整段互斥,后一个合并基于前一个已落盘的结果继续,不再互相覆盖。`ProfileStorage` 新增版本读取与恢复,恢复前自动把当前内容另存为新快照(恢复操作本身可回退);新增 `scripts/restore_profile.py` 提供 list / show / restore 与 `--dry-run`,侧写回滚不再依赖手工复制文件。
9
+ - 史官 worker 新增并发上限 `[cognitive.historian].max_concurrency`(默认 4),以信号量与在途计数双重约束,不再无上限并发。
10
+ - 修复随包 Agent 的 handler 无法加载:handler 模块改按真实包路径导入,`code_delivery_agent` 等使用相对导入的 Agent 恢复可用;注册阶段即预导入全部 handler,失败项记录 `load_error` 并从 schema 中排除,主 AI 不再看到不可用的技能。
11
+ - 配置热更新失败不再静默:更新改为步骤表逐项执行,单步异常不中断其余步骤,失败项与「未完全生效」汇总以 error 级日志输出;异步热更新任务与配置回调的异常均会被记录。嵌入 / 重排模型配置变更加入需重启提示,避免热重载静默无效。
12
+ - 新增 SIGTERM 优雅停机:容器 / systemd / supervisor 停止时不再被直接终止并跳过落盘清理,SIGTERM 与 SIGINT 收敛到同一停机事件,取消连接任务并等待收敛;停机完成后恢复系统原有信号处理器。
13
+ - 修复消息队列重试上限口径分叉:coordinator 与 QueueManager 各用一套重试上限,热更新后两者可分叉,导致等待方在仍会重试时被误判为失败、或重试已耗尽后干等到 480 秒超时;现统一由 `resolve_effective_retry_count` 计算并与等待超时预算同口径。
14
+ - `scripts/reembed_cognitive.py` 支持维度变化迁移:检测到新旧向量维度不同时把新向量全部写入临时 collection,校验记录数后删除原库并原子换名,原库在迁移完成前保持不动,中途被杀可自动清理或从临时库恢复,记录不丢;`--dry-run` 不做任何写入。
15
+ - 依赖与配置清理:crawl4ai 与 langchain-community 改为必需依赖,删除「未安装则降级」的静默回退(crawl4ai 环境异常时启动降级为网页获取不可用并以 error 日志提示修复,不再让 Bot 启动崩溃);移除零引用的死配置 `cognitive.historian.rewrite_max_retry`、无调用方的 `SecurityService.check_rate_limit` / `record_rate_limit`(限流由 rate_limiter 承担)与死依赖 imgkit、croniter。
16
+ - CI 补齐治理:工作流收敛只读权限、并发取消与任务超时,前端行为测试真实执行而非静默跳过,新增 Python 3.11 / 3.13 兼容矩阵,测试开启 65% 覆盖率门禁。
17
+
18
+ ---
19
+
20
+ ## v3.14.0 OneBot 本地文件三模式传输
21
+
22
+ 本版本为 Bot 本地文件新增统一传输层,支持 `local`、`url`、`stream` 三种发送方式并按投递快照热更新;默认保持 `local` 兼容旧部署,跨文件系统发送可显式启用 Runtime 临时链接或 NapCat Stream 分块上传。
23
+
24
+ - 新增 `[onebot].file_send_mode`(`local` / `url` / `stream`)与 `[onebot].file_send_host`,环境变量为 `ONEBOT_FILE_SEND_MODE` / `ONEBOT_FILE_SEND_HOST`,WebUI 配置表单提供三种模式的下拉选择。两项均支持热更新,每次逻辑投递开始时取得独立快照,排队中与进行中的投递保持旧值。默认 `local`,旧配置及未显式指定模式的环境保持原有发送行为,`url` 和 `stream` 必须显式启用;`file_send_host` 仅用于 URL 模式,接受 IPv4、IPv6 或域名。
25
+ - QQ 本地图片、语音、视频、文件与嵌套合并转发中的媒体统一经过新传输层,覆盖 CQ 字符串与消息段数组,文件消息段缺少 `name` 时自动补全文件名;已有 HTTP/HTTPS URL、Base64 和协议端资源标识原样通过,展示文件名、附件 UID 与历史来源保持不变。
26
+ - `url` 模式复用 Runtime HTTP 监听,将本地文件复制为独立临时副本,新增 `GET` / `HEAD` `/api/v1/onebot/files/{file_id}?token=...` 路由:每个文件独立随机令牌、有效期 16 分钟、支持 Range 与重复读取;令牌只授权该文件,不能替代 `X-Undefined-API-Key` 调用其他 Runtime 接口;访问日志不记录查询串,正常停止清理本实例缓存,启动只回收本模块命名且已过期的遗留副本。删除源文件或切换发送模式不会提前使有效链接失效。
27
+ - `stream` 模式通过既有 OneBot WebSocket 按 64 KiB 分块上传并逐块等待确认,完成后独立请求并校验协议端路径、大小与 SHA-256;同一 Bot 的 Stream 文件投递串行,纯文本不等待上传锁;失败只重置未完成的 Stream,不调用清空临时目录的接口;不支持零字节文件。协议端不支持扩展时明确报错并提示改用 `local` 或 `url`,不会静默回退。
28
+ - 文件准备、实际发送与明确失败后的文件消息段回退共用 8 分钟预算,排队不计时;文件准备失败不计作已发送、不触发回退,也不会自动切换模式或重试上传。投递已发出但等待超时、被取消或连接中断时按结果未确认处理,禁止自动重发;`send_forward_msg` / `send_private_forward_msg` 纳入防重投递动作。
29
+ - 文件上传失败的回退收敛到统一调用入口:仅协议端明确拒绝时才改用文件消息段,且回退请求同样经过传输层准备;`FileTransferError` 不再被私聊与群临时会话回退、附件派发和 Bilibili 发送链路吞掉,消息类工具把包含模式与阶段的可展示说明直接反馈给模型。
30
+ - 加固日志与连接脱敏。WebSocket 客户端不再输出未经脱敏的 DEBUG 握手与原始帧,连接错误与 API 失败信息经脱敏后记录,新增 `chunk_data` 脱敏规则并修复脱敏替换未正确回填捕获组的问题;无法解析的消息只记录长度,接收循环停止时统一让挂起的请求失败退出,不再悬挂。
31
+
32
+ ---
33
+
1
34
  ## v3.13.3 回复精简、群活跃度统计与图片预览修复
2
35
 
3
36
  本版本减少对话中的重复解释,明确群成员活跃度统计的含义与数据范围,并修复 Chat 图片预览的键盘和焦点交互。
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: Undefined-bot
3
- Version: 3.13.3
3
+ Version: 3.15.0
4
4
  Summary: QQ bot platform with cognitive memory architecture and multi-agent Skills, via OneBot V11.
5
5
  Project-URL: Repository, https://github.com/69gg/Undefined
6
6
  Project-URL: Issues, https://github.com/69gg/Undefined/issues
@@ -14,10 +14,8 @@ Requires-Dist: apscheduler>=3.10.0
14
14
  Requires-Dist: chardet>=7.4.0.post1
15
15
  Requires-Dist: chromadb>=1.5.5
16
16
  Requires-Dist: crawl4ai>=0.8.6
17
- Requires-Dist: croniter>=6.2.2
18
17
  Requires-Dist: fastmcp>=3.1.1
19
18
  Requires-Dist: httpx>=0.27.0
20
- Requires-Dist: imgkit
21
19
  Requires-Dist: langchain-community>=0.3.0
22
20
  Requires-Dist: linkify-it-py>=2.0.3
23
21
  Requires-Dist: lunar-python>=1.4.8
@@ -47,19 +45,8 @@ Requires-Dist: regex>=2026.2.28
47
45
  Requires-Dist: rich>=14.2.0
48
46
  Requires-Dist: silk-python<0.3.0,>=0.2.8
49
47
  Requires-Dist: tiktoken>=0.7.0
50
- Requires-Dist: types-aiofiles>=25.1.0.20251011
51
- Requires-Dist: types-markdown>=3.10.0.20251106
52
48
  Requires-Dist: websockets>=12.0
53
49
  Requires-Dist: weixin-ilink-client<0.2.0,>=0.1.3
54
- Provides-Extra: ci
55
- Requires-Dist: mypy>=1.8.0; extra == 'ci'
56
- Requires-Dist: ruff>=0.15.8; extra == 'ci'
57
- Provides-Extra: dev
58
- Requires-Dist: mypy>=1.8.0; extra == 'dev'
59
- Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
60
- Requires-Dist: pytest-cov>=7.1.0; extra == 'dev'
61
- Requires-Dist: pytest>=8.0.0; extra == 'dev'
62
- Requires-Dist: ruff>=0.15.8; extra == 'dev'
63
50
  Description-Content-Type: text/markdown
64
51
 
65
52
  <table border="0">
@@ -73,6 +73,13 @@ ws_url = "ws://127.0.0.1:3001"
73
73
  # en: Access token (optional).
74
74
  token = ""
75
75
 
76
+ # zh: 本地文件发送方式:local(共享路径,默认,兼容旧部署)/ url(Runtime 临时链接)/ stream(NapCat Stream API)。支持热更新。
77
+ # en: Local file transport: local (shared paths, default for compatibility), url (temporary Runtime links), or stream (NapCat Stream API). Hot reload supported.
78
+ file_send_mode = "local"
79
+ # zh: 仅 URL 模式使用:OneBot 可访问的 Runtime 主机地址,支持 IPv4、IPv6 或域名,不包含协议、端口或路径;端口使用 Runtime 实际监听端口。
80
+ # en: URL mode only: Runtime host reachable by OneBot, as IPv4, IPv6 or a domain without scheme, port or path. Uses the actual Runtime listening port.
81
+ file_send_host = "127.0.0.1"
82
+
76
83
  [models]
77
84
  # zh: 对话模型配置(主模型,处理每一条消息)。
78
85
  # en: Chat model config (the main model, processing each message).
@@ -678,8 +685,8 @@ stream_enabled = false
678
685
  # en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
679
686
  [models.grok.request_params]
680
687
 
681
- # zh: 嵌入模型配置(知识库语义检索使用)。
682
- # en: Embedding model config (used by knowledge semantic retrieval).
688
+ # zh: 嵌入模型默认配置(知识库 / 认知记忆 / 梗库默认共用;各功能可在下方 features 中单独覆写)。
689
+ # en: Default embedding model config (shared by knowledge, cognitive memory and memes by default; override per feature below).
683
690
  [models.embedding]
684
691
  # zh: 是否让该模型请求使用 [proxy] 代理地址。默认关闭。
685
692
  # en: Whether this model uses proxy addresses from [proxy]. Disabled by default.
@@ -703,8 +710,11 @@ queue_interval_seconds = 0.0
703
710
  # zh: 向量维度(可选)。0 或留空表示使用模型默认维度。
704
711
  # en: Embedding dimensions (optional). Use 0/empty to use model defaults.
705
712
  dimensions = 0
706
- # zh: 查询端指令前缀(可选,Qwen3/BGE 等模型常用)。
713
+ # zh: 查询端指令前缀(可选,Qwen3/BGE 等模型常用)。指令与文本直接拼接,
714
+ # 首尾空白与换行原样保留;留空表示不使用指令。
707
715
  # en: Query instruction prefix (optional, common for Qwen3/BGE-style models).
716
+ # The instruction is concatenated directly with the text, whitespace and
717
+ # newlines preserved; leave empty to disable.
708
718
  query_instruction = ""
709
719
  # zh: 文档端指令前缀(可选,E5 等模型常用,例如 "passage: ")。
710
720
  # en: Document instruction prefix (optional, common for E5-style models, e.g. "passage: ").
@@ -714,6 +724,144 @@ document_instruction = ""
714
724
  # en: Extra request-body params (optional) for embedding-provider-specific fields.
715
725
  [models.embedding.request_params]
716
726
 
727
+ # zh: 按功能覆写的 embedding 配置。每个功能可完全继承 [models.embedding] 默认配置,
728
+ # 也可单独设置并按字段覆写;生效配置完全相同的功能共用一个发车队列。
729
+ # 通用哨兵规则:所有字符串字段(api_url / api_key / model_name / 指令前缀)
730
+ # 空字符串均表示继承默认配置、无法表达显式清空;数值与 use_proxy 的哨兵见各字段注释。
731
+ # en: Per-feature embedding overrides. Each feature either inherits the
732
+ # [models.embedding] defaults or overrides individual fields; features with
733
+ # the same effective config share one dispatch queue.
734
+ # Sentinel rule: empty strings in api_url / api_key / model_name / instruction
735
+ # prefixes all mean "inherit the default" and cannot express an explicit clear;
736
+ # numeric and use_proxy sentinels are documented on each field.
737
+
738
+ # zh: 按功能覆写示例:知识库(knowledge)。仅 use_default = false 时下方字段生效,取哨兵值仍表示继承默认配置。
739
+ # en: Per-feature override example: knowledge base (knowledge). Fields below apply only when use_default = false; sentinel values inherit the defaults.
740
+ [models.embedding.features.knowledge]
741
+ # zh: 是否完全使用 [models.embedding] 默认配置;true 时本表其余字段全部忽略。
742
+ # en: Whether to fully inherit the [models.embedding] defaults; when true, all other fields here are ignored.
743
+ use_default = true
744
+ # zh: 覆写 API 地址;空字符串表示继承默认配置。
745
+ # en: Override API URL; an empty string inherits the default.
746
+ api_url = ""
747
+ # zh: 覆写 API Key;空字符串表示继承默认配置。
748
+ # en: Override API key; an empty string inherits the default.
749
+ api_key = ""
750
+ # zh: 覆写模型名称;空字符串表示继承默认配置。
751
+ # en: Override model name; an empty string inherits the default.
752
+ model_name = ""
753
+ # zh: 覆写代理开关;"inherit"(或 "default")表示继承默认配置,也可写 true / false。
754
+ # en: Override the proxy switch; "inherit" (or "default") inherits the default, true / false override it.
755
+ use_proxy = "inherit"
756
+ # zh: 覆写上下文窗口上限(token);<=0 表示继承默认配置。
757
+ # en: Override the context window cap (tokens); <=0 inherits the default.
758
+ context_window_tokens = 0
759
+ # zh: 覆写队列发车间隔(秒);<0 表示继承默认配置,0 表示请求到达立即发车。
760
+ # en: Override the queue interval (seconds); <0 inherits the default, 0 dispatches on arrival.
761
+ queue_interval_seconds = -1.0
762
+ # zh: 覆写向量维度;<0 表示继承默认配置,0 表示使用模型默认维度。
763
+ # en: Override embedding dimensions; <0 inherits the default, 0 uses the model default.
764
+ dimensions = -1
765
+ # zh: 覆写查询端指令前缀;空字符串或纯空白都表示继承默认配置。覆写表无法表达
766
+ # 「显式清空」——若默认表带前缀而本功能不需要,请把默认前缀留空、只在需要
767
+ # 的功能上单独设置。
768
+ # en: Override the query instruction prefix; an empty or whitespace-only string
769
+ # inherits the default. Overrides cannot express "explicitly empty" — if the
770
+ # default table has a prefix this feature does not need, keep the default
771
+ # empty and set the prefix only on the features that need it.
772
+ query_instruction = ""
773
+ # zh: 覆写文档端指令前缀;语义同 query_instruction(空/纯空白 = 继承)。
774
+ # en: Override the document instruction prefix; same semantics as query_instruction (empty/whitespace = inherit).
775
+ document_instruction = ""
776
+
777
+ # zh: 覆写额外请求体参数,按 key 合并到默认 request_params 之上(同名以本表为准)。
778
+ # en: Override extra request-body params, merged over the default request_params (this table wins).
779
+ [models.embedding.features.knowledge.request_params]
780
+ # zh: 按功能覆写示例:认知记忆(cognitive)。仅 use_default = false 时下方字段生效,取哨兵值仍表示继承默认配置。
781
+ # en: Per-feature override example: cognitive memory (cognitive). Fields below apply only when use_default = false; sentinel values inherit the defaults.
782
+ [models.embedding.features.cognitive]
783
+ # zh: 是否完全使用 [models.embedding] 默认配置;true 时本表其余字段全部忽略。
784
+ # en: Whether to fully inherit the [models.embedding] defaults; when true, all other fields here are ignored.
785
+ use_default = true
786
+ # zh: 覆写 API 地址;空字符串表示继承默认配置。
787
+ # en: Override API URL; an empty string inherits the default.
788
+ api_url = ""
789
+ # zh: 覆写 API Key;空字符串表示继承默认配置。
790
+ # en: Override API key; an empty string inherits the default.
791
+ api_key = ""
792
+ # zh: 覆写模型名称;空字符串表示继承默认配置。
793
+ # en: Override model name; an empty string inherits the default.
794
+ model_name = ""
795
+ # zh: 覆写代理开关;"inherit"(或 "default")表示继承默认配置,也可写 true / false。
796
+ # en: Override the proxy switch; "inherit" (or "default") inherits the default, true / false override it.
797
+ use_proxy = "inherit"
798
+ # zh: 覆写上下文窗口上限(token);<=0 表示继承默认配置。
799
+ # en: Override the context window cap (tokens); <=0 inherits the default.
800
+ context_window_tokens = 0
801
+ # zh: 覆写队列发车间隔(秒);<0 表示继承默认配置,0 表示请求到达立即发车。
802
+ # en: Override the queue interval (seconds); <0 inherits the default, 0 dispatches on arrival.
803
+ queue_interval_seconds = -1.0
804
+ # zh: 覆写向量维度;<0 表示继承默认配置,0 表示使用模型默认维度。
805
+ # en: Override embedding dimensions; <0 inherits the default, 0 uses the model default.
806
+ dimensions = -1
807
+ # zh: 覆写查询端指令前缀;空字符串或纯空白都表示继承默认配置。覆写表无法表达
808
+ # 「显式清空」——若默认表带前缀而本功能不需要,请把默认前缀留空、只在需要
809
+ # 的功能上单独设置。
810
+ # en: Override the query instruction prefix; an empty or whitespace-only string
811
+ # inherits the default. Overrides cannot express "explicitly empty" — if the
812
+ # default table has a prefix this feature does not need, keep the default
813
+ # empty and set the prefix only on the features that need it.
814
+ query_instruction = ""
815
+ # zh: 覆写文档端指令前缀;语义同 query_instruction(空/纯空白 = 继承)。
816
+ # en: Override the document instruction prefix; same semantics as query_instruction (empty/whitespace = inherit).
817
+ document_instruction = ""
818
+
819
+ # zh: 覆写额外请求体参数,按 key 合并到默认 request_params 之上(同名以本表为准)。
820
+ # en: Override extra request-body params, merged over the default request_params (this table wins).
821
+ [models.embedding.features.cognitive.request_params]
822
+ # zh: 按功能覆写示例:梗库(memes)。仅 use_default = false 时下方字段生效,取哨兵值仍表示继承默认配置。
823
+ # en: Per-feature override example: meme library (memes). Fields below apply only when use_default = false; sentinel values inherit the defaults.
824
+ [models.embedding.features.memes]
825
+ # zh: 是否完全使用 [models.embedding] 默认配置;true 时本表其余字段全部忽略。
826
+ # en: Whether to fully inherit the [models.embedding] defaults; when true, all other fields here are ignored.
827
+ use_default = true
828
+ # zh: 覆写 API 地址;空字符串表示继承默认配置。
829
+ # en: Override API URL; an empty string inherits the default.
830
+ api_url = ""
831
+ # zh: 覆写 API Key;空字符串表示继承默认配置。
832
+ # en: Override API key; an empty string inherits the default.
833
+ api_key = ""
834
+ # zh: 覆写模型名称;空字符串表示继承默认配置。
835
+ # en: Override model name; an empty string inherits the default.
836
+ model_name = ""
837
+ # zh: 覆写代理开关;"inherit"(或 "default")表示继承默认配置,也可写 true / false。
838
+ # en: Override the proxy switch; "inherit" (or "default") inherits the default, true / false override it.
839
+ use_proxy = "inherit"
840
+ # zh: 覆写上下文窗口上限(token);<=0 表示继承默认配置。
841
+ # en: Override the context window cap (tokens); <=0 inherits the default.
842
+ context_window_tokens = 0
843
+ # zh: 覆写队列发车间隔(秒);<0 表示继承默认配置,0 表示请求到达立即发车。
844
+ # en: Override the queue interval (seconds); <0 inherits the default, 0 dispatches on arrival.
845
+ queue_interval_seconds = -1.0
846
+ # zh: 覆写向量维度;<0 表示继承默认配置,0 表示使用模型默认维度。
847
+ # en: Override embedding dimensions; <0 inherits the default, 0 uses the model default.
848
+ dimensions = -1
849
+ # zh: 覆写查询端指令前缀;空字符串或纯空白都表示继承默认配置。覆写表无法表达
850
+ # 「显式清空」——若默认表带前缀而本功能不需要,请把默认前缀留空、只在需要
851
+ # 的功能上单独设置。
852
+ # en: Override the query instruction prefix; an empty or whitespace-only string
853
+ # inherits the default. Overrides cannot express "explicitly empty" — if the
854
+ # default table has a prefix this feature does not need, keep the default
855
+ # empty and set the prefix only on the features that need it.
856
+ query_instruction = ""
857
+ # zh: 覆写文档端指令前缀;语义同 query_instruction(空/纯空白 = 继承)。
858
+ # en: Override the document instruction prefix; same semantics as query_instruction (empty/whitespace = inherit).
859
+ document_instruction = ""
860
+
861
+ # zh: 覆写额外请求体参数,按 key 合并到默认 request_params 之上(同名以本表为准)。
862
+ # en: Override extra request-body params, merged over the default request_params (this table wins).
863
+ [models.embedding.features.memes.request_params]
864
+
717
865
  # zh: 重排模型配置(知识库二阶段检索使用)。
718
866
  # en: Rerank model config (used in second-stage knowledge retrieval).
719
867
  [models.rerank]
@@ -1057,12 +1205,20 @@ tool_search_max_results = 5
1057
1205
  # zh: 主 Prompt 固定插槽对应的本地 UTF-8 文件。路径为空时不注入。
1058
1206
  # en: Local UTF-8 files mapped to stable main-Prompt slots. Empty paths disable injection.
1059
1207
  [prompt.file_includes]
1060
- # zh: P0 / P1 / P2 / P3 分别位于对应优先级区块开头;summary 位于总结区块开头。
1061
- # en: P0-P3 are placed at the start of their priority sections; summary is placed at the start of the summary section.
1208
+ # zh: 插入 <absolute_priority level="P0"> 开头(绝对优先级区块)。
1209
+ # en: Inserted at the start of the <absolute_priority level="P0"> block.
1062
1210
  p0 = ""
1211
+ # zh: 插入 <core_rules level="P1"> 开头(核心规则区块)。
1212
+ # en: Inserted at the start of the <core_rules level="P1"> block.
1063
1213
  p1 = ""
1214
+ # zh: 插入 <important_rules level="P2"> 开头(重要规则区块)。
1215
+ # en: Inserted at the start of the <important_rules level="P2"> block.
1064
1216
  p2 = ""
1217
+ # zh: 插入 <optimization_rules level="P3"> 开头(优化规则区块)。
1218
+ # en: Inserted at the start of the <optimization_rules level="P3"> block.
1065
1219
  p3 = ""
1220
+ # zh: 插入 <summary> 开头(总结区块)。
1221
+ # en: Inserted at the start of the <summary> block.
1066
1222
  summary = ""
1067
1223
 
1068
1224
  # zh: Prompt 系统信息注入。总开关默认关闭;开启后各子项默认展示,可逐项关闭。
@@ -1629,9 +1785,6 @@ profile_top_k = 8
1629
1785
  rerank_candidate_multiplier = 3
1630
1786
 
1631
1787
  [cognitive.historian]
1632
- # zh: 记忆改写最大重试次数。
1633
- # en: Max retries for memory rewrite.
1634
- rewrite_max_retry = 2
1635
1788
  # zh: 提供给史官的最近消息参考条数(用于实体消歧);0=禁用。
1636
1789
  # en: Number of recent message references for historian disambiguation; 0 disables.
1637
1790
  recent_messages_inject_k = 12
@@ -1647,6 +1800,9 @@ poll_interval_seconds = 1.0
1647
1800
  # zh: 任务超时时间(秒),超时后重新入队。
1648
1801
  # en: Stale job timeout (seconds), re-queued after timeout.
1649
1802
  stale_job_timeout_seconds = 300.0
1803
+ # zh: 史官同时在途处理的任务上限(>=1);超出后暂停取新任务,避免并发无上限。
1804
+ # en: Max in-flight historian jobs (>=1); new jobs wait until in-flight drops below it.
1805
+ max_concurrency = 4
1650
1806
 
1651
1807
  [cognitive.profile]
1652
1808
  # zh: 用户画像存储路径。
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "Undefined-bot"
3
- version = "3.13.3"
3
+ version = "3.15.0"
4
4
  description = "QQ bot platform with cognitive memory architecture and multi-agent Skills, via OneBot V11."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -17,9 +17,7 @@ dependencies = [
17
17
  "crawl4ai>=0.8.6",
18
18
  "matplotlib",
19
19
  "pillow",
20
- "imgkit",
21
20
  "markdown>=3.10",
22
- "types-markdown>=3.10.0.20251106",
23
21
  "aiofiles>=25.1.0",
24
22
  "markdown-it-py[plugins]>=4.0.0",
25
23
  "mdit-py-plugins>=0.5.0",
@@ -29,9 +27,7 @@ dependencies = [
29
27
  "pymdown-extensions>=10.20",
30
28
  "playwright>=1.57.0",
31
29
  "aiohttp>=3.13.2",
32
- "types-aiofiles>=25.1.0.20251011",
33
30
  "APScheduler>=3.10.0",
34
- "croniter>=6.2.2",
35
31
  "pymupdf>=1.27.2,!=1.27.2.2",
36
32
  "python-docx>=1.2.0",
37
33
  "python-pptx>=1.0.2",
@@ -63,19 +59,6 @@ Issues = "https://github.com/69gg/Undefined/issues"
63
59
  Undefined = "Undefined.main:run"
64
60
  Undefined-webui = "Undefined.webui:run"
65
61
 
66
- [project.optional-dependencies]
67
- dev = [
68
- "mypy>=1.8.0",
69
- "ruff>=0.15.8",
70
- "pytest>=8.0.0",
71
- "pytest-asyncio>=0.23.0",
72
- "pytest-cov>=7.1.0",
73
- ]
74
- ci = [
75
- "ruff>=0.15.8",
76
- "mypy>=1.8.0",
77
- ]
78
-
79
62
  [[tool.uv.index]]
80
63
  url = "https://pypi.org/simple"
81
64
 
@@ -129,7 +112,17 @@ exclude = ["code"]
129
112
  asyncio_mode = "auto"
130
113
  testpaths = ["tests"]
131
114
 
115
+ [tool.coverage.run]
116
+ source = ["Undefined"]
117
+ branch = false
118
+
119
+ [tool.coverage.report]
120
+ # 覆盖率棘轮:整体不低于 65%(当前约 69%),防止明显回退
121
+ fail_under = 65
122
+ skip_covered = true
123
+
132
124
  [dependency-groups]
125
+ # 开发与 CI 共用同一组工具(CI 通过 --group dev 安装,避免两份清单漂移)
133
126
  dev = [
134
127
  "mypy>=1.8.0",
135
128
  "ruff>=0.15.8",
@@ -137,8 +130,6 @@ dev = [
137
130
  "pytest-asyncio>=0.23.0",
138
131
  "pytest-cov>=7.1.0",
139
132
  "types-pyyaml>=6.0.12.20250915",
140
- ]
141
- ci = [
142
- "ruff>=0.15.8",
143
- "mypy>=1.8.0",
133
+ "types-markdown>=3.10.0.20251106",
134
+ "types-aiofiles>=25.1.0.20251011",
144
135
  ]
@@ -24,7 +24,7 @@ if TYPE_CHECKING:
24
24
  from .skills.registry import BaseRegistry as BaseRegistry
25
25
  from .skills.tools import ToolRegistry as ToolRegistry
26
26
 
27
- __version__: str = "3.13.3"
27
+ __version__: str = "3.15.0"
28
28
 
29
29
  # symbol -> (module_path, attribute_name);首次访问时才 importlib 加载
30
30
  _LAZY_IMPORTS: dict[str, tuple[str, str]] = {
@@ -322,12 +322,10 @@ class ClientAskLoopMixin(ClientQueueMixin):
322
322
  ):
323
323
  tool_context[MUSIC_TRACK_STORE_CONTEXT_KEY] = MusicTrackReferenceStore()
324
324
  tool_context.setdefault("search_wrapper", self._search_wrapper)
325
- tool_context.setdefault(
326
- "crawl4ai_available", self._crawl4ai_capabilities.available
327
- )
328
325
  tool_context.setdefault(
329
326
  "crawl4ai_proxy_config_available",
330
- self._crawl4ai_capabilities.proxy_config_available,
327
+ self._crawl4ai_capabilities is not None
328
+ and self._crawl4ai_capabilities.proxy_config_available,
331
329
  )
332
330
  tool_context.setdefault("end_summary_storage", self._end_summary_storage)
333
331
  tool_context.setdefault("end_summaries", self._prompt_builder.end_summaries)