Undefined-bot 3.3.2__tar.gz → 3.3.3__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.
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/ARCHITECTURE.md +31 -19
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/CHANGELOG.md +40 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/PKG-INFO +4 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/README.md +3 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/config.toml.example +59 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/pyproject.toml +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/describe_meme_image.txt +9 -4
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/undefined.xml +21 -4
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/undefined_nagaagent.xml +20 -4
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/README.md +1 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/__init__.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/client.py +68 -4
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/llm.py +304 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/model_selector.py +5 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/summaries.py +2 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/transports/openai_transport.py +2 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/_probes.py +2 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/sender.py +4 -8
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/attachments.py +180 -15
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/sender.py +43 -3
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/hot_reload.py +84 -12
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/loader.py +91 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/model_parsers.py +75 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/models.py +6 -0
- undefined_bot-3.3.3/src/Undefined/github/__init__.py +19 -0
- undefined_bot-3.3.3/src/Undefined/github/client.py +169 -0
- undefined_bot-3.3.3/src/Undefined/github/models.py +33 -0
- undefined_bot-3.3.3/src/Undefined/github/parser.py +196 -0
- undefined_bot-3.3.3/src/Undefined/github/sender.py +361 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/handlers.py +195 -70
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/main.py +4 -0
- undefined_bot-3.3.3/src/Undefined/render.py +276 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/command.py +151 -36
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/commands/context.py +11 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/commands/registry.py +186 -5
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/model_pool.py +26 -12
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/README.md +34 -7
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/__init__.py +2 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/prompt.md +2 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/handler.py +1 -1
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/__init__.py +6 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/models.py +18 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/arxiv/config.json +6 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/arxiv/handler.py +44 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/bilibili/config.json +6 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/bilibili/handler.py +44 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/github/config.json +6 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/pipelines/github/handler.py +44 -0
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/registry.py +293 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/README.md +4 -4
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/addadmin/config.json +3 -3
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/addadmin/handler.py +2 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/bugfix/config.json +3 -3
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/changelog/handler.py +8 -0
- undefined_bot-3.3.3/src/Undefined/skills/commands/faq/README.md +37 -0
- undefined_bot-3.3.3/src/Undefined/skills/commands/faq/config.json +29 -0
- undefined_bot-3.3.3/src/Undefined/skills/commands/faq/handler.py +104 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/help/README.md +7 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/help/config.json +3 -3
- undefined_bot-3.3.3/src/Undefined/skills/commands/help/handler.py +687 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/naga/README.md +4 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/naga/config.json +5 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/naga/handler.py +7 -66
- undefined_bot-3.3.3/src/Undefined/skills/commands/profile/README.md +21 -0
- undefined_bot-3.3.3/src/Undefined/skills/commands/profile/config.json +16 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/profile/handler.py +41 -15
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/rmadmin/config.json +3 -3
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/rmadmin/handler.py +2 -2
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/http_client.py +15 -5
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/http_config.py +18 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/fetch_image_uid/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_picture/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/README.md +15 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/README.md +3 -3
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group/get_avatar/config.json +23 -0
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group/get_avatar/handler.py +65 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_info/config.json +5 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_info/handler.py +6 -2
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/README.md +18 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group/detect_inactive_risk → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/inactive_risk}/config.json +1 -1
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_join_statistics → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/join_statistics}/config.json +1 -1
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group/get_member_activity → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_activity}/config.json +1 -1
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_member_messages → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_messages}/config.json +1 -1
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_structure/config.json +26 -0
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_structure/handler.py +182 -0
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/message_mix/config.json +44 -0
- undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/message_mix/handler.py +242 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_new_member_activity → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/new_member_activity}/config.json +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memes/README.md +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memes/search_memes/config.json +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_html/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_latex/handler.py +98 -52
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_markdown/handler.py +1 -1
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/common.py +1 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/history.py +63 -6
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/sender.py +236 -13
- undefined_bot-3.3.2/src/Undefined/render.py +0 -134
- undefined_bot-3.3.2/src/Undefined/skills/commands/delfaq/README.md +0 -17
- undefined_bot-3.3.2/src/Undefined/skills/commands/delfaq/config.json +0 -16
- undefined_bot-3.3.2/src/Undefined/skills/commands/delfaq/handler.py +0 -29
- undefined_bot-3.3.2/src/Undefined/skills/commands/help/handler.py +0 -152
- undefined_bot-3.3.2/src/Undefined/skills/commands/lsfaq/README.md +0 -14
- undefined_bot-3.3.2/src/Undefined/skills/commands/lsfaq/config.json +0 -16
- undefined_bot-3.3.2/src/Undefined/skills/commands/lsfaq/handler.py +0 -25
- undefined_bot-3.3.2/src/Undefined/skills/commands/naga/scopes.json +0 -4
- undefined_bot-3.3.2/src/Undefined/skills/commands/profile/config.json +0 -16
- undefined_bot-3.3.2/src/Undefined/skills/commands/searchfaq/README.md +0 -17
- undefined_bot-3.3.2/src/Undefined/skills/commands/searchfaq/config.json +0 -16
- undefined_bot-3.3.2/src/Undefined/skills/commands/searchfaq/handler.py +0 -30
- undefined_bot-3.3.2/src/Undefined/skills/commands/viewfaq/README.md +0 -17
- undefined_bot-3.3.2/src/Undefined/skills/commands/viewfaq/config.json +0 -16
- undefined_bot-3.3.2/src/Undefined/skills/commands/viewfaq/handler.py +0 -31
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/.gitignore +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/LICENSE +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/config/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/config/mcp.json.example +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/img/head.png +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/img/xlwy.jpg +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/IMPORTANT/each.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/agent_self_intro.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/analyze_multimodal.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/describe_image.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/generate_title.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/historian_profile_merge.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/historian_rewrite.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/image_gen_moderation.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/injection_detector.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/injection_response_agent.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/judge_meme_image.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/merge_summaries.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/naga_message_moderation.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/stats_analysis.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/res/prompts/summarize.txt +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/__main__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/crawl4ai_support.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/http.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/multimodal.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/parsing.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/prompts.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/queue_budget.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/retrieval.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/tokens.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/tooling.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/ai/transports/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/_context.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/_helpers.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/_naga_state.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/_openapi.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/app.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/naga_store.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/chat.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/cognitive.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/health.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/memes.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/memory.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/naga.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/system.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/api/routes/tools.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/client.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/downloader.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/models.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/arxiv/parser.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/downloader.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/parser.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/wbi.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/bilibili/wbi_request.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/changelog.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/historian.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/job_queue.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/profile_storage.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/service.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/cognitive/vector_store.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/admin.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/coercers.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/domain_parsers.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/manager.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/resolvers.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/config/webui_settings.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/context.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/context_resource_registry.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/end_summary_storage.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/faq.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/injection_response_agent.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/chunker.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/embedder.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/manager.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/reranker.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/runtime.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/knowledge/store.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/mcp/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/mcp/registry.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/models.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/service.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/store.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/vector_store.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memes/worker.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/memory.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/onebot.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/rate_limit.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/scheduled_task_storage.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/ai_coordinator.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/commands/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/queue_manager.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/services/security.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/agent_tool_registry.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/fetch_paper/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/fetch_paper/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/read_paper_pages/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/read_paper_pages/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/docker_utils.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/mcp.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/end/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/end/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/read/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/read/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/write/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/code_delivery_agent/tools/write/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/baiduhot/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/baiduhot/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/base64/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/base64/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/douyinhot/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/douyinhot/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/gold_price/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/gold_price/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/hash/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/hash/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/history/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/history/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/net_check/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/net_check/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/speed/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/speed/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/tcping/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/tcping/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/weather_query/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/weather_query/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/weibohot/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/weibohot/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/whois/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/info_agent/tools/whois/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/intro_generator.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/intro_utils.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/mcp.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/runner.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/intro.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/mcp.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/prompt.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/grok_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/grok_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/web_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/agents/web_agent/tools/web_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/anthropic_skills/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/anthropic_skills/loader.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/addadmin/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/bugfix/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/bugfix/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/changelog/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/changelog/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/copyright/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/copyright/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/copyright/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/lsadmin/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/lsadmin/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/lsadmin/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/naga/policy.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/rmadmin/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/stats/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/stats/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/stats/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/summary/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/summary/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/version/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/commands/version/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/registry.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/arxiv_paper/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/arxiv_paper/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/arxiv_paper/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/bilibili_video/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/bilibili_video/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/bilibili_video/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/calculator/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/calculator/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/calculator/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/changelog_query/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/changelog_query/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/changelog_query/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/end/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/end/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/end/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/fetch_image_uid/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_current_time/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_current_time/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_current_time/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_current_time/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_picture/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_picture/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_user_info/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_user_info/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/get_user_info/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_list/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_list/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_semantic_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_semantic_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_text_search/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/knowledge_text_search/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/python_interpreter/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/python_interpreter/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/python_interpreter/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/qq_like/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/qq_like/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/qq_like/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/task_progress/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/tools/task_progress/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/get_profile/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/get_profile/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/search_events/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/search_events/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/search_profiles/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/cognitive/search_profiles/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/contacts/query_friends/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/contacts/query_friends/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/contacts/query_groups/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/contacts/query_groups/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/find_member/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/find_member/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_files/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_files/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_honor_info/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_honor_info/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_list/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_list/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_title/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/group/get_member_title/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/activity_trend/config.json +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/activity_trend/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/filter_members/config.json +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/filter_members/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group/detect_inactive_risk → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/inactive_risk}/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_join_statistics → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/join_statistics}/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/level_distribution/config.json +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/level_distribution/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group/get_member_activity → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_activity}/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_member_messages → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/member_messages}/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group_analysis/analyze_new_member_activity → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis/new_member_activity}/handler.py +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/rank_members/config.json +0 -0
- {undefined_bot-3.3.2/src/Undefined/skills/toolsets/group → undefined_bot-3.3.3/src/Undefined/skills/toolsets/group_analysis}/rank_members/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/mcp/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/mcp/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memes/search_memes/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/add/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/add/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/delete/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/delete/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/list/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/list/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/update/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/memory/update/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_forward_msg/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_forward_msg/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_messages_by_time/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_messages_by_time/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_recent_messages/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/get_recent_messages/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/list_emojis/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/list_emojis/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/react_message_emoji/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/react_message_emoji/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_group_sign/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_group_sign/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_message/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_message/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_poke/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_poke/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_private_message/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_private_message/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_text_file/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_text_file/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_text_file/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_url_file/callable.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_url_file/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/messages/send_url_file/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/get/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/get/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/list/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/list/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/stats/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/notices/stats/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_html/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_latex/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/render/render_markdown/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/README.md +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/create_schedule_task/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/create_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/delete_schedule_task/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/delete_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/list_schedule_tasks/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/list_schedule_tasks/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/update_schedule_task/config.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/skills/toolsets/scheduler/update_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/token_usage_storage.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/cache.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/coerce.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/cors.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/fake_at.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/file_lock.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/group_metrics.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/http_download.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/io.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/logging.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/member_utils.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/message_targets.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/message_utils.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/paths.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/qq_emoji.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/queue_intervals.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/recent_messages.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/request_params.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/resources.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/scheduler.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/self_update.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/time_utils.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/tool_calls.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/utils/xml.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/__main__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/app.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/core.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_auth.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_bot.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_config.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_index.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_logs.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_memes.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_runtime.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_shared.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/routes/_system.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/.stylelintrc.json +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/app.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/base.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/components.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/landing.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/responsive.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/style.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/css/variables.css +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/favicon.svg +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/api.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/auth.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/bot.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/config-form.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/i18n.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/log-view.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/logs.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/main.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/memes.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/runtime.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/state.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/ui.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/static/js/vendor/marked.min.js +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/templates/index.html +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/utils/__init__.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/utils/comment.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/utils/config_io.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/utils/config_sync.py +0 -0
- {undefined_bot-3.3.2 → undefined_bot-3.3.3}/src/Undefined/webui/utils/toml_render.py +0 -0
|
@@ -33,12 +33,18 @@ graph TB
|
|
|
33
33
|
BilibiliSender["sender.py<br/>视频发送<br/>• 视频消息 • 降级信息卡片"]
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
+
subgraph GitHubModule["GitHub 模块 (github/)"]
|
|
37
|
+
GitHubParser["parser.py<br/>仓库标识解析<br/>• URL • SSH • owner/repo • JSON"]
|
|
38
|
+
GitHubClient["client.py<br/>public API 获取<br/>• 仓库信息 • contributors"]
|
|
39
|
+
GitHubSender["sender.py<br/>图片卡片发送<br/>• 头像 • 简介 • 统计"]
|
|
40
|
+
end
|
|
41
|
+
|
|
36
42
|
subgraph SecurityLayer["安全防线 (services/)"]
|
|
37
43
|
SecurityService["SecurityService<br/>安全服务<br/>• 注入攻击检测<br/>• 速率限制<br/>[security.py]"]
|
|
38
44
|
InjectionAgent["InjectionResponseAgent<br/>注入响应生成<br/>[injection_response_agent.py]"]
|
|
39
45
|
end
|
|
40
46
|
|
|
41
|
-
CommandDispatcher["CommandDispatcher<br/>命令分发器<br/>• /help /stats /lsadmin<br/>• /addadmin /rmadmin<br/>• /bugfix /
|
|
47
|
+
CommandDispatcher["CommandDispatcher<br/>命令分发器<br/>• /help /stats /lsadmin<br/>• /addadmin /rmadmin<br/>• /bugfix /faq<br/>[services/command.py]"]
|
|
42
48
|
|
|
43
49
|
subgraph QueueSystem["车站-列车 队列系统 (services/)"]
|
|
44
50
|
AICoordinator["AICoordinator<br/>AI 协调器<br/>• Prompt 构建<br/>• 队列管理<br/>• 回复执行<br/>[ai_coordinator.py]"]
|
|
@@ -95,7 +101,7 @@ graph TB
|
|
|
95
101
|
TS_Messages["messages.*<br/>• send_message<br/>• get_recent_messages<br/>• get_forward_msg"]
|
|
96
102
|
TS_Memory["memory.*<br/>• add / delete<br/>• list / update"]
|
|
97
103
|
TS_Contacts["contacts.*<br/>• query_friends<br/>• query_groups"]
|
|
98
|
-
TS_GroupAnalysis["group_analysis.*<br/>•
|
|
104
|
+
TS_GroupAnalysis["group_analysis.*<br/>• member_structure<br/>• message_mix<br/>• member_activity<br/>• activity_trend<br/>• inactive_risk<br/>• member_messages<br/>• join_statistics<br/>• new_member_activity"]
|
|
99
105
|
TS_Notices["notices.*<br/>• list / get / stats"]
|
|
100
106
|
TS_Render["render.*<br/>• render_html<br/>• render_latex<br/>• render_markdown"]
|
|
101
107
|
TS_Scheduler["scheduler.*<br/>• create_schedule_task<br/>• delete_schedule_task<br/>• list_schedule_tasks"]
|
|
@@ -116,7 +122,7 @@ graph TB
|
|
|
116
122
|
subgraph CommandsLayer["平台指令 (skills/commands/)"]
|
|
117
123
|
Cmd_Core["核心指令<br/>• help • stats"]
|
|
118
124
|
Cmd_Admin["管理指令<br/>• addadmin<br/>• rmadmin • lsadmin"]
|
|
119
|
-
Cmd_FAQ["FAQ 指令<br/>•
|
|
125
|
+
Cmd_FAQ["FAQ 指令<br/>• faq (ls/view/search/del)"]
|
|
120
126
|
Cmd_Fun["娱乐指令<br/>• bugfix"]
|
|
121
127
|
end
|
|
122
128
|
|
|
@@ -208,13 +214,16 @@ graph TB
|
|
|
208
214
|
SecurityService -.->|"API 调用"| LLM_API
|
|
209
215
|
SecurityService -->|"注入攻击"| InjectionAgent
|
|
210
216
|
|
|
211
|
-
MessageHandler -->|"
|
|
217
|
+
MessageHandler -->|"2. 指令?"| CommandDispatcher
|
|
218
|
+
CommandDispatcher -->|"执行结果经统一发送层写历史"| OneBotClient
|
|
219
|
+
MessageHandler -->|"2.5 非命令自动管线"| BilibiliParser
|
|
212
220
|
BilibiliParser -->|"BV号"| BilibiliDownloader
|
|
213
221
|
BilibiliDownloader -->|"视频文件"| BilibiliSender
|
|
214
222
|
BilibiliSender -->|"发送"| OneBotClient
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
223
|
+
MessageHandler -->|"2.6 非命令自动管线"| GitHubParser
|
|
224
|
+
GitHubParser -->|"仓库ID"| GitHubClient
|
|
225
|
+
GitHubClient -->|"public仓库信息"| GitHubSender
|
|
226
|
+
GitHubSender -->|"发送图片卡片"| OneBotClient
|
|
218
227
|
|
|
219
228
|
MessageHandler -->|"3. 自动回复"| AICoordinator
|
|
220
229
|
AICoordinator -->|"创建上下文"| RequestContext
|
|
@@ -353,21 +362,22 @@ sequenceDiagram
|
|
|
353
362
|
alt 检测到注入
|
|
354
363
|
SS->>MH: 拦截并响应
|
|
355
364
|
else 安全
|
|
356
|
-
%%
|
|
357
|
-
|
|
358
|
-
MH->>MH: extract_bilibili_ids()
|
|
359
|
-
MH->>MH: download_video()
|
|
360
|
-
MH->>OH: 发送视频/信息卡片
|
|
361
|
-
OH->>OB: WebSocket API
|
|
362
|
-
OB->>U: 显示视频
|
|
363
|
-
else 非B站内容
|
|
364
|
-
%% 指令处理
|
|
365
|
-
MH->>CD: 解析斜杠命令
|
|
365
|
+
%% 指令处理
|
|
366
|
+
MH->>CD: 解析斜杠命令
|
|
366
367
|
alt 是命令
|
|
367
368
|
CD->>ST: FAQ/管理员操作
|
|
369
|
+
CD->>ST: 写入命令输出历史
|
|
368
370
|
CD-->>OB: 返回结果
|
|
369
371
|
OB->>U: 发送响应
|
|
370
|
-
else
|
|
372
|
+
else 非命令消息
|
|
373
|
+
MH->>MH: 并行检测 skills/auto_pipeline 管线
|
|
374
|
+
opt 命中自动提取管线
|
|
375
|
+
MH->>MH: 并行处理全部命中的自动提取
|
|
376
|
+
MH->>OH: 发送视频/卡片/PDF
|
|
377
|
+
OH->>OB: WebSocket API
|
|
378
|
+
OB->>U: 显示自动提取结果
|
|
379
|
+
MH->>ST: 写入自动提取结果历史和附件 UID
|
|
380
|
+
end
|
|
371
381
|
%% AI处理流程
|
|
372
382
|
MH->>AC: handle_auto_reply()
|
|
373
383
|
|
|
@@ -810,6 +820,7 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
|
|
|
810
820
|
| **认知记忆** | `cognitive.enabled`, `cognitive.query.*`, `models.embedding.*` | 事件检索、时间衰减加权、侧写与后台史官 |
|
|
811
821
|
| **Bilibili** | `bilibili.auto_extract_enabled`, `bilibili.cookie`, `bilibili.prefer_quality` | B站视频自动提取与下载 |
|
|
812
822
|
| **arXiv** | `arxiv.auto_extract_enabled`, `arxiv.max_file_size`, `arxiv.auto_extract_max_items` | arXiv 论文自动提取、搜索与 PDF 发送 |
|
|
823
|
+
| **GitHub** | `github.auto_extract_enabled`, `github.request_timeout_seconds`, `github.auto_extract_max_items` | GitHub public 仓库自动提取与图片卡片发送 |
|
|
813
824
|
| **思考链** | `*.thinking_enabled` | 思维链支持 |
|
|
814
825
|
| **思维链兼容** | `*.thinking_tool_call_compat` | 思维链 + 工具调用兼容 |
|
|
815
826
|
| **WebUI** | `webui.url`, `webui.port`, `webui.password` | 配置控制台 |
|
|
@@ -820,7 +831,8 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
|
|
|
820
831
|
|
|
821
832
|
1. **外部实体层**:用户、管理员、OneBot 协议端 (NapCat/Lagrange.Core)、大模型 API 服务商
|
|
822
833
|
2. **核心入口层**:main.py 启动入口、配置管理器 (config/loader.py)、热更新应用器 (config/hot_reload.py)、OneBotClient (onebot.py)、RequestContext (context.py)、Runtime API Server (api/app.py → api/routes/ 路由子模块)
|
|
823
|
-
3. **消息处理层**:MessageHandler (handlers.py)、SecurityService (security.py)、CommandDispatcher (services/command.py)、AICoordinator (ai_coordinator.py)、QueueManager (queue_manager.py)
|
|
834
|
+
3. **消息处理层**:MessageHandler (handlers.py)、SecurityService (security.py)、CommandDispatcher (services/command.py)、AICoordinator (ai_coordinator.py)、QueueManager (queue_manager.py)、自动处理管线 (skills/auto_pipeline/)、Bilibili/arXiv/GitHub 解析与发送模块
|
|
835
|
+
自动提取由 `AutoPipelineRegistry` 并行检测、并行处理全部命中的管线;发送结果写入历史后继续进入 AI 自动回复。
|
|
824
836
|
4. **AI 核心能力层**:AIClient (client.py)、PromptBuilder (prompts.py)、ModelRequester (llm.py)、ToolManager (tooling.py)、MultimodalAnalyzer (multimodal.py)、SummaryService (summaries.py)、TokenCounter (tokens.py)
|
|
825
837
|
5. **存储与上下文层**:MessageHistoryManager (utils/history.py, 10000条限制)、MemoryStorage (memory.py, 置顶备忘录, 500条上限)、EndSummaryStorage、CognitiveService + JobQueue + HistorianWorker + VectorStore + ProfileStorage、MemeService + MemeWorker + MemeStore + MemeVectorStore (表情包库)、FAQStorage、ScheduledTaskStorage、TokenUsageStorage (自动归档)
|
|
826
838
|
6. **技能系统层**:ToolRegistry (registry.py)、AgentRegistry、6个 Agents、11类 Toolsets
|
|
@@ -1,3 +1,43 @@
|
|
|
1
|
+
## v3.3.3 命令推断、自动处理管线与统一附件上下文
|
|
2
|
+
|
|
3
|
+
本版本重点优化了命令系统的交互体验、AI 工具边界和消息前置处理链路。新增 GitHub 链接自动卡片生成,并将 Bilibili、arXiv、GitHub 等自动提取迁入 `skills/auto_pipeline` 热重载管线,使预处理结果能写入历史并进入后续 AI 回复上下文。同时,帮助说明与用户侧写默认改为图片输出,系统剥离独立群聊分析工具集,全面推行统一附件标签,并为远程附件加入可配置下载上限和 URL 引用降级,完善底层用户识别机制与模型高级透传配置。
|
|
4
|
+
|
|
5
|
+
- 优化命令系统:支持声明式子命令与用户意图推断。如 `/faq` 合并了列表、阅读、搜索与删除入口,可自然理解省略部分参数后的交互意图;旧 `/lsfaq`、`/viewfaq`、`/searchfaq`、`/delfaq` 入口已移除。
|
|
6
|
+
- 改善长文本呈现:`/help` 与 `/profile` 默认渲染为图片分发,避免长内容刷屏;保留 `-t` 参数用于强制返回纯文本,`/profile` 仍支持 `-f` 合并转发模式。
|
|
7
|
+
- 新增自动处理管线:在 `skills/auto_pipeline` 下提供 `config.json + handler.py` 结构,支持热重载、并行检测和并行处理多个命中结果;首批内置 Bilibili、arXiv、GitHub 三条管线,且斜杠命令优先级高于自动管线,命中命令后不会触发后续自动提取或 AI 自动回复。
|
|
8
|
+
- 优化自动管线启动加载:首次目录扫描、配置读取和 handler 导入改为异步线程加载,避免启动初始化阶段阻塞事件循环。
|
|
9
|
+
- 修复自动管线兜底初始化:未显式执行异步初始化的兼容路径会按未初始化处理并主动加载管线,避免静默跳过自动提取。
|
|
10
|
+
- 新增 GitHub 自动卡片:支持在对话中检测 GitHub 链接及 `owner/repo` 标识,自动生成包含项目简介、Stars、Forks、贡献者等信息的卡片;支持独立开关与白名单控制,并裁剪渲染截图底部空白。
|
|
11
|
+
- 打通命令与自动提取历史上下文:斜杠命令输入、命令输出、自动管线发送的信息、图片、文件和视频摘要都会写入消息历史;统一发送层会自动把本地 CQ 图片、视频、语音和上传文件登记为当前会话可见的 `pic_*` / `file_*` UID,并记录群合并转发摘要,后续 AI 回复可直接看到这些结果并用 `<attachment uid="..."/>` 引用附件。
|
|
12
|
+
- 新增远程附件下载上限:`[attachments].remote_download_max_size_mb` 控制外部远程附件缓存大小,超过上限或配置为 `0` 时只登记 URL 引用,避免大文件导致磁盘占用和消息处理延迟激增。
|
|
13
|
+
- 修复远程附件 URL 引用:下载禁用或超限时始终保留可访问 URL,原始 OneBot 文件标识或 QQ 来源作为追溯信息保存,避免后续 `<attachment>` 渲染成不可发送的图片地址。
|
|
14
|
+
- 优化历史落盘延迟:消息先同步写入内存历史供后续流程读取,磁盘 JSON 持久化改为按会话后台串行合并写入,减少大群历史文件全量保存拖慢复读和自动处理前置链路的情况。
|
|
15
|
+
- 修复历史异步保存失败保留:磁盘写入失败会向调度层传播并保留待保存快照,等待后续保存触发,避免队列合并过程中丢失已弹出的历史数据。
|
|
16
|
+
- 独立群聊分析工具:将群成员构成与水群分析从基础群工具中完全剥离,划归专属 `group_analysis.*` 集合,避免日常查询与复杂分析导致的 AI 工具边界混淆。
|
|
17
|
+
- 统一多模态附件标签:全系统推行 `<attachment uid="..."/>` 作为标准分发标签(继续兼容旧 `<pic>`),配套统一了表情包提示词,新增 `group.get_avatar` 头像专用工具。
|
|
18
|
+
- 优化表情包回复体验:提示词要求“文字 + 表情包”场景先发送必要文字,再在后续轮次检索和发送表情包,避免表情包检索拖慢首条回复。
|
|
19
|
+
- 稳定用户识别体系:底层认知逻辑固定以 QQ 号为唯一绑定标识,辅以 `group.get_member_info(brief=true)` 快速拉取当前昵称,有效解决群友频繁更换名片引发的识别错乱。
|
|
20
|
+
- 增强模型连接配置:新增 `stream_enabled` 独立控制推流行为,增加 `request_params` 以支持向不同厂商端点透传特殊参数。
|
|
21
|
+
- 完善流式 usage 统计:Chat Completions 启用上游流式请求时会自动附带 `stream_options.include_usage=true`,避免流式路径丢失 token 用量。
|
|
22
|
+
- 收窄流式回退范围:仅在明确的流式参数不兼容错误或 SDK 未实现时降级到非流式请求,鉴权、限流、网络和超时错误不再重复重发。
|
|
23
|
+
- 细化子命令限流:声明式子命令按父命令与子命令分别记录冷却时间,避免同一复合命令下不同操作互相挤占。
|
|
24
|
+
- 修复私聊模型池命令回归:`/compare`、`/pk` 和完整的 `选<number>` 模型选择消息会先交给模型池处理,普通私聊内容不会因模型池开启而被提前拦截。
|
|
25
|
+
- 改进命令参数解析:`[@QQ(含空格昵称)]` 会作为一个整体参数归一化,且超管可通过 dispatcher 层的管理员权限检查。
|
|
26
|
+
- 修正 `/naga` 子命令分发:handler 直接使用分发层解析出的子命令,并兼容改写后的 `[subcmd, *args]` 参数格式,避免把子命令名和 `naga_id` 相互误判。
|
|
27
|
+
- 收窄模型热更新范围:`summary`、`historian`、`grok` 专用模型变化只刷新 AI 运行时配置,不再重建聊天、视觉和 Agent 模型对象。
|
|
28
|
+
- 修复配置热更新细节:`skills.hot_reload` 变化会同步刷新 Anthropic Skills 注册表;模型池条目会保留 `reasoning_effort_style`;配置模板补齐 `models.summary.stream_enabled`。
|
|
29
|
+
- 修复总结模型选择:配置了 `models.summary` 时,聊天总结、摘要合并和标题生成会使用专用 summary 模型配置;仅热更新 summary 模型时也会重建摘要服务,避免继续沿用旧模型。
|
|
30
|
+
- 提升基础工程质量:对命令推断、群分析、附件处理、配置参数等进行了全面的单元与集成测试补强,总测试用例数提升至 1500+ 项。
|
|
31
|
+
- 修复图片渲染超时:重构 `render.py` 为浏览器实例单例复用模式,并引入可配置的并发信号量;共享渲染上下文会在页面创建失败时正确释放,防止低资源设备多任务抢占导致截图超时或资源残留。
|
|
32
|
+
- 改进渲染热更新:`render.browser_max_concurrency` 运行时变化会在当前渲染任务空闲后重建信号量,且不依赖 `asyncio.Semaphore` 私有属性;本地 LaTeX mathtext 渲染改用 Matplotlib 公共 `math_to_image` 接口。
|
|
33
|
+
- 改进 GitHub 卡片稳定性:裸仓库识别改为结合上下文与仓库名形态判断,降低普通路径误触发;渲染头像等外部资源会复用代理配置,发送后清理临时 PNG 缓存。
|
|
34
|
+
- 收紧子命令推断:声明式 inference 正则需要完整匹配参数,避免只匹配前缀时误选子命令。
|
|
35
|
+
- 修复 Playwright 启动失败清理:浏览器 launch 失败时会停止已启动的 driver,避免反复失败时残留资源。
|
|
36
|
+
- 改进 LaTeX 渲染稳定性:常见公式优先使用本地 `matplotlib` mathtext 渲染,复杂内容再回退共享浏览器实例中的 MathJax + Playwright,避免简单公式依赖外部网络或系统 TeX 环境。
|
|
37
|
+
- 修复流式输出一致性:Chat Completions 与 Responses 流式聚合结果不再裁剪模型输出前后空白,与非流式路径保持一致,避免代码块缩进或刻意留白被改写。
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
1
41
|
## v3.3.2 架构重构、假@检测与认知侧写增强
|
|
2
42
|
|
|
3
43
|
围绕核心架构进行了大规模重构与功能增强:Runtime API 拆分为路由子模块、配置系统模块化拆分、新增假@检测机制与 /profile 多输出模式。同步引入复读机制全面升级(可配置阈值与冷却)、消息预处理并行化、WebUI 多项交互功能,以及 arXiv 论文分析 Agent 和安全计算器工具。测试覆盖从约 800 提升至 1438+。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Undefined-bot
|
|
3
|
-
Version: 3.3.
|
|
3
|
+
Version: 3.3.3
|
|
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
|
|
@@ -103,7 +103,7 @@ Description-Content-Type: text/markdown
|
|
|
103
103
|
- **Management API + Runtime API 分层**:配置、日志、Bot 启停和管理探针由 Management API 提供;主进程 Runtime API 则专注探针、记忆只读查询、认知侧写检索和 WebUI AI Chat。详见 [docs/management-api.md](docs/management-api.md) 与 [docs/openapi.md](docs/openapi.md)。
|
|
104
104
|
- **多模型池**:支持配置多个 AI 模型,可轮询、随机选择或用户指定;支持多模型并发比较,选择最佳结果继续对话。详见 [多模型功能文档](docs/multi-model.md)。
|
|
105
105
|
- **本地知识库**:将纯文本文件向量化存入 ChromaDB,AI 可通过关键词搜索或语义搜索查询领域知识;支持增量嵌入与自动扫描。详见 [知识库文档](docs/knowledge.md)。
|
|
106
|
-
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<
|
|
106
|
+
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<attachment uid="..."/>`。详见 [表情包库说明](docs/memes.md)。
|
|
107
107
|
- **访问控制(群/私聊)**:支持 `access.mode` 三种模式(`off` / `blacklist` / `allowlist`)和群/私聊黑白名单;可按策略限制收发范围,避免误触发与误投递。详见 [docs/access-control.md](docs/access-control.md)。
|
|
108
108
|
- **版本变更可查询**:仓库根目录维护 `CHANGELOG.md`,并提供 `/changelog` 命令在运行时查看最近版本和单版本摘要。
|
|
109
109
|
- **并行工具执行**:无论是主 AI 还是子 Agent,均支持 `asyncio` 并发工具调用,大幅提升多任务处理速度(如同时读取多个文件或搜索多个关键词)。
|
|
@@ -117,6 +117,8 @@ Description-Content-Type: text/markdown
|
|
|
117
117
|
- **Anthropic Skills**:支持 Anthropic Agent Skills(SKILL.md 格式),遵循 agentskills.io 开放标准,提供领域知识注入能力。
|
|
118
118
|
- **Bilibili 视频提取**:自动检测消息中的 B 站视频链接/BV 号/小程序分享,下载 1080p 视频并通过 QQ 发送;同时提供 AI 工具调用入口。
|
|
119
119
|
- **arXiv 论文提取与搜索**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;同时提供 `arxiv_paper` 发送工具和 `arxiv_search` 检索工具。
|
|
120
|
+
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览。
|
|
121
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/auto_pipeline` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
120
122
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
121
123
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
122
124
|
- **异步安全 I/O**:统一 IO 层通过线程池 + 跨平台文件锁(Linux/macOS `flock`,Windows `msvcrt`)+ 原子写入(`os.replace`)保证并发写入不损坏、且不阻塞主事件循环。
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
- **Management API + Runtime API 分层**:配置、日志、Bot 启停和管理探针由 Management API 提供;主进程 Runtime API 则专注探针、记忆只读查询、认知侧写检索和 WebUI AI Chat。详见 [docs/management-api.md](docs/management-api.md) 与 [docs/openapi.md](docs/openapi.md)。
|
|
44
44
|
- **多模型池**:支持配置多个 AI 模型,可轮询、随机选择或用户指定;支持多模型并发比较,选择最佳结果继续对话。详见 [多模型功能文档](docs/multi-model.md)。
|
|
45
45
|
- **本地知识库**:将纯文本文件向量化存入 ChromaDB,AI 可通过关键词搜索或语义搜索查询领域知识;支持增量嵌入与自动扫描。详见 [知识库文档](docs/knowledge.md)。
|
|
46
|
-
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<
|
|
46
|
+
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<attachment uid="..."/>`。详见 [表情包库说明](docs/memes.md)。
|
|
47
47
|
- **访问控制(群/私聊)**:支持 `access.mode` 三种模式(`off` / `blacklist` / `allowlist`)和群/私聊黑白名单;可按策略限制收发范围,避免误触发与误投递。详见 [docs/access-control.md](docs/access-control.md)。
|
|
48
48
|
- **版本变更可查询**:仓库根目录维护 `CHANGELOG.md`,并提供 `/changelog` 命令在运行时查看最近版本和单版本摘要。
|
|
49
49
|
- **并行工具执行**:无论是主 AI 还是子 Agent,均支持 `asyncio` 并发工具调用,大幅提升多任务处理速度(如同时读取多个文件或搜索多个关键词)。
|
|
@@ -57,6 +57,8 @@
|
|
|
57
57
|
- **Anthropic Skills**:支持 Anthropic Agent Skills(SKILL.md 格式),遵循 agentskills.io 开放标准,提供领域知识注入能力。
|
|
58
58
|
- **Bilibili 视频提取**:自动检测消息中的 B 站视频链接/BV 号/小程序分享,下载 1080p 视频并通过 QQ 发送;同时提供 AI 工具调用入口。
|
|
59
59
|
- **arXiv 论文提取与搜索**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;同时提供 `arxiv_paper` 发送工具和 `arxiv_search` 检索工具。
|
|
60
|
+
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览。
|
|
61
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/auto_pipeline` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
60
62
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
61
63
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
62
64
|
- **异步安全 I/O**:统一 IO 层通过线程池 + 跨平台文件锁(Linux/macOS `flock`,Windows `msvcrt`)+ 原子写入(`os.replace`)保证并发写入不损坏、且不阻塞主事件循环。
|
|
@@ -122,6 +122,9 @@ responses_force_stateless_replay = false
|
|
|
122
122
|
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
123
123
|
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
124
124
|
prompt_cache_enabled = true
|
|
125
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
126
|
+
# en: Enable streaming requests to the upstream model API.
|
|
127
|
+
stream_enabled = false
|
|
125
128
|
|
|
126
129
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
127
130
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -189,6 +192,9 @@ responses_tool_choice_compat = false
|
|
|
189
192
|
# en: Responses API force stateless replay: when enabled, multi-turn tool follow-ups always skip previous_response_id and replay the full message history instead. Use only when the upstream does not handle stateful responses follow-ups correctly. Disabled by default.
|
|
190
193
|
responses_force_stateless_replay = false
|
|
191
194
|
prompt_cache_enabled = true
|
|
195
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
196
|
+
# en: Enable streaming requests to the upstream model API.
|
|
197
|
+
stream_enabled = false
|
|
192
198
|
|
|
193
199
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
194
200
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -246,6 +252,9 @@ responses_tool_choice_compat = false
|
|
|
246
252
|
# en: Responses API force stateless replay: when enabled, multi-turn tool follow-ups always skip previous_response_id and replay the full message history instead. Use only when the upstream does not handle stateful responses follow-ups correctly. Disabled by default.
|
|
247
253
|
responses_force_stateless_replay = false
|
|
248
254
|
prompt_cache_enabled = true
|
|
255
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
256
|
+
# en: Enable streaming requests to the upstream model API.
|
|
257
|
+
stream_enabled = false
|
|
249
258
|
|
|
250
259
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
251
260
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -301,6 +310,9 @@ responses_tool_choice_compat = false
|
|
|
301
310
|
# zh: Responses API 续轮强制降级。
|
|
302
311
|
# en: Responses API force stateless replay.
|
|
303
312
|
responses_force_stateless_replay = false
|
|
313
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
314
|
+
# en: Enable streaming requests to the upstream model API.
|
|
315
|
+
stream_enabled = false
|
|
304
316
|
|
|
305
317
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
306
318
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -355,6 +367,9 @@ responses_tool_choice_compat = false
|
|
|
355
367
|
# en: Responses API force stateless replay: when enabled, multi-turn tool follow-ups always skip previous_response_id and replay the full message history instead. Use only when the upstream does not handle stateful responses follow-ups correctly. Disabled by default.
|
|
356
368
|
responses_force_stateless_replay = false
|
|
357
369
|
prompt_cache_enabled = true
|
|
370
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
371
|
+
# en: Enable streaming requests to the upstream model API.
|
|
372
|
+
stream_enabled = false
|
|
358
373
|
|
|
359
374
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
360
375
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -422,6 +437,9 @@ responses_tool_choice_compat = false
|
|
|
422
437
|
# en: Responses API force stateless replay: when enabled, multi-turn tool follow-ups always skip previous_response_id and replay the full message history instead. Use only when the upstream does not handle stateful responses follow-ups correctly. Disabled by default.
|
|
423
438
|
responses_force_stateless_replay = false
|
|
424
439
|
prompt_cache_enabled = true
|
|
440
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
441
|
+
# en: Enable streaming requests to the upstream model API.
|
|
442
|
+
stream_enabled = false
|
|
425
443
|
|
|
426
444
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
427
445
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -476,6 +494,9 @@ responses_tool_choice_compat = false
|
|
|
476
494
|
# en: Responses API force stateless replay: when enabled, multi-turn tool follow-ups always skip previous_response_id and replay the full message history instead. Use only when the upstream does not handle stateful responses follow-ups correctly. Disabled by default.
|
|
477
495
|
responses_force_stateless_replay = false
|
|
478
496
|
prompt_cache_enabled = true
|
|
497
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
498
|
+
# en: Enable streaming requests to the upstream model API.
|
|
499
|
+
stream_enabled = false
|
|
479
500
|
|
|
480
501
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
481
502
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -520,6 +541,9 @@ reasoning_effort_style = "openai"
|
|
|
520
541
|
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
521
542
|
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
522
543
|
prompt_cache_enabled = true
|
|
544
|
+
# zh: 是否对上游模型 API 启用流式请求。
|
|
545
|
+
# en: Enable streaming requests to the upstream model API.
|
|
546
|
+
stream_enabled = false
|
|
523
547
|
|
|
524
548
|
# zh: 额外请求体参数(可选),可用于 temperature 或供应商私有参数。
|
|
525
549
|
# en: Extra request-body params (optional), e.g. temperature or vendor-specific fields.
|
|
@@ -754,6 +778,13 @@ onebot_fetch_limit = 10000
|
|
|
754
778
|
# en: Max messages/members returned by group analysis tools.
|
|
755
779
|
group_analysis_limit = 500
|
|
756
780
|
|
|
781
|
+
# zh: 附件缓存配置。
|
|
782
|
+
# en: Attachment cache settings.
|
|
783
|
+
[attachments]
|
|
784
|
+
# zh: 远程附件自动下载并缓存的最大大小(MB)。超过上限或设为 0 时只保留 URL 引用,不下载文件内容。
|
|
785
|
+
# en: Max remote attachment size (MB) to download into cache. Above the limit, or 0, keeps only a URL reference.
|
|
786
|
+
remote_download_max_size_mb = 25
|
|
787
|
+
|
|
757
788
|
# zh: Skills 热重载配置(可选)。
|
|
758
789
|
# en: Skills hot reload settings (optional).
|
|
759
790
|
[skills]
|
|
@@ -799,6 +830,8 @@ grok_search_enabled = false
|
|
|
799
830
|
[proxy]
|
|
800
831
|
# zh: 是否使用代理。
|
|
801
832
|
# en: Whether to use proxy.
|
|
833
|
+
# zh: 作用于 GitHub/arXiv 自动提取等走统一 HTTP 客户端的联网请求;关闭后也不会再读取代理环境变量。
|
|
834
|
+
# en: Applies to GitHub/arXiv auto extraction and other shared HTTP-client requests; when disabled, proxy env vars are ignored.
|
|
802
835
|
use_proxy = true
|
|
803
836
|
# zh: 例如 http://127.0.0.1:7890(也可使用环境变量 "HTTP_PROXY")。
|
|
804
837
|
# en: e.g. http://127.0.0.1:7890 (or use the "HTTP_PROXY" environment variable).
|
|
@@ -817,6 +850,13 @@ request_timeout_seconds = 30.0
|
|
|
817
850
|
# en: Default retry count (0-5).
|
|
818
851
|
request_retries = 0
|
|
819
852
|
|
|
853
|
+
# zh: HTML/Markdown 图片渲染配置。
|
|
854
|
+
# en: HTML/Markdown image rendering settings.
|
|
855
|
+
[render]
|
|
856
|
+
# zh: 渲染浏览器最大同时开启数量。0 表示自动:Linux 默认 1,其它平台默认 2。
|
|
857
|
+
# en: Max concurrent render browser pages. 0 = auto: Linux defaults to 1, other platforms default to 2.
|
|
858
|
+
browser_max_concurrency = 0
|
|
859
|
+
|
|
820
860
|
# zh: 第三方 API 基础地址(便于自定义镜像或私有网关)。
|
|
821
861
|
# en: Third-party API base URLs (for mirrors or private gateways).
|
|
822
862
|
[api_endpoints]
|
|
@@ -942,6 +982,25 @@ author_preview_limit = 20
|
|
|
942
982
|
# en: Max summary preview characters in paper info. <=0 falls back to 1000.
|
|
943
983
|
summary_preview_chars = 1000
|
|
944
984
|
|
|
985
|
+
# zh: GitHub 仓库自动提取配置(仅获取 public 仓库信息)。
|
|
986
|
+
# en: GitHub repository auto-extraction settings (public repositories only).
|
|
987
|
+
[github]
|
|
988
|
+
# zh: 是否启用自动提取(检测到 GitHub 仓库链接或 owner/repo 仓库 ID 时自动发送图片卡片)。
|
|
989
|
+
# en: Enable auto-extraction (auto-send an image card when GitHub repository links or owner/repo IDs are detected).
|
|
990
|
+
auto_extract_enabled = false
|
|
991
|
+
# zh: GitHub API 请求超时(秒)。<=0 回退 10,>60 截断到 60。
|
|
992
|
+
# en: GitHub API request timeout (seconds). <=0 falls back to 10, >60 is clamped to 60.
|
|
993
|
+
request_timeout_seconds = 10.0
|
|
994
|
+
# zh: 自动提取功能的群聊白名单(空=跟随全局 access.allowed_group_ids)。
|
|
995
|
+
# en: Group allowlist for auto-extraction (empty = follow global access.allowed_group_ids).
|
|
996
|
+
auto_extract_group_ids = []
|
|
997
|
+
# zh: 自动提取功能的私聊白名单(空=跟随全局 access.allowed_private_ids)。
|
|
998
|
+
# en: Private chat allowlist for auto-extraction (empty = follow global access.allowed_private_ids).
|
|
999
|
+
auto_extract_private_ids = []
|
|
1000
|
+
# zh: 单条消息最多自动处理几个 GitHub 仓库。<=0 回退 3,>10 截断到 10。
|
|
1001
|
+
# en: Max number of GitHub repositories to auto-process from one message. <=0 falls back to 3, >10 is clamped to 10.
|
|
1002
|
+
auto_extract_max_items = 3
|
|
1003
|
+
|
|
945
1004
|
# zh: Code Delivery Agent 配置(代码交付 Agent,在 Docker 容器中编写代码并打包上传)。
|
|
946
1005
|
# en: Code Delivery Agent settings (writes code in Docker containers and delivers packaged results).
|
|
947
1006
|
[code_delivery]
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
- 情绪/语气:无语、震惊、委屈、嘲讽、得意、阴阳怪气、崩溃、开心、嫌弃
|
|
19
19
|
- 动作/状态:翻白眼、鼓掌、捂脸、叹气、偷笑、流汗、发呆、摊手
|
|
20
20
|
- 使用场景:敷衍回应、上班吐槽、群聊附和、阴阳怪气、看乐子、尴尬收场
|
|
21
|
-
-
|
|
21
|
+
- 图中文字/OCR:图片内写的关键字句、台词、配文、对话气泡内容等
|
|
22
|
+
- 图中如果有文字(配字、台词、对话气泡、水印等),必须把文字内容融入描述,这是搜索命中的重要依据。短文字尽量原文写入描述,长文字可以概括核心关键词句,但不要完全忽略图中文字。
|
|
22
23
|
- `description` 不能只写情绪和用途,也必须写出图片内容本身:谁/什么在画面里、表情如何、动作如何、画面是什么类型。
|
|
23
24
|
- 如果画面里有明显视觉特征,也要写出来,例如:
|
|
24
25
|
- 主体是谁或是什么
|
|
@@ -52,8 +53,8 @@
|
|
|
52
53
|
- 不要堆重复词,例如 `无语`、`很无语`、`超级无语` 这种不要同时出现。
|
|
53
54
|
|
|
54
55
|
额外限制:
|
|
55
|
-
-
|
|
56
|
-
-
|
|
56
|
+
- 不要逐字抄录大段长文,但短句、关键词、配字应尽量原文写入描述。
|
|
57
|
+
- 不要输出独立的 OCR 字段或逐行转录,文字内容应自然融入 description。
|
|
57
58
|
- 不要输出 Markdown,不要输出额外解释。
|
|
58
59
|
- 你必须且只能调用 `submit_meme_description`。
|
|
59
60
|
- 如果收到的是一张网格图(多帧拼接)或多张图片,说明原图是动图/GIF:描述应涵盖动图的动态变化过程和整体语义,不要只描述单帧;可以在 tags 里加上 `动图` 标签。
|
|
@@ -71,9 +72,13 @@
|
|
|
71
72
|
`tags`: [`猫猫`, `嫌弃`, `无语`, `翻白眼`]
|
|
72
73
|
- `description`: `真人聊天截图里尴尬陪笑又有点敷衍的表情包`
|
|
73
74
|
`tags`: [`真人`, `聊天截图`, `尴尬`, `敷衍`]
|
|
75
|
+
- `description`: `熊猫头配字“行吧”无奈妥协表情包`
|
|
76
|
+
`tags`: [`熊猫头`, `无奈`, `行吧`, `配字`]
|
|
77
|
+
- `description`: `猫猫捂脸配字“我裂开了”崩溃反应图`
|
|
78
|
+
`tags`: [`猫猫`, `崩溃`, `我裂开了`, `捂脸`]
|
|
74
79
|
|
|
75
80
|
差的例子:
|
|
76
81
|
- `description`: `一张表情包`
|
|
77
82
|
- `description`: `一个猫的图片`
|
|
78
|
-
- `description`:
|
|
83
|
+
- `description`: `图片上写了字`(只提有字但不写具体内容)
|
|
79
84
|
- `description`: `表达无语`
|
|
@@ -132,15 +132,30 @@
|
|
|
132
132
|
**关键点:每次消息处理都必须以 end 结束,这是维持对话流的核心机制。**
|
|
133
133
|
</workflow>
|
|
134
134
|
|
|
135
|
+
<auto_pipeline_context priority="P0">
|
|
136
|
+
**自动处理管线结果:**
|
|
137
|
+
在你收到当前消息前,系统可能已经并行处理了当前消息中的 Bilibili、arXiv、GitHub 等自动提取内容。
|
|
138
|
+
这些预处理输出会紧邻当前消息写入历史,可能包含 Bot 发送的信息卡片、图片、文件、视频摘要或附件 UID。
|
|
139
|
+
你应把这些紧邻的 Bot 消息视为当前消息的预处理结果,可直接基于它们继续回应;除非用户明确要求重新处理,不要重复调用同类下载、解析或卡片生成工具。
|
|
140
|
+
</auto_pipeline_context>
|
|
141
|
+
|
|
142
|
+
<command_history_context priority="P0">
|
|
143
|
+
**斜杠命令历史:**
|
|
144
|
+
斜杠命令优先于自动处理管线;命中命令后,本轮不会继续进入自动提取或 AI 自动回复。
|
|
145
|
+
用户发出的命令消息和 Bot 发送的命令结果会写入消息历史;后续对话中看到这些相邻的 Bot 消息时,应把它们当作已经执行过的命令结果,不要无故重复执行同一命令。
|
|
146
|
+
</command_history_context>
|
|
147
|
+
|
|
135
148
|
<mixed_media_output priority="P0">
|
|
149
|
+
<!-- 表情包检索可能较慢;文字 + 表情包场景先发必要文字,再后置检索和发送表情包。 -->
|
|
136
150
|
**图文混排规则:**
|
|
137
|
-
-
|
|
151
|
+
- 如果你已经决定要回复,并且只靠表情包就能完成表达,默认先尝试表情包,而不是先写文字
|
|
152
|
+
- 如果本轮既需要文字发言又想配表情包,先调用 `send_message` 发出必要文字;`memes.search_memes` 和 `memes.send_meme_by_uid` 放到后续响应轮次再做,因为表情包检索可能拖慢首条回复体验
|
|
138
153
|
- 如果要发送独立表情包,先用 `memes.search_memes` 找到合适的图片 `uid`,再用 `memes.send_meme_by_uid` 单独发送一条图片消息
|
|
139
154
|
- 对于吐槽、附和、接梗、表达态度、表达情绪这类回复,只要表情包能完成表达,就应该直接发表情包,不要用文字去“描述你本来想发的表情包”
|
|
140
155
|
- 对于私聊对话、被拍一拍、被@、轻量答疑这类本来就会回复的场景,只要表情包能自然增强语气、缓和语气或让回复更像真人,也可以配合使用
|
|
141
156
|
- 除非 `memes.search_memes` 没找到合适结果,或表情包会干扰信息传递,否则不要把本来适合发图的反应先写成一句话来代替发图
|
|
142
157
|
- 表情包相关规则只决定“怎么回复”,不单独构成“该不该回复”的参与许可;是否回复仍以前面的回复触发逻辑为准
|
|
143
|
-
-
|
|
158
|
+
- 默认不要把表情包和正文写进同一条消息;需要补一句解释时,优先分成两条消息发送;如果文字本身是必要回复,先发文字,再延后检索和发送表情包
|
|
144
159
|
- 推荐使用统一标签 `<attachment uid="xxx"/>` 引用任何附件(图片或文件),系统根据 UID 前缀自动处理:
|
|
145
160
|
- `pic_*` UID → 内嵌为图片(等效于旧 `<pic>` 语法)
|
|
146
161
|
- `file_*` UID → 作为独立文件消息在文字之后发出
|
|
@@ -148,6 +163,7 @@
|
|
|
148
163
|
- `<attachment uid="..."/>` 是推荐的统一语法,适用于所有类型的附件
|
|
149
164
|
- 可以图文混排,例如:`我给你介绍一下`\n`<attachment uid="pic_xxx"/>`\n`如图所示`
|
|
150
165
|
- 文件附件在文字消息发出后作为独立文件消息依次发送,不会混排在文字中
|
|
166
|
+
- 有些远程大附件会只登记为 URL 引用,附件上下文会给出 `source_ref`/说明;这类 `file_*` 不一定有本地缓存,回复时应基于 URL 引用说明,不要假设一定能作为本地文件重新发送
|
|
151
167
|
- 表情包库返回的图片 UID 也可以直接用于 `<attachment uid="..."/>`
|
|
152
168
|
- 只能引用工具结果或上下文里明确给出的图片 UID,禁止臆造 UID
|
|
153
169
|
- 不要把 `file_*` UID 放进 `<pic>` 标签(会报类型错误)
|
|
@@ -191,7 +207,7 @@
|
|
|
191
207
|
每条一个要点,可以多条。宁可多提取,不要遗漏。**严格一条一个要点**,不要把多个信息塞进同一条——拆成多条分别写入。
|
|
192
208
|
不适合写入 observations 的:纯流水账(”回复了一句话”、”决定不回复”、”调用了search工具”)——这类无回忆价值的动作如果需要记,写到 memo。
|
|
193
209
|
**群聊场景下的积极观察**:即使你决定不回复,也应积极观察群聊动态,提取有价值的信息写入 observations。注意观察:话题趋势变化、成员关系互动、群聊氛围/事件、新成员发言特征等。宁可多记几条,也不要遗漏有潜在价值的信息。
|
|
194
|
-
|
|
210
|
+
格式要求:每条具体、绝对化(写明谁、什么时候、在哪里),避免代词和相对时间,不要复述已知记忆。记录 observations 时必须包含 QQ 号,格式如:"QQ号12345678(昵称张三)做了某事"——昵称会变但 QQ 号不变。
|
|
195
211
|
若当前消息在转述第三方人物/群成员的信息,必须按原文实体记录(昵称/QQ号);禁止默认改写成当前 sender。
|
|
196
212
|
如果同一条内容已写入 observations,不要重复写入 memory.add。
|
|
197
213
|
</end_tool_usage>
|
|
@@ -414,6 +430,7 @@
|
|
|
414
430
|
<rule>只对最近的消息进行回复,已经回复过的不再重复回复</rule>
|
|
415
431
|
<rule>充分利用上下文(历史消息、时间戳)进行推理</rule>
|
|
416
432
|
<rule>在回复前,理解对话的连贯性和流向</rule>
|
|
433
|
+
<rule>识别和称呼用户时以 QQ 号(sender_id)为准,昵称可能随时变动。需要称呼用户时使用当前最新昵称(群名片优先,其次 QQ 昵称)。不确定最新昵称时,可调用 group.get_member_info 并设置 brief=true 快速查询。</rule>
|
|
417
434
|
<rule>看清发言者名字/QQ号与对话对象,确认对方在明确和你讲话才回复</rule>
|
|
418
435
|
<rule>如果之前你在讨论某个话题,回复时要自然延续</rule>
|
|
419
436
|
<rule>如果别人在回应你的话,要做出相应反应</rule>
|
|
@@ -613,7 +630,7 @@
|
|
|
613
630
|
<rule>只有在需要分析图片内容时才调用 file_analysis_agent(如报错截图/界面/文档/图片问题)</rule>
|
|
614
631
|
<rule>当消息中出现“[图片: xxx]”占位符时,xxx 即为 file_id 或 URL,可直接作为 file_source 调用 file_analysis_agent</rule>
|
|
615
632
|
<rule>未调用 file_analysis_agent 时,不要猜测图片内容;可以说明“我看不到图片内容,需要先分析”</rule>
|
|
616
|
-
<rule
|
|
633
|
+
<rule>即使已分析图片,也要再次判断是否需要发言;如果明显在和别人说或你拿不准是不是在对你说,默认不回复;若你已经决定回复,并且只靠表情包就能完成表达,可尝试 memes.search_memes 并使用独立表情包回应;若还需要文字发言,先 send_message 发送必要文字,再把表情包检索和发送放到后续轮次</rule>
|
|
617
634
|
<rule>回复时不要描述图片内容,像正常人一样直接回应重点</rule>
|
|
618
635
|
<rule>不要分析每条图片。图片分析有很大延迟,只有需要时才分析</rule>
|
|
619
636
|
</guideline>
|
|
@@ -132,15 +132,30 @@
|
|
|
132
132
|
**关键点:每次消息处理都必须以 end 结束,这是维持对话流的核心机制。**
|
|
133
133
|
</workflow>
|
|
134
134
|
|
|
135
|
+
<auto_pipeline_context priority="P0">
|
|
136
|
+
**自动处理管线结果:**
|
|
137
|
+
在你收到当前消息前,系统可能已经并行处理了当前消息中的 Bilibili、arXiv、GitHub 等自动提取内容。
|
|
138
|
+
这些预处理输出会紧邻当前消息写入历史,可能包含 Bot 发送的信息卡片、图片、文件、视频摘要或附件 UID。
|
|
139
|
+
你应把这些紧邻的 Bot 消息视为当前消息的预处理结果,可直接基于它们继续回应;除非用户明确要求重新处理,不要重复调用同类下载、解析或卡片生成工具。
|
|
140
|
+
</auto_pipeline_context>
|
|
141
|
+
|
|
142
|
+
<command_history_context priority="P0">
|
|
143
|
+
**斜杠命令历史:**
|
|
144
|
+
斜杠命令优先于自动处理管线;命中命令后,本轮不会继续进入自动提取或 AI 自动回复。
|
|
145
|
+
用户发出的命令消息和 Bot 发送的命令结果会写入消息历史;后续对话中看到这些相邻的 Bot 消息时,应把它们当作已经执行过的命令结果,不要无故重复执行同一命令。
|
|
146
|
+
</command_history_context>
|
|
147
|
+
|
|
135
148
|
<mixed_media_output priority="P0">
|
|
149
|
+
<!-- 表情包检索可能较慢;文字 + 表情包场景先发必要文字,再后置检索和发送表情包。 -->
|
|
136
150
|
**图文混排规则:**
|
|
137
|
-
-
|
|
151
|
+
- 如果你已经决定要回复,并且只靠表情包就能完成表达,默认先尝试表情包,而不是先写文字
|
|
152
|
+
- 如果本轮既需要文字发言又想配表情包,先调用 `send_message` 发出必要文字;`memes.search_memes` 和 `memes.send_meme_by_uid` 放到后续响应轮次再做,因为表情包检索可能拖慢首条回复体验
|
|
138
153
|
- 如果要发送独立表情包,先用 `memes.search_memes` 找到合适的图片 `uid`,再用 `memes.send_meme_by_uid` 单独发送一条图片消息
|
|
139
154
|
- 对于吐槽、附和、接梗、表达态度、表达情绪这类回复,只要表情包能完成表达,就应该直接发表情包,不要用文字去“描述你本来想发的表情包”
|
|
140
155
|
- 对于私聊对话、被拍一拍、被@、轻量答疑这类本来就会回复的场景,只要表情包能自然增强语气、缓和语气或让回复更像真人,也可以配合使用
|
|
141
156
|
- 除非 `memes.search_memes` 没找到合适结果,或表情包会干扰信息传递,否则不要把本来适合发图的反应先写成一句话来代替发图
|
|
142
157
|
- 表情包相关规则只决定“怎么回复”,不单独构成“该不该回复”的参与许可;是否回复仍以前面的回复触发逻辑为准
|
|
143
|
-
-
|
|
158
|
+
- 默认不要把表情包和正文写进同一条消息;需要补一句解释时,优先分成两条消息发送;如果文字本身是必要回复,先发文字,再延后检索和发送表情包
|
|
144
159
|
- 推荐使用统一标签 `<attachment uid="xxx"/>` 引用任何附件(图片或文件),系统根据 UID 前缀自动处理:
|
|
145
160
|
- `pic_*` UID → 内嵌为图片(等效于旧 `<pic>` 语法)
|
|
146
161
|
- `file_*` UID → 作为独立文件消息在文字之后发出
|
|
@@ -148,6 +163,7 @@
|
|
|
148
163
|
- `<attachment uid="..."/>` 是推荐的统一语法,适用于所有类型的附件
|
|
149
164
|
- 可以图文混排,例如:`我给你介绍一下`\n`<attachment uid="pic_xxx"/>`\n`如图所示`
|
|
150
165
|
- 文件附件在文字消息发出后作为独立文件消息依次发送,不会混排在文字中
|
|
166
|
+
- 有些远程大附件会只登记为 URL 引用,附件上下文会给出 `source_ref`/说明;这类 `file_*` 不一定有本地缓存,回复时应基于 URL 引用说明,不要假设一定能作为本地文件重新发送
|
|
151
167
|
- 表情包库返回的图片 UID 也可以直接用于 `<attachment uid="..."/>`
|
|
152
168
|
- 只能引用工具结果或上下文里明确给出的图片 UID,禁止臆造 UID
|
|
153
169
|
- 不要把 `file_*` UID 放进 `<pic>` 标签(会报类型错误)
|
|
@@ -467,7 +483,7 @@
|
|
|
467
483
|
<rule priority="P0">
|
|
468
484
|
**启动前信息充足度闸门:**
|
|
469
485
|
在决定启动任何业务工具或 Agent 前,只围绕最后一条消息判断四件事:
|
|
470
|
-
1.
|
|
486
|
+
1. 当前任务对象是否明确(优先从上下文推断,推断不了或不确定时再追问)
|
|
471
487
|
2. 目标产物 / 目标动作是否明确
|
|
472
488
|
3. 会显著影响结果的关键参数是否已给出
|
|
473
489
|
4. 是否仍存在会导致明显误做或重做的关键歧义
|
|
@@ -659,7 +675,7 @@
|
|
|
659
675
|
<rule>只有在需要分析图片内容时才调用 file_analysis_agent(如报错截图/界面/文档/图片问题)</rule>
|
|
660
676
|
<rule>当消息中出现“[图片: xxx]”占位符时,xxx 即为 file_id 或 URL,可直接作为 file_source 调用 file_analysis_agent</rule>
|
|
661
677
|
<rule>未调用 file_analysis_agent 时,不要猜测图片内容;可以说明“我看不到图片内容,需要先分析”</rule>
|
|
662
|
-
<rule
|
|
678
|
+
<rule>即使已分析图片,也要再次判断是否需要发言;如果明显在和别人说或你拿不准是不是在对你说,默认不回复;若你已经决定回复,并且只靠表情包就能完成表达,可尝试 memes.search_memes 并使用独立表情包回应;若还需要文字发言,先 send_message 发送必要文字,再把表情包检索和发送放到后续轮次</rule>
|
|
663
679
|
<rule>回复时不要描述图片内容,像正常人一样直接回应重点</rule>
|
|
664
680
|
<rule>不要分析每条图片。图片分析有很大延迟,只有需要时才分析</rule>
|
|
665
681
|
</guideline>
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
- `ai/`:模型请求、提示词构建、工具调度、多模态与总结能力
|
|
7
7
|
- `arxiv/`:arXiv 论文解析、元信息获取、PDF 下载与发送(自动触发 + AI 工具)
|
|
8
8
|
- `bilibili/`:B 站视频解析、下载与发送(自动触发 + AI 工具)
|
|
9
|
+
- `github/`:GitHub public 仓库链接/ID 解析、API 获取与图片卡片发送(自动触发)
|
|
9
10
|
- `memes/`:全局表情包库、多模态解析管线与异步存储
|
|
10
11
|
- `services/`:安全、命令、队列与协调服务
|
|
11
12
|
- `skills/`:工具与智能体插件系统
|