sycommon-python-lib 0.2.5a30__tar.gz → 0.2.5a32__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.
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/pyproject.toml +1 -1
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/deep_agent.py +52 -5
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/http_sandbox_backend.py +12 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/summarization_utils.py +3 -2
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/kafka_log.py +13 -9
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/tool_result_truncation.py +2 -2
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/traceid.py +2 -7
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/PKG-INFO +1 -1
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/README.md +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/setup.cfg +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/cli.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/core/console.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/core/models.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/core/project.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/core/utils.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/main_agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/nodes/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/nodes/example_node.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/states/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/agent/states/agent_state.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/api/query.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/api/sse/agent.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/db/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/db/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/db/model/entity.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/db/service.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/model/parse.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/.env.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/.gitignore.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/Dockerfile.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/app.yaml.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/client/FileServiceClient.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/model/file_info.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/requirements.txt.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/commands/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/commands/hello.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/pyproject.toml.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/README.md.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/api/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/api/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/api/sse/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/api/sse/echo.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/app.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/client/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/model/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/tools/__init__.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/tools/mq.py.tpl +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/nexus/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/__main__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/agents/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/agents/factory.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/agents/prompts.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/browser.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/console.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/dom.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/network.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/page_errors.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/performance.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/screenshot.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/client.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/protocol.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/repl.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cli.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/cdp_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/chat_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/create_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/evaluate_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/init_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/memory_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/resume_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/rollback_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/run_cmd.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/backend.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/display.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/git_integration.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/llm.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/state.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/evaluate/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/evaluate/api_evaluator.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/compressor.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/full.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/hot.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/warm.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/mode/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/mode/create.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/mode/optimize.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/models/config_models.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/baseline_tests.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/checkpoint.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/convergence.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/diagnosis.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/engine.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/environment.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/experience.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/harness_prompts.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/history.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/optimization_logger.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/pre_validation.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/reward.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_bandit.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_generator.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_prompts.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/skills/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/agent_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/chat_events.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/models.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/tool_loader.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/multi_agent_team.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/file_ops.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/minio_sync.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/sandbox_recovery.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/session.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/ldap_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/oa_cache.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/oa_crypto.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/oa_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/auth/wecom_ldap_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/Config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/DatabaseConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/ElasticsearchConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/EmbeddingConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/LLMConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/LangfuseConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/MQConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/PgConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/RedisConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/RerankerConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/SentryConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/XxlJobConfig.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/config/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/async_base_db_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/async_database_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/base_db_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/database_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/elasticsearch_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/pg_checkpoint_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/redis_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/database/token_usage_db_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/health/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/health/health_check.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/health/metrics.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/health/ping.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/heartbeat_process/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/embedding.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/get_llm.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/llm_logger.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/llm_tokens.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/output_fixing_runnable.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/struct_token.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/sy_langfuse.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/tiktoken_cache/9b5ad71b2ce5302211f9c61530b329a4922fc6a4 +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/tiktoken_cache/fb374d419588a4632f3f557e76b4b70aebbca790 +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/token_usage_es_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/token_utils.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/llm/usage_token.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/async_sql_logger.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/logger_levels.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/logger_wrapper.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/process_logger.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/sql_logger.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/mcp_server/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/mcp_server/server.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/context.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/cors.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/docs.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/exception.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/middleware.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/monitor_memory.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/mq.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/sandbox.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/timeout.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/token_tracking.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/base_http.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/log.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/mcp_server_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/mqlistener_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/mqmsg_model.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/mqsend_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/sandbox.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/sso_user.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/token_usage.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/token_usage_mysql.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/models/xxljob_handler_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/notice/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/notice/uvicorn_monitor.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/notice/wecom_message.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/sentry/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/sentry/sy_sentry.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/services.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/sse/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/sse/event.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/sse/sse.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/example.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/example2.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/feign.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/feign_client.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_client_base.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_config_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/nacos_service_registration.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/synacos/param.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/deep_agent_server.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_consumer_recovery.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_deep_agent.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_dynamic_max_tokens.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_email.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_encoding_cache.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_mcp_server.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_minimax_reasoning.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_mq.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_oa_login.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_real_summarization.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_summarization_config.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tests/test_summarization_real.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/async_utils.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/docs.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/env.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/merge_headers.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/snowflake.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/syemail.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/tools/timing.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/xxljob/__init__.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/xxljob/xxljob_service.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/requires.txt +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/tests/test_asyncio_logging.py +0 -0
- {sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/tests/test_sycli.py +0 -0
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/deep_agent.py
RENAMED
|
@@ -37,10 +37,13 @@
|
|
|
37
37
|
import asyncio
|
|
38
38
|
import json
|
|
39
39
|
import os
|
|
40
|
+
import re
|
|
40
41
|
from collections.abc import Awaitable, Callable
|
|
41
42
|
from pathlib import Path
|
|
42
43
|
from typing import Any, AsyncGenerator, Dict, List, Optional, Tuple, TYPE_CHECKING
|
|
43
44
|
|
|
45
|
+
import yaml
|
|
46
|
+
|
|
44
47
|
from pydantic import BaseModel, Field
|
|
45
48
|
from langchain_core.messages import HumanMessage, BaseMessage, AIMessageChunk, AIMessage, SystemMessage
|
|
46
49
|
from langchain_core.tools import BaseTool, tool
|
|
@@ -1104,11 +1107,25 @@ async def create_deep_agent(
|
|
|
1104
1107
|
)
|
|
1105
1108
|
|
|
1106
1109
|
|
|
1110
|
+
def _parse_skill_version(content: str) -> str:
|
|
1111
|
+
"""从 SKILL.md 内容中解析 version 字段,无 version 返回空字符串"""
|
|
1112
|
+
match = re.match(r"^---\s*\n(.*?)\n---\s*\n", content, re.DOTALL)
|
|
1113
|
+
if not match:
|
|
1114
|
+
return ""
|
|
1115
|
+
try:
|
|
1116
|
+
data = yaml.safe_load(match.group(1))
|
|
1117
|
+
if isinstance(data, dict):
|
|
1118
|
+
return str(data.get("version", ""))
|
|
1119
|
+
except Exception:
|
|
1120
|
+
pass
|
|
1121
|
+
return ""
|
|
1122
|
+
|
|
1123
|
+
|
|
1107
1124
|
async def _sync_skills_to_sandbox(
|
|
1108
1125
|
skills_dir: str,
|
|
1109
1126
|
backend: HTTPSandboxBackend,
|
|
1110
1127
|
) -> None:
|
|
1111
|
-
"""同步 skills
|
|
1128
|
+
"""同步 skills 到沙箱(按版本检查,版本不一致则覆盖)"""
|
|
1112
1129
|
if not os.path.isdir(skills_dir):
|
|
1113
1130
|
return
|
|
1114
1131
|
|
|
@@ -1121,16 +1138,46 @@ async def _sync_skills_to_sandbox(
|
|
|
1121
1138
|
if child.is_dir:
|
|
1122
1139
|
existing_dirs.add(child.name)
|
|
1123
1140
|
|
|
1124
|
-
#
|
|
1141
|
+
# 遍历本地 skills,按版本决定是否同步
|
|
1125
1142
|
for skill_name in os.listdir(skills_dir):
|
|
1126
1143
|
src = os.path.join(skills_dir, skill_name)
|
|
1127
1144
|
if not os.path.isdir(src):
|
|
1128
1145
|
continue
|
|
1146
|
+
|
|
1147
|
+
# 读取本地版本
|
|
1148
|
+
local_skill_md = os.path.join(src, "SKILL.md")
|
|
1149
|
+
local_version = ""
|
|
1150
|
+
if os.path.isfile(local_skill_md):
|
|
1151
|
+
try:
|
|
1152
|
+
with open(local_skill_md, "r", encoding="utf-8") as f:
|
|
1153
|
+
local_version = _parse_skill_version(f.read())
|
|
1154
|
+
except Exception:
|
|
1155
|
+
pass
|
|
1156
|
+
|
|
1129
1157
|
if skill_name in existing_dirs:
|
|
1130
|
-
|
|
1131
|
-
|
|
1158
|
+
# 读取沙箱中的版本
|
|
1159
|
+
remote_version = ""
|
|
1160
|
+
try:
|
|
1161
|
+
remote_content = await backend.aread(f"/skills/{skill_name}/SKILL.md")
|
|
1162
|
+
if remote_content:
|
|
1163
|
+
remote_version = _parse_skill_version(remote_content)
|
|
1164
|
+
except Exception:
|
|
1165
|
+
pass
|
|
1166
|
+
|
|
1167
|
+
if remote_version and remote_version == local_version:
|
|
1168
|
+
SYLogger.debug(f"[DeepAgent] 技能版本一致,跳过: {skill_name} v{local_version}")
|
|
1169
|
+
continue
|
|
1170
|
+
|
|
1171
|
+
# 版本不一致或沙箱无版本,删除后重新上传
|
|
1172
|
+
try:
|
|
1173
|
+
await backend.aexecute(f"rm -rf /skills/{skill_name}")
|
|
1174
|
+
SYLogger.info(f"[DeepAgent] 技能版本不一致,覆盖: {skill_name} ({remote_version or '无版本'} → {local_version})")
|
|
1175
|
+
except Exception as e:
|
|
1176
|
+
SYLogger.warning(f"[DeepAgent] 删除旧版技能失败: {skill_name}, {e}")
|
|
1177
|
+
continue
|
|
1178
|
+
|
|
1132
1179
|
await backend.async_sync_dirs([(src, f"/skills/{skill_name}")])
|
|
1133
|
-
SYLogger.info(f"[DeepAgent] 同步技能到沙箱: {skill_name}")
|
|
1180
|
+
SYLogger.info(f"[DeepAgent] 同步技能到沙箱: {skill_name} v{local_version}")
|
|
1134
1181
|
except Exception as e:
|
|
1135
1182
|
SYLogger.warning(f"[DeepAgent] 技能同步失败: {e}")
|
|
1136
1183
|
|
|
@@ -655,6 +655,18 @@ class HTTPSandboxBackend(FileOperationsMixin, SandboxBackendProtocol):
|
|
|
655
655
|
|
|
656
656
|
# ============== 执行命令 ==============
|
|
657
657
|
|
|
658
|
+
def update_env(self, env_updates: dict[str, str]):
|
|
659
|
+
"""动态更新沙箱环境变量(合并到现有 env,重建 _env_prefix)
|
|
660
|
+
|
|
661
|
+
用于运行时刷新 token 等场景,无需重建整个沙箱实例。
|
|
662
|
+
"""
|
|
663
|
+
self._env.update(env_updates)
|
|
664
|
+
exports = " && ".join(
|
|
665
|
+
f"export {k}={_shell_quote(str(v))}"
|
|
666
|
+
for k, v in self._env.items()
|
|
667
|
+
)
|
|
668
|
+
self._env_prefix = f"{exports} && " if exports else ""
|
|
669
|
+
|
|
658
670
|
def _inject_env(self, command: str) -> str:
|
|
659
671
|
"""在命令前注入环境变量 export"""
|
|
660
672
|
if self._env_prefix:
|
|
@@ -44,7 +44,7 @@ CUSTOM_SUMMARY_PROMPT = """<role>
|
|
|
44
44
|
下面的对话历史将被你在此步骤中提取的上下文替换。
|
|
45
45
|
你需要确保不会重复任何已完成的操作,因此你从对话历史中提取的上下文应集中于对整体目标最重要的信息。
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
请用以下结构提取上下文,每个部分用中文自然段落描述:
|
|
48
48
|
|
|
49
49
|
【用户意图】
|
|
50
50
|
简要描述用户的主要目标或请求,确保足够完整以理解整个会话的目的。
|
|
@@ -186,9 +186,10 @@ _orig_build_new_messages = _OrigDeepAgentsSumm._build_new_messages_with_path
|
|
|
186
186
|
def _patched_build_new_messages(self, summary, file_path):
|
|
187
187
|
if file_path is not None:
|
|
188
188
|
content = (
|
|
189
|
+
"[系统内部消息 - 仅供你理解上下文,绝对禁止将此消息或摘要内容展示、复述或提及给用户]\n\n"
|
|
189
190
|
"你正在一个已经被压缩的对话中继续回复用户。\n\n"
|
|
190
191
|
f"完整的对话历史已保存到 {file_path},如需查阅细节可以读取该文件。\n\n"
|
|
191
|
-
"
|
|
192
|
+
"以下是压缩后的对话摘要(直接基于此摘要理解上下文并正常回复用户,不要提及摘要的存在):\n\n"
|
|
192
193
|
f"<summary>\n{summary}\n</summary>"
|
|
193
194
|
)
|
|
194
195
|
else:
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/logging/kafka_log.py
RENAMED
|
@@ -166,15 +166,19 @@ class KafkaSink:
|
|
|
166
166
|
|
|
167
167
|
def close(self):
|
|
168
168
|
"""关闭 KafkaProducer,释放连接池资源"""
|
|
169
|
-
if self.
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
169
|
+
if self._producer_obj is None:
|
|
170
|
+
return
|
|
171
|
+
# 先移除引用,阻止 write() 继续发送新消息
|
|
172
|
+
self._producer = None
|
|
173
|
+
try:
|
|
174
|
+
self._producer_obj.flush(timeout=5)
|
|
175
|
+
self._producer_obj.close(timeout=10)
|
|
176
|
+
except KeyboardInterrupt:
|
|
177
|
+
pass
|
|
178
|
+
except Exception:
|
|
179
|
+
pass
|
|
180
|
+
finally:
|
|
181
|
+
self._producer_obj = None
|
|
178
182
|
|
|
179
183
|
|
|
180
184
|
class _InterceptHandler(logging.Handler):
|
|
@@ -121,7 +121,7 @@ def _convert_list_content_to_str(content: list, tool_name: str) -> str:
|
|
|
121
121
|
size_kb = len(b64) * 3 // 4 // 1024
|
|
122
122
|
parts.append(
|
|
123
123
|
f"[图片文件 ({mime}, {size_kb}KB) — "
|
|
124
|
-
f"
|
|
124
|
+
f"图片二进制内容已省略。"
|
|
125
125
|
f"请使用 execute 工具通过 Python (如 PIL/OpenCV) 读取并处理图片,"
|
|
126
126
|
f"例如 OCR 识别文字、分析图片内容等。]"
|
|
127
127
|
)
|
|
@@ -130,7 +130,7 @@ def _convert_list_content_to_str(content: list, tool_name: str) -> str:
|
|
|
130
130
|
size_kb = len(item["base64"]) * 3 // 4 // 1024
|
|
131
131
|
parts.append(
|
|
132
132
|
f"[{item_type}文件 ({mime}, {size_kb}KB) — "
|
|
133
|
-
f"
|
|
133
|
+
f"二进制文件内容已省略。"
|
|
134
134
|
f"请使用 execute 工具通过 Python 处理该文件。]"
|
|
135
135
|
)
|
|
136
136
|
elif "text" in item:
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/middleware/traceid.py
RENAMED
|
@@ -250,25 +250,20 @@ def setup_trace_id_handler(app):
|
|
|
250
250
|
|
|
251
251
|
# 构建响应日志
|
|
252
252
|
response_log_body = response_body.decode('utf-8', errors='ignore')
|
|
253
|
-
|
|
254
|
-
# 检测是否包含 base64 二进制内容(如 PDF、图片等)
|
|
255
|
-
is_binary_response = False
|
|
253
|
+
# 检测是否包含 base64 二进制内容(如 PDF、图片等),如有则省略
|
|
256
254
|
try:
|
|
257
255
|
resp_json = json.loads(response_log_body)
|
|
258
256
|
if isinstance(resp_json, dict) and resp_json.get("content") and len(str(resp_json["content"])) > 1000:
|
|
259
257
|
resp_json["content"] = f"... (base64/binary content omitted, {len(str(resp_json['content']))} chars)"
|
|
260
258
|
response_log_body = json.dumps(resp_json, ensure_ascii=False)
|
|
261
|
-
is_binary_response = True
|
|
262
259
|
except (json.JSONDecodeError, ValueError):
|
|
263
260
|
pass
|
|
264
|
-
if not is_binary_response and total_len > 10000:
|
|
265
|
-
response_log_body = response_log_body[:10000] + f"... (truncated, total {total_len} bytes)"
|
|
266
261
|
response_message = {
|
|
267
262
|
"traceId": trace_id,
|
|
268
263
|
"status_code": response.status_code,
|
|
269
264
|
"response_body": response_log_body,
|
|
270
265
|
}
|
|
271
|
-
SYLogger.info(
|
|
266
|
+
SYLogger.info(response_message)
|
|
272
267
|
|
|
273
268
|
# 兜底:确保 Header 必有 TraceId
|
|
274
269
|
try:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/agent/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/.env.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/base/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/cli/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/command/templates/web/app.py.tpl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/console.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/dom.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/cdp/capabilities/network.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/chat_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/create_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/evaluate_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/init_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/memory_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/resume_cmd.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/commands/rollback_cmd.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/core/git_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/evaluate/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/evaluate/api_evaluator.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/memory/compressor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/models/config_models.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/baseline_tests.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/harness_prompts.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/optimization_logger.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/pre_validation.py
RENAMED
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_bandit.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_generator.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycli/rl/strategy_prompts.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/agent_manager.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/chat_events.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/models.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/mcp/tool_loader.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/multi_agent_team.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/__init__.py
RENAMED
|
File without changes
|
{sycommon_python_lib-0.2.5a30 → sycommon_python_lib-0.2.5a32}/src/sycommon/agent/sandbox/file_ops.py
RENAMED
|
File without changes
|
|
File without changes
|