sycommon-python-lib 0.2.1a0__tar.gz → 0.2.1a2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/PKG-INFO +1 -1
  2. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/pyproject.toml +1 -1
  3. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/sandbox/http_sandbox_backend.py +11 -3
  4. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/sandbox.py +31 -3
  5. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/PKG-INFO +1 -1
  6. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/README.md +0 -0
  7. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/setup.cfg +0 -0
  8. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/__init__.py +0 -0
  9. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/cli.py +0 -0
  10. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/core/__init__.py +0 -0
  11. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/core/console.py +0 -0
  12. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/core/models.py +0 -0
  13. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/core/project.py +0 -0
  14. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/core/utils.py +0 -0
  15. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/templates/__init__.py +0 -0
  16. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/templates/agent/__init__.py +0 -0
  17. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/templates/base/__init__.py +0 -0
  18. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/command/templates/web/__init__.py +0 -0
  19. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/__init__.py +0 -0
  20. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/__init__.py +0 -0
  21. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/01_basic_agent.py +0 -0
  22. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/02_tool_agent.py +0 -0
  23. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/03_structured_output.py +0 -0
  24. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/04_memory_agent.py +0 -0
  25. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/05_streaming.py +0 -0
  26. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/06_multi_agent.py +0 -0
  27. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/07_skills_agent.py +0 -0
  28. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/08_middleware.py +0 -0
  29. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/09_interrupt.py +0 -0
  30. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/10_custom_llm.py +0 -0
  31. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/11_complex_workflow.py +0 -0
  32. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/12_batch_processing.py +0 -0
  33. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/__init__.py +0 -0
  34. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/01_basic_monitoring.py +0 -0
  35. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/02_permission_control.py +0 -0
  36. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/03_tool_skill_filter.py +0 -0
  37. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/04_caching_retry.py +0 -0
  38. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/05_sanitization.py +0 -0
  39. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/06_tracking.py +0 -0
  40. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/07_advanced.py +0 -0
  41. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/08_progressive_skills.py +0 -0
  42. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/__init__.py +0 -0
  43. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/middleware/override_examples.py +0 -0
  44. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/examples/virtual_employee_demo.py +0 -0
  45. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/exports.py +0 -0
  46. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/get_agent.py +0 -0
  47. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/sandbox/__init__.py +0 -0
  48. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/sandbox/file_ops.py +0 -0
  49. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/sandbox/sandbox_pool.py +0 -0
  50. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/sandbox/session.py +0 -0
  51. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/skills/__init__.py +0 -0
  52. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/skills/examples/faq_handler/scripts/search.py +0 -0
  53. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/skills/exports.py +0 -0
  54. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/agent/virtual_employee.py +0 -0
  55. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/Config.py +0 -0
  56. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/DatabaseConfig.py +0 -0
  57. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/ElasticsearchConfig.py +0 -0
  58. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/EmbeddingConfig.py +0 -0
  59. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/LLMConfig.py +0 -0
  60. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/LangfuseConfig.py +0 -0
  61. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/MQConfig.py +0 -0
  62. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/RedisConfig.py +0 -0
  63. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/RerankerConfig.py +0 -0
  64. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/SentryConfig.py +0 -0
  65. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/config/__init__.py +0 -0
  66. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/async_base_db_service.py +0 -0
  67. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/async_database_service.py +0 -0
  68. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/base_db_service.py +0 -0
  69. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/database_service.py +0 -0
  70. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/elasticsearch_service.py +0 -0
  71. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/redis_service.py +0 -0
  72. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/database/token_usage_db_service.py +0 -0
  73. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/health/__init__.py +0 -0
  74. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/health/health_check.py +0 -0
  75. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/health/metrics.py +0 -0
  76. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/health/ping.py +0 -0
  77. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/heartbeat_process/__init__.py +0 -0
  78. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/heartbeat_process/heartbeat_config.py +0 -0
  79. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/heartbeat_process/heartbeat_process_manager.py +0 -0
  80. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/heartbeat_process/heartbeat_process_worker.py +0 -0
  81. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/__init__.py +0 -0
  82. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/embedding.py +0 -0
  83. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/get_llm.py +0 -0
  84. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/llm_logger.py +0 -0
  85. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/llm_tokens.py +0 -0
  86. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/llm_with_token_tracking.py +0 -0
  87. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/native_with_fallback_runnable.py +0 -0
  88. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/output_fixing_runnable.py +0 -0
  89. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/struct_token.py +0 -0
  90. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/sy_langfuse.py +0 -0
  91. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/token_usage_es_service.py +0 -0
  92. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/token_usage_mysql_service.py +0 -0
  93. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/llm/usage_token.py +0 -0
  94. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/__init__.py +0 -0
  95. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/async_sql_logger.py +0 -0
  96. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/kafka_log.py +0 -0
  97. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/logger_levels.py +0 -0
  98. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/logger_wrapper.py +0 -0
  99. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/process_logger.py +0 -0
  100. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/logging/sql_logger.py +0 -0
  101. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/__init__.py +0 -0
  102. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/context.py +0 -0
  103. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/cors.py +0 -0
  104. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/docs.py +0 -0
  105. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/exception.py +0 -0
  106. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/middleware.py +0 -0
  107. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/monitor_memory.py +0 -0
  108. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/mq.py +0 -0
  109. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/timeout.py +0 -0
  110. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/middleware/traceid.py +0 -0
  111. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/__init__.py +0 -0
  112. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/base_http.py +0 -0
  113. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/log.py +0 -0
  114. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/mqlistener_config.py +0 -0
  115. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/mqmsg_model.py +0 -0
  116. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/mqsend_config.py +0 -0
  117. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/sso_user.py +0 -0
  118. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/token_usage.py +0 -0
  119. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/models/token_usage_mysql.py +0 -0
  120. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/notice/__init__.py +0 -0
  121. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/notice/uvicorn_monitor.py +0 -0
  122. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/process_pool_consumer.py +0 -0
  123. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_client.py +0 -0
  124. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_pool.py +0 -0
  125. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service.py +0 -0
  126. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service_client_manager.py +0 -0
  127. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service_connection_monitor.py +0 -0
  128. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service_consumer_manager.py +0 -0
  129. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service_core.py +0 -0
  130. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/rabbitmq/rabbitmq_service_producer_manager.py +0 -0
  131. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/sentry/__init__.py +0 -0
  132. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/sentry/sy_sentry.py +0 -0
  133. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/services.py +0 -0
  134. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/sse/__init__.py +0 -0
  135. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/sse/event.py +0 -0
  136. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/sse/sse.py +0 -0
  137. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/__init__.py +0 -0
  138. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/example.py +0 -0
  139. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/example2.py +0 -0
  140. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/feign.py +0 -0
  141. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/feign_client.py +0 -0
  142. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_client_base.py +0 -0
  143. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_config_manager.py +0 -0
  144. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_heartbeat_manager.py +0 -0
  145. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_service.py +0 -0
  146. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_service_discovery.py +0 -0
  147. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/nacos_service_registration.py +0 -0
  148. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/synacos/param.py +0 -0
  149. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tests/deep_agent_server.py +0 -0
  150. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tests/test_deep_agent.py +0 -0
  151. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tests/test_email.py +0 -0
  152. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tests/test_mq.py +0 -0
  153. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/__init__.py +0 -0
  154. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/async_utils.py +0 -0
  155. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/docs.py +0 -0
  156. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/env.py +0 -0
  157. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/merge_headers.py +0 -0
  158. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/snowflake.py +0 -0
  159. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/syemail.py +0 -0
  160. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon/tools/timing.py +0 -0
  161. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/SOURCES.txt +0 -0
  162. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/dependency_links.txt +0 -0
  163. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/entry_points.txt +0 -0
  164. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/requires.txt +0 -0
  165. {sycommon_python_lib-0.2.1a0 → sycommon_python_lib-0.2.1a2}/src/sycommon_python_lib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.2.1a0
