Undefined-bot 3.17.2__tar.gz → 3.18.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.17.2 → undefined_bot-3.18.0}/ARCHITECTURE.md +14 -2
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/CHANGELOG.md +18 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/PKG-INFO +4 -2
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/README.md +2 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/config.toml.example +43 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/pyproject.toml +2 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/__init__.py +1 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/config_class.py +40 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/env_registry.py +1 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/integrations.py +91 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/handlers/auto_extract.py +69 -0
- undefined_bot-3.18.0/src/Undefined/jm/__init__.py +1 -0
- undefined_bot-3.18.0/src/Undefined/jm/client.py +29 -0
- undefined_bot-3.18.0/src/Undefined/jm/downloader.py +395 -0
- undefined_bot-3.18.0/src/Undefined/jm/parser.py +155 -0
- undefined_bot-3.18.0/src/Undefined/jm/sender.py +463 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/README.md +4 -2
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/README.md +2 -2
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/README.md +1 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/config.json +1 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/intro.md +1 -1
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/prompt.md +1 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/http_config.py +1 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/context.py +2 -0
- undefined_bot-3.18.0/src/Undefined/skills/pipelines/jm/config.json +6 -0
- undefined_bot-3.18.0/src/Undefined/skills/pipelines/jm/handler.py +46 -0
- undefined_bot-3.18.0/src/Undefined/skills/shared.py +132 -0
- undefined_bot-3.18.0/src/Undefined/skills/tools/jm_book/README.md +33 -0
- undefined_bot-3.18.0/src/Undefined/skills/tools/jm_book/callable.json +4 -0
- undefined_bot-3.18.0/src/Undefined/skills/tools/jm_book/config.json +31 -0
- undefined_bot-3.18.0/src/Undefined/skills/tools/jm_book/handler.py +95 -0
- undefined_bot-3.17.2/src/Undefined/skills/shared.py +0 -61
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/.gitignore +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/LICENSE +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/config/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/config/mcp.json.example +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/img/undefined-9527.png +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/img/xlwy.jpg +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/IMPORTANT/each.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/agent_self_intro.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/analyze_multimodal.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/describe_image.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/describe_meme_image.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/generate_title.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/historian_profile_merge.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/historian_rewrite.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/image_gen_moderation.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/injection_detector.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/injection_response_agent.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/judge_meme_image.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/merge_message_summaries.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/merge_summaries.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/message_summary.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/naga_message_moderation.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/stats_analysis.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/summarize.txt +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/undefined.xml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/res/prompts/undefined_nagaagent.xml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/__main__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/client/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/client/ask_loop.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/client/queue.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/client/setup.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/crawl4ai_support.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/http.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/requester.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/retry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/sanitize.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/streaming.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/thinking.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/llm/types.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/model_selector.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/multimodal/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/multimodal/analyzer.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/multimodal/constants.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/multimodal/detection.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/multimodal/parsing.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/parsing.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/builder.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/cognitive.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/constants.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/current_input.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/file_includes.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/system_context.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/prompts/system_info.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/queue_budget.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/retrieval.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/summaries.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/tokens.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/tool_search.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/tooling.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/transports/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/transports/anthropic_transport.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/transports/openai_transport.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/ai/transports/replay.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/_context.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/_helpers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/_naga_state.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/_openapi.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/_probes.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/app.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/naga_store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/automations.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/chat.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/cognitive.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/commands.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/health.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/memes.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/memory.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/naga/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/naga/auth.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/naga/bind.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/naga/send.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/naga/unbind.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/onebot_files.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/schedules.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/system.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/tools.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/routes/weixin.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/api/webchat_store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/downloader.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/parser.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/arxiv/sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/forward_snapshot.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/remote.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/render.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/attachments/segments.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/address.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/catalog.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/clock.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/constants.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/engine.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/extract.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/logutil.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/match.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/mentions.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/migrate.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/runner.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/service.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/short.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/storage.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/template.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/triggers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/automations/validate.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/api_client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/danmaku.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/download_core.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/downloader.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/errors.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/format.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/opus_parser.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/opus_render.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/opus_sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/parser.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/wbi.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/bilibili/wbi_request.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/changelog.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/chroma_scheduler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/historian/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/historian/helpers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/historian/scheduling.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/historian/tools.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/historian/worker.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/job_queue.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/profile_storage.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/service/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/service/helpers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/service/service.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/vector_store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/cognitive/vector_store_compat.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/admin.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/api_modes.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/build_config.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/coercers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/domain_parsers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/hot_reload.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/access.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/core.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/domains.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/finalize.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/history_skills.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/knowledge.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/logging_tools.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/network.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/loader.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/manager.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/model_parsers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/naga_policy.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/onebot.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/agent.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/chat.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/embedding.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/grok.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/helpers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/historian.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/image.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/naga.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/pool.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/security.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/summary.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/parsers/vision.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/resolvers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/search.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/toml_io.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/webui_settings.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/context.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/context_resource_registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/__main__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/catalog.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/cli.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/commands.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/config_patch.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/docker_cli.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/generate.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/images.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/nagaagent.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/runner.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/state.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/.dockerignore +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/Dockerfile.bot +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.base.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.bot.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.firecrawl.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.lxmusic2api.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.napcat.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/compose.searxng.yaml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/lxmusic2api.config.toml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/napcat.ws.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/deploy/templates/searxng.settings.yml +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/downloader.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/parser.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/douyin/sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/end_summary_storage.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/faq.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/github/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/github/client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/github/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/github/parser.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/github/sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/handlers/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/handlers/message_flow.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/handlers/poke.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/handlers/repeat.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/injection_response_agent.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/chunker.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/embedder.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/manager.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/reranker.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/runtime.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/knowledge/store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/main.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/mcp/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/mcp/registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/_image_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/ingest.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/search.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/service.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/vector_store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memes/worker.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/memory.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/file_errors.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/file_references.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/file_store.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/file_transport.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/onebot/message.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/py.typed +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/rate_limit.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/render.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/bugfix_command.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/command.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/commands/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/commands/catalog.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/commands/context.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/commands/registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/background.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/batching.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/group.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/message_ids.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/coordinator/private.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/message_batcher/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/message_batcher/scheduler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/message_batcher/state.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/message_summary_fetch.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/model_pool.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/queue_manager.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/security.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/services/stats_command.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/agent_tool_registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/docker_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/mcp.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/copy/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/delete/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/diff/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/end/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/grep/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/init_docker/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/read/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/run_bash_command/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/todo/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/tree/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/code_delivery_agent/tools/write/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/ai_draw_one/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/horoscope/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/minecraft_skin/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/renjian/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/entertainment_agent/tools/wenchang_dijun/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_code/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/analyze_multimodal/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/cleanup_temp/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/describe_pdf_page/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/detect_file_type/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/download_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_archive/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_docx/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pdf/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_pptx/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/extract_xlsx/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/file_analysis_agent/tools/read_text_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/arxiv_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/baiduhot/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/base64/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/base64/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/bilibili_user_info/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/douyinhot/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/gold_price/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/hash/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/hash/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/history/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/history/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/net_check/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/net_check/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/qq_level_query/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/speed/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/speed/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/tcping/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/tcping/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/weather_query/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/weibohot/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/whois/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/info_agent/tools/whois/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/intro_generator.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/intro_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/mcp.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/list_directory/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/read_naga_intro/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/naga_code_analysis_agent/tools/search_file_content/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/runner/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/runner/context.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/runner/loop.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/runner/tools.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/runner/webchat_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/summary_agent/tools/fetch_messages/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/_shared.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/glob/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/list_directory/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/read_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/undefined_self_code_agent/tools/search_file_content/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/intro.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/mcp.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/prompt.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/crawl_webpage/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/firecrawl_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/grok_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/web_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/agents/web_agent/tools/web_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/anthropic_skills/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/anthropic_skills/loader.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/admin/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/admin/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/admin/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/bugfix/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/bugfix/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/bugfix/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/changelog/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/changelog/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/changelog/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/copyright/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/copyright/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/copyright/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/faq/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/faq/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/faq/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/feedback/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/feedback/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/feedback/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/help/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/help/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/help/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/naga/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/naga/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/naga/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/naga/policy.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/profile/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/profile/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/profile/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/stats/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/stats/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/stats/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/summary/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/summary/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/summary/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/version/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/version/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/commands/version/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/http_client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/arxiv/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/arxiv/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/bilibili/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/bilibili/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/bilibili_opus/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/bilibili_opus/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/douyin/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/douyin/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/github/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/github/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/pipelines/registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/registry.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/arxiv_paper/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/arxiv_paper/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/arxiv_paper/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/arxiv_paper/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_opus/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_opus/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_opus/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_opus/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_video/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_video/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_video/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/bilibili_video/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/calculator/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/calculator/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/calculator/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/calculator/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/changelog_query/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/changelog_query/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/changelog_query/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/douyin_video/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/douyin_video/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/douyin_video/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/douyin_video/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/end/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/end/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/end/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/fetch_image_uid/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/fetch_image_uid/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/fetch_image_uid/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_current_time/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_current_time/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_current_time/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_current_time/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_picture/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_picture/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_picture/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_user_info/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_user_info/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/get_user_info/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_list/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_list/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_list/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_semantic_search/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_semantic_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_semantic_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_text_search/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_text_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/knowledge_text_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/python_interpreter/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/python_interpreter/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/python_interpreter/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/qq_like/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/qq_like/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/qq_like/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/task_progress/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/task_progress/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/tools/task_progress/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/attachments/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/attachments/get_uid_by_url/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/attachments/get_url_by_uid/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/_runtime.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/create/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/create/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/delete/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/delete/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/get/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/get/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/list/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/list/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/set_enabled/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/set_enabled/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/update/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/automation/update/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/get_profile/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/get_profile/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/search_events/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/search_events/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/cognitive/search_profiles/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/commands/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/commands/get/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/commands/get/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/commands/search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/commands/search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/contacts/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/contacts/query_friends/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/contacts/query_friends/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/contacts/query_groups/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/contacts/query_groups/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/find_member/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/find_member/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_avatar/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_avatar/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_files/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_files/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_honor_info/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_honor_info/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_info/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_info/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_list/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_list/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_title/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group/get_member_title/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/activity_trend/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/filter_members/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/inactive_risk/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/join_statistics/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/level_distribution/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_activity/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_messages/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/member_structure/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/message_mix/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/new_member_activity/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/group_analysis/rank_members/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/mcp/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/mcp/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memes/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memes/search_memes/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memes/search_memes/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memes/send_meme_by_uid/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/add/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/add/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/delete/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/delete/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/list/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/list/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/update/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/memory/update/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/context_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_forward_msg/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_messages_by_time/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/get_recent_messages/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/list_emojis/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/list_emojis/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/lookup_emoji_id/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/react_message_emoji/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_group_sign/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_group_sign/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_message/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_message/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_poke/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_poke/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_private_message/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_private_message/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_text_file/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_text_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_text_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_url_file/callable.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_url_file/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_url_file/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_voice/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/messages/send_voice/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/_client.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/_constants.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/_tools.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/_track_refs.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/browse_playlists/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/browse_playlists/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/browse_rankings/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/browse_rankings/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/find_song_matches/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/find_song_matches/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_audio/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_audio/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_comments/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_comments/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_cover/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_cover/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_hot_search/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_hot_search/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_lyrics/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/get_lyrics/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/search_playlists/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/search_playlists/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/search_songs/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/music/search_songs/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/get/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/get/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/list/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/list/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/stats/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/notices/stats/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/README.md +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/layout.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_html/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_html/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_latex/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_latex/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_markdown/config.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/skills/toolsets/render/render_markdown/handler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/token_usage_storage.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/cache.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/coerce.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/common.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/cors.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/easter_egg_calls.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/fake_at.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/file_lock.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/group_metrics.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/history.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/http_download.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/io.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/logging.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/member_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/message_reply.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/message_targets.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/message_turn.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/message_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/paths.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/qq_emoji.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/queue_intervals.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/recent_messages.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/render_cache.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/request_params.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/resources.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/scheduler.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/self_update.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/sender.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/sender_helpers.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/time_utils.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/tool_calls.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/utils/xml.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/__main__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/app.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/core.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_auth.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_bot.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_config.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_index.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_logs.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_memes.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_runtime.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_shared.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_system.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/routes/_weixin.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/.stylelintrc.json +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/app.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/base.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/components.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/highlight-github.min.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/landing.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/responsive.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/style.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/variables.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/css/workflow.css +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/favicon.svg +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/api.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/auth.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/bot.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/config-form.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/i18n.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/log-view.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/logs.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/main.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/memes.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/runtime.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/schedules.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/state.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/ui.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/vendor/highlight.min.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/vendor/highlightjs.LICENSE +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/vendor/marked.min.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/weixin.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/workflow-canvas.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/workflow-graph.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/static/js/workflow-inspector.js +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/templates/index.html +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/utils/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/utils/comment.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/utils/config_io.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/utils/config_sync.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/webui/utils/toml_render.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/weixin/__init__.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/weixin/audio.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/weixin/models.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/weixin/service.py +0 -0
- {undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/weixin/store.py +0 -0
|
@@ -40,6 +40,12 @@ graph TB
|
|
|
40
40
|
GitHubSender["sender.py<br/>图片卡片发送<br/>• 头像 • 简介 • 统计"]
|
|
41
41
|
end
|
|
42
42
|
|
|
43
|
+
subgraph JmModule["JM 模块 (jm/)"]
|
|
44
|
+
JmParser["parser.py<br/>车号解析<br/>• JM+数字 • 禁漫链接 • 分享卡片"]
|
|
45
|
+
JmDownloader["downloader.py<br/>整本下载合成<br/>• jmcpy 逐章下载<br/>• 合并为加密 PDF"]
|
|
46
|
+
JmSender["sender.py<br/>合并转发发送<br/>• 信息/密码/PDF • 失败回退"]
|
|
47
|
+
end
|
|
48
|
+
|
|
43
49
|
subgraph SecurityLayer["安全防线 (services/)"]
|
|
44
50
|
SecurityService["SecurityService<br/>安全服务<br/>• 注入攻击检测<br/>• 速率限制<br/>[security.py]"]
|
|
45
51
|
InjectionAgent["InjectionResponseAgent<br/>注入响应生成<br/>[injection_response_agent.py]"]
|
|
@@ -228,8 +234,13 @@ graph TB
|
|
|
228
234
|
GitHubParser -->|"仓库ID"| GitHubClient
|
|
229
235
|
GitHubClient -->|"public仓库信息"| GitHubSender
|
|
230
236
|
GitHubSender -->|"发送图片卡片"| OneBotClient
|
|
231
|
-
|
|
232
|
-
MessageHandler -->|"2.7
|
|
237
|
+
|
|
238
|
+
MessageHandler -->|"2.7 非命令自动管线"| JmParser
|
|
239
|
+
JmParser -->|"车号"| JmDownloader
|
|
240
|
+
JmDownloader -->|"加密 PDF"| JmSender
|
|
241
|
+
JmSender -->|"发送合并转发"| OneBotClient
|
|
242
|
+
|
|
243
|
+
MessageHandler -->|"2.8 自动化"| AutomationService
|
|
233
244
|
AutomationService -->|"读写"| AutomationStorage
|
|
234
245
|
AutomationStorage -->|"异步读写"| IOUtils
|
|
235
246
|
|
|
@@ -850,6 +861,7 @@ description: 从 PDF 文件中提取文本和表格,填写表单。当用户
|
|
|
850
861
|
| **Bilibili** | `bilibili.auto_extract_enabled`, `bilibili.cookie`, `bilibili.prefer_quality` | B站视频自动提取与下载 |
|
|
851
862
|
| **arXiv** | `arxiv.auto_extract_enabled`, `arxiv.max_file_size`, `arxiv.auto_extract_max_items` | arXiv 论文自动提取、搜索与 PDF 发送 |
|
|
852
863
|
| **GitHub** | `github.auto_extract_enabled`, `github.request_timeout_seconds`, `github.request_retries`, `github.auto_extract_max_items` | GitHub public 仓库自动提取与图片卡片发送 |
|
|
864
|
+
| **JM(禁漫)** | `jm.auto_extract_enabled`, `jm.max_file_size`, `jm.max_chapters`, `jm.auto_extract_max_items` | JM 车号自动提取、整本加密 PDF 与合并转发 |
|
|
853
865
|
| **思考链** | `*.thinking_enabled` | 思维链支持 |
|
|
854
866
|
| **思维链兼容** | `*.thinking_tool_call_compat` | 思维链 + 工具调用兼容 |
|
|
855
867
|
| **WebUI** | `webui.url`, `webui.port`, `webui.password` | 配置控制台 |
|
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
## v3.18.0 JM 漫画自动提取
|
|
2
|
+
|
|
3
|
+
本版本新增禁漫自动提取管线:消息里出现 `JM` 车号或禁漫链接时,自动获取本子详情、把全部章节合成为一个带密码的 PDF,以「本子信息 / 解密密码 / PDF 文件」三节点合并转发发送(文件只放在转发里,群聊下同时进入群文件列表),并新增与 `arxiv_paper` 同构的 `jm_book` 工具供 AI 按需取详情或附件。功能默认关闭,密码随机生成且不写进历史。
|
|
4
|
+
|
|
5
|
+
- 新增 `jm` 自动处理管线(`src/Undefined/skills/pipelines/jm/`,`order = 12`)与 `src/Undefined/jm/`(车号解析、jmcpy 客户端设置、整本下载合成、合并转发发送),依赖新增并固定到 `jmcpy>=0.1.3`。
|
|
6
|
+
- 触发规则:`JM` 前缀加 5–8 位车号(`JM1114751` / `jm 1114751` / `jm:1114751` / `jm-1114751`,大小写不敏感),以及主机名含 `18comic` 或 `jmcomic` 的链接(`/album/<id>`、`/photo/<id>`、`?id=<id>`),QQ 分享卡片里的链接同样解析,车号与链接混排时按原文出现顺序取(默认只取第一个);分享卡片结构异常(`data` 不是对象、JSON 损坏)只跳过该段,不影响同一条消息里其它段落的检测。前缀必须落在词边界上(`xxjm1234567`、`t.me/jm1234567`、`video_jm1234567.mp4` 都不触发),数字后不跟数字(9 位以上不会被截成 8 位);裸数字不触发,避免群号、时间戳误报。
|
|
7
|
+
- 下载与合成:按章节 `order` 顺序逐章下载(`[jm].max_chapters` 可限制),`decode=False` 取服务端原始字节无损落盘,自己解扰后每页只编码一次 JPEG(`[jm].image_quality`,色度 4:4:4)并直接作为 PDF 图像数据;页尺寸统一按 `[jm].pdf_dpi` 换算(页宽 = 像素宽 ÷ DPI × 72),页像素始终不缩放,画质上限由站点源图分辨率决定。不再复用 `jmcpy.imaging.write_pdf`:jmcpy 的下载 API 一章只能产出一个 PDF,而这里要把多个章节合进同一个文件;`jmcpy>=0.1.3` 修掉了追加页退回默认 72 DPI、同份 PDF 内页面尺寸不一致的问题,并把页内 JPEG 色度采样默认值改成 4:4:4。
|
|
8
|
+
- 逐页容错:单页解码失败只跳过该页并计入「下载失败 N 页」,其余页照常出 PDF,全部页失败才算空结果;动图(`.gif`)不做分块还原,与 jmcpy 的 `UNDECODED_SUFFIXES` 语义一致。
|
|
9
|
+
- 体积语义:`[jm].max_file_size` 先按各章节原始图片累计预判并停止下载,组装时再按**编码后字节**累计复核,超过即提前中止、PDF 不落盘;因此它只是近似内存上限(JPEG 重编码可能比源图更大)。超过上限或没有下到任何页面时只发信息与状态两个节点,不发密码与文件,且信息里不展示 PDF 大小。
|
|
10
|
+
- 发送结构固定为三个节点:本子信息(车号、标题、作者、章节数、标签、观看/点赞、页数、大小、简介预览,末行是可直接复制的 `JM<车号>`,不再输出站点链接)、PDF 解密密码(每次随机生成 8 位,字母表去掉 `0/O/1/l/I` 等形近字符)、PDF 文件(本地合成后随转发上传)。密码只出现在转发节点中,写入历史的摘要只说「密码见转发节点」,后续 AI 轮次不会复述密码。
|
|
11
|
+
- 文件只放在转发里,不额外发独立文件消息:群聊下 NapCat 会把它作为群文件上传(`isGroupFile`、`busid=102`,元素里带 `fileId` / `fileMd5` / `fileSha1`),节点里的文件可以直接下载,同一个 PDF 因此也会出现在群文件列表里。
|
|
12
|
+
- 投递语义:「投递结果未确认」(`delivery_uncertain`)与「文件传输错误」(`file_transfer_error`)不降级重发,直接上抛调用方——这两种情况下转发可能已经送达,换个 action 再发会造成真实重复投递;只有协议端明确拒绝才退化为「信息 + 密码两条普通消息 + 独立文件消息」(此时文件没有别的入口),该路径的密码消息写历史时只记「PDF 解密密码已单独发送」,上传也失败时再补一条不写历史的提示。
|
|
13
|
+
- 失败与资源:车号不存在或接口不可用时发送一行 `JM 提取失败:<原因>` 并记录异常类型与堆栈;整本下载跑在模块专用线程池(同时最多 2 本)而不是事件循环默认执行器;任务目录在成功、超限、空结果与下载抛异常四条路径上都会清理;被取消时线程仍在写盘,改为等它跑完再删,不留下残留原图或未加密 PDF。
|
|
14
|
+
- 新增 `jm_book` 工具(`src/Undefined/skills/tools/jm_book/`,与 `arxiv_paper` 同构):`output_mode=send`(默认,等价自动提取)、`uid`(只下载并注册**未加密** PDF 附件 UID,不发送消息,供 `file_analysis_agent` 用 `extract_pdf` / `describe_pdf_page` 解析)、`info`(只返回标题/作者/章节/标签/观看点赞/简介与链接,不下载);`callable.json` 把它共享给 `file_analysis_agent`,后者提示词里加了「车号/链接 → 先 `jm_book(output_mode="uid")`」的规则。
|
|
15
|
+
- 新增 `[jm]` 配置段:`auto_extract_enabled`(默认 `false`)、`use_proxy`、`auto_extract_group_ids` / `auto_extract_private_ids`(空时跟随全局 access)、`auto_extract_max_items`(默认 1,上限 5)、`max_file_size`、`max_chapters`、`pdf_dpi`、`image_quality`、`download_concurrency`、`request_timeout`、`image_timeout`、`session_dir`(jmcpy 配置目录,可复用已保存的登录态);`[jm].use_proxy` 支持环境变量 `JM_USE_PROXY`。
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
1
19
|
## v3.17.2 侧写有序合并
|
|
2
20
|
|
|
3
21
|
本版本修复群聊与用户侧写并发更新时的乱序覆盖:同一实体按史官任务入队顺序逐次合并,每次都基于前一次提交后的完整侧写;不同实体继续并发处理,QQ 与绑定的 iLink 私聊也遵循同一用户顺序。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: Undefined-bot
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.18.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
|
|
@@ -16,6 +16,7 @@ Requires-Dist: chromadb>=1.5.5
|
|
|
16
16
|
Requires-Dist: crawl4ai>=0.8.6
|
|
17
17
|
Requires-Dist: fastmcp>=3.1.1
|
|
18
18
|
Requires-Dist: httpx>=0.27.0
|
|
19
|
+
Requires-Dist: jmcpy>=0.1.3
|
|
19
20
|
Requires-Dist: langchain-community>=0.3.0
|
|
20
21
|
Requires-Dist: linkify-it-py>=2.0.3
|
|
21
22
|
Requires-Dist: lunar-python>=1.4.8
|
|
@@ -121,7 +122,8 @@ Description-Content-Type: text/markdown
|
|
|
121
122
|
- **可选音乐工具集**:配置独立部署的 [lxmusic2api](https://github.com/69gg/lxmusic2api) 后,主 AI 可搜索歌曲/歌单、浏览热搜与排行榜、读取歌词/封面/评论、跨平台匹配并交付普通音频附件;完整 Track 通过任务内短引用流转,只暴露面向用户的高层 `music.*` 能力,不暴露下载作业生命周期接口。详见 [使用指南](docs/usage.md#音乐-music) 与 [配置说明](docs/configuration.md#4201-lxmusic2api-音乐服务)。
|
|
122
123
|
- **arXiv 论文提取、搜索与分析**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;`arxiv_paper` 也可只返回 PDF 附件 UID,供 `file_analysis_agent` 做文本提取或指定页视觉分析;`arxiv_search` 负责论文检索。
|
|
123
124
|
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览;API 与头像下载统一遵循 `[github].use_proxy`,头像以内联资源进入离线渲染器。
|
|
124
|
-
-
|
|
125
|
+
- **禁漫(JM)本子提取**:自动检测 `JM`+车号或禁漫链接,下载全部章节并合成为一个 AES-256 加密 PDF,以「本子信息 / 解密密码 / PDF 文件」三节点合并转发发送(文件只在转发里,群聊下同时进入群文件列表),密码每次随机生成且不写入历史;`jm_book` 工具也可只返回本子信息或未加密 PDF 附件 UID,供 `file_analysis_agent` 解析。默认关闭,`[jm].auto_extract_enabled` 打开。详见 [配置说明](docs/configuration.md#4203-jm-禁漫自动提取)。
|
|
126
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub、JM 等自动提取统一运行在 `skills/pipelines` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
125
127
|
- **同 sender 短时消息合并**:默认开启。连续发的多条消息会合并到同一轮 AI 调用,AI 一次看到全部意图自行识别"独立请求/修正/打断";告别"画猫→改成狗"的重复触发与回复打架。主提示词按 batcher 的"当前输入批次"语义适配,关闭该功能可能导致连续补充/修正消息与提示词不匹配,需要单独适配。可选投机预发送让用户停顿时 LLM 提前开跑、新消息可在未发出回复前取消,进一步压低响应延迟。详见 [docs/message-batching.md](docs/message-batching.md)。
|
|
126
128
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
127
129
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
@@ -70,7 +70,8 @@
|
|
|
70
70
|
- **可选音乐工具集**:配置独立部署的 [lxmusic2api](https://github.com/69gg/lxmusic2api) 后,主 AI 可搜索歌曲/歌单、浏览热搜与排行榜、读取歌词/封面/评论、跨平台匹配并交付普通音频附件;完整 Track 通过任务内短引用流转,只暴露面向用户的高层 `music.*` 能力,不暴露下载作业生命周期接口。详见 [使用指南](docs/usage.md#音乐-music) 与 [配置说明](docs/configuration.md#4201-lxmusic2api-音乐服务)。
|
|
71
71
|
- **arXiv 论文提取、搜索与分析**:自动检测消息中的 arXiv 链接/标识并发送论文信息与 PDF;`arxiv_paper` 也可只返回 PDF 附件 UID,供 `file_analysis_agent` 做文本提取或指定页视觉分析;`arxiv_search` 负责论文检索。
|
|
72
72
|
- **GitHub 仓库卡片**:自动检测 GitHub 仓库链接或 `owner/repo` 仓库 ID,获取 public 仓库信息并发送简洁图片卡片,展示头像、简介、stars、forks、issues、contributors 等概览;API 与头像下载统一遵循 `[github].use_proxy`,头像以内联资源进入离线渲染器。
|
|
73
|
-
-
|
|
73
|
+
- **禁漫(JM)本子提取**:自动检测 `JM`+车号或禁漫链接,下载全部章节并合成为一个 AES-256 加密 PDF,以「本子信息 / 解密密码 / PDF 文件」三节点合并转发发送(文件只在转发里,群聊下同时进入群文件列表),密码每次随机生成且不写入历史;`jm_book` 工具也可只返回本子信息或未加密 PDF 附件 UID,供 `file_analysis_agent` 解析。默认关闭,`[jm].auto_extract_enabled` 打开。详见 [配置说明](docs/configuration.md#4203-jm-禁漫自动提取)。
|
|
74
|
+
- **自动处理管线**:Bilibili、arXiv、GitHub、JM 等自动提取统一运行在 `skills/pipelines` 中,斜杠命令优先级更高;命令输入/输出会写入历史,非命令消息会并行检测和处理命中管线,结果通过统一发送层写入历史并登记附件 UID 后再进入 AI 回复。远程大附件超过 `[attachments].remote_download_max_size_mb` 时只登记 URL 引用,避免无界下载和缓存膨胀。
|
|
74
75
|
- **同 sender 短时消息合并**:默认开启。连续发的多条消息会合并到同一轮 AI 调用,AI 一次看到全部意图自行识别"独立请求/修正/打断";告别"画猫→改成狗"的重复触发与回复打架。主提示词按 batcher 的"当前输入批次"语义适配,关闭该功能可能导致连续补充/修正消息与提示词不匹配,需要单独适配。可选投机预发送让用户停顿时 LLM 提前开跑、新消息可在未发出回复前取消,进一步压低响应延迟。详见 [docs/message-batching.md](docs/message-batching.md)。
|
|
75
76
|
- **思维链支持**:支持开启思维链,提升复杂逻辑推理能力。
|
|
76
77
|
- **高并发架构**:基于 `asyncio` 全异步设计,支持多队列消息处理与工具并发执行,轻松应对高并发场景。
|
|
@@ -1572,6 +1572,49 @@ auto_extract_private_ids = []
|
|
|
1572
1572
|
# en: Max number of GitHub repositories to auto-process from one message. <=0 falls back to 3, >10 is clamped to 10.
|
|
1573
1573
|
auto_extract_max_items = 3
|
|
1574
1574
|
|
|
1575
|
+
# zh: 禁漫(JM / 18comic)自动提取配置。命中后下载整本并合成为一个加密 PDF,以合并转发发送(信息 / 解密密码 / PDF 文件)。
|
|
1576
|
+
# en: JM (18comic) auto-extraction settings. On match, the whole book is downloaded, merged into one encrypted PDF, and sent as a merged forward (info / password / PDF file).
|
|
1577
|
+
[jm]
|
|
1578
|
+
# zh: 是否让禁漫接口与图片下载使用 [proxy] 代理地址。默认关闭。
|
|
1579
|
+
# en: Whether JM API and image downloads use proxy addresses from [proxy]. Disabled by default.
|
|
1580
|
+
use_proxy = false
|
|
1581
|
+
# zh: 是否启用自动提取(检测到 JM+数字车号或禁漫链接时自动下载并发送)。默认关闭。
|
|
1582
|
+
# en: Enable auto-extraction (auto-download and send when JM book IDs or JM links are detected). Disabled by default.
|
|
1583
|
+
auto_extract_enabled = false
|
|
1584
|
+
# zh: 自动提取功能的群聊白名单(空=跟随全局 access.allowed_group_ids)。
|
|
1585
|
+
# en: Group allowlist for auto-extraction (empty = follow global access.allowed_group_ids).
|
|
1586
|
+
auto_extract_group_ids = []
|
|
1587
|
+
# zh: 自动提取功能的私聊白名单(空=跟随全局 access.allowed_private_ids)。
|
|
1588
|
+
# en: Private chat allowlist for auto-extraction (empty = follow global access.allowed_private_ids).
|
|
1589
|
+
auto_extract_private_ids = []
|
|
1590
|
+
# zh: 单条消息最多自动处理几个车号。<=0 回退 1,>5 截断到 5;每项是一整本 PDF,所以默认只处理 1 个。
|
|
1591
|
+
# en: Max number of book IDs to auto-process from one message. <=0 falls back to 1, >5 is clamped to 5; each item is a whole-book PDF, so only one is processed by default.
|
|
1592
|
+
auto_extract_max_items = 1
|
|
1593
|
+
# zh: PDF 体积上限(MB),超过则只发送信息节点(按编码后字节判定,合成中即会中止)。0=不限,<0 回退 100。
|
|
1594
|
+
# en: PDF size limit in MB; exceeding it sends the info node only (checked on encoded bytes, aborts mid-build). 0=unlimited, <0 falls back to 100.
|
|
1595
|
+
max_file_size = 100
|
|
1596
|
+
# zh: 单本最多下载并合并几章(取前 N 章)。0=不限(全部章节),<0 回退 0。
|
|
1597
|
+
# en: Max chapters downloaded and merged per book (first N). 0=unlimited, <0 falls back to 0.
|
|
1598
|
+
max_chapters = 0
|
|
1599
|
+
# zh: PDF 页面分辨率(DPI),所有页统一按它换算物理尺寸(页宽 = 像素宽 ÷ DPI × 72)。<=0 回退 150。页像素不做缩放。
|
|
1600
|
+
# en: PDF page resolution (DPI); every page uses it for its physical size (page width = pixels / DPI * 72). <=0 falls back to 150. Page pixels are never rescaled.
|
|
1601
|
+
pdf_dpi = 150.0
|
|
1602
|
+
# zh: PDF 内页 JPEG 质量(1-100,色度 4:4:4,每页只编码一次)。<1 回退 95,>100 截断到 100;提高到 98/100 约增加 30%/50% 体积。
|
|
1603
|
+
# en: JPEG quality for PDF pages (1-100, chroma 4:4:4, exactly one encode per page). <1 falls back to 95, >100 is clamped to 100; 98/100 costs roughly 30%/50% more size.
|
|
1604
|
+
image_quality = 95
|
|
1605
|
+
# zh: 图片下载并发数。<1 回退 8,>32 截断到 32。
|
|
1606
|
+
# en: Image download concurrency. <1 falls back to 8, >32 is clamped to 32.
|
|
1607
|
+
download_concurrency = 8
|
|
1608
|
+
# zh: 接口请求超时(秒)。<=0 回退 20,>120 截断到 120。
|
|
1609
|
+
# en: API request timeout (seconds). <=0 falls back to 20, >120 is clamped to 120.
|
|
1610
|
+
request_timeout = 20.0
|
|
1611
|
+
# zh: 图片下载超时(秒)。<=0 回退 60,>600 截断到 600。
|
|
1612
|
+
# en: Image download timeout (seconds). <=0 falls back to 60, >600 is clamped to 600.
|
|
1613
|
+
image_timeout = 60.0
|
|
1614
|
+
# zh: jmcpy 的配置目录(登录态与会话文件所在目录,可指向已登录的 JMCPY_HOME)。留空使用平台默认目录。
|
|
1615
|
+
# en: jmcpy config directory (login session files; point it at an existing JMCPY_HOME). Empty uses the platform default directory.
|
|
1616
|
+
session_dir = ""
|
|
1617
|
+
|
|
1575
1618
|
# zh: Code Delivery Agent 配置(代码交付 Agent,在 Docker 容器中编写代码并打包上传)。
|
|
1576
1619
|
# en: Code Delivery Agent settings (writes code in Docker containers and delivers packaged results).
|
|
1577
1620
|
[code_delivery]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "Undefined-bot"
|
|
3
|
-
version = "3.
|
|
3
|
+
version = "3.18.0"
|
|
4
4
|
description = "QQ bot platform with cognitive memory architecture and multi-agent Skills, via OneBot V11."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
authors = [
|
|
@@ -48,6 +48,7 @@ dependencies = [
|
|
|
48
48
|
"silk-python>=0.2.8,<0.3.0",
|
|
49
49
|
"qrcode>=8.2,<9.0",
|
|
50
50
|
"regex>=2026.2.28",
|
|
51
|
+
"jmcpy>=0.1.3",
|
|
51
52
|
]
|
|
52
53
|
|
|
53
54
|
[project.urls]
|
|
@@ -24,7 +24,7 @@ if TYPE_CHECKING:
|
|
|
24
24
|
from .skills.registry import BaseRegistry as BaseRegistry
|
|
25
25
|
from .skills.tools import ToolRegistry as ToolRegistry
|
|
26
26
|
|
|
27
|
-
__version__: str = "3.
|
|
27
|
+
__version__: str = "3.18.0"
|
|
28
28
|
|
|
29
29
|
# symbol -> (module_path, attribute_name);首次访问时才 importlib 加载
|
|
30
30
|
_LAZY_IMPORTS: dict[str, tuple[str, str]] = {
|
|
@@ -241,6 +241,20 @@ class Config:
|
|
|
241
241
|
github_auto_extract_group_ids: list[int]
|
|
242
242
|
github_auto_extract_private_ids: list[int]
|
|
243
243
|
github_auto_extract_max_items: int
|
|
244
|
+
# JM(禁漫)自动提取
|
|
245
|
+
jm_use_proxy: bool
|
|
246
|
+
jm_auto_extract_enabled: bool
|
|
247
|
+
jm_auto_extract_group_ids: list[int]
|
|
248
|
+
jm_auto_extract_private_ids: list[int]
|
|
249
|
+
jm_auto_extract_max_items: int
|
|
250
|
+
jm_max_file_size: int
|
|
251
|
+
jm_max_chapters: int
|
|
252
|
+
jm_pdf_dpi: float
|
|
253
|
+
jm_image_quality: int
|
|
254
|
+
jm_download_concurrency: int
|
|
255
|
+
jm_request_timeout: float
|
|
256
|
+
jm_image_timeout: float
|
|
257
|
+
jm_session_dir: str
|
|
244
258
|
# 认知记忆
|
|
245
259
|
cognitive: CognitiveConfig
|
|
246
260
|
# 表情包库
|
|
@@ -321,6 +335,16 @@ class Config:
|
|
|
321
335
|
init=False,
|
|
322
336
|
repr=False,
|
|
323
337
|
)
|
|
338
|
+
_jm_group_ids_set: set[int] = dataclass_field(
|
|
339
|
+
default_factory=set,
|
|
340
|
+
init=False,
|
|
341
|
+
repr=False,
|
|
342
|
+
)
|
|
343
|
+
_jm_private_ids_set: set[int] = dataclass_field(
|
|
344
|
+
default_factory=set,
|
|
345
|
+
init=False,
|
|
346
|
+
repr=False,
|
|
347
|
+
)
|
|
324
348
|
|
|
325
349
|
def __post_init__(self) -> None:
|
|
326
350
|
self._refresh_runtime_sets()
|
|
@@ -359,6 +383,10 @@ class Config:
|
|
|
359
383
|
self._github_private_ids_set = {
|
|
360
384
|
int(item) for item in self.github_auto_extract_private_ids
|
|
361
385
|
}
|
|
386
|
+
self._jm_group_ids_set = {int(item) for item in self.jm_auto_extract_group_ids}
|
|
387
|
+
self._jm_private_ids_set = {
|
|
388
|
+
int(item) for item in self.jm_auto_extract_private_ids
|
|
389
|
+
}
|
|
362
390
|
|
|
363
391
|
@classmethod
|
|
364
392
|
def load(cls, config_path: Optional[Path] = None, strict: bool = True) -> "Config":
|
|
@@ -553,6 +581,18 @@ class Config:
|
|
|
553
581
|
return int(user_id) in self._github_private_ids_set
|
|
554
582
|
return self.is_private_allowed(user_id)
|
|
555
583
|
|
|
584
|
+
def is_jm_auto_extract_allowed_group(self, group_id: int) -> bool:
|
|
585
|
+
"""群聊是否允许 JM 自动提取。"""
|
|
586
|
+
if self._jm_group_ids_set:
|
|
587
|
+
return int(group_id) in self._jm_group_ids_set
|
|
588
|
+
return self.is_group_allowed(group_id)
|
|
589
|
+
|
|
590
|
+
def is_jm_auto_extract_allowed_private(self, user_id: int) -> bool:
|
|
591
|
+
"""私聊是否允许 JM 自动提取。"""
|
|
592
|
+
if self._jm_private_ids_set:
|
|
593
|
+
return int(user_id) in self._jm_private_ids_set
|
|
594
|
+
return self.is_private_allowed(user_id)
|
|
595
|
+
|
|
556
596
|
def should_process_group_message(self, is_at_bot: bool) -> bool:
|
|
557
597
|
"""是否处理该条群消息。"""
|
|
558
598
|
|
|
@@ -72,6 +72,7 @@ ENV_REGISTRY: Final[dict[tuple[str, ...], str]] = {
|
|
|
72
72
|
("history", "max_records"): "HISTORY_MAX_RECORDS",
|
|
73
73
|
("image_gen", "use_proxy"): "IMAGE_GEN_USE_PROXY",
|
|
74
74
|
("image_gen", "provider"): "IMAGE_GEN_PROVIDER",
|
|
75
|
+
("jm", "use_proxy"): "JM_USE_PROXY",
|
|
75
76
|
("logging", "backup_count"): "LOG_BACKUP_COUNT",
|
|
76
77
|
("logging", "file_path"): "LOG_FILE_PATH",
|
|
77
78
|
("logging", "level"): "LOG_LEVEL",
|
{undefined_bot-3.17.2 → undefined_bot-3.18.0}/src/Undefined/config/load_sections/integrations.py
RENAMED
|
@@ -27,6 +27,17 @@ _MAX_GITHUB_REQUEST_TIMEOUT_SECONDS: float = 60.0
|
|
|
27
27
|
_MAX_GITHUB_REQUEST_RETRIES: int = 5
|
|
28
28
|
_DEFAULT_GITHUB_AUTO_EXTRACT_MAX_ITEMS: int = 3
|
|
29
29
|
_MAX_GITHUB_AUTO_EXTRACT_MAX_ITEMS: int = 10
|
|
30
|
+
_DEFAULT_JM_REQUEST_TIMEOUT_SECONDS: float = 20.0
|
|
31
|
+
_MAX_JM_REQUEST_TIMEOUT_SECONDS: float = 120.0
|
|
32
|
+
_DEFAULT_JM_IMAGE_TIMEOUT_SECONDS: float = 60.0
|
|
33
|
+
_MAX_JM_IMAGE_TIMEOUT_SECONDS: float = 600.0
|
|
34
|
+
_DEFAULT_JM_AUTO_EXTRACT_MAX_ITEMS: int = 1
|
|
35
|
+
_MAX_JM_AUTO_EXTRACT_MAX_ITEMS: int = 5
|
|
36
|
+
_DEFAULT_JM_MAX_FILE_SIZE_MB: int = 100
|
|
37
|
+
_DEFAULT_JM_PDF_DPI: float = 150.0
|
|
38
|
+
_DEFAULT_JM_IMAGE_QUALITY: int = 95
|
|
39
|
+
_DEFAULT_JM_DOWNLOAD_CONCURRENCY: int = 8
|
|
40
|
+
_MAX_JM_DOWNLOAD_CONCURRENCY: int = 32
|
|
30
41
|
_DEFAULT_LXMUSIC2API_BASE_URL: str = "http://127.0.0.1:3000"
|
|
31
42
|
|
|
32
43
|
|
|
@@ -221,6 +232,73 @@ def load_integrations(
|
|
|
221
232
|
if github_auto_extract_max_items > _MAX_GITHUB_AUTO_EXTRACT_MAX_ITEMS:
|
|
222
233
|
github_auto_extract_max_items = _MAX_GITHUB_AUTO_EXTRACT_MAX_ITEMS
|
|
223
234
|
|
|
235
|
+
# JM(禁漫)配置
|
|
236
|
+
jm_use_proxy = _coerce_bool(
|
|
237
|
+
_get_value(data, ("jm", "use_proxy"), "JM_USE_PROXY"), False
|
|
238
|
+
)
|
|
239
|
+
jm_auto_extract_enabled = _coerce_bool(
|
|
240
|
+
_get_value(data, ("jm", "auto_extract_enabled"), None), False
|
|
241
|
+
)
|
|
242
|
+
jm_auto_extract_group_ids = _coerce_int_list(
|
|
243
|
+
_get_value(data, ("jm", "auto_extract_group_ids"), None)
|
|
244
|
+
)
|
|
245
|
+
jm_auto_extract_private_ids = _coerce_int_list(
|
|
246
|
+
_get_value(data, ("jm", "auto_extract_private_ids"), None)
|
|
247
|
+
)
|
|
248
|
+
jm_auto_extract_max_items = _coerce_int(
|
|
249
|
+
_get_value(data, ("jm", "auto_extract_max_items"), None),
|
|
250
|
+
_DEFAULT_JM_AUTO_EXTRACT_MAX_ITEMS,
|
|
251
|
+
)
|
|
252
|
+
if jm_auto_extract_max_items <= 0:
|
|
253
|
+
jm_auto_extract_max_items = _DEFAULT_JM_AUTO_EXTRACT_MAX_ITEMS
|
|
254
|
+
if jm_auto_extract_max_items > _MAX_JM_AUTO_EXTRACT_MAX_ITEMS:
|
|
255
|
+
jm_auto_extract_max_items = _MAX_JM_AUTO_EXTRACT_MAX_ITEMS
|
|
256
|
+
jm_max_file_size = _coerce_int(
|
|
257
|
+
_get_value(data, ("jm", "max_file_size"), None), _DEFAULT_JM_MAX_FILE_SIZE_MB
|
|
258
|
+
)
|
|
259
|
+
if jm_max_file_size < 0:
|
|
260
|
+
jm_max_file_size = _DEFAULT_JM_MAX_FILE_SIZE_MB
|
|
261
|
+
jm_max_chapters = _coerce_int(_get_value(data, ("jm", "max_chapters"), None), 0)
|
|
262
|
+
if jm_max_chapters < 0:
|
|
263
|
+
jm_max_chapters = 0
|
|
264
|
+
jm_pdf_dpi = _coerce_float(
|
|
265
|
+
_get_value(data, ("jm", "pdf_dpi"), None), _DEFAULT_JM_PDF_DPI
|
|
266
|
+
)
|
|
267
|
+
if jm_pdf_dpi <= 0:
|
|
268
|
+
jm_pdf_dpi = _DEFAULT_JM_PDF_DPI
|
|
269
|
+
jm_image_quality = _coerce_int(
|
|
270
|
+
_get_value(data, ("jm", "image_quality"), None), _DEFAULT_JM_IMAGE_QUALITY
|
|
271
|
+
)
|
|
272
|
+
if jm_image_quality < 1:
|
|
273
|
+
jm_image_quality = _DEFAULT_JM_IMAGE_QUALITY
|
|
274
|
+
if jm_image_quality > 100:
|
|
275
|
+
jm_image_quality = 100
|
|
276
|
+
jm_download_concurrency = _coerce_int(
|
|
277
|
+
_get_value(data, ("jm", "download_concurrency"), None),
|
|
278
|
+
_DEFAULT_JM_DOWNLOAD_CONCURRENCY,
|
|
279
|
+
)
|
|
280
|
+
if jm_download_concurrency < 1:
|
|
281
|
+
jm_download_concurrency = _DEFAULT_JM_DOWNLOAD_CONCURRENCY
|
|
282
|
+
if jm_download_concurrency > _MAX_JM_DOWNLOAD_CONCURRENCY:
|
|
283
|
+
jm_download_concurrency = _MAX_JM_DOWNLOAD_CONCURRENCY
|
|
284
|
+
jm_request_timeout = _coerce_float(
|
|
285
|
+
_get_value(data, ("jm", "request_timeout"), None),
|
|
286
|
+
_DEFAULT_JM_REQUEST_TIMEOUT_SECONDS,
|
|
287
|
+
)
|
|
288
|
+
if jm_request_timeout <= 0:
|
|
289
|
+
jm_request_timeout = _DEFAULT_JM_REQUEST_TIMEOUT_SECONDS
|
|
290
|
+
if jm_request_timeout > _MAX_JM_REQUEST_TIMEOUT_SECONDS:
|
|
291
|
+
jm_request_timeout = _MAX_JM_REQUEST_TIMEOUT_SECONDS
|
|
292
|
+
jm_image_timeout = _coerce_float(
|
|
293
|
+
_get_value(data, ("jm", "image_timeout"), None),
|
|
294
|
+
_DEFAULT_JM_IMAGE_TIMEOUT_SECONDS,
|
|
295
|
+
)
|
|
296
|
+
if jm_image_timeout <= 0:
|
|
297
|
+
jm_image_timeout = _DEFAULT_JM_IMAGE_TIMEOUT_SECONDS
|
|
298
|
+
if jm_image_timeout > _MAX_JM_IMAGE_TIMEOUT_SECONDS:
|
|
299
|
+
jm_image_timeout = _MAX_JM_IMAGE_TIMEOUT_SECONDS
|
|
300
|
+
jm_session_dir = _coerce_str(_get_value(data, ("jm", "session_dir"), None), "")
|
|
301
|
+
|
|
224
302
|
# Code Delivery Agent 配置
|
|
225
303
|
code_delivery_enabled = _coerce_bool(
|
|
226
304
|
_get_value(data, ("code_delivery", "enabled"), None), True
|
|
@@ -386,6 +464,19 @@ def load_integrations(
|
|
|
386
464
|
"github_auto_extract_group_ids": github_auto_extract_group_ids,
|
|
387
465
|
"github_auto_extract_private_ids": github_auto_extract_private_ids,
|
|
388
466
|
"github_auto_extract_max_items": github_auto_extract_max_items,
|
|
467
|
+
"jm_use_proxy": jm_use_proxy,
|
|
468
|
+
"jm_auto_extract_enabled": jm_auto_extract_enabled,
|
|
469
|
+
"jm_auto_extract_group_ids": jm_auto_extract_group_ids,
|
|
470
|
+
"jm_auto_extract_private_ids": jm_auto_extract_private_ids,
|
|
471
|
+
"jm_auto_extract_max_items": jm_auto_extract_max_items,
|
|
472
|
+
"jm_max_file_size": jm_max_file_size,
|
|
473
|
+
"jm_max_chapters": jm_max_chapters,
|
|
474
|
+
"jm_pdf_dpi": jm_pdf_dpi,
|
|
475
|
+
"jm_image_quality": jm_image_quality,
|
|
476
|
+
"jm_download_concurrency": jm_download_concurrency,
|
|
477
|
+
"jm_request_timeout": jm_request_timeout,
|
|
478
|
+
"jm_image_timeout": jm_image_timeout,
|
|
479
|
+
"jm_session_dir": jm_session_dir,
|
|
389
480
|
"code_delivery_enabled": code_delivery_enabled,
|
|
390
481
|
"code_delivery_task_root": code_delivery_task_root,
|
|
391
482
|
"code_delivery_docker_image": code_delivery_docker_image,
|
|
@@ -148,6 +148,29 @@ class AutoExtractMixin:
|
|
|
148
148
|
|
|
149
149
|
return repo_ids
|
|
150
150
|
|
|
151
|
+
def _extract_jm_ids(
|
|
152
|
+
self, text: str, message_content: list[dict[str, Any]]
|
|
153
|
+
) -> list[str]:
|
|
154
|
+
"""从文本和消息段中提取禁漫(JM)车号。"""
|
|
155
|
+
from Undefined.jm.parser import extract_from_json_message, extract_jm_ids
|
|
156
|
+
|
|
157
|
+
book_ids: list[str] = []
|
|
158
|
+
seen: set[str] = set()
|
|
159
|
+
|
|
160
|
+
for book_id in extract_jm_ids(text):
|
|
161
|
+
if book_id in seen:
|
|
162
|
+
continue
|
|
163
|
+
seen.add(book_id)
|
|
164
|
+
book_ids.append(book_id)
|
|
165
|
+
|
|
166
|
+
for book_id in extract_from_json_message(message_content):
|
|
167
|
+
if book_id in seen:
|
|
168
|
+
continue
|
|
169
|
+
seen.add(book_id)
|
|
170
|
+
book_ids.append(book_id)
|
|
171
|
+
|
|
172
|
+
return book_ids
|
|
173
|
+
|
|
151
174
|
async def _handle_bilibili_extract(
|
|
152
175
|
self,
|
|
153
176
|
target_id: int,
|
|
@@ -399,3 +422,49 @@ class AutoExtractMixin:
|
|
|
399
422
|
type(exc).__name__,
|
|
400
423
|
exc,
|
|
401
424
|
)
|
|
425
|
+
|
|
426
|
+
async def _handle_jm_extract(
|
|
427
|
+
self,
|
|
428
|
+
target_id: int,
|
|
429
|
+
book_ids: list[str],
|
|
430
|
+
target_type: str,
|
|
431
|
+
sender: Any | None = None,
|
|
432
|
+
) -> None:
|
|
433
|
+
"""处理禁漫(JM)自动提取和发送。"""
|
|
434
|
+
from Undefined.jm.sender import send_jm_book
|
|
435
|
+
|
|
436
|
+
max_items = max(1, int(getattr(self.config, "jm_auto_extract_max_items", 1)))
|
|
437
|
+
resolved_sender = sender or self.sender
|
|
438
|
+
for book_id in book_ids[:max_items]:
|
|
439
|
+
try:
|
|
440
|
+
result = await send_jm_book(
|
|
441
|
+
book_id,
|
|
442
|
+
sender=resolved_sender,
|
|
443
|
+
target_type=target_type, # type: ignore[arg-type]
|
|
444
|
+
target_id=target_id,
|
|
445
|
+
config=self.config,
|
|
446
|
+
)
|
|
447
|
+
logger.info(
|
|
448
|
+
"[JM] 自动提取完成 %s → %s:%s: %s",
|
|
449
|
+
book_id,
|
|
450
|
+
target_type,
|
|
451
|
+
target_id,
|
|
452
|
+
result,
|
|
453
|
+
)
|
|
454
|
+
except Exception as exc:
|
|
455
|
+
logger.exception(
|
|
456
|
+
"[JM] 自动提取失败 %s → %s:%s: exc_type=%s exc=%r",
|
|
457
|
+
book_id,
|
|
458
|
+
target_type,
|
|
459
|
+
target_id,
|
|
460
|
+
type(exc).__name__,
|
|
461
|
+
exc,
|
|
462
|
+
)
|
|
463
|
+
try:
|
|
464
|
+
error_msg = f"JM 提取失败:{exc}"
|
|
465
|
+
if target_type == "group":
|
|
466
|
+
await resolved_sender.send_group_message(target_id, error_msg)
|
|
467
|
+
else:
|
|
468
|
+
await resolved_sender.send_private_message(target_id, error_msg)
|
|
469
|
+
except Exception:
|
|
470
|
+
pass
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""禁漫(JM / 18comic)自动提取:标识解析、PDF 下载合成与合并转发。"""
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"""jmcpy 客户端设置。
|
|
2
|
+
|
|
3
|
+
jmcpy 的接口与图片 CDN 都走 HTTPS,因此这里只按 scheme 取 ``[proxy]`` 里的代理,
|
|
4
|
+
再叠加 ``[jm]`` 的超时、并发与会话目录。
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from __future__ import annotations
|
|
8
|
+
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
from typing import Any
|
|
11
|
+
|
|
12
|
+
from jmcpy import Settings
|
|
13
|
+
|
|
14
|
+
from Undefined.skills.http_config import get_request_proxy
|
|
15
|
+
|
|
16
|
+
#: 仅用于按 scheme 选择代理地址(jmcpy 的请求全部是 HTTPS)
|
|
17
|
+
_PROXY_PROBE_URL = "https://18comic.vip"
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def build_settings(config: Any) -> Settings:
|
|
21
|
+
"""把 ``[jm]`` 配置映射成 jmcpy 的 :class:`~jmcpy.Settings`。"""
|
|
22
|
+
home = str(getattr(config, "jm_session_dir", "") or "").strip()
|
|
23
|
+
return Settings(
|
|
24
|
+
proxy=get_request_proxy(_PROXY_PROBE_URL, proxy_scope="jm", config=config),
|
|
25
|
+
timeout=float(getattr(config, "jm_request_timeout", 20.0)),
|
|
26
|
+
image_timeout=float(getattr(config, "jm_image_timeout", 60.0)),
|
|
27
|
+
concurrency=int(getattr(config, "jm_download_concurrency", 8)),
|
|
28
|
+
home=Path(home) if home else None,
|
|
29
|
+
)
|