Undefined-bot 3.15.0__tar.gz → 3.16.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 (832) hide show
  1. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/CHANGELOG.md +15 -0
  2. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/PKG-INFO +1 -1
  3. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/config.toml.example +12 -0
  4. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/pyproject.toml +2 -2
  5. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/__init__.py +1 -1
  6. undefined_bot-3.16.0/src/Undefined/bilibili/__init__.py +22 -0
  7. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/api_client.py +110 -1
  8. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/downloader.py +17 -0
  9. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/errors.py +4 -0
  10. undefined_bot-3.16.0/src/Undefined/bilibili/format.py +76 -0
  11. undefined_bot-3.16.0/src/Undefined/bilibili/models.py +163 -0
  12. undefined_bot-3.16.0/src/Undefined/bilibili/opus_parser.py +192 -0
  13. undefined_bot-3.16.0/src/Undefined/bilibili/opus_render.py +823 -0
  14. undefined_bot-3.16.0/src/Undefined/bilibili/opus_sender.py +653 -0
  15. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/sender.py +61 -24
  16. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/config_class.py +5 -0
  17. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/integrations.py +29 -0
  18. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/handlers/auto_extract.py +80 -0
  19. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/README.md +1 -1
  20. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/README.md +2 -2
  21. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/prompt.md +1 -0
  22. undefined_bot-3.16.0/src/Undefined/skills/pipelines/bilibili_opus/config.json +6 -0
  23. undefined_bot-3.16.0/src/Undefined/skills/pipelines/bilibili_opus/handler.py +55 -0
  24. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/context.py +2 -0
  25. undefined_bot-3.16.0/src/Undefined/skills/tools/bilibili_opus/README.md +49 -0
  26. undefined_bot-3.16.0/src/Undefined/skills/tools/bilibili_opus/config.json +61 -0
  27. undefined_bot-3.16.0/src/Undefined/skills/tools/bilibili_opus/handler.py +184 -0
  28. undefined_bot-3.16.0/src/Undefined/skills/tools/douyin_video/callable.json +4 -0
  29. undefined_bot-3.15.0/src/Undefined/bilibili/__init__.py +0 -16
  30. undefined_bot-3.15.0/src/Undefined/bilibili/models.py +0 -66
  31. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/.gitignore +0 -0
  32. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/ARCHITECTURE.md +0 -0
  33. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/LICENSE +0 -0
  34. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/README.md +0 -0
  35. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/config/README.md +0 -0
  36. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/config/mcp.json.example +0 -0
  37. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/img/undefined-9527.png +0 -0
  38. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/img/xlwy.jpg +0 -0
  39. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/IMPORTANT/each.md +0 -0
  40. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/README.md +0 -0
  41. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/agent_self_intro.txt +0 -0
  42. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/analyze_multimodal.txt +0 -0
  43. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/describe_image.txt +0 -0
  44. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/describe_meme_image.txt +0 -0
  45. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/generate_title.txt +0 -0
  46. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/historian_profile_merge.md +0 -0
  47. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/historian_rewrite.md +0 -0
  48. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/image_gen_moderation.txt +0 -0
  49. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/injection_detector.txt +0 -0
  50. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/injection_response_agent.txt +0 -0
  51. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/judge_meme_image.txt +0 -0
  52. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/merge_message_summaries.txt +0 -0
  53. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/merge_summaries.txt +0 -0
  54. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/message_summary.txt +0 -0
  55. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/naga_message_moderation.txt +0 -0
  56. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/stats_analysis.txt +0 -0
  57. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/summarize.txt +0 -0
  58. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/undefined.xml +0 -0
  59. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/res/prompts/undefined_nagaagent.xml +0 -0
  60. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/README.md +0 -0
  61. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/README.md +0 -0
  62. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/__main__.py +0 -0
  63. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/__init__.py +0 -0
  64. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/client/__init__.py +0 -0
  65. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/client/ask_loop.py +0 -0
  66. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/client/queue.py +0 -0
  67. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/client/setup.py +0 -0
  68. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/crawl4ai_support.py +0 -0
  69. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/http.py +0 -0
  70. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/__init__.py +0 -0
  71. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/requester.py +0 -0
  72. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/retry.py +0 -0
  73. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/sanitize.py +0 -0
  74. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/streaming.py +0 -0
  75. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/thinking.py +0 -0
  76. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/llm/types.py +0 -0
  77. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/model_selector.py +0 -0
  78. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/multimodal/__init__.py +0 -0
  79. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/multimodal/analyzer.py +0 -0
  80. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/multimodal/constants.py +0 -0
  81. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/multimodal/detection.py +0 -0
  82. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/multimodal/parsing.py +0 -0
  83. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/parsing.py +0 -0
  84. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/__init__.py +0 -0
  85. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/builder.py +0 -0
  86. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/cognitive.py +0 -0
  87. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/constants.py +0 -0
  88. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/current_input.py +0 -0
  89. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/file_includes.py +0 -0
  90. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/system_context.py +0 -0
  91. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/prompts/system_info.py +0 -0
  92. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/queue_budget.py +0 -0
  93. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/retrieval.py +0 -0
  94. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/summaries.py +0 -0
  95. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/tokens.py +0 -0
  96. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/tool_search.py +0 -0
  97. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/tooling.py +0 -0
  98. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/transports/__init__.py +0 -0
  99. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/transports/anthropic_transport.py +0 -0
  100. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/transports/openai_transport.py +0 -0
  101. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/ai/transports/replay.py +0 -0
  102. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/__init__.py +0 -0
  103. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/_context.py +0 -0
  104. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/_helpers.py +0 -0
  105. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/_naga_state.py +0 -0
  106. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/_openapi.py +0 -0
  107. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/_probes.py +0 -0
  108. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/app.py +0 -0
  109. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/naga_store.py +0 -0
  110. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/__init__.py +0 -0
  111. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/automations.py +0 -0
  112. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/chat.py +0 -0
  113. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/cognitive.py +0 -0
  114. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/commands.py +0 -0
  115. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/health.py +0 -0
  116. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/memes.py +0 -0
  117. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/memory.py +0 -0
  118. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/naga/__init__.py +0 -0
  119. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/naga/auth.py +0 -0
  120. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/naga/bind.py +0 -0
  121. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/naga/send.py +0 -0
  122. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/naga/unbind.py +0 -0
  123. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/onebot_files.py +0 -0
  124. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/schedules.py +0 -0
  125. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/system.py +0 -0
  126. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/tools.py +0 -0
  127. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/routes/weixin.py +0 -0
  128. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/api/webchat_store.py +0 -0
  129. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/__init__.py +0 -0
  130. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/client.py +0 -0
  131. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/downloader.py +0 -0
  132. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/models.py +0 -0
  133. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/parser.py +0 -0
  134. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/arxiv/sender.py +0 -0
  135. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/__init__.py +0 -0
  136. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/forward_snapshot.py +0 -0
  137. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/models.py +0 -0
  138. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/registry.py +0 -0
  139. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/render.py +0 -0
  140. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/attachments/segments.py +0 -0
  141. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/__init__.py +0 -0
  142. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/address.py +0 -0
  143. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/catalog.py +0 -0
  144. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/clock.py +0 -0
  145. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/constants.py +0 -0
  146. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/engine.py +0 -0
  147. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/extract.py +0 -0
  148. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/logutil.py +0 -0
  149. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/match.py +0 -0
  150. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/mentions.py +0 -0
  151. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/migrate.py +0 -0
  152. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/runner.py +0 -0
  153. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/service.py +0 -0
  154. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/short.py +0 -0
  155. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/storage.py +0 -0
  156. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/template.py +0 -0
  157. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/triggers.py +0 -0
  158. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/automations/validate.py +0 -0
  159. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/danmaku.py +0 -0
  160. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/download_core.py +0 -0
  161. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/parser.py +0 -0
  162. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/wbi.py +0 -0
  163. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/bilibili/wbi_request.py +0 -0
  164. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/changelog.py +0 -0
  165. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/__init__.py +0 -0
  166. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/chroma_scheduler.py +0 -0
  167. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/historian/__init__.py +0 -0
  168. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/historian/helpers.py +0 -0
  169. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/historian/tools.py +0 -0
  170. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/historian/worker.py +0 -0
  171. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/job_queue.py +0 -0
  172. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/profile_storage.py +0 -0
  173. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/service/__init__.py +0 -0
  174. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/service/helpers.py +0 -0
  175. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/service/service.py +0 -0
  176. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/vector_store.py +0 -0
  177. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/cognitive/vector_store_compat.py +0 -0
  178. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/__init__.py +0 -0
  179. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/admin.py +0 -0
  180. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/api_modes.py +0 -0
  181. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/build_config.py +0 -0
  182. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/coercers.py +0 -0
  183. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/domain_parsers.py +0 -0
  184. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/env_registry.py +0 -0
  185. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/hot_reload.py +0 -0
  186. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/__init__.py +0 -0
  187. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/access.py +0 -0
  188. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/core.py +0 -0
  189. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/domains.py +0 -0
  190. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/finalize.py +0 -0
  191. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/history_skills.py +0 -0
  192. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/knowledge.py +0 -0
  193. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/logging_tools.py +0 -0
  194. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/models.py +0 -0
  195. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/load_sections/network.py +0 -0
  196. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/loader.py +0 -0
  197. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/manager.py +0 -0
  198. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/model_parsers.py +0 -0
  199. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/models.py +0 -0
  200. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/naga_policy.py +0 -0
  201. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/onebot.py +0 -0
  202. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/__init__.py +0 -0
  203. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/agent.py +0 -0
  204. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/chat.py +0 -0
  205. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/embedding.py +0 -0
  206. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/grok.py +0 -0
  207. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/helpers.py +0 -0
  208. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/historian.py +0 -0
  209. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/image.py +0 -0
  210. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/naga.py +0 -0
  211. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/pool.py +0 -0
  212. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/security.py +0 -0
  213. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/summary.py +0 -0
  214. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/parsers/vision.py +0 -0
  215. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/resolvers.py +0 -0
  216. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/search.py +0 -0
  217. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/toml_io.py +0 -0
  218. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/config/webui_settings.py +0 -0
  219. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/context.py +0 -0
  220. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/context_resource_registry.py +0 -0
  221. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/__init__.py +0 -0
  222. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/client.py +0 -0
  223. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/downloader.py +0 -0
  224. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/models.py +0 -0
  225. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/parser.py +0 -0
  226. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/douyin/sender.py +0 -0
  227. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/end_summary_storage.py +0 -0
  228. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/faq.py +0 -0
  229. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/github/__init__.py +0 -0
  230. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/github/client.py +0 -0
  231. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/github/models.py +0 -0
  232. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/github/parser.py +0 -0
  233. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/github/sender.py +0 -0
  234. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/handlers/__init__.py +0 -0
  235. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/handlers/message_flow.py +0 -0
  236. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/handlers/poke.py +0 -0
  237. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/handlers/repeat.py +0 -0
  238. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/injection_response_agent.py +0 -0
  239. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/__init__.py +0 -0
  240. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/chunker.py +0 -0
  241. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/embedder.py +0 -0
  242. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/manager.py +0 -0
  243. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/reranker.py +0 -0
  244. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/runtime.py +0 -0
  245. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/knowledge/store.py +0 -0
  246. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/main.py +0 -0
  247. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/mcp/__init__.py +0 -0
  248. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/mcp/registry.py +0 -0
  249. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/__init__.py +0 -0
  250. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/_image_utils.py +0 -0
  251. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/ingest.py +0 -0
  252. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/models.py +0 -0
  253. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/search.py +0 -0
  254. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/service.py +0 -0
  255. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/store.py +0 -0
  256. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/vector_store.py +0 -0
  257. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memes/worker.py +0 -0
  258. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/memory.py +0 -0
  259. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/__init__.py +0 -0
  260. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/client.py +0 -0
  261. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/file_errors.py +0 -0
  262. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/file_references.py +0 -0
  263. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/file_store.py +0 -0
  264. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/file_transport.py +0 -0
  265. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/onebot/message.py +0 -0
  266. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/py.typed +0 -0
  267. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/rate_limit.py +0 -0
  268. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/render.py +0 -0
  269. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/__init__.py +0 -0
  270. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/bugfix_command.py +0 -0
  271. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/command.py +0 -0
  272. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/commands/__init__.py +0 -0
  273. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/commands/catalog.py +0 -0
  274. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/commands/context.py +0 -0
  275. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/commands/registry.py +0 -0
  276. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/__init__.py +0 -0
  277. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/background.py +0 -0
  278. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/batching.py +0 -0
  279. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/group.py +0 -0
  280. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/message_ids.py +0 -0
  281. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/coordinator/private.py +0 -0
  282. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/message_batcher/__init__.py +0 -0
  283. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/message_batcher/scheduler.py +0 -0
  284. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/message_batcher/state.py +0 -0
  285. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/message_summary_fetch.py +0 -0
  286. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/model_pool.py +0 -0
  287. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/queue_manager.py +0 -0
  288. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/security.py +0 -0
  289. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/services/stats_command.py +0 -0
  290. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/README.md +0 -0
  291. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/__init__.py +0 -0
  292. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/__init__.py +0 -0
  293. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/agent_tool_registry.py +0 -0
  294. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/config.json +0 -0
  295. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/docker_utils.py +0 -0
  296. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/handler.py +0 -0
  297. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/intro.md +0 -0
  298. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/mcp.json +0 -0
  299. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/prompt.md +0 -0
  300. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/config.json +0 -0
  301. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/handler.py +0 -0
  302. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/config.json +0 -0
  303. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/handler.py +0 -0
  304. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/config.json +0 -0
  305. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/handler.py +0 -0
  306. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/config.json +0 -0
  307. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/handler.py +0 -0
  308. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/config.json +0 -0
  309. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/handler.py +0 -0
  310. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/config.json +0 -0
  311. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/handler.py +0 -0
  312. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/config.json +0 -0
  313. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/handler.py +0 -0
  314. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/config.json +0 -0
  315. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/handler.py +0 -0
  316. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/config.json +0 -0
  317. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/handler.py +0 -0
  318. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/config.json +0 -0
  319. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/handler.py +0 -0
  320. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/config.json +0 -0
  321. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/handler.py +0 -0
  322. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/config.json +0 -0
  323. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/handler.py +0 -0
  324. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/README.md +0 -0
  325. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/config.json +0 -0
  326. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/handler.py +0 -0
  327. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/intro.md +0 -0
  328. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/prompt.md +0 -0
  329. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/__init__.py +0 -0
  330. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/config.json +0 -0
  331. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/handler.py +0 -0
  332. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/config.json +0 -0
  333. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/handler.py +0 -0
  334. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/config.json +0 -0
  335. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/handler.py +0 -0
  336. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/config.json +0 -0
  337. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/handler.py +0 -0
  338. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/config.json +0 -0
  339. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/handler.py +0 -0
  340. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/__init__.py +0 -0
  341. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/config.json +0 -0
  342. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/handler.py +0 -0
  343. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/intro.md +0 -0
  344. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/__init__.py +0 -0
  345. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/config.json +0 -0
  346. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/handler.py +0 -0
  347. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/config.json +0 -0
  348. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/handler.py +0 -0
  349. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/config.json +0 -0
  350. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/handler.py +0 -0
  351. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/config.json +0 -0
  352. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/handler.py +0 -0
  353. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/config.json +0 -0
  354. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/handler.py +0 -0
  355. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/config.json +0 -0
  356. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/handler.py +0 -0
  357. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/config.json +0 -0
  358. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/handler.py +0 -0
  359. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/config.json +0 -0
  360. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/handler.py +0 -0
  361. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/config.json +0 -0
  362. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/handler.py +0 -0
  363. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/config.json +0 -0
  364. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/handler.py +0 -0
  365. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/config.json +0 -0
  366. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/handler.py +0 -0
  367. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/config.json +0 -0
  368. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/handler.py +0 -0
  369. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/README.md +0 -0
  370. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/config.json +0 -0
  371. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/handler.py +0 -0
  372. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/intro.md +0 -0
  373. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/prompt.md +0 -0
  374. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/__init__.py +0 -0
  375. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/config.json +0 -0
  376. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/handler.py +0 -0
  377. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/config.json +0 -0
  378. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/handler.py +0 -0
  379. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/base64/config.json +0 -0
  380. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/base64/handler.py +0 -0
  381. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/config.json +0 -0
  382. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/handler.py +0 -0
  383. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/config.json +0 -0
  384. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/handler.py +0 -0
  385. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/config.json +0 -0
  386. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/handler.py +0 -0
  387. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/config.json +0 -0
  388. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/handler.py +0 -0
  389. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/hash/config.json +0 -0
  390. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/hash/handler.py +0 -0
  391. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/history/config.json +0 -0
  392. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/history/handler.py +0 -0
  393. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/net_check/config.json +0 -0
  394. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/net_check/handler.py +0 -0
  395. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/config.json +0 -0
  396. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/handler.py +0 -0
  397. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/speed/config.json +0 -0
  398. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/speed/handler.py +0 -0
  399. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/tcping/config.json +0 -0
  400. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/tcping/handler.py +0 -0
  401. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/config.json +0 -0
  402. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/handler.py +0 -0
  403. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/config.json +0 -0
  404. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/handler.py +0 -0
  405. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/whois/config.json +0 -0
  406. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/info_agent/tools/whois/handler.py +0 -0
  407. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/intro_generator.py +0 -0
  408. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/intro_utils.py +0 -0
  409. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/README.md +0 -0
  410. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/config.json +0 -0
  411. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/handler.py +0 -0
  412. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/intro.md +0 -0
  413. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/mcp.json +0 -0
  414. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/prompt.md +0 -0
  415. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/__init__.py +0 -0
  416. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/config.json +0 -0
  417. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/handler.py +0 -0
  418. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/config.json +0 -0
  419. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/handler.py +0 -0
  420. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/config.json +0 -0
  421. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/handler.py +0 -0
  422. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/config.json +0 -0
  423. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/handler.py +0 -0
  424. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/config.json +0 -0
  425. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/handler.py +0 -0
  426. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/runner/__init__.py +0 -0
  427. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/runner/context.py +0 -0
  428. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/runner/loop.py +0 -0
  429. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/runner/tools.py +0 -0
  430. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/runner/webchat_utils.py +0 -0
  431. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/__init__.py +0 -0
  432. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/config.json +0 -0
  433. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/handler.py +0 -0
  434. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/intro.md +0 -0
  435. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/prompt.md +0 -0
  436. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/tools/__init__.py +0 -0
  437. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/config.json +0 -0
  438. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/handler.py +0 -0
  439. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/README.md +0 -0
  440. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/__init__.py +0 -0
  441. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/config.json +0 -0
  442. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/handler.py +0 -0
  443. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/intro.md +0 -0
  444. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/prompt.md +0 -0
  445. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/__init__.py +0 -0
  446. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/_shared.py +0 -0
  447. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/config.json +0 -0
  448. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/handler.py +0 -0
  449. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/config.json +0 -0
  450. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/handler.py +0 -0
  451. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/config.json +0 -0
  452. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/handler.py +0 -0
  453. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/config.json +0 -0
  454. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/handler.py +0 -0
  455. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/README.md +0 -0
  456. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/callable.json +0 -0
  457. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/config.json +0 -0
  458. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/handler.py +0 -0
  459. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/intro.md +0 -0
  460. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/mcp.json +0 -0
  461. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/prompt.md +0 -0
  462. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/__init__.py +0 -0
  463. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/config.json +0 -0
  464. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/handler.py +0 -0
  465. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/config.json +0 -0
  466. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/handler.py +0 -0
  467. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/config.json +0 -0
  468. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/handler.py +0 -0
  469. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/web_search/config.json +0 -0
  470. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/agents/web_agent/tools/web_search/handler.py +0 -0
  471. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/anthropic_skills/__init__.py +0 -0
  472. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/anthropic_skills/loader.py +0 -0
  473. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/README.md +0 -0
  474. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/admin/README.md +0 -0
  475. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/admin/config.json +0 -0
  476. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/admin/handler.py +0 -0
  477. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/bugfix/README.md +0 -0
  478. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/bugfix/config.json +0 -0
  479. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/bugfix/handler.py +0 -0
  480. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/changelog/README.md +0 -0
  481. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/changelog/config.json +0 -0
  482. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/changelog/handler.py +0 -0
  483. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/copyright/README.md +0 -0
  484. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/copyright/config.json +0 -0
  485. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/copyright/handler.py +0 -0
  486. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/faq/README.md +0 -0
  487. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/faq/config.json +0 -0
  488. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/faq/handler.py +0 -0
  489. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/feedback/README.md +0 -0
  490. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/feedback/config.json +0 -0
  491. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/feedback/handler.py +0 -0
  492. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/help/README.md +0 -0
  493. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/help/config.json +0 -0
  494. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/help/handler.py +0 -0
  495. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/naga/README.md +0 -0
  496. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/naga/config.json +0 -0
  497. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/naga/handler.py +0 -0
  498. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/naga/policy.py +0 -0
  499. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/profile/README.md +0 -0
  500. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/profile/config.json +0 -0
  501. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/profile/handler.py +0 -0
  502. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/stats/README.md +0 -0
  503. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/stats/config.json +0 -0
  504. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/stats/handler.py +0 -0
  505. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/summary/README.md +0 -0
  506. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/summary/config.json +0 -0
  507. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/summary/handler.py +0 -0
  508. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/version/README.md +0 -0
  509. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/version/config.json +0 -0
  510. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/commands/version/handler.py +0 -0
  511. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/http_client.py +0 -0
  512. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/http_config.py +0 -0
  513. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/__init__.py +0 -0
  514. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/arxiv/config.json +0 -0
  515. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/arxiv/handler.py +0 -0
  516. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/bilibili/config.json +0 -0
  517. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/bilibili/handler.py +0 -0
  518. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/douyin/config.json +0 -0
  519. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/douyin/handler.py +0 -0
  520. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/github/config.json +0 -0
  521. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/github/handler.py +0 -0
  522. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/models.py +0 -0
  523. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/pipelines/registry.py +0 -0
  524. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/registry.py +0 -0
  525. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/shared.py +0 -0
  526. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/README.md +0 -0
  527. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/__init__.py +0 -0
  528. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/arxiv_paper/README.md +0 -0
  529. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/arxiv_paper/callable.json +0 -0
  530. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/arxiv_paper/config.json +0 -0
  531. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/arxiv_paper/handler.py +0 -0
  532. {undefined_bot-3.15.0/src/Undefined/skills/tools/bilibili_video → undefined_bot-3.16.0/src/Undefined/skills/tools/bilibili_opus}/callable.json +0 -0
  533. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/bilibili_video/README.md +0 -0
  534. {undefined_bot-3.15.0/src/Undefined/skills/tools/douyin_video → undefined_bot-3.16.0/src/Undefined/skills/tools/bilibili_video}/callable.json +0 -0
  535. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/bilibili_video/config.json +0 -0
  536. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/bilibili_video/handler.py +0 -0
  537. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/calculator/README.md +0 -0
  538. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/calculator/callable.json +0 -0
  539. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/calculator/config.json +0 -0
  540. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/calculator/handler.py +0 -0
  541. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/changelog_query/README.md +0 -0
  542. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/changelog_query/config.json +0 -0
  543. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/changelog_query/handler.py +0 -0
  544. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/douyin_video/README.md +0 -0
  545. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/douyin_video/config.json +0 -0
  546. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/douyin_video/handler.py +0 -0
  547. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/end/README.md +0 -0
  548. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/end/config.json +0 -0
  549. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/end/handler.py +0 -0
  550. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/fetch_image_uid/README.md +0 -0
  551. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/fetch_image_uid/config.json +0 -0
  552. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/fetch_image_uid/handler.py +0 -0
  553. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_current_time/README.md +0 -0
  554. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_current_time/callable.json +0 -0
  555. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_current_time/config.json +0 -0
  556. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_current_time/handler.py +0 -0
  557. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_picture/README.md +0 -0
  558. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_picture/config.json +0 -0
  559. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_picture/handler.py +0 -0
  560. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_user_info/README.md +0 -0
  561. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_user_info/config.json +0 -0
  562. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/get_user_info/handler.py +0 -0
  563. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_list/README.md +0 -0
  564. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_list/config.json +0 -0
  565. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_list/handler.py +0 -0
  566. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_semantic_search/README.md +0 -0
  567. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_semantic_search/config.json +0 -0
  568. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_semantic_search/handler.py +0 -0
  569. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_text_search/README.md +0 -0
  570. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_text_search/config.json +0 -0
  571. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/knowledge_text_search/handler.py +0 -0
  572. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/python_interpreter/README.md +0 -0
  573. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/python_interpreter/config.json +0 -0
  574. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/python_interpreter/handler.py +0 -0
  575. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/qq_like/README.md +0 -0
  576. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/qq_like/config.json +0 -0
  577. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/qq_like/handler.py +0 -0
  578. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/task_progress/README.md +0 -0
  579. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/task_progress/config.json +0 -0
  580. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/tools/task_progress/handler.py +0 -0
  581. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/README.md +0 -0
  582. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/__init__.py +0 -0
  583. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/attachments/README.md +0 -0
  584. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/config.json +0 -0
  585. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/handler.py +0 -0
  586. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/config.json +0 -0
  587. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/handler.py +0 -0
  588. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/README.md +0 -0
  589. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/_runtime.py +0 -0
  590. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/create/config.json +0 -0
  591. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/create/handler.py +0 -0
  592. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/delete/config.json +0 -0
  593. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/delete/handler.py +0 -0
  594. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/get/config.json +0 -0
  595. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/get/handler.py +0 -0
  596. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/list/config.json +0 -0
  597. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/list/handler.py +0 -0
  598. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/set_enabled/config.json +0 -0
  599. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/set_enabled/handler.py +0 -0
  600. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/update/config.json +0 -0
  601. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/automation/update/handler.py +0 -0
  602. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/README.md +0 -0
  603. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/get_profile/config.json +0 -0
  604. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/get_profile/handler.py +0 -0
  605. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/search_events/config.json +0 -0
  606. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/search_events/handler.py +0 -0
  607. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/config.json +0 -0
  608. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/handler.py +0 -0
  609. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/commands/README.md +0 -0
  610. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/commands/get/config.json +0 -0
  611. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/commands/get/handler.py +0 -0
  612. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/commands/search/config.json +0 -0
  613. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/commands/search/handler.py +0 -0
  614. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/contacts/README.md +0 -0
  615. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/contacts/query_friends/config.json +0 -0
  616. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/contacts/query_friends/handler.py +0 -0
  617. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/contacts/query_groups/config.json +0 -0
  618. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/contacts/query_groups/handler.py +0 -0
  619. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/README.md +0 -0
  620. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/find_member/config.json +0 -0
  621. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/find_member/handler.py +0 -0
  622. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_avatar/config.json +0 -0
  623. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_avatar/handler.py +0 -0
  624. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_files/config.json +0 -0
  625. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_files/handler.py +0 -0
  626. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_honor_info/config.json +0 -0
  627. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_honor_info/handler.py +0 -0
  628. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_info/config.json +0 -0
  629. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_info/handler.py +0 -0
  630. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_list/config.json +0 -0
  631. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_list/handler.py +0 -0
  632. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_title/config.json +0 -0
  633. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group/get_member_title/handler.py +0 -0
  634. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/README.md +0 -0
  635. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/config.json +0 -0
  636. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/handler.py +0 -0
  637. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/config.json +0 -0
  638. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/handler.py +0 -0
  639. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/config.json +0 -0
  640. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/handler.py +0 -0
  641. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/config.json +0 -0
  642. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/handler.py +0 -0
  643. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/config.json +0 -0
  644. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/handler.py +0 -0
  645. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/config.json +0 -0
  646. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/handler.py +0 -0
  647. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/config.json +0 -0
  648. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/handler.py +0 -0
  649. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/config.json +0 -0
  650. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/handler.py +0 -0
  651. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/config.json +0 -0
  652. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/handler.py +0 -0
  653. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/config.json +0 -0
  654. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/handler.py +0 -0
  655. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/config.json +0 -0
  656. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/handler.py +0 -0
  657. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/mcp/README.md +0 -0
  658. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/mcp/__init__.py +0 -0
  659. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memes/README.md +0 -0
  660. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memes/search_memes/config.json +0 -0
  661. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memes/search_memes/handler.py +0 -0
  662. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/config.json +0 -0
  663. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/handler.py +0 -0
  664. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/README.md +0 -0
  665. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/add/config.json +0 -0
  666. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/add/handler.py +0 -0
  667. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/delete/config.json +0 -0
  668. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/delete/handler.py +0 -0
  669. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/list/config.json +0 -0
  670. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/list/handler.py +0 -0
  671. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/update/config.json +0 -0
  672. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/memory/update/handler.py +0 -0
  673. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/README.md +0 -0
  674. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/context_utils.py +0 -0
  675. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/config.json +0 -0
  676. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/handler.py +0 -0
  677. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/config.json +0 -0
  678. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/handler.py +0 -0
  679. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/config.json +0 -0
  680. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/handler.py +0 -0
  681. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/list_emojis/config.json +0 -0
  682. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/list_emojis/handler.py +0 -0
  683. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/config.json +0 -0
  684. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/handler.py +0 -0
  685. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/config.json +0 -0
  686. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/handler.py +0 -0
  687. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_group_sign/config.json +0 -0
  688. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_group_sign/handler.py +0 -0
  689. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_message/config.json +0 -0
  690. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_message/handler.py +0 -0
  691. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_poke/config.json +0 -0
  692. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_poke/handler.py +0 -0
  693. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_private_message/config.json +0 -0
  694. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_private_message/handler.py +0 -0
  695. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_text_file/callable.json +0 -0
  696. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_text_file/config.json +0 -0
  697. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_text_file/handler.py +0 -0
  698. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_url_file/callable.json +0 -0
  699. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_url_file/config.json +0 -0
  700. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_url_file/handler.py +0 -0
  701. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_voice/config.json +0 -0
  702. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/messages/send_voice/handler.py +0 -0
  703. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/README.md +0 -0
  704. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/_client.py +0 -0
  705. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/_constants.py +0 -0
  706. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/_tools.py +0 -0
  707. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/_track_refs.py +0 -0
  708. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/browse_playlists/config.json +0 -0
  709. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/browse_playlists/handler.py +0 -0
  710. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/browse_rankings/config.json +0 -0
  711. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/browse_rankings/handler.py +0 -0
  712. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/find_song_matches/config.json +0 -0
  713. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/find_song_matches/handler.py +0 -0
  714. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_audio/config.json +0 -0
  715. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_audio/handler.py +0 -0
  716. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_comments/config.json +0 -0
  717. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_comments/handler.py +0 -0
  718. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_cover/config.json +0 -0
  719. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_cover/handler.py +0 -0
  720. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_hot_search/config.json +0 -0
  721. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_hot_search/handler.py +0 -0
  722. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_lyrics/config.json +0 -0
  723. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/get_lyrics/handler.py +0 -0
  724. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/search_playlists/config.json +0 -0
  725. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/search_playlists/handler.py +0 -0
  726. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/search_songs/config.json +0 -0
  727. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/music/search_songs/handler.py +0 -0
  728. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/README.md +0 -0
  729. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/get/config.json +0 -0
  730. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/get/handler.py +0 -0
  731. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/list/config.json +0 -0
  732. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/list/handler.py +0 -0
  733. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/stats/config.json +0 -0
  734. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/notices/stats/handler.py +0 -0
  735. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/README.md +0 -0
  736. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/layout.py +0 -0
  737. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_html/config.json +0 -0
  738. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_html/handler.py +0 -0
  739. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_latex/config.json +0 -0
  740. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_latex/handler.py +0 -0
  741. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_markdown/config.json +0 -0
  742. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/skills/toolsets/render/render_markdown/handler.py +0 -0
  743. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/token_usage_storage.py +0 -0
  744. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/__init__.py +0 -0
  745. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/cache.py +0 -0
  746. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/coerce.py +0 -0
  747. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/common.py +0 -0
  748. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/cors.py +0 -0
  749. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/easter_egg_calls.py +0 -0
  750. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/fake_at.py +0 -0
  751. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/file_lock.py +0 -0
  752. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/group_metrics.py +0 -0
  753. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/history.py +0 -0
  754. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/http_download.py +0 -0
  755. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/io.py +0 -0
  756. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/logging.py +0 -0
  757. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/member_utils.py +0 -0
  758. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/message_reply.py +0 -0
  759. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/message_targets.py +0 -0
  760. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/message_turn.py +0 -0
  761. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/message_utils.py +0 -0
  762. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/paths.py +0 -0
  763. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/qq_emoji.py +0 -0
  764. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/queue_intervals.py +0 -0
  765. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/recent_messages.py +0 -0
  766. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/render_cache.py +0 -0
  767. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/request_params.py +0 -0
  768. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/resources.py +0 -0
  769. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/scheduler.py +0 -0
  770. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/self_update.py +0 -0
  771. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/sender.py +0 -0
  772. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/sender_helpers.py +0 -0
  773. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/time_utils.py +0 -0
  774. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/tool_calls.py +0 -0
  775. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/utils/xml.py +0 -0
  776. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/__init__.py +0 -0
  777. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/__main__.py +0 -0
  778. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/app.py +0 -0
  779. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/core.py +0 -0
  780. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/__init__.py +0 -0
  781. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_auth.py +0 -0
  782. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_bot.py +0 -0
  783. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_config.py +0 -0
  784. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_index.py +0 -0
  785. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_logs.py +0 -0
  786. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_memes.py +0 -0
  787. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_runtime.py +0 -0
  788. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_shared.py +0 -0
  789. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_system.py +0 -0
  790. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/routes/_weixin.py +0 -0
  791. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/.stylelintrc.json +0 -0
  792. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/app.css +0 -0
  793. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/base.css +0 -0
  794. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/components.css +0 -0
  795. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/highlight-github.min.css +0 -0
  796. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/landing.css +0 -0
  797. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/responsive.css +0 -0
  798. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/style.css +0 -0
  799. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/variables.css +0 -0
  800. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/css/workflow.css +0 -0
  801. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/favicon.svg +0 -0
  802. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/api.js +0 -0
  803. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/auth.js +0 -0
  804. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/bot.js +0 -0
  805. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/config-form.js +0 -0
  806. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/i18n.js +0 -0
  807. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/log-view.js +0 -0
  808. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/logs.js +0 -0
  809. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/main.js +0 -0
  810. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/memes.js +0 -0
  811. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/runtime.js +0 -0
  812. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/schedules.js +0 -0
  813. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/state.js +0 -0
  814. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/ui.js +0 -0
  815. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/vendor/highlight.min.js +0 -0
  816. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/vendor/highlightjs.LICENSE +0 -0
  817. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/vendor/marked.min.js +0 -0
  818. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/weixin.js +0 -0
  819. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/workflow-canvas.js +0 -0
  820. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/workflow-graph.js +0 -0
  821. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/static/js/workflow-inspector.js +0 -0
  822. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/templates/index.html +0 -0
  823. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/utils/__init__.py +0 -0
  824. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/utils/comment.py +0 -0
  825. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/utils/config_io.py +0 -0
  826. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/utils/config_sync.py +0 -0
  827. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/webui/utils/toml_render.py +0 -0
  828. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/weixin/__init__.py +0 -0
  829. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/weixin/audio.py +0 -0
  830. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/weixin/models.py +0 -0
  831. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/weixin/service.py +0 -0
  832. {undefined_bot-3.15.0 → undefined_bot-3.16.0}/src/Undefined/weixin/store.py +0 -0