3
+ Version: 0.2.1a2
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "sycommon-python-lib"
3
- version = "0.2.1a0"
3
+ version = "0.2.1a2"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -13,14 +13,14 @@ from sycommon.agent.sandbox.session import get_async_session
13
13
  from sycommon.agent.sandbox.file_ops import FileOperationsMixin, SANDBOX_API_PREFIX
14
14
 
15
15
  from deepagents.backends.protocol import (
16
- BackendProtocol,
16
+ SandboxBackendProtocol,
17
17
  ExecuteResponse,
18
18
  FileDownloadResponse,
19
19
  FileUploadResponse,
20
20
  )
21
21
 
22
22
 
23
- class HTTPSandboxBackend(FileOperationsMixin, BackendProtocol):
23
+ class HTTPSandboxBackend(FileOperationsMixin, SandboxBackendProtocol):
24
24
  """
25
25
  通过 HTTP API 连接远程沙箱容器(仅异步)
26
26
 
@@ -92,11 +92,19 @@ class HTTPSandboxBackend(FileOperationsMixin, BackendProtocol):
92
92
  HTTPSandboxBackend 实例
93
93
 
94
94
  Raises:
95
- RuntimeError: 无法发现服务实例
95
+ RuntimeError: 无法发现服务实例或 NacosService 未初始化
96
96
  """
