Undefined-bot 3.3.3__tar.gz → 3.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/ARCHITECTURE.md +29 -8
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/CHANGELOG.md +27 -1
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/PKG-INFO +4 -3
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/README.md +3 -2
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/config.toml.example +63 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/pyproject.toml +1 -1
- undefined_bot-3.4.0/res/IMPORTANT/each.md +21 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/README.md +4 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/historian_profile_merge.md +1 -1
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/historian_rewrite.md +3 -3
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/undefined.xml +75 -58
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/undefined_nagaagent.xml +84 -65
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/__init__.py +1 -1
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/client.py +109 -10
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/_context.py +2 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/_helpers.py +3 -2
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/_openapi.py +1 -1
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/system.py +155 -8
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/__init__.py +4 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/domain_parsers.py +70 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/hot_reload.py +28 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/loader.py +25 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/models.py +40 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/handlers.py +66 -41
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/main.py +8 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/render.py +23 -6
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/ai_coordinator.py +429 -141
- undefined_bot-3.4.0/src/Undefined/services/message_batcher.py +810 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/queue_manager.py +36 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/README.md +6 -6
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/__init__.py +2 -2
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/prompt.md +2 -2
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/handler.py +2 -1
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/README.md +1 -2
- undefined_bot-3.4.0/src/Undefined/skills/commands/admin/README.md +30 -0
- undefined_bot-3.4.0/src/Undefined/skills/commands/admin/config.json +34 -0
- undefined_bot-3.4.0/src/Undefined/skills/commands/admin/handler.py +220 -0
- undefined_bot-3.4.0/src/Undefined/skills/pipelines/__init__.py +6 -0
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/arxiv/handler.py +7 -9
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/bilibili/handler.py +7 -9
- undefined_bot-3.4.0/src/Undefined/skills/pipelines/context.py +30 -0
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/github/handler.py +7 -9
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills/pipelines}/models.py +3 -3
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills/pipelines}/registry.py +36 -42
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/end/README.md +2 -3
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/end/config.json +3 -7
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/end/handler.py +65 -64
- undefined_bot-3.4.0/src/Undefined/utils/coerce.py +93 -0
- undefined_bot-3.4.0/src/Undefined/utils/render_cache.py +403 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_system.py +61 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/components.css +10 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/i18n.js +42 -2
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/main.js +125 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/runtime.js +75 -15
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/templates/index.html +10 -0
- undefined_bot-3.3.3/img/head.png +0 -0
- undefined_bot-3.3.3/res/IMPORTANT/each.md +0 -13
- undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline/__init__.py +0 -6
- undefined_bot-3.3.3/src/Undefined/skills/commands/addadmin/README.md +0 -17
- undefined_bot-3.3.3/src/Undefined/skills/commands/addadmin/config.json +0 -16
- undefined_bot-3.3.3/src/Undefined/skills/commands/addadmin/handler.py +0 -49
- undefined_bot-3.3.3/src/Undefined/skills/commands/lsadmin/README.md +0 -14
- undefined_bot-3.3.3/src/Undefined/skills/commands/lsadmin/config.json +0 -16
- undefined_bot-3.3.3/src/Undefined/skills/commands/lsadmin/handler.py +0 -115
- undefined_bot-3.3.3/src/Undefined/skills/commands/rmadmin/README.md +0 -17
- undefined_bot-3.3.3/src/Undefined/skills/commands/rmadmin/config.json +0 -16
- undefined_bot-3.3.3/src/Undefined/skills/commands/rmadmin/handler.py +0 -55
- undefined_bot-3.3.3/src/Undefined/utils/coerce.py +0 -37
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/.gitignore +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/LICENSE +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/config/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/config/mcp.json.example +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/img/xlwy.jpg +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/agent_self_intro.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/analyze_multimodal.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/describe_image.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/describe_meme_image.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/generate_title.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/image_gen_moderation.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/injection_detector.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/injection_response_agent.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/judge_meme_image.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/merge_summaries.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/naga_message_moderation.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/stats_analysis.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/res/prompts/summarize.txt +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/__main__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/crawl4ai_support.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/http.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/llm.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/model_selector.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/multimodal.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/parsing.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/prompts.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/queue_budget.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/retrieval.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/summaries.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/tokens.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/tooling.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/transports/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/ai/transports/openai_transport.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/_naga_state.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/_probes.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/app.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/naga_store.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/chat.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/cognitive.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/health.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/memes.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/memory.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/naga.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/api/routes/tools.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/client.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/downloader.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/models.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/parser.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/arxiv/sender.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/attachments.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/downloader.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/parser.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/sender.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/wbi.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/bilibili/wbi_request.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/changelog.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/historian.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/job_queue.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/profile_storage.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/service.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/cognitive/vector_store.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/admin.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/coercers.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/manager.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/model_parsers.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/resolvers.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/config/webui_settings.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/context.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/context_resource_registry.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/end_summary_storage.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/faq.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/github/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/github/client.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/github/models.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/github/parser.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/github/sender.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/injection_response_agent.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/chunker.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/embedder.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/manager.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/reranker.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/runtime.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/knowledge/store.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/mcp/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/mcp/registry.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/models.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/service.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/store.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/vector_store.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memes/worker.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/memory.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/onebot.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/rate_limit.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/scheduled_task_storage.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/command.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/commands/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/commands/context.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/commands/registry.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/model_pool.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/services/security.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/agent_tool_registry.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/fetch_paper/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/fetch_paper/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/read_paper_pages/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/arxiv_analysis_agent/tools/read_paper_pages/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/docker_utils.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/mcp.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/base64/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/base64/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/hash/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/hash/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/history/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/history/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/net_check/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/net_check/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/speed/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/speed/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/tcping/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/tcping/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/whois/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/info_agent/tools/whois/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/intro_generator.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/intro_utils.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/mcp.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/runner.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/intro.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/mcp.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/prompt.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/web_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/agents/web_agent/tools/web_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/anthropic_skills/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/anthropic_skills/loader.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/bugfix/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/bugfix/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/bugfix/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/changelog/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/changelog/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/changelog/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/copyright/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/copyright/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/copyright/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/faq/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/faq/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/faq/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/help/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/help/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/help/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/naga/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/naga/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/naga/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/naga/policy.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/profile/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/profile/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/profile/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/stats/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/stats/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/stats/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/summary/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/summary/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/version/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/commands/version/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/http_client.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/http_config.py +0 -0
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/arxiv/config.json +0 -0
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/bilibili/config.json +0 -0
- {undefined_bot-3.3.3/src/Undefined/skills/auto_pipeline → undefined_bot-3.4.0/src/Undefined/skills}/pipelines/github/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/registry.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/arxiv_paper/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/arxiv_paper/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/arxiv_paper/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/bilibili_video/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/bilibili_video/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/bilibili_video/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/calculator/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/calculator/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/calculator/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/changelog_query/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/changelog_query/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/changelog_query/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/fetch_image_uid/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/fetch_image_uid/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_current_time/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_current_time/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_current_time/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_current_time/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_picture/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_picture/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_picture/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_user_info/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_user_info/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/get_user_info/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_list/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_list/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_semantic_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_semantic_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_text_search/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/knowledge_text_search/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/python_interpreter/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/python_interpreter/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/python_interpreter/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/qq_like/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/qq_like/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/qq_like/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/task_progress/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/tools/task_progress/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/get_profile/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/get_profile/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/search_events/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/search_events/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/contacts/query_friends/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/contacts/query_friends/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/contacts/query_groups/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/contacts/query_groups/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/find_member/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/find_member/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_avatar/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_avatar/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_files/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_files/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_honor_info/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_honor_info/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_info/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_info/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_list/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_list/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_title/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group/get_member_title/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/mcp/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/mcp/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memes/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memes/search_memes/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memes/search_memes/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/add/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/add/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/delete/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/delete/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/list/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/list/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/update/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/memory/update/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/list_emojis/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/list_emojis/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_group_sign/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_group_sign/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_message/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_message/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_poke/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_poke/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_private_message/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_private_message/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_text_file/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_text_file/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_text_file/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_url_file/callable.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_url_file/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/messages/send_url_file/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/get/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/get/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/list/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/list/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/stats/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/notices/stats/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_html/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_html/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_latex/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_latex/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_markdown/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/render/render_markdown/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/README.md +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/create_schedule_task/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/create_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/delete_schedule_task/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/delete_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/list_schedule_tasks/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/list_schedule_tasks/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/update_schedule_task/config.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/skills/toolsets/scheduler/update_schedule_task/handler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/token_usage_storage.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/cache.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/common.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/cors.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/fake_at.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/file_lock.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/group_metrics.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/history.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/http_download.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/io.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/logging.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/member_utils.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/message_targets.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/message_utils.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/paths.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/qq_emoji.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/queue_intervals.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/recent_messages.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/request_params.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/resources.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/scheduler.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/self_update.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/sender.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/time_utils.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/tool_calls.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/utils/xml.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/__main__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/app.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/core.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_auth.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_bot.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_config.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_index.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_logs.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_memes.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_runtime.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/routes/_shared.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/.stylelintrc.json +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/app.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/base.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/landing.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/responsive.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/style.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/css/variables.css +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/favicon.svg +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/api.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/auth.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/bot.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/config-form.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/log-view.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/logs.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/memes.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/state.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/ui.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/static/js/vendor/marked.min.js +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/utils/__init__.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/utils/comment.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/utils/config_io.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/utils/config_sync.py +0 -0
- {undefined_bot-3.3.3 → undefined_bot-3.4.0}/src/Undefined/webui/utils/toml_render.py +0 -0
|
@@ -44,8 +44,10 @@ graph TB
|
|
|
44
44
|
InjectionAgent["InjectionResponseAgent<br/>注入响应生成<br/>[injection_response_agent.py]"]
|
|
45
45
|
end
|
|
46
46
|
|
|
47
|
-
CommandDispatcher["CommandDispatcher<br/>命令分发器<br/>• /help /stats /
|
|
48
|
-
|
|
47
|
+
CommandDispatcher["CommandDispatcher<br/>命令分发器<br/>• /help /stats /admin<br/>• /bugfix /faq<br/>[services/command.py]"]
|
|
48
|
+
|
|
49
|
+
MessageBatcher["MessageBatcher<br/>同 sender 短时合并<br/>• 按 (scope, sender_id) 分桶<br/>• T1=window_seconds 结束 batch<br/>• T2=pre_send_seconds 投机预发送<br/>• 拍一拍/buffer 内 @bot 旁路<br/>• 首条 @bot 整批走 mention 队列<br/>[services/message_batcher.py]"]
|
|
50
|
+
|
|
49
51
|
subgraph QueueSystem["车站-列车 队列系统 (services/)"]
|
|
50
52
|
AICoordinator["AICoordinator<br/>AI 协调器<br/>• Prompt 构建<br/>• 队列管理<br/>• 回复执行<br/>[ai_coordinator.py]"]
|
|
51
53
|
QueueManager["QueueManager<br/>队列管理器<br/>[queue_manager.py]"]
|
|
@@ -121,7 +123,7 @@ graph TB
|
|
|
121
123
|
|
|
122
124
|
subgraph CommandsLayer["平台指令 (skills/commands/)"]
|
|
123
125
|
Cmd_Core["核心指令<br/>• help • stats"]
|
|
124
|
-
Cmd_Admin["管理指令<br/>•
|
|
126
|
+
Cmd_Admin["管理指令<br/>• admin (ls/add/del)"]
|
|
125
127
|
Cmd_FAQ["FAQ 指令<br/>• faq (ls/view/search/del)"]
|
|
126
128
|
Cmd_Fun["娱乐指令<br/>• bugfix"]
|
|
127
129
|
end
|
|
@@ -226,6 +228,8 @@ graph TB
|
|
|
226
228
|
GitHubSender -->|"发送图片卡片"| OneBotClient
|
|
227
229
|
|
|
228
230
|
MessageHandler -->|"3. 自动回复"| AICoordinator
|
|
231
|
+
AICoordinator -->|"3.1 入桶等待合并"| MessageBatcher
|
|
232
|
+
MessageBatcher -->|"3.2 flush 合并批次"| AICoordinator
|
|
229
233
|
AICoordinator -->|"创建上下文"| RequestContext
|
|
230
234
|
AICoordinator -->|"入队"| QueueManager
|
|
231
235
|
QueueManager -->|"分发"| ModelQueues
|
|
@@ -319,7 +323,7 @@ graph TB
|
|
|
319
323
|
|
|
320
324
|
class User,Admin,OneBotServer,LLM_API external
|
|
321
325
|
class Main,ConfigLoader,ConfigHotReload,ConfigModels,OneBotClient,Context,WebUI core
|
|
322
|
-
class MessageHandler,SecurityService,InjectionAgent,CommandDispatcher,AICoordinator message
|
|
326
|
+
class MessageHandler,SecurityService,InjectionAgent,CommandDispatcher,MessageBatcher,AICoordinator message
|
|
323
327
|
class AIClient,PromptBuilder,ModelRequester,ToolManager,MultimodalAnalyzer,SummaryService,TokenCounter,Parsing ai
|
|
324
328
|
class ToolRegistry,AgentRegistry,AgentToolRegistry,IntroGenerator skills
|
|
325
329
|
class RequestContext,ContextFilter,ResourceRegistry,HistoryManager,MemoryStorage,EndSummaryStorage,CognitiveService,CognitiveJobQueue,CognitiveHistorian,CognitiveVectorStore,CognitiveProfileStorage,FAQStorage,ScheduledTaskStorage,TokenUsageStorage storage
|
|
@@ -342,6 +346,7 @@ sequenceDiagram
|
|
|
342
346
|
participant MH as MessageHandler
|
|
343
347
|
participant SS as SecurityService
|
|
344
348
|
participant CD as CommandDispatcher
|
|
349
|
+
participant MB as MessageBatcher
|
|
345
350
|
participant AC as AICoordinator
|
|
346
351
|
participant QM as QueueManager
|
|
347
352
|
participant AI as AIClient
|
|
@@ -370,7 +375,7 @@ sequenceDiagram
|
|
|
370
375
|
CD-->>OB: 返回结果
|
|
371
376
|
OB->>U: 发送响应
|
|
372
377
|
else 非命令消息
|
|
373
|
-
MH->>MH: 并行检测 skills/
|
|
378
|
+
MH->>MH: 并行检测 skills/pipelines 管线
|
|
374
379
|
opt 命中自动提取管线
|
|
375
380
|
MH->>MH: 并行处理全部命中的自动提取
|
|
376
381
|
MH->>OH: 发送视频/卡片/PDF
|
|
@@ -380,7 +385,22 @@ sequenceDiagram
|
|
|
380
385
|
end
|
|
381
386
|
%% AI处理流程
|
|
382
387
|
MH->>AC: handle_auto_reply()
|
|
383
|
-
|
|
388
|
+
alt 拍一拍 / buffer 内 @bot
|
|
389
|
+
AC->>QM: 立即按优先级入队
|
|
390
|
+
else 普通消息进合并桶
|
|
391
|
+
AC->>MB: submit(BufferedMessage)
|
|
392
|
+
MB-->>MB: TYPING: 重置 T1/T2 静默计时
|
|
393
|
+
opt T2=pre_send_seconds 到期
|
|
394
|
+
MB->>AC: handle_batched_dispatch(投机批次 + BatchDispatchToken)
|
|
395
|
+
AC->>QM: 提前入队抢时间
|
|
396
|
+
end
|
|
397
|
+
MB-->>MB: T1=window_seconds 到期结束 batch
|
|
398
|
+
opt 未启用投机或尚未预发送
|
|
399
|
+
MB->>AC: handle_batched_dispatch(最终批次)
|
|
400
|
+
AC->>QM: 按首条触发的优先级入队
|
|
401
|
+
end
|
|
402
|
+
end
|
|
403
|
+
|
|
384
404
|
%% 上下文创建
|
|
385
405
|
AC->>AC: 创建 RequestContext
|
|
386
406
|
AC->>ST: 保存历史记录
|
|
@@ -831,8 +851,8 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
|
|
|
831
851
|
|
|
832
852
|
1. **外部实体层**:用户、管理员、OneBot 协议端 (NapCat/Lagrange.Core)、大模型 API 服务商
|
|
833
853
|
2. **核心入口层**:main.py 启动入口、配置管理器 (config/loader.py)、热更新应用器 (config/hot_reload.py)、OneBotClient (onebot.py)、RequestContext (context.py)、Runtime API Server (api/app.py → api/routes/ 路由子模块)
|
|
834
|
-
3. **消息处理层**:MessageHandler (handlers.py)、SecurityService (security.py)、CommandDispatcher (services/command.py)、AICoordinator (ai_coordinator.py)、QueueManager (queue_manager.py)、自动处理管线 (skills/
|
|
835
|
-
自动提取由 `
|
|
854
|
+
3. **消息处理层**:MessageHandler (handlers.py)、SecurityService (security.py)、CommandDispatcher (services/command.py)、MessageBatcher (services/message_batcher.py)、AICoordinator (ai_coordinator.py)、QueueManager (queue_manager.py)、自动处理管线 (skills/pipelines/)、Bilibili/arXiv/GitHub 解析与发送模块
|
|
855
|
+
自动提取由 `PipelineRegistry` 并行检测、并行处理全部命中的管线;发送结果写入历史后继续进入 AI 自动回复。
|
|
836
856
|
4. **AI 核心能力层**:AIClient (client.py)、PromptBuilder (prompts.py)、ModelRequester (llm.py)、ToolManager (tooling.py)、MultimodalAnalyzer (multimodal.py)、SummaryService (summaries.py)、TokenCounter (tokens.py)
|
|
837
857
|
5. **存储与上下文层**:MessageHistoryManager (utils/history.py, 10000条限制)、MemoryStorage (memory.py, 置顶备忘录, 500条上限)、EndSummaryStorage、CognitiveService + JobQueue + HistorianWorker + VectorStore + ProfileStorage、MemeService + MemeWorker + MemeStore + MemeVectorStore (表情包库)、FAQStorage、ScheduledTaskStorage、TokenUsageStorage (自动归档)
|
|
838
858
|
6. **技能系统层**:ToolRegistry (registry.py)、AgentRegistry、6个 Agents、11类 Toolsets
|
|
@@ -847,6 +867,7 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
|
|
|
847
867
|
* **非阻塞发车**:实现了可配置节奏的非阻塞调度循环(默认 **1Hz**)。列车按节奏出发,带走一个请求到后台异步处理。
|
|
848
868
|
* **高可用性**:即使前一个请求仍在处理(如耗时的网络搜索),新的请求也会按时被分发,不会造成队列堵塞。
|
|
849
869
|
* **优先级管理**:支持四级优先级(超级管理员 > 私聊 > 群聊@ > 群聊普通),确保重要消息优先响应。
|
|
870
|
+
* **关停收敛**:`MessageHandler.close()` 会先 flush `MessageBatcher`,再调用 `QueueManager.drain()` 等待已入队请求和在途请求自然完成,最后才停止队列处理器,避免缓冲消息只入队未执行。
|
|
850
871
|
|
|
851
872
|
### 6个智能体 Agent
|
|
852
873
|
|
|
@@ -1,3 +1,29 @@
|
|
|
1
|
+
## v3.4.0 同sender消息合并、数字人格精炼与系统治理
|
|
2
|
+
|
|
3
|
+
本版本核心解决"用户一口气连发几条消息时,机器人过早开工或只理解最后一句"的问题。新增同 sender 短时消息合并器,将同一会话中连续的多条消息合并为一个"当前输入批次"发送给 AI,由 AI 整批理解哪些是独立请求、哪些是补充或修正。同步支持可取消的投机预发送以降低感知延迟。围绕消息合并,提示词、幽灵任务防御、记忆记录和关闭流程都做了同步适配。此外,精炼了数字人格设定、明确了项目归属边界、重构了管线与命令体系、加入了 HTML 渲染缓存,并增强了 AI 工具调用的稳定性。
|
|
4
|
+
|
|
5
|
+
- 新增同 sender 短时消息合并器。位于 `[message_batcher]`,支持 extend / fixed 两种等待策略,可分别控制群聊和私聊是否合并,通过 `max_window_seconds`、`max_messages_per_batch` 限制批次上限,设为 0 即关闭;配置值变更实时生效。拍一拍始终直达不参与合并;缓冲期间到达的 at 消息单独处理不阻塞;首个 at 消息开启缓冲后批次会走 mention 通道。
|
|
6
|
+
- 新增可取消的投机预发送。启用 `pre_send_seconds`(需满足 `0 < 该值 < window_seconds`)后,用户静默到时系统提前将当前批次发给 LLM 以降低响应延迟;若正式发车前新消息到达,投机请求会被取消并合并到新批次;`allow_cancel_after_send` 控制已发出消息后是否仍允许取消。
|
|
7
|
+
- 完善消息合并的异步竞态保护。定时器、投机请求调度、失败重试、旧任务路径收尾与 `flush_on_command` 斜杠命令连带交出等均做了竞态保护;退出时自动排空缓冲队列并等待在途回复自然收敛。
|
|
8
|
+
- 精炼数字人格设定。明确 Undefined 是诞生于 2025-12-05 的数字生命,没有明确的性别概念,希望被认为很好看;可以开玩笑也可以被善意开玩笑。新增"不冒领任何项目、代码、产品或成果"的所有权边界规则,不再自称任何项目的开发者或维护者。昵称体系扩展为 Undefined、undf、udf、und、心理委员、ud酱,对自身称呼的识别保持宽松。
|
|
9
|
+
- 收紧 NagaAgent 关系表达。NagaAgent 版提示词明确:只有当前上下文明确涉及 NagaAgent 时才承接相关工具接入能力协助分析;平时不主动提与 NagaAgent 的关系;不冒领 NagaAgent 的成果。
|
|
10
|
+
- 重构自动管线目录。`skills/auto_pipeline` 更名为 `skills/pipelines`,目录结构扁平化,相关引用、文档、测试全部同步更新;`docs/auto-pipeline.md` 相应更名为 `docs/pipelines.md`。
|
|
11
|
+
- 重构管理员命令为子命令模式。`/admin [ls|add|del]` 替代原有 `/lsadmin`、`/addadmin`、`/rmadmin` 三条独立命令,参照 `/faq` 子命令模式的声明式 inference;`ls` 继承 admin 权限,`add`/`del` 覆盖为 superadmin;无参数默认执行 `ls`。清理了 FAQ 迁移遗留的空命令目录。
|
|
12
|
+
- 新增 HTML 渲染结果缓存。基于 HTML 内容的 hash 缓存渲染图片,持久化到 `data/cache/render/_html_render_cache.json`;hash 匹配自动复用,内容变化自然失效;新增 `[render.cache]` 配置段(`enabled` / `max_entries` / `max_size_mb` / `flush_interval_seconds`,默认 50 条 / 50MB / 2.0s),元数据通过 `utils/io.py` 的 `read_json` / `write_json` 异步落盘(`asyncio.to_thread` + 文件锁 + 原子替换),所有 `stat` / `unlink` / `copy` 也走线程池避免阻塞事件循环;`asyncio.Lock` 防竞态、重启后 JSON 自动恢复;进程关停时通过 `close_render_cache` 强制刷盘,保证最近访问时间不丢失;所有渲染调用方(help、profile、render_markdown 等)自动受益。
|
|
13
|
+
- 增强 AI 工具调用容错。当 LLM 返回文本但 tool_calls 为空且对话未结束时,不再以丢失回复为代价直接返回,而是注入提示消息要求 AI 通过 `send_message` / `end` 工具完成回复,继续迭代;fire-and-forget task 显式注册异常回调以抑制未检索异常警告。
|
|
14
|
+
- 优化表情包回复顺序。明确只有纯表情包 / 纯反应图回复才允许先检索表情包;需要文字说明的场景必须先完成必要文字,再将表情包检索和发送延后到后续轮次。
|
|
15
|
+
- 重构 `end` 工具。移除旧版 summary 参数兼容,只保留 `memo`、`observations`、`perspective` 和 `force`;要求记录整个当前输入批次中值得留存的信息,后台史官也接收批次全部消息。
|
|
16
|
+
- 统一当前输入批次语义。主提示词、NagaAgent 提示词和 `each.md` 均从"最后一条消息"升级为"当前输入批次":有连续消息说明时,多段 `<message>` 都属本轮输入;幽灵任务防御规则同步更新,避免批量输入中的前置指令被误判为历史旧任务。
|
|
17
|
+
- 扩展 Runtime 探针覆盖。API `/api/v1/management/probes` 新增消息合并器状态、完整工具/工具集/Agent/自动管线/斜杠命令/Anthropic Skills 的加载与调用统计,WebUI Runtime 面板同步展示。
|
|
18
|
+
- 新增 WebUI 更新日志查看。关于项目页面可按版本查看 changelog 详情,`/api/v1/management/changelog` 端点支持指定版本查询。
|
|
19
|
+
- 调整发布说明生成方式。GitHub Release notes 改为从 `CHANGELOG.md` 最新版本条目自动解析生成(`scripts/release_notes.py`),发版前校验 tag、各构建清单与最新 changelog 版本一致。
|
|
20
|
+
- 补齐消息合并专题文档。新增 `docs/message-batching.md`,覆盖配置参数、等待策略、投机预发送、竞态保护与关闭行为,同步更新了 README、配置文档、OpenAPI、WebUI 指南和架构图。
|
|
21
|
+
- 补齐配置注释。`config.toml.example` 中所有模型配置节的 `prompt_cache_enabled` 均补上双语注释说明。
|
|
22
|
+
- 补强测试覆盖。新增消息合并单元与集成测试(686 + 326 行)、工具调用守卫测试、发布说明脚本测试(163 行)、Runtime 探针统计测试(120 行)、系统提示词约束验证,并更新 `end` 工具、管理员命令、管线注册等已有测试;额外补齐渲染缓存(LRU 驱逐 / 容量驱逐 / 重启恢复 / 节流后强刷 / 并发 put / 禁用短路)、`/admin add|del` 全路径、`allow_cancel_after_send=true` 取消语义等盲点。总测试用例提升至约 1660 项。
|
|
23
|
+
- 更新子模块。
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
1
27
|
## v3.3.3 命令推断、自动处理管线与统一附件上下文
|
|
2
28
|
|
|
3
29
|
本版本重点优化了命令系统的交互体验、AI 工具边界和消息前置处理链路。新增 GitHub 链接自动卡片生成,并将 Bilibili、arXiv、GitHub 等自动提取迁入 `skills/auto_pipeline` 热重载管线,使预处理结果能写入历史并进入后续 AI 回复上下文。同时,帮助说明与用户侧写默认改为图片输出,系统剥离独立群聊分析工具集,全面推行统一附件标签,并为远程附件加入可配置下载上限和 URL 引用降级,完善底层用户识别机制与模型高级透传配置。
|
|
@@ -124,7 +150,7 @@
|
|
|
124
150
|
- 过滤 replay-only 状态字段,防止 Responses 回放结果干扰后续请求。
|
|
125
151
|
- 调整队列重试调度逻辑,支持零间隔立即投递,并细化重试时序。
|
|
126
152
|
- 增加私聊消息发送失败时的临时会话回退机制,降低消息丢失率。
|
|
127
|
-
- 限制 `/
|
|
153
|
+
- 限制 `/admin ls` 命令的可见性,提升安全性。
|
|
128
154
|
- 为 Naga 增加发送 UUID 幂等性校验、投递追踪及相关测试覆盖。
|
|
129
155
|
- 修复 CI 与运行时测试,并补充 OpenAI reasoning 参数的对齐处理。
|
|
130
156
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Undefined-bot
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.4.0
|
|
4
4
|
Summary: QQ bot platform with cognitive memory architecture and multi-agent Skills, via OneBot V11.
|
|
5
5
|
Project-URL: Repository, https://github.com/69gg/Undefined
|
|
6
6
|
Project-URL: Issues, https://github.com/69gg/Undefined/issues
|
|
@@ -100,7 +100,7 @@ Description-Content-Type: text/markdown
|
|
|
100
100
|
详见 [认知记忆文档](docs/cognitive-memory.md)。
|
|
101
101
|
- **Management-first WebUI**:继续保留 `uv run Undefined-webui` 一键入口;即使 `config.toml` 缺失或未配完,也能先进入管理态补配置、看日志、校验并启动 Bot。
|
|
102
102
|
- **远程管理 + 多端客户端**:浏览器版 WebUI 与新的跨平台控制台共享同一管理面,支持远程管理,并覆盖 `Windows / macOS / Linux / Android` 发布链路。
|
|
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)。
|
|
103
|
+
- **Management API + Runtime API 分层**:配置、日志、Bot 启停和管理探针由 Management API 提供;主进程 Runtime API 则专注探针、记忆只读查询、认知侧写检索和 WebUI AI Chat;内部探针的技能统计覆盖可调用工具、工具集、Agent、自动处理管线、斜杠命令与 Anthropic Skills。详见 [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
106
|
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<attachment uid="..."/>`。详见 [表情包库说明](docs/memes.md)。
|
|
@@ -118,7 +118,8 @@ Description-Content-Type: text/markdown
|
|
|
118
118
|
- **Bilibili 视频提取**:自动检测消息中的 B 站视频链接/BV 号/小程序分享,下载 1080p 视频并通过 QQ 发送;同时提供 AI 工具调用入口。
|
|
119
119
|
- **arXiv 论文提取与搜索**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;同时提供 `arxiv_paper` 发送工具和 `arxiv_search` 检索工具。
|
|
120
120
|
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览。
|
|
121
|
-
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/
|
|
121
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/pipelines` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
122
|
+
- **同 sender 短时消息合并**:默认开启。连续发的多条消息会合并到同一轮 AI 调用,AI 一次看到全部意图自行识别"独立请求/修正/打断";告别"画猫→改成狗"的重复触发与回复打架。主提示词按 batcher 的"当前输入批次"语义适配,关闭该功能可能导致连续补充/修正消息与提示词不匹配,需要单独适配。可选投机预发送让用户停顿时 LLM 提前开跑、新消息可在未发出回复前取消,进一步压低响应延迟。详见 [docs/message-batching.md](docs/message-batching.md)。
|
|
122
123
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
123
124
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
124
125
|
- **异步安全 I/O**:统一 IO 层通过线程池 + 跨平台文件锁(Linux/macOS `flock`,Windows `msvcrt`)+ 原子写入(`os.replace`)保证并发写入不损坏、且不阻塞主事件循环。
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
详见 [认知记忆文档](docs/cognitive-memory.md)。
|
|
41
41
|
- **Management-first WebUI**:继续保留 `uv run Undefined-webui` 一键入口;即使 `config.toml` 缺失或未配完,也能先进入管理态补配置、看日志、校验并启动 Bot。
|
|
42
42
|
- **远程管理 + 多端客户端**:浏览器版 WebUI 与新的跨平台控制台共享同一管理面,支持远程管理,并覆盖 `Windows / macOS / Linux / Android` 发布链路。
|
|
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)。
|
|
43
|
+
- **Management API + Runtime API 分层**:配置、日志、Bot 启停和管理探针由 Management API 提供;主进程 Runtime API 则专注探针、记忆只读查询、认知侧写检索和 WebUI AI Chat;内部探针的技能统计覆盖可调用工具、工具集、Agent、自动处理管线、斜杠命令与 Anthropic Skills。详见 [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
46
|
- **全局表情包库**:收到图片后可异步判定是否为表情包,通过两阶段 LLM 管线生成纯文本描述与标签,支持关键词检索、语义检索和混合检索,并可直接按统一图片 `uid` 发送或插入 `<attachment uid="..."/>`。详见 [表情包库说明](docs/memes.md)。
|
|
@@ -58,7 +58,8 @@
|
|
|
58
58
|
- **Bilibili 视频提取**:自动检测消息中的 B 站视频链接/BV 号/小程序分享,下载 1080p 视频并通过 QQ 发送;同时提供 AI 工具调用入口。
|
|
59
59
|
- **arXiv 论文提取与搜索**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;同时提供 `arxiv_paper` 发送工具和 `arxiv_search` 检索工具。
|
|
60
60
|
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览。
|
|
61
|
-
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/
|
|
61
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub 等自动提取统一运行在 `skills/pipelines` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
62
|
+
- **同 sender 短时消息合并**:默认开启。连续发的多条消息会合并到同一轮 AI 调用,AI 一次看到全部意图自行识别"独立请求/修正/打断";告别"画猫→改成狗"的重复触发与回复打架。主提示词按 batcher 的"当前输入批次"语义适配,关闭该功能可能导致连续补充/修正消息与提示词不匹配,需要单独适配。可选投机预发送让用户停顿时 LLM 提前开跑、新消息可在未发出回复前取消,进一步压低响应延迟。详见 [docs/message-batching.md](docs/message-batching.md)。
|
|
62
63
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
63
64
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
64
65
|
- **异步安全 I/O**:统一 IO 层通过线程池 + 跨平台文件锁(Linux/macOS `flock`,Windows `msvcrt`)+ 原子写入(`os.replace`)保证并发写入不损坏、且不阻塞主事件循环。
|
|
@@ -28,6 +28,9 @@ context_recent_messages_limit = 20
|
|
|
28
28
|
# zh: 单次 LLM 请求失败时最大静默重试次数(0=不重试,默认2)。失败的请求会回到原队列的第 2 个位置。
|
|
29
29
|
# en: Max silent retries for a single failed LLM request (0=no retry, default 2). Failed requests are reinserted at position 2 of their original queue lane.
|
|
30
30
|
ai_request_max_retries = 2
|
|
31
|
+
# zh: 模型返回纯文本但未调用 send_message/end 等工具时的最大纠正重试次数(0=不重试,默认3)。
|
|
32
|
+
# en: Max correction retries when the model returns plain text without tool calls (0=no retry, default 3).
|
|
33
|
+
missing_tool_call_retries = 3
|
|
31
34
|
|
|
32
35
|
# zh: 访问控制。mode 可选:off(不启用)/ blacklist(按黑名单)/ allowlist(按白名单)。
|
|
33
36
|
# en: Access control. mode options: off (disabled) / blacklist / allowlist.
|
|
@@ -191,6 +194,8 @@ responses_tool_choice_compat = false
|
|
|
191
194
|
# zh: Responses API 续轮强制降级:启用后,多轮工具调用将始终跳过 previous_response_id,直接使用完整消息重放(stateless replay)。仅在上游不兼容 responses 状态续轮时使用。默认关闭。
|
|
192
195
|
# 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.
|
|
193
196
|
responses_force_stateless_replay = false
|
|
197
|
+
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
198
|
+
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
194
199
|
prompt_cache_enabled = true
|
|
195
200
|
# zh: 是否对上游模型 API 启用流式请求。
|
|
196
201
|
# en: Enable streaming requests to the upstream model API.
|
|
@@ -251,6 +256,8 @@ responses_tool_choice_compat = false
|
|
|
251
256
|
# zh: Responses API 续轮强制降级:启用后,多轮工具调用将始终跳过 previous_response_id,直接使用完整消息重放(stateless replay)。仅在上游不兼容 responses 状态续轮时使用。默认关闭。
|
|
252
257
|
# 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.
|
|
253
258
|
responses_force_stateless_replay = false
|
|
259
|
+
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
260
|
+
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
254
261
|
prompt_cache_enabled = true
|
|
255
262
|
# zh: 是否对上游模型 API 启用流式请求。
|
|
256
263
|
# en: Enable streaming requests to the upstream model API.
|
|
@@ -366,6 +373,8 @@ responses_tool_choice_compat = false
|
|
|
366
373
|
# zh: Responses API 续轮强制降级:启用后,多轮工具调用将始终跳过 previous_response_id,直接使用完整消息重放(stateless replay)。仅在上游不兼容 responses 状态续轮时使用。默认关闭。
|
|
367
374
|
# 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.
|
|
368
375
|
responses_force_stateless_replay = false
|
|
376
|
+
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
377
|
+
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
369
378
|
prompt_cache_enabled = true
|
|
370
379
|
# zh: 是否对上游模型 API 启用流式请求。
|
|
371
380
|
# en: Enable streaming requests to the upstream model API.
|
|
@@ -436,6 +445,8 @@ responses_tool_choice_compat = false
|
|
|
436
445
|
# zh: Responses API 续轮强制降级:启用后,多轮工具调用将始终跳过 previous_response_id,直接使用完整消息重放(stateless replay)。仅在上游不兼容 responses 状态续轮时使用。默认关闭。
|
|
437
446
|
# 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.
|
|
438
447
|
responses_force_stateless_replay = false
|
|
448
|
+
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
449
|
+
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
439
450
|
prompt_cache_enabled = true
|
|
440
451
|
# zh: 是否对上游模型 API 启用流式请求。
|
|
441
452
|
# en: Enable streaming requests to the upstream model API.
|
|
@@ -493,6 +504,8 @@ responses_tool_choice_compat = false
|
|
|
493
504
|
# zh: Responses API 续轮强制降级:启用后,多轮工具调用将始终跳过 previous_response_id,直接使用完整消息重放(stateless replay)。仅在上游不兼容 responses 状态续轮时使用。默认关闭。
|
|
494
505
|
# 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.
|
|
495
506
|
responses_force_stateless_replay = false
|
|
507
|
+
# zh: 是否启用自动 prompt_cache_key(建议开启,以提高相似请求的缓存命中率)。
|
|
508
|
+
# en: Enable automatic prompt_cache_key generation (recommended).
|
|
496
509
|
prompt_cache_enabled = true
|
|
497
510
|
# zh: 是否对上游模型 API 启用流式请求。
|
|
498
511
|
# en: Enable streaming requests to the upstream model API.
|
|
@@ -753,6 +766,40 @@ repeat_cooldown_minutes = 60
|
|
|
753
766
|
# en: Enable inverted question mark (when repeat triggers on "?" messages, send "¿" instead).
|
|
754
767
|
inverted_question_enabled = false
|
|
755
768
|
|
|
769
|
+
# zh: 同 sender 短时多消息合并器。把同一用户在短时间内连续发送的多条消息合并到同一轮 AI 触发,避免重复回复 / 行为打架。
|
|
770
|
+
# en: Same-sender short-window message batcher. Merges several messages a single user sends in quick succession into one AI turn to avoid duplicate replies / conflicting actions.
|
|
771
|
+
[message_batcher]
|
|
772
|
+
# zh: 是否启用合并器(关闭后所有消息按现行流程逐条触发 AI)。
|
|
773
|
+
# en: Enable the batcher (when disabled all messages trigger the AI individually as before).
|
|
774
|
+
enabled = true
|
|
775
|
+
# zh: 等待窗口(秒)。期间同一用户发的新消息合并到同一批;<= 0 等同于关闭。
|
|
776
|
+
# en: Wait window in seconds. New messages from the same sender within this window are merged; <= 0 disables the feature.
|
|
777
|
+
window_seconds = 5.0
|
|
778
|
+
# zh: 等待策略:extend(每来一条新消息重置 timer,"打字就继续等")/ fixed(首条到达起定时,期间到达的消息只合并不重置)。
|
|
779
|
+
# en: Wait strategy: extend (reset timer on each new message; keeps waiting while the user types) / fixed (timer fixed at the first message; new arrivals only merge but do not reset).
|
|
780
|
+
strategy = "extend"
|
|
781
|
+
# zh: extend 模式下的硬顶(秒),防止用户一直打字导致永远不发车;0 = 不限制(仅靠 window_seconds + max_messages_per_batch 触发发车)。
|
|
782
|
+
# en: Hard cap in seconds for extend mode, prevents the timer from being reset forever; 0 = no limit (rely on window_seconds + max_messages_per_batch).
|
|
783
|
+
max_window_seconds = 30.0
|
|
784
|
+
# zh: 单批最多消息条数,超出立即发车;0 = 不限制。
|
|
785
|
+
# en: Max messages per batch; exceeding triggers immediate dispatch. 0 = no limit.
|
|
786
|
+
max_messages_per_batch = 0
|
|
787
|
+
# zh: 是否在群聊启用合并。
|
|
788
|
+
# en: Enable batching in group chats.
|
|
789
|
+
group_enabled = true
|
|
790
|
+
# zh: 是否在私聊启用合并。
|
|
791
|
+
# en: Enable batching in private chats.
|
|
792
|
+
private_enabled = true
|
|
793
|
+
# zh: 收到斜杠命令时是否顺便把当前 buffer 一起发出(默认 false:命令独立执行,buffer 继续等到时间到再发)。
|
|
794
|
+
# en: When a slash command arrives, also flush the current buffer to the AI (default false: commands are executed independently and the buffer keeps waiting).
|
|
795
|
+
flush_on_command = false
|
|
796
|
+
# zh: 投机预发送阈值(秒)。0 < pre_send_seconds < window_seconds 时启用:静默到该阈值就提前把当前 batch 发给 LLM 抢时间,但 batch 不结束;T1(window_seconds)才正式结束。0 或 >= window_seconds 视为关闭。
|
|
797
|
+
# en: Speculative pre-fire threshold in seconds. Enabled when 0 < pre_send_seconds < window_seconds: once the user has been silent that long, the current batch is dispatched to the LLM early to save latency, while the batch itself only ends at window_seconds. 0 or >= window_seconds disables speculation.
|
|
798
|
+
pre_send_seconds = 0.0
|
|
799
|
+
# zh: 投机调用已经向用户发出过任何消息后,新消息到达是否仍然取消该 inflight 调用。默认 false(安全:不取消,新消息开新 batch),开启后可能造成重复发送。
|
|
800
|
+
# en: Whether to cancel an in-flight speculative LLM call even when it has already sent at least one message to the user. Default false (safe: do not cancel; the new message starts a new batch). Enabling this may cause duplicate replies.
|
|
801
|
+
allow_cancel_after_send = false
|
|
802
|
+
|
|
756
803
|
# zh: 历史记录配置。
|
|
757
804
|
# en: History settings.
|
|
758
805
|
[history]
|
|
@@ -857,6 +904,22 @@ request_retries = 0
|
|
|
857
904
|
# en: Max concurrent render browser pages. 0 = auto: Linux defaults to 1, other platforms default to 2.
|
|
858
905
|
browser_max_concurrency = 0
|
|
859
906
|
|
|
907
|
+
# zh: HTML 渲染结果缓存:基于 HTML 内容 hash 复用同一张图片,避免重复渲染。
|
|
908
|
+
# en: HTML render result cache: reuse rendered images by content hash to skip re-rendering.
|
|
909
|
+
[render.cache]
|
|
910
|
+
# zh: 是否启用渲染缓存。设为 false 时所有渲染请求都会走 playwright 重新截图。
|
|
911
|
+
# en: Whether to enable the render cache. When false, every request re-renders via playwright.
|
|
912
|
+
enabled = true
|
|
913
|
+
# zh: LRU 条目数上限(>=1)。超过时按 last_accessed_at 淘汰最久未用的条目。
|
|
914
|
+
# en: Maximum LRU entries (>=1). Beyond this, the least-recently-used items are evicted.
|
|
915
|
+
max_entries = 50
|
|
916
|
+
# zh: 缓存总占用上限(MB,>=1)。超过时按 LRU 顺序持续淘汰,直到回到上限以内。
|
|
917
|
+
# en: Maximum total cache size (MB, >=1). Evicts in LRU order until within budget.
|
|
918
|
+
max_size_mb = 50
|
|
919
|
+
# zh: 元数据落盘最小间隔(秒,>=0)。频繁访问期间合并写盘,避免热点 IO。
|
|
920
|
+
# en: Minimum interval between metadata flushes (seconds, >=0). Coalesces hot-path writes.
|
|
921
|
+
flush_interval_seconds = 2.0
|
|
922
|
+
|
|
860
923
|
# zh: 第三方 API 基础地址(便于自定义镜像或私有网关)。
|
|
861
924
|
# en: Third-party API base URLs (for mirrors or private gateways).
|
|
862
925
|
[api_endpoints]
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<rule num="0" priority="P0" id="严防并发导致的重复">
|
|
2
|
+
<step num="1">明确你这轮的目标(例如:写一个文章;对本条消息/当前输入批次做出合适回应等)或是最后产生的结果或进行的调用(例如:会产生一条消息;会调用某个agent等)</step>
|
|
3
|
+
<step num="2">回看当前输入批次之外的历史消息,确认不会有旧消息线程导致你产生同样的目标、结果或调用。若有,立刻停止所有操作!!!改为根据情景发送应付性回答(例如:"在做了在做了"等)。</step>
|
|
4
|
+
<MUST priority="P0">以上步骤**必须**在进行任何操作之前进行执行、判断!!始终遵循规则:幽灵任务绝对隔离!!以前的消息仅做辅助判断和上下文补全,不要因为乐于助人处理之前消息列表里的任何消息!哪怕它是你必须要执行、处理的或没有回复!!以下规则仅适用于当前消息/当前输入批次,对以前消息不作数!!!</MUST>
|
|
5
|
+
</rule>
|
|
6
|
+
|
|
7
|
+
<current_input_batch_definition priority="P0">
|
|
8
|
+
**当前输入批次定义(适配 MessageBatcher):**
|
|
9
|
+
- 如果输入中出现【连续消息说明】,或当前 prompt 中紧邻出现同一 sender 的多段当前 `<message>` 块,则这些 `<message>` 共同构成“当前输入批次”,必须按时间顺序整批理解。
|
|
10
|
+
- 同批前几条不是历史旧任务;应根据连续消息说明区分【独立请求】与【修正/否定/补充/打断】,独立请求不要遗漏,修正类以最后一次明确意图为准。
|
|
11
|
+
- 如果没有【连续消息说明】,当前输入批次退化为最后一条当前 `<message>`。
|
|
12
|
+
- 历史消息存档、旧上下文、上轮未完成请求不属于当前输入批次;除非当前输入批次明确延续或修正它们,否则不得回溯执行。
|
|
13
|
+
</current_input_batch_definition>
|
|
14
|
+
|
|
15
|
+
<pre_action_mandatory_check priority="P0">
|
|
16
|
+
**发信息前或调用任何工具前的必须判断(每次操作前强制执行):**
|
|
17
|
+
1. 明确本次操作的目标:将发送的消息内容 / 将调用的工具及参数
|
|
18
|
+
2. 回看当前输入批次之外的历史消息,确认不会有旧消息线程导致你(bot)产生同样的工具调用或内容相似的消息发送
|
|
19
|
+
- 若无 → 允许继续
|
|
20
|
+
- 若有 → **立刻停止所有操作!!!** 改为根据情景发送应付性回答(例如:"在做了在做了"、"已经在处理了"等),然后调用 end。不可以发送临时的、不过脑子的错误回复!
|
|
21
|
+
</pre_action_mandatory_check>
|
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
- `res/prompts/`:模型提示词与模板
|
|
11
11
|
- `res/agents/intro/`:智能体介绍与自动生成内容
|
|
12
12
|
|
|
13
|
+
主系统提示词约定:
|
|
14
|
+
- `res/prompts/undefined.xml` 与 `res/prompts/undefined_nagaagent.xml` 共享 Undefined 的基础身份、昵称与项目归属边界。
|
|
15
|
+
- `undefined_nagaagent.xml` 只在上下文明确涉及 NagaAgent 时承接相关工具接入关系,不应在普通自我介绍或无关对话里主动提起。
|
|
16
|
+
|
|
13
17
|
自定义建议:
|
|
14
18
|
- 在运行目录放置同名文件覆盖默认资源
|
|
15
19
|
- 需要全局默认修改时,建议在源码中更新 `res/` 后运行
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
3. 消灭所有相对地点(这里、那边),替换为具体地点
|
|
7
7
|
4. 保持简洁,一两句话概括
|
|
8
8
|
5. `memo` 可能为空;为空时以 `observations` 和上下文为主
|
|
9
|
-
6. `observations`
|
|
9
|
+
6. `observations` 代表当前输入批次提取到的一条新记忆(可能是多条中的一条);若本轮包含 MessageBatcher 合并的多条消息,必须结合整批消息保证可追溯性
|
|
10
10
|
7. 若原文已显式出现实体标识(如 `昵称(数字ID)`、`用户123456`、`QQ:123456`),必须保留该数字ID;禁止擅自替换成 `sender_id` 或其他ID
|
|
11
|
-
8.
|
|
11
|
+
8. 可参考”当前输入批次原文”和”最近消息参考”做实体消歧;当 `observations` 与参考上下文冲突时,以可验证且更具体的信息为准
|
|
12
12
|
9. 当 `force=true` 且命中的“相对表达”属于专有名词本体(如用户名“你是谁”、片名《后天》、书名/歌名等)时,不得改写该专有名词,可保留原词直接提交;但实体 ID 一律不得漂移
|
|
13
13
|
|
|
14
14
|
称呼规则:
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
memo: {memo}
|
|
33
33
|
observations: {observations}
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
当前输入批次原文(触发本轮;连续消息会按时间顺序列出多条):
|
|
36
36
|
{source_message}
|
|
37
37
|
|
|
38
38
|
最近消息参考(XML 格式,与主对话一致,消息间以 `---` 分隔,用于消歧,不要求逐字复述):
|