@@ -1,3 +1,18 @@
1
+ ## v3.16.0 Bilibili 图文(opus)提取
2
+
3
+ 本版本为 B 站内容自动提取补齐图文(opus / 动态)类型,命中图文链接后发送一次合并转发:第一条是图文元数据、第二条起是正文,文字与图片按原顺序混排,正文超长自动分段;正文里的图文与视频卡片各自成为嵌套转发节点;新增的 `bilibili_opus` 工具还支持按字数区间或关键词读取正文。
4
+
5
+ - 新增 Bilibili 图文自动提取管线。命中 `bilibili.com/opus/<id>`、`m.bilibili.com/opus/<id>`、`t.bilibili.com/<id>`、`b23.tv` 短链,以及 QQ 小程序与 news 分享卡片中的跳转链接后自动发送合并转发;与视频管线互不干扰,同一条消息同时含 BV 号与图文链接时两条管线各自发送。
6
+ - 转发结构与视频一致:第一条节点是图文信息(封面、标题、UP主、时间、阅读 / 点赞 / 评论 / 转发、原文链接),第二条起是正文。正文按单节点 4000 字切分(节点名形如 `正文 1/3`),不截断、不丢内容,图片作为消息段保留在原文位置并可与文本共处同一节点;正文为空时以占位文案说明。
7
+ - 正文里的卡片各自展开为独立节点:图文卡片再拉取一次递归展开,视频卡片真实下载视频文件并复用清晰度、时长、体积与超限策略限制且附带弹幕,链接、商品、直播、投票等其它卡片渲染为单个链接卡片节点。展开受 `opus_nested_depth`(默认 5 层)与 `opus_nested_max_cards`(默认 8 张)约束,超出边界降级为一行「标题 — 链接」;嵌套失败只降级该节点,不影响整条转发。
8
+ - 图文详情兼容两个接口与两种响应结构:优先 `x/polymer/web-dynamic/v1/opus/detail`,风控(`-352`)、旧版专栏或动态不可见时回退 `x/polymer/web-dynamic/v1/detail`(带 WBI 签名)。`modules` 为列表或字典(含 `major.opus.summary` 摘要)都能解析,段落覆盖文本、图片、分割线、块引用、列表、代码与链接卡片,富文本节点覆盖 @、表情、公式、话题与 BV / CV / 网页链接;指向自身的图文卡片不再被当作嵌套卡片,避免自引用递归。
9
+ - 新增 `bilibili_opus` 工具,`output_mode` 与 `bilibili_video` 对齐并额外提供 text 模式:`send` 发送合并转发,`uid` 把正文图片逐张登记为 `<attachment uid="pic_xxx"/>`(默认最多 9 张,单张失败不中断并逐条报告原因),`info` 只返回元信息,`text` 按字数读取正文。该工具已暴露给 `file_analysis_agent`,图文图片可直接做多模态分析。
10
+ - `output_mode=text` 支持起始字、结束字与关键词:默认返回前 1000 字(`limit` 上限 20000),`keyword` 返回命中区间(最多 5 处)与前后各 60 字上下文并自动合并重叠片段。返回头给出正文总字数与本次范围,未读完时提示下一段用 `start=N` 继续;关键词未命中、正文为空、`start` 超出范围都有明确文案,非法参数返回可读错误而不是静默截断。
11
+ - 新增 `[bilibili].opus_enabled`(默认开启,仍需 `auto_extract_enabled`)、`opus_max_items`(单条消息最多处理几篇图文)、`opus_nested_depth`、`opus_nested_max_cards`;群聊与私聊白名单复用视频侧的 `auto_extract_group_ids` / `auto_extract_private_ids`,旧 `config.toml` 不做改动也可直接运行。
12
+ - 图文转发与视频转发同样写入历史:实时 AI 上下文只看到 `forward_...` UID,需要内容时按层调用 `messages.get_forward_msg` 读取,不会因为一张长图文把上下文撑爆。视频与图文的数字缩写、时长、时间戳与 4000 字切分逻辑共用同一份实现,视频原有的提取行为不变。
13
+
14
+ ---
15
+
1
16
  ## v3.15.0 按功能拆分 Embedding 配置与稳定性修复
2
17
 
3
18
  本版本将嵌入模型配置按功能拆分,知识库、认知记忆与表情包可以共用默认模型或各自覆写连接、维度与指令;同时修复侧写并发合并丢失更新、Agent 技能无法加载、热更新静默失效、SIGTERM 停机缺失等多处影响长期运行的问题。
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: Undefined-bot
3
- Version: 3.15.0
3
+ Version: 3.16.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
@@ -1473,6 +1473,18 @@ auto_extract_group_ids = []
1473
1473
  # zh: 自动提取功能的私聊白名单(空=跟随全局 access.allowed_private_ids)。
1474
1474
  # en: Private chat allowlist for auto-extraction (empty = follow global access.allowed_private_ids).
1475
1475
  auto_extract_private_ids = []
1476
+ # zh: 是否在自动提取中处理 B 站图文(opus / 动态)链接。仍需 auto_extract_enabled 打开。
1477
+ # en: Whether Bilibili opus/dynamic links are handled during auto-extraction. auto_extract_enabled must also be on.
1478
+ opus_enabled = true
1479
+ # zh: 单条消息最多自动处理几篇图文。<=0 回退 3,>10 截断到 10。
1480
+ # en: Max number of opus posts to auto-process from one message. <=0 falls back to 3, >10 is capped to 10.
1481
+ opus_max_items = 3
1482
+ # zh: 图文正文里的图文/视频卡片最多再展开几层(每层都是嵌套合并转发)。0=不展开,只给链接;上限 5。
1483
+ # en: Max nesting depth for opus/video cards inside a post body (each level is a nested forward). 0=link only; capped at 5.
1484
+ opus_nested_depth = 5
1485
+ # zh: 单篇图文最多展开多少张嵌套卡片,超出部分降级为一行文本+链接。上限 20。
1486
+ # en: Max nested cards expanded per post; extras degrade to a single text line with the link. Capped at 20.
1487
+ opus_nested_max_cards = 8
1476
1488
 
1477
1489
  # zh: 抖音视频自动提取配置。
1478
1490
  # en: Douyin video auto-extraction settings.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "Undefined-bot"
3
- version = "3.15.0"
3
+ version = "3.16.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 = [
@@ -103,7 +103,7 @@ exclude = [
103
103
  python_version = "3.12"
104
104
  strict = true
105
105
  ignore_missing_imports = true
106
- exclude = ["^code/", "^apps/.*/src-tauri/target/"]
106
+ exclude = ["^code/", "^apps/.*/src-tauri/target/", "^data/cache/uv/"]
107
107
 
108
108
  [tool.ruff]
109
109
  exclude = ["code"]
@@ -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.15.0"
27
+ __version__: str = "3.16.0"
28
28
 
29
29
  # symbol -> (module_path, attribute_name);首次访问时才 importlib 加载
30
30
  _LAZY_IMPORTS: dict[str, tuple[str, str]] = {
@@ -0,0 +1,22 @@
1
+ """Bilibili 视频提取模块
2
+
3
+ 提供 B 站视频标识符解析、视频下载和发送功能,以及图文(opus)解析。
4
+ """
5
+
6
+ from Undefined.bilibili.opus_parser import (
7
+ extract_opus_from_json_message,
8
+ extract_opus_ids_with_shortlinks,
9
+ )
10
+ from Undefined.bilibili.parser import (
11
+ extract_bilibili_ids,
12
+ extract_from_json_message,
13
+ normalize_to_bvid,
14
+ )
15
+
16
+ __all__ = [
17
+ "extract_bilibili_ids",
18
+ "extract_from_json_message",
19
+ "extract_opus_from_json_message",
20
+ "extract_opus_ids_with_shortlinks",
21
+ "normalize_to_bvid",
22
+ ]
@@ -2,11 +2,12 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ import logging
5
6
  from typing import Any
6
7
 
7
8
  import httpx
8
9
 
9
- from Undefined.bilibili.errors import ApiResponseError
10
+ from Undefined.bilibili.errors import ApiResponseError, OpusUnavailableError
10
11
  from Undefined.bilibili.models import VideoInfo, VideoStats
11
12
  from Undefined.bilibili.wbi import build_signed_params_sync, parse_cookie_string
12
13
  from Undefined.skills.http_config import build_httpx_client_kwargs
@@ -15,6 +16,39 @@ _BILIBILI_API_VIEW = "https://api.bilibili.com/x/web-interface/view"
15
16
  _BILIBILI_API_VIEW_WBI = "https://api.bilibili.com/x/web-interface/wbi/view"
16
17
  _BILIBILI_API_PLAYURL = "https://api.bilibili.com/x/player/playurl"
17
18
  _BILIBILI_API_PLAYURL_WBI = "https://api.bilibili.com/x/player/wbi/playurl"
19
+ _BILIBILI_API_OPUS_DETAIL = (
20
+ "https://api.bilibili.com/x/polymer/web-dynamic/v1/opus/detail"
21
+ )
22
+ _BILIBILI_API_DYNAMIC_DETAIL = (
23
+ "https://api.bilibili.com/x/polymer/web-dynamic/v1/detail"
24
+ )
25
+
26
+ # 图文详情接口的 features 参数;htmlNewStyle 用于让旧版专栏返回新版正文结构
27
+ OPUS_DETAIL_FEATURES: tuple[str, ...] = (
28
+ "onlyfansVote",
29
+ "onlyfansAssetsV2",
30
+ "decorationCard",
31
+ "htmlNewStyle",
32
+ "ugcDelete",
33
+ "editable",
34
+ "opusPrivateVisible",
35
+ "tribeeEdit",
36
+ "avatarAutoTheme",
37
+ "avatarTypeOpus",
38
+ )
39
+
40
+ # 通用动态详情接口的 features 参数;itemOpusStyle 让动态按图文风格返回
41
+ DYNAMIC_DETAIL_FEATURES: tuple[str, ...] = (
42
+ "itemOpusStyle",
43
+ "opusBigCover",
44
+ "onlyfansVote",
45
+ "endFooterHidden",
46
+ "decorationCard",
47
+ "onlyfansAssetsV2",
48
+ "ugcDelete",
49
+ "onlyfansQaCard",
50
+ "commentsNewVersion",
51
+ )
18
52
 
19
53
  DEFAULT_HEADERS: dict[str, str] = {
20
54
  "User-Agent": (
@@ -25,6 +59,8 @@ DEFAULT_HEADERS: dict[str, str] = {
25
59
  "Referer": "https://www.bilibili.com",
26
60
  }
27
61
 
62
+ logger = logging.getLogger(__name__)
63
+
28
64
 
29
65
  def _api_message(data: dict[str, Any]) -> str:
30
66
  return str(data.get("message") or data.get("msg") or "未知错误")
@@ -186,3 +222,76 @@ class BilibiliApiClient:
186
222
  if not isinstance(data, dict):
187
223
  raise ApiResponseError("播放流响应缺少 data")
188
224
  return data
225
+
226
+ def get_opus_item(self, dynamic_id: str) -> dict[str, Any]:
227
+ """获取图文 / 动态的 ``data.item`` 原始结构。
228
+
229
+ 先请求 ``opus/detail``;失败(含 ``-352`` 风控、旧版专栏要求
230
+ ``htmlNewStyle``、以及图文详情接口未覆盖的动态)时回退到通用
231
+ ``web-dynamic/v1/detail``(带 WBI 签名)。
232
+ """
233
+ opus_id = str(dynamic_id).strip()
234
+ if not opus_id:
235
+ raise OpusUnavailableError("图文 ID 为空")
236
+
237
+ primary_error: Exception | None = None
238
+ try:
239
+ payload = self._request_json(
240
+ _BILIBILI_API_OPUS_DETAIL,
241
+ {
242
+ "id": opus_id,
243
+ "features": ",".join(OPUS_DETAIL_FEATURES),
244
+ "timezone_offset": -480,
245
+ },
246
+ )
247
+ if int(payload.get("code", -1)) == 0:
248
+ return self._extract_opus_item(payload, opus_id)
249
+ primary_error = OpusUnavailableError(
250
+ f"获取图文信息失败: {_api_message(payload)}"
251
+ )
252
+ except OpusUnavailableError as exc:
253
+ primary_error = exc
254
+ except Exception as exc: # 网络 / JSON 异常都走回退
255
+ primary_error = exc
256
+ logger.debug("[Bilibili] opus/detail 请求异常,尝试通用动态接口: %s", exc)
257
+
258
+ fallback_error: Exception | None = None
259
+ try:
260
+ payload = self.request_with_wbi_fallback(
261
+ endpoint=_BILIBILI_API_DYNAMIC_DETAIL,
262
+ params={
263
+ "id": opus_id,
264
+ "features": ",".join(DYNAMIC_DETAIL_FEATURES),
265
+ "timezone_offset": -480,
266
+ },
267
+ )
268
+ if int(payload.get("code", -1)) == 0:
269
+ return self._extract_opus_item(payload, opus_id)
270
+ fallback_error = OpusUnavailableError(
271
+ f"获取动态信息失败: {_api_message(payload)}"
272
+ )
273
+ except OpusUnavailableError as exc:
274
+ fallback_error = exc
275
+ except Exception as exc:
276
+ fallback_error = exc
277
+
278
+ raise OpusUnavailableError(
279
+ f"图文 {opus_id} 不可用: {fallback_error or primary_error or '未知错误'}"
280
+ )
281
+
282
+ @staticmethod
283
+ def _extract_opus_item(payload: dict[str, Any], opus_id: str) -> dict[str, Any]:
284
+ """校验响应并返回 ``data.item``。"""
285
+ data = payload.get("data")
286
+ if not isinstance(data, dict):
287
+ raise OpusUnavailableError(f"图文 {opus_id} 响应缺少 data")
288
+ # data.fallback 非空表示该动态无法以图文形态返回(例如过旧的内容)
289
+ fallback = data.get("fallback")
290
+ item = data.get("item")
291
+ if not isinstance(item, dict) or not item:
292
+ detail = f"(fallback={fallback!r})" if fallback else ""
293
+ raise OpusUnavailableError(f"图文 {opus_id} 没有可用内容{detail}")
294
+ modules = item.get("modules")
295
+ if not isinstance(modules, (list, dict)) or not modules:
296
+ raise OpusUnavailableError(f"图文 {opus_id} 响应缺少 modules")
297
+ return item
@@ -6,6 +6,7 @@ import asyncio
6
6
  from functools import partial
7
7
  import logging
8
8
  from pathlib import Path
9
+ from typing import Any
9
10
  import uuid
10
11
 
11
12
  from Undefined.bilibili.api_client import BilibiliApiClient
@@ -23,6 +24,7 @@ __all__ = [
23
24
  "VideoInfo",
24
25
  "cleanup_file",
25
26
  "download_video",
27
+ "get_opus_item",
26
28
  "get_video_info",
27
29
  ]
28
30
 
@@ -39,6 +41,21 @@ async def get_video_info(
39
41
  return await asyncio.to_thread(partial(_get_video_info_sync, bvid, cookie=cookie))
40
42
 
41
43
 
44
+ async def get_opus_item(
45
+ dynamic_id: str,
46
+ cookie: str = "",
47
+ ) -> dict[str, Any]:
48
+ """获取图文 / 动态的原始 ``data.item`` 结构。"""
49
+ return await asyncio.to_thread(
50
+ partial(_get_opus_item_sync, dynamic_id, cookie=cookie)
51
+ )
52
+
53
+
54
+ def _get_opus_item_sync(dynamic_id: str, *, cookie: str = "") -> dict[str, Any]:
55
+ with BilibiliApiClient(cookie=cookie, timeout=_DEFAULT_TIMEOUT_SECONDS) as client:
56
+ return client.get_opus_item(dynamic_id)
57
+
58
+
42
59
  def _get_video_info_sync(bvid: str, *, cookie: str = "") -> VideoInfo:
43
60
  with BilibiliApiClient(cookie=cookie, timeout=_DEFAULT_TIMEOUT_SECONDS) as client:
44
61
  return client.get_video_info(bvid)
@@ -11,6 +11,10 @@ class ApiResponseError(BilibiliError):
11
11
  """B 站 API 返回失败或格式异常。"""
12
12
 
13
13
 
14
+ class OpusUnavailableError(ApiResponseError):
15
+ """图文不存在、已删除,或响应缺少可用内容。"""
16
+
17
+
14
18
  class DownloadError(BilibiliError):
15
19
  """视频流下载或合并失败。"""
16
20
 
@@ -0,0 +1,76 @@
1
+ """B 站内容展示用的共享格式化助手。
2
+
3
+ 这里只放纯函数:数字缩写、时长、时间戳、以及按长度切分文本。发送层
4
+ (``bilibili.sender`` / ``bilibili.opus_sender``)与 ``utils/sender.py``
5
+ 共用同一套语义,避免各写一份。
6
+ """
7
+
8
+ from __future__ import annotations
9
+
10
+ from datetime import datetime, timedelta, timezone
11
+
12
+ # QQ / OneBot 单条文本的保守上限;与 ``utils.sender.MAX_MESSAGE_LENGTH`` 保持一致。
13
+ # 这里单独定义一份,避免 ``bilibili`` 包反向依赖发送器实现。
14
+ MAX_TEXT_LENGTH = 4000
15
+
16
+ # B 站展示时间统一使用北京时间(API 通过 timezone_offset=-480 对齐)
17
+ BEIJING_TIMEZONE = timezone(timedelta(hours=8))
18
+
19
+
20
+ def format_count(value: int) -> str:
21
+ """把计数格式化为中文缩写(1.2万 / 1.5亿)。"""
22
+ if value < 0:
23
+ value = 0
24
+ if value >= 100_000_000:
25
+ return f"{value / 100_000_000:.1f}亿"
26
+ if value >= 10_000:
27
+ return f"{value / 10_000:.1f}万"
28
+ return str(value)
29
+
30
+
31
+ def format_duration(seconds: int) -> str:
32
+ """把秒数格式化为 mm:ss 或 h:mm:ss。"""
33
+ seconds = max(0, int(seconds))
34
+ hours, remainder = divmod(seconds, 3600)
35
+ minutes, secs = divmod(remainder, 60)
36
+ if hours:
37
+ return f"{hours}:{minutes:02d}:{secs:02d}"
38
+ return f"{minutes}:{secs:02d}"
39
+
40
+
41
+ def format_progress(progress_ms: int) -> str:
42
+ """把弹幕时间戳(毫秒)格式化为 mm:ss。"""
43
+ return format_duration(max(0, int(progress_ms)) // 1000)
44
+
45
+
46
+ def format_timestamp(timestamp: int) -> str:
47
+ """把 UNIX 秒级时间戳格式化为北京时间 ``YYYY-MM-DD HH:MM``。"""
48
+ if timestamp <= 0:
49
+ return ""
50
+ try:
51
+ moment = datetime.fromtimestamp(int(timestamp), tz=BEIJING_TIMEZONE)
52
+ except (OverflowError, OSError, ValueError):
53
+ return ""
54
+ return moment.strftime("%Y-%m-%d %H:%M")
55
+
56
+
57
+ def split_text_chunks(text: str, limit: int = MAX_TEXT_LENGTH) -> list[str]:
58
+ """按长度分片,优先在换行后切分并保留原始文本。
59
+
60
+ 与 ``utils.sender._split_text_chunks`` 同语义:任何字符都不会丢失,
61
+ 无换行的超长段落会被硬切。
62
+ """
63
+ if not text:
64
+ return []
65
+ size = max(1, int(limit))
66
+ chunks: list[str] = []
67
+ start = 0
68
+ while start < len(text):
69
+ end = min(start + size, len(text))
70
+ if end < len(text):
71
+ newline = text.rfind("\n", start, end)
72
+ if newline >= start:
73
+ end = newline + 1
74
+ chunks.append(text[start:end])
75
+ start = end
76
+ return chunks
@@ -0,0 +1,163 @@
1
+ """B 站下载数据模型。"""
2
+
3
+ from __future__ import annotations
4
+
5
+ from dataclasses import dataclass
6
+ from pathlib import Path
7
+
8
+
9
+ @dataclass(slots=True, frozen=True)
10
+ class VideoStats:
11
+ """视频互动统计。"""
12
+
13
+ view: int = 0
14
+ danmaku: int = 0
15
+ reply: int = 0
16
+ favorite: int = 0
17
+ coin: int = 0
18
+ share: int = 0
19
+ like: int = 0
20
+
21
+
22
+ @dataclass(slots=True, frozen=True)
23
+ class VideoInfo:
24
+ """视频基本信息。"""
25
+
26
+ bvid: str
27
+ aid: int
28
+ title: str
29
+ duration: int
30
+ cover_url: str
31
+ up_name: str
32
+ desc: str
33
+ cid: int
34
+ page_duration: int
35
+ stats: VideoStats
36
+
37
+ @property
38
+ def url(self) -> str:
39
+ """标准视频链接。"""
40
+ return f"https://www.bilibili.com/video/{self.bvid}"
41
+
42
+
43
+ @dataclass(slots=True, frozen=True)
44
+ class DownloadResult:
45
+ """视频下载结果。"""
46
+
47
+ path: Path
48
+ size_bytes: int
49
+ quality: int
50
+ quality_label: str
51
+ video_info: VideoInfo
52
+
53
+
54
+ @dataclass(slots=True, frozen=True)
55
+ class DanmakuItem:
56
+ """单条弹幕。"""
57
+
58
+ progress_ms: int
59
+ content: str
60
+ dmid: str = ""
61
+ mode: int = 0
62
+ pool: int = 0
63
+ ctime: int = 0
64
+ mid_hash: str = ""
65
+ color: int = 0
66
+ weight: int = 0
67
+
68
+
69
+ @dataclass(slots=True, frozen=True)
70
+ class OpusStats:
71
+ """图文互动统计。"""
72
+
73
+ view: int = 0
74
+ like: int = 0
75
+ comment: int = 0
76
+ repost: int = 0
77
+ coin: int = 0
78
+ favorite: int = 0
79
+
80
+
81
+ @dataclass(slots=True, frozen=True)
82
+ class OpusAuthor:
83
+ """图文作者信息。"""
84
+
85
+ mid: int = 0
86
+ name: str = ""
87
+ avatar_url: str = ""
88
+
89
+
90
+ @dataclass(slots=True, frozen=True)
91
+ class TextBlock:
92
+ """图文段落中的纯文本。"""
93
+
94
+ text: str
95
+
96
+
97
+ @dataclass(slots=True, frozen=True)
98
+ class ImageBlock:
99
+ """图文段落中的图片组。"""
100
+
101
+ urls: tuple[str, ...]
102
+
103
+
104
+ @dataclass(slots=True, frozen=True)
105
+ class VideoCardBlock:
106
+ """指向投稿视频的卡片段落。"""
107
+
108
+ bvid: str = ""
109
+ title: str = ""
110
+ cover_url: str = ""
111
+ jump_url: str = ""
112
+
113
+
114
+ @dataclass(slots=True, frozen=True)
115
+ class OpusCardBlock:
116
+ """指向另一篇图文的卡片段落。"""
117
+
118
+ opus_id: str = ""
119
+ title: str = ""
120
+ cover_url: str = ""
121
+ jump_url: str = ""
122
+
123
+
124
+ @dataclass(slots=True, frozen=True)
125
+ class LinkCardBlock:
126
+ """其它类型的卡片段落(商品 / 直播 / 投票 / 通用链接等)。"""
127
+
128
+ title: str = ""
129
+ jump_url: str = ""
130
+ cover_url: str = ""
131
+
132
+
133
+ OpusBlock = TextBlock | ImageBlock | VideoCardBlock | OpusCardBlock | LinkCardBlock
134
+
135
+
136
+ @dataclass(slots=True, frozen=True)
137
+ class OpusInfo:
138
+ """图文(opus / 动态)基本信息。"""
139
+
140
+ opus_id: str
141
+ title: str
142
+ blocks: tuple[OpusBlock, ...]
143
+ author: OpusAuthor = OpusAuthor()
144
+ stats: OpusStats = OpusStats()
145
+ pub_ts: int = 0
146
+ cover_url: str = ""
147
+ dynamic_type_id: str = ""
148
+ is_forward: bool = False
149
+ forward_origin: OpusAuthor | None = None
150
+
151
+ @property
152
+ def url(self) -> str:
153
+ """标准图文链接。"""
154
+ return f"https://www.bilibili.com/opus/{self.opus_id}"
155
+
156
+ @property
157
+ def images(self) -> tuple[str, ...]:
158
+ """按顺序收集全部图片 URL。"""
159
+ urls: list[str] = []
160
+ for block in self.blocks:
161
+ if isinstance(block, ImageBlock):
162
+ urls.extend(block.urls)
163
+ return tuple(urls)