97
97
  from sycommon.synacos.nacos_service import NacosService
98
98
 
99
+ # 获取单例实例(参考 feign_client 的方式)
99
100
  nacos_manager = NacosService(None)
101
+
102
+ # 检查单例是否已正确初始化
103
+ if not hasattr(nacos_manager, 'discovery'):
104
+ raise RuntimeError(
105
+ "NacosService 未初始化,请确保服务启动时已调用 NacosService.setup_nacos(config)"
106
+ )
107
+
100
108
  instances = nacos_manager.get_service_instances(
101
109
  service_name, group=group, target_version=version
102
110
  )
@@ -14,6 +14,7 @@ from fastapi import FastAPI, APIRouter, Request, Header
14
14
  from typing import Optional
15
15
 
16
16
  from pydantic import BaseModel
17
+ from sycommon.logging.kafka_log import SYLogger
17
18
 
18
19
 
19
20
  # ============== 常量配置 ==============
@@ -230,6 +231,8 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
230
231
  exit_code=1
231
232
  )
232
233
 
234
+ SYLogger.info(f"[Sandbox Server] 执行命令: {req.command} (user={req.user_id}, timeout={req.timeout}s)")
235
+
233
236
  try:
234
237
  result = subprocess.run(
235
238
  req.command,
@@ -258,6 +261,8 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
258
261
  if result.returncode != 0:
259
262
  output = f"{output.rstrip()}\n\nExit code: {result.returncode}"
260
263
 
264
+ SYLogger.info(f"[Sandbox Server] 执行完成: exit_code={result.returncode}, output_len={len(output)}")
265
+
261
266
  return ExecuteResponse(
262
267
  output=output,
263
268
  exit_code=result.returncode,
@@ -265,12 +270,14 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
265
270
  )
266
271
 
267
272
  except subprocess.TimeoutExpired:
273
+ SYLogger.error(f"[Sandbox Server] 执行超时: {req.timeout}s")
268
274
  return ExecuteResponse(
269
275
  output=f"Error: Command timed out after {req.timeout} seconds.",
270
276
  exit_code=124,
271
277
  truncated=False
272
278
  )
273
279
  except Exception as e:
280
+ SYLogger.error(f"[Sandbox Server] 执行异常: {e}")
274
281
  return ExecuteResponse(
275
282
  output=f"Error: {type(e).__name__}: {e}",
276
283
  exit_code=1,
@@ -287,8 +294,10 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
287
294
  target_path = os.path.join(workspace, target_path)
288
295
 
289
296
  if not os.path.isdir(target_path):
297
+ SYLogger.error(f"[Sandbox Server] 列目录失败: 目录不存在 {target_path}")
290
298
  return []
291
299
 
300
+ SYLogger.info(f"[Sandbox Server] 列出目录: {target_path}")
292
301
  results = []
293
302
  try:
294
303
  with os.scandir(target_path) as it:
@@ -302,9 +311,10 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
302
311
  except Exception:
303
312
  pass
304
313
  results.append(info)
305
- except Exception:
306
- pass
314
+ except Exception as e:
315
+ SYLogger.error(f"[Sandbox Server] 列目录异常: {e}")
307
316
 
317
+ SYLogger.info(f"[Sandbox Server] 目录内容: {len(results)} 项")
308
318
  return results
309
319
 
310
320
  @sandbox_router.post("/read", response_model=ReadResponse)
@@ -317,8 +327,11 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
317
327
  file_path = os.path.join(workspace, file_path)
318
328
 
319
329
  if not os.path.isfile(file_path):
330
+ SYLogger.error(f"[Sandbox Server] 读取失败: 文件不存在 {file_path}")
320
331
  return ReadResponse(error=f"File '{file_path}' not found", content=None)
321
332
 
333
+ SYLogger.info(f"[Sandbox Server] 读取文件: {file_path} (offset={req.offset}, limit={req.limit})")
334
+
322
335
  try:
323
336
  with open(file_path, 'r') as f:
324
337
  lines = f.readlines()
@@ -335,9 +348,12 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
335
348
  line_num = req.offset + i + 1
336
349
  output.append(f"{line_num:6d}\t{line.rstrip()}")
337
350
 
338
- return ReadResponse(content="\n".join(output), error=None)
351
+ content = "\n".join(output)
352
+ SYLogger.info(f"[Sandbox Server] 读取完成: {len(selected)} 行")
353
+ return ReadResponse(content=content, error=None)
339
354
 
340
355
  except Exception as e:
356
+ SYLogger.error(f"[Sandbox Server] 读取异常: {e}")
341
357
  return ReadResponse(error=str(e), content=None)
342
358
 
343
359
  @sandbox_router.post("/write", response_model=WriteResponse)
@@ -349,10 +365,13 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
349
365
  if not os.path.isabs(file_path):
350
366
  file_path = os.path.join(workspace, file_path)
351
367
 
368
+ SYLogger.info(f"[Sandbox Server] 写入文件: {file_path}")
369
+
352
370
  try:
353
371
  content = base64.b64decode(req.content).decode('utf-8')
354
372
 
355
373
  if os.path.exists(file_path):
374
+ SYLogger.error(f"[Sandbox Server] 写入失败: 文件已存在 {file_path}")
356
375
  return WriteResponse(error=f"File '{file_path}' already exists", path=None)
357
376
 
358
377
  parent = os.path.dirname(file_path)
@@ -362,9 +381,11 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
362
381
  with open(file_path, 'w') as f:
363
382
  f.write(content)
364
383
 
384
+ SYLogger.info(f"[Sandbox Server] 写入成功: {file_path} ({len(content)} 字符)")
365
385
  return WriteResponse(error=None, path=file_path)
366
386
 
367
387
  except Exception as e:
388
+ SYLogger.error(f"[Sandbox Server] 写入异常: {e}")
368
389
  return WriteResponse(error=str(e), path=None)
369
390
 
370
391
  @sandbox_router.post("/edit", response_model=EditResponse)
@@ -376,11 +397,14 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
376
397
  if not os.path.isabs(file_path):
377
398
  file_path = os.path.join(workspace, file_path)
378
399
 
400
+ SYLogger.info(f"[Sandbox Server] 编辑文件: {file_path}")
401
+
379
402
  try:
380
403
  old_string = base64.b64decode(req.old_string).decode('utf-8')
381
404
  new_string = base64.b64decode(req.new_string).decode('utf-8')
382
405
 
383
406
  if not os.path.isfile(file_path):
407
+ SYLogger.error(f"[Sandbox Server] 编辑失败: 文件不存在 {file_path}")
384
408
  return EditResponse(error=f"File '{file_path}' not found")
385
409
 
386
410
  with open(file_path, 'r') as f:
@@ -389,8 +413,10 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
389
413
  count = content.count(old_string)
390
414
 
391
415
  if count == 0:
416
+ SYLogger.error(f"[Sandbox Server] 编辑失败: 未找到匹配字符串")
392
417
  return EditResponse(error=f"String not found: '{old_string[:50]}...'")
393
418
  if count > 1 and not req.replace_all:
419
+ SYLogger.error(f"[Sandbox Server] 编辑失败: 多处匹配 ({count}次)")
394
420
  return EditResponse(
395
421
  error=f"String appears {count} times. Use replace_all=True to replace all."
396
422
  )
@@ -403,9 +429,11 @@ def setup_sandbox_handler(app: FastAPI, config: dict = None):
403
429
  with open(file_path, 'w') as f:
404
430
  f.write(new_content)
405
431
 
432
+ SYLogger.info(f"[Sandbox Server] 编辑成功: {file_path} (替换 {count} 处)")
406
433
  return EditResponse(error=None, path=file_path, occurrences=count)
407
434
 
408
435
  except Exception as e:
436
+ SYLogger.error(f"[Sandbox Server] 编辑异常: {e}")
409
437
  return EditResponse(error=str(e))
410
438
 
411
439
  @sandbox_router.post("/upload", response_model=UploadResponse)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sycommon-python-lib
3
- Version: 0.2.1a0
3
+ Version: 0.2.1a2
4
4
  Summary: Add your description here
5
5
  Requires-Python: >=3.11
6
6
  Description-Content-Type: text/markdown