agent-framework-lib 0.8.7.post3__tar.gz → 0.8.7.post4__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 (318) hide show
  1. {agent_framework_lib-0.8.7.post3/agent_framework_lib.egg-info → agent_framework_lib-0.8.7.post4}/PKG-INFO +1 -1
  2. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/base_agent.py +89 -48
  3. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/model_router.py +0 -1
  4. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/server.py +127 -39
  5. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4/agent_framework_lib.egg-info}/PKG-INFO +1 -1
  6. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/pyproject.toml +1 -1
  7. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/ARCHITECTURE.md +0 -0
  8. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/LICENSE +0 -0
  9. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/MANIFEST.in +0 -0
  10. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/README.md +0 -0
  11. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/__init__.py +0 -0
  12. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/__init__.py +0 -0
  13. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/base.py +0 -0
  14. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/__init__.py +0 -0
  15. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/a2a_router.py +0 -0
  16. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/agent_card_builder.py +0 -0
  17. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/agent_card_skill_builder.py +0 -0
  18. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/jsonrpc_dispatcher.py +0 -0
  19. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/models_jsonrpc.py +0 -0
  20. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/sse_wrapper.py +0 -0
  21. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/endpoints/translation_layer.py +0 -0
  22. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/models.py +0 -0
  23. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/providers/__init__.py +0 -0
  24. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/providers/elasticsearch_provider.py +0 -0
  25. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/a2a/providers/postgres_provider.py +0 -0
  26. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/capabilities/__init__.py +0 -0
  27. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/capabilities/resolver.py +0 -0
  28. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/__init__.py +0 -0
  29. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/audit.py +0 -0
  30. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/config.py +0 -0
  31. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/git_provider.py +0 -0
  32. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/herdr_client.py +0 -0
  33. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/models.py +0 -0
  34. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/orchestrator.py +0 -0
  35. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/code_delivery/tools.py +0 -0
  36. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/__init__.py +0 -0
  37. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/activity_formatter.py +0 -0
  38. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/agent_interface.py +0 -0
  39. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/agent_provider.py +0 -0
  40. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/context_budget.py +0 -0
  41. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/context_summarizer.py +0 -0
  42. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/elasticsearch_config_provider.py +0 -0
  43. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/execution_controller.py +0 -0
  44. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/implementation_validator.py +0 -0
  45. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/interruption_message.py +0 -0
  46. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/knowledge_state.py +0 -0
  47. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/loop_detector.py +0 -0
  48. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/model_clients.py +0 -0
  49. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/model_config.py +0 -0
  50. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/models.py +0 -0
  51. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/prompt_builder.py +0 -0
  52. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/provider_calibration.py +0 -0
  53. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/scratchpad_compressor.py +0 -0
  54. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/scratchpad_serializer.py +0 -0
  55. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/state_manager.py +0 -0
  56. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/step_display_config.py +0 -0
  57. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/core/streaming_parts_accumulator.py +0 -0
  58. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/implementations/__init__.py +0 -0
  59. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/implementations/budget_aware_agent.py +0 -0
  60. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/implementations/llamaindex_agent.py +0 -0
  61. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/implementations/llamaindex_memory_adapter.py +0 -0
  62. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/implementations/microsoft_agent.py +0 -0
  63. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/__init__.py +0 -0
  64. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/agent_mixin.py +0 -0
  65. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/base.py +0 -0
  66. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/config.py +0 -0
  67. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/hypothesis_engine.py +0 -0
  68. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/implicit_feedback.py +0 -0
  69. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/manager.py +0 -0
  70. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/personalization.py +0 -0
  71. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/providers/__init__.py +0 -0
  72. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/providers/graphiti_provider.py +0 -0
  73. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/providers/memori_provider.py +0 -0
  74. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/response_lessons.py +0 -0
  75. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/tools.py +0 -0
  76. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/memory/work_patterns.py +0 -0
  77. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/__init__.py +0 -0
  78. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/api_timing_tracker.py +0 -0
  79. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/elasticsearch_circuit_breaker.py +0 -0
  80. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/elasticsearch_logging.py +0 -0
  81. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/error_handling.py +0 -0
  82. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/error_logging.py +0 -0
  83. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/llm_auto_instrumentor.py +0 -0
  84. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/llm_metrics.py +0 -0
  85. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/llm_metrics_collector.py +0 -0
  86. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/llm_metrics_extractor.py +0 -0
  87. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/metrics_aggregator.py +0 -0
  88. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/metrics_config.py +0 -0
  89. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/observability_manager.py +0 -0
  90. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/otel_instrumentor.py +0 -0
  91. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/otel_logging_handler.py +0 -0
  92. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/otel_metrics_recorder.py +0 -0
  93. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/otel_setup.py +0 -0
  94. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/performance_monitor.py +0 -0
  95. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/progress_tracker.py +0 -0
  96. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/resource_manager.py +0 -0
  97. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/resource_metrics_collector.py +0 -0
  98. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/streaming_latency_tracer.py +0 -0
  99. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/timing_tracker.py +0 -0
  100. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/token_counter.py +0 -0
  101. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/monitoring/tracing_context.py +0 -0
  102. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/notifications/__init__.py +0 -0
  103. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/notifications/hub.py +0 -0
  104. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/notifications/webhook_notifier.py +0 -0
  105. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/processing/__init__.py +0 -0
  106. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/processing/ai_content_management.py +0 -0
  107. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/processing/markdown_converter.py +0 -0
  108. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/processing/multimodal_integration.py +0 -0
  109. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/processing/rich_content_validation.py +0 -0
  110. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/py.typed +0 -0
  111. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/session/__init__.py +0 -0
  112. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/session/elasticsearch_session_storage.py +0 -0
  113. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/session/session_storage.py +0 -0
  114. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/__init__.py +0 -0
  115. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/agent_mixin.py +0 -0
  116. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/base.py +0 -0
  117. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/__init__.py +0 -0
  118. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/scripts/__init__.py +0 -0
  119. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/scripts/create_and_register.py +0 -0
  120. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/scripts/register_to_storage.py +0 -0
  121. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/chart/SKILL.md +0 -0
  122. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/chart/chart_to_image.py +0 -0
  123. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/code_delivery/SKILL.md +0 -0
  124. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/code_format/SKILL.md +0 -0
  125. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/code_format/format_python.py +0 -0
  126. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/csv/SKILL.md +0 -0
  127. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/csv/create_csv.py +0 -0
  128. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/csv/read_csv.py +0 -0
  129. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/csv/transform_csv.py +0 -0
  130. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/data_format/SKILL.md +0 -0
  131. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/data_format/json_to_yaml.py +0 -0
  132. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/data_format/yaml_to_json.py +0 -0
  133. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/drawio/SKILL.md +0 -0
  134. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/drawio/create_drawio.py +0 -0
  135. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/email_template/SKILL.md +0 -0
  136. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/excel/SKILL.md +0 -0
  137. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/excel/create_excel.py +0 -0
  138. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file/SKILL.md +0 -0
  139. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file/create_file.py +0 -0
  140. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file/list_files.py +0 -0
  141. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file/read_file.py +0 -0
  142. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file_access/SKILL.md +0 -0
  143. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file_access/download_to_local.py +0 -0
  144. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/file_access/get_file_path.py +0 -0
  145. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/form/SKILL.md +0 -0
  146. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/image_display/SKILL.md +0 -0
  147. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/image_gen/SKILL.md +0 -0
  148. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/image_gen/create_image.py +0 -0
  149. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/image_gen/generate_image.py +0 -0
  150. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/mermaid/SKILL.md +0 -0
  151. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/mermaid/mermaid_to_image.py +0 -0
  152. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/multimodal/SKILL.md +0 -0
  153. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/optionsblock/SKILL.md +0 -0
  154. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/SKILL.md +0 -0
  155. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/create_powerpoint.py +0 -0
  156. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/templates/Big Data Infographics.pptx +0 -0
  157. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/templates/Executive Design Pitch Deck.pptx +0 -0
  158. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/templates/Management Consulting Toolkit.pptx +0 -0
  159. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/templates/__init__.py +0 -0
  160. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/powerpoint/templates/generate_templates.py +0 -0
  161. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/skill_creator/SKILL.md +0 -0
  162. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/skill_creator/skill_api.py +0 -0
  163. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/table/SKILL.md +0 -0
  164. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/table/table_to_image.py +0 -0
  165. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/unified_pdf/SKILL.md +0 -0
  166. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/unified_pdf/create_pdf.py +0 -0
  167. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/web_news_search/SKILL.md +0 -0
  168. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/web_news_search/web_news_search.py +0 -0
  169. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/word/SKILL.md +0 -0
  170. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/builtin/skills/word/create_word.py +0 -0
  171. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/custom_skill_manager.py +0 -0
  172. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/discovery_prompt.py +0 -0
  173. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/markdown_loader.py +0 -0
  174. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/skills/tools.py +0 -0
  175. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/storage/__init__.py +0 -0
  176. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/storage/file_storages.py +0 -0
  177. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/storage/file_system_management.py +0 -0
  178. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/storage/storage_optimizer.py +0 -0
  179. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/__init__.py +0 -0
  180. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/executor.py +0 -0
  181. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/message_injector.py +0 -0
  182. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/message_queue.py +0 -0
  183. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/retrigger.py +0 -0
  184. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/subagents/spawn_tool.py +0 -0
  185. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/__init__.py +0 -0
  186. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/activity_callback.py +0 -0
  187. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/adaptive_pdf_css.py +0 -0
  188. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/base.py +0 -0
  189. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/html_content_analyzer.py +0 -0
  190. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/multimodal_tools.py +0 -0
  191. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/pdf_image_scaler.py +0 -0
  192. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/shell_tool.py +0 -0
  193. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/sizing_config.py +0 -0
  194. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/web_fetch_tool.py +0 -0
  195. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/tools/web_search_tool.py +0 -0
  196. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/__init__.py +0 -0
  197. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/path_utils.py +0 -0
  198. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/post_install.py +0 -0
  199. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/session_title_generator.py +0 -0
  200. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/source_detector.py +0 -0
  201. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/utils/special_blocks.py +0 -0
  202. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/__init__.py +0 -0
  203. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/admin_auth.py +0 -0
  204. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/admin_models.py +0 -0
  205. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/admin_router.py +0 -0
  206. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/admin_services.py +0 -0
  207. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/api_timing_middleware.py +0 -0
  208. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/A2A_GUIDE.md +0 -0
  209. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/BUILTIN_SKILLS_REFERENCE.md +0 -0
  210. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/CREATING_AGENTS.md +0 -0
  211. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/CUSTOM_SKILLS_GUIDE.md +0 -0
  212. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/DOCKER_SETUP.md +0 -0
  213. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/Dockerfile +0 -0
  214. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/GETTING_STARTED.md +0 -0
  215. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/GITNEXUS_USER_GUIDE.md +0 -0
  216. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/MEMORY_INSTALLATION.md +0 -0
  217. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/README.md +0 -0
  218. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/TOOLS_AND_MCP_GUIDE.md +0 -0
  219. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/WORKSPACE_INTEGRATION.md +0 -0
  220. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/api-reference.md +0 -0
  221. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/configuration.md +0 -0
  222. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/docker-compose.yml +0 -0
  223. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_example_multi_skills.py +0 -0
  224. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_file_storage.py +0 -0
  225. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_mcp.py +0 -0
  226. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_memory.py +0 -0
  227. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_memory_graphiti.py +0 -0
  228. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_memory_hybrid.py +0 -0
  229. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/agent_with_memory_simple.py +0 -0
  230. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/custom_framework_agent.py +0 -0
  231. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/simple_agent.py +0 -0
  232. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/examples/skills_demo_agent.py +0 -0
  233. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/docs/installation-guide.md +0 -0
  234. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/documentation_generator.py +0 -0
  235. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/gitnexus_client.py +0 -0
  236. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/helper_agent.py +0 -0
  237. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/helper_ui.html +0 -0
  238. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/modern_ui.html +0 -0
  239. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/observability/kibana-llm-dashboard-setup.json +0 -0
  240. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/observability/kibana-resource-metrics-dashboard.json +0 -0
  241. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/otel_tracing_middleware.py +0 -0
  242. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/skills_router.py +0 -0
  243. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/web/test_app.html +0 -0
  244. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/__init__.py +0 -0
  245. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/artefacts.py +0 -0
  246. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/client.py +0 -0
  247. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/config.py +0 -0
  248. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/context.py +0 -0
  249. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/cursor.py +0 -0
  250. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/memory.py +0 -0
  251. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/models.py +0 -0
  252. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/poller.py +0 -0
  253. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/preferences.py +0 -0
  254. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/router.py +0 -0
  255. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/session.py +0 -0
  256. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework/workspace/subscription.py +0 -0
  257. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework_lib.egg-info/SOURCES.txt +0 -0
  258. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework_lib.egg-info/dependency_links.txt +0 -0
  259. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework_lib.egg-info/entry_points.txt +0 -0
  260. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework_lib.egg-info/requires.txt +0 -0
  261. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/agent_framework_lib.egg-info/top_level.txt +0 -0
  262. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/A2A_GUIDE.md +0 -0
  263. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/ACTIVITY_OUTPUT_PART.md +0 -0
  264. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/ARCHITECTURE_DIAGRAM.md +0 -0
  265. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/BUILTIN_SKILLS_REFERENCE.md +0 -0
  266. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/CANCEL_AND_INTERRUPT_FRONTEND.md +0 -0
  267. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/CONCURRENCE_VS_PARALLELISME_GUIDE.md +0 -0
  268. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/CREATING_AGENTS.md +0 -0
  269. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/CUSTOM_SKILLS_GUIDE.md +0 -0
  270. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/DEEPEVAL_TEST_REPORT.md +0 -0
  271. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/DOCKER_SETUP.md +0 -0
  272. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/ELASTICSEARCH_DATA_STRUCTURES.md +0 -0
  273. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/FILE_DOWNLOAD_LINKS.md +0 -0
  274. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/FILE_STORAGE_GUIDE.md +0 -0
  275. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/GETTING_STARTED.md +0 -0
  276. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/GITNEXUS_USER_GUIDE.md +0 -0
  277. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/HISTORY_MESSAGE_FORMAT.md +0 -0
  278. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/IMPLEMENTATION_GUIDE_NEW_AGENT.md +0 -0
  279. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/MEMORY_INSTALLATION.md +0 -0
  280. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/MODIFICATIONS_CONCURRENCE.md +0 -0
  281. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/MULTIMODAL_TOOLS_GUIDE.md +0 -0
  282. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/OBSERVABILITY_GUIDE.md +0 -0
  283. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/PYPI_PUBLISHING.md +0 -0
  284. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/QA_STREAMING_LATENCY.md +0 -0
  285. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/SCREENSHOTS_GUIDE.md +0 -0
  286. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/SPEC_CROSS_MODEL_HISTORY_CONVERSION.md +0 -0
  287. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/SSE_NOTIFICATIONS_GUIDE.md +0 -0
  288. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/STREAMING_EVENTS_FRONTEND.md +0 -0
  289. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/TOOLS_AND_MCP_GUIDE.md +0 -0
  290. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/WORKSPACE_INTEGRATION.md +0 -0
  291. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/api-reference.md +0 -0
  292. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/configuration.md +0 -0
  293. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/framework_audit_remarques.md +0 -0
  294. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/helper_agent.md +0 -0
  295. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/index.md +0 -0
  296. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/docs/installation-guide.md +0 -0
  297. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/README.md +0 -0
  298. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_context_budget_test.py +0 -0
  299. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_example_multi_skills.py +0 -0
  300. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_exemple_test.py +0 -0
  301. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_training_with_apo.py +0 -0
  302. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_custom_tools_file_storage.py +0 -0
  303. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_file_storage.py +0 -0
  304. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_mcp.py +0 -0
  305. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_memory_graphiti.py +0 -0
  306. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_memory_hybrid.py +0 -0
  307. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_memory_simple.py +0 -0
  308. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/agent_with_personalization.py +0 -0
  309. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/biagenttest.py +0 -0
  310. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/custom_framework_agent.py +0 -0
  311. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/dependencies/docker-compose.yaml +0 -0
  312. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/pyproject.toml +0 -0
  313. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/simple_agent.py +0 -0
  314. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/skills_demo_agent.py +0 -0
  315. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/test_work_patterns_live.py +0 -0
  316. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/examples/workspace_test_agent.py +0 -0
  317. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/setup.cfg +0 -0
  318. {agent_framework_lib-0.8.7.post3 → agent_framework_lib-0.8.7.post4}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-framework-lib
3
- Version: 0.8.7.post3
3
+ Version: 0.8.7.post4
4
4
  Summary: A comprehensive Python framework for building and serving conversational AI agents with FastAPI
5
5
  Author-email: Sebastian Pavel <sebastian@cinco.ai>, Elliott Girard <elliott.girard@icloud.com>
6
6
  Maintainer-email: Sebastian Pavel <sebastian@cinco.ai>
@@ -15,6 +15,7 @@ Subclasses must implement all abstract methods to provide framework-specific fun
15
15
 
16
16
  from __future__ import annotations
17
17
 
18
+ import asyncio
18
19
  import json
19
20
  import logging
20
21
  import os
@@ -849,13 +850,15 @@ class BaseAgent(SkillsMixin, MemoryMixin, AgentInterface):
849
850
  user_id = session_configuration.get("user_id", "default_user")
850
851
  provider = self._memory_manager.primary
851
852
 
852
- context = await provider.recall(
853
- user_id=user_id,
854
- agent_id=self.agent_id,
855
- query="préférences style réponse utilisateur",
856
- limit=20,
853
+ # Les trois lectures mémoire (préférences, work patterns, response
854
+ # lessons) sont indépendantes et toutes I/O Graphiti : on les lance
855
+ # en parallèle pour réduire la latence du préprocessing. Le prompt
856
+ # résultant est identique au chemin séquentiel précédent.
857
+ facts, work_profile_block, lessons_block = await asyncio.gather(
858
+ self._recall_user_preferences(provider, user_id),
859
+ self._build_work_profile_block(provider, user_id),
860
+ self._build_lessons_block(provider, user_id),
857
861
  )
858
- facts = context.facts if context else []
859
862
 
860
863
  if not facts:
861
864
  # Replace placeholder with empty string if present
@@ -867,48 +870,6 @@ class BaseAgent(SkillsMixin, MemoryMixin, AgentInterface):
867
870
  return
868
871
 
869
872
  fact_lines = "\n".join(f"- {f.content}" for f in facts if f.content)
870
- preference_block = f"[User Preferences]\n{fact_lines}"
871
-
872
- # --- Work Pattern directives ---
873
- work_profile_block = ""
874
- try:
875
- from ..memory.work_patterns import WorkPatternAnalyzer
876
-
877
- wp_analyzer = WorkPatternAnalyzer(provider)
878
- work_profile = await wp_analyzer.build_profile(
879
- user_id=user_id,
880
- agent_id=self.agent_id,
881
- min_entries=3,
882
- )
883
- if work_profile.total_interactions >= 3:
884
- directives = wp_analyzer.build_agent_directives(work_profile)
885
- if directives:
886
- work_profile_block = "\n\n[Directives de travail]\n" f"{directives}"
887
- logger.info(
888
- "Work pattern directives injected for user=%s: %d interactions",
889
- user_id,
890
- work_profile.total_interactions,
891
- )
892
- except Exception as e:
893
- logger.debug("Work pattern injection skipped: %s", e)
894
-
895
- # --- Response Lessons (the key part) ---
896
- lessons_block = ""
897
- try:
898
- from ..memory.response_lessons import format_lessons_for_prompt, recall_lessons
899
-
900
- lessons = await recall_lessons(provider, user_id, self.agent_id, limit=10)
901
- if lessons:
902
- formatted = format_lessons_for_prompt(lessons)
903
- if formatted:
904
- lessons_block = f"\n\n[Leçons apprises — compléments à inclure automatiquement]\n{formatted}"
905
- logger.info(
906
- "Response lessons injected for user=%s: %d lessons",
907
- user_id,
908
- len(lessons),
909
- )
910
- except Exception as e:
911
- logger.debug("Response lessons injection skipped: %s", e)
912
873
 
913
874
  preference_block = (
914
875
  f"[User Preferences]\n{fact_lines}{work_profile_block}{lessons_block}"
@@ -927,6 +888,86 @@ class BaseAgent(SkillsMixin, MemoryMixin, AgentInterface):
927
888
  except Exception as e:
928
889
  logger.warning("Personalization injection skipped: %s", e)
929
890
 
891
+ async def _recall_user_preferences(self, provider: Any, user_id: str) -> list[Any]:
892
+ """Recall les facts de préférences utilisateur depuis la mémoire.
893
+
894
+ Args:
895
+ provider: Provider mémoire primaire.
896
+ user_id: Identifiant utilisateur.
897
+
898
+ Returns:
899
+ Liste de facts de préférences (vide si aucun).
900
+ """
901
+ context = await provider.recall(
902
+ user_id=user_id,
903
+ agent_id=self.agent_id,
904
+ query="préférences style réponse utilisateur",
905
+ limit=20,
906
+ )
907
+ return context.facts if context else []
908
+
909
+ async def _build_work_profile_block(self, provider: Any, user_id: str) -> str:
910
+ """Construit le bloc de directives de travail depuis les work patterns.
911
+
912
+ Args:
913
+ provider: Provider mémoire primaire.
914
+ user_id: Identifiant utilisateur.
915
+
916
+ Returns:
917
+ Bloc texte à injecter (vide si pas assez de données ou en cas d'échec).
918
+ """
919
+ try:
920
+ from ..memory.work_patterns import WorkPatternAnalyzer
921
+
922
+ wp_analyzer = WorkPatternAnalyzer(provider)
923
+ work_profile = await wp_analyzer.build_profile(
924
+ user_id=user_id,
925
+ agent_id=self.agent_id,
926
+ min_entries=3,
927
+ )
928
+ if work_profile.total_interactions >= 3:
929
+ directives = wp_analyzer.build_agent_directives(work_profile)
930
+ if directives:
931
+ logger.info(
932
+ "Work pattern directives injected for user=%s: %d interactions",
933
+ user_id,
934
+ work_profile.total_interactions,
935
+ )
936
+ return "\n\n[Directives de travail]\n" f"{directives}"
937
+ except Exception as e:
938
+ logger.debug("Work pattern injection skipped: %s", e)
939
+ return ""
940
+
941
+ async def _build_lessons_block(self, provider: Any, user_id: str) -> str:
942
+ """Construit le bloc de leçons apprises depuis les response lessons.
943
+
944
+ Args:
945
+ provider: Provider mémoire primaire.
946
+ user_id: Identifiant utilisateur.
947
+
948
+ Returns:
949
+ Bloc texte à injecter (vide si aucune leçon ou en cas d'échec).
950
+ """
951
+ try:
952
+ from ..memory.response_lessons import format_lessons_for_prompt, recall_lessons
953
+
954
+ lessons = await recall_lessons(provider, user_id, self.agent_id, limit=10)
955
+ if lessons:
956
+ formatted = format_lessons_for_prompt(lessons)
957
+ if formatted:
958
+ logger.info(
959
+ "Response lessons injected for user=%s: %d lessons",
960
+ user_id,
961
+ len(lessons),
962
+ )
963
+ return (
964
+ "\n\n[Leçons apprises — compléments à inclure automatiquement]\n"
965
+ f"{formatted}"
966
+ )
967
+ except Exception as e:
968
+ logger.debug("Response lessons injection skipped: %s", e)
969
+ return ""
970
+
930
971
  def _has_shell_tool(self) -> bool:
931
972
  """Check whether a shell tool is available."""
932
973
  return self._live_shell_tool is not None
@@ -140,7 +140,6 @@ class ModelRouter:
140
140
  DEFAULT_STANDARD_MODELS: list[str] = [
141
141
  "claude-sonnet-4-6",
142
142
  "gpt-5.4-mini",
143
- "claude-haiku-4-5-20251001",
144
143
  "gemini-2.5-flash",
145
144
  "gemini-3-flash-preview",
146
145
  ]
@@ -9,7 +9,7 @@ import os
9
9
  import secrets # Ensure secrets is imported for compare_digest
10
10
  import time # Added for postprocessing span timing
11
11
  import uuid
12
- from collections.abc import AsyncGenerator
12
+ from collections.abc import AsyncGenerator, Coroutine
13
13
  from contextlib import asynccontextmanager, suppress
14
14
  from datetime import datetime, timezone
15
15
  from pathlib import Path
@@ -51,6 +51,98 @@ logger = logging.getLogger(__name__)
51
51
  # Module-level state for response lesson tracking (persists across requests)
52
52
  _lesson_trackers: dict = {}
53
53
 
54
+ # Registre des tâches de post-traitement fire-and-forget (work patterns,
55
+ # response lessons). asyncio ne conserve qu'une référence faible aux tâches
56
+ # créées via create_task : sans ce set, le ramasse-miettes peut les annuler
57
+ # avant la fin. Le set est drainé au shutdown du lifespan.
58
+ _background_tasks: set[asyncio.Task] = set()
59
+
60
+ # Délai max d'attente des tâches background au shutdown (secondes).
61
+ _BACKGROUND_TASKS_DRAIN_TIMEOUT: float = 40.0
62
+
63
+
64
+ def _spawn_background_task(coro: Coroutine[Any, Any, Any]) -> asyncio.Task:
65
+ """Planifie une coroutine en tâche de fond et la garde référencée.
66
+
67
+ La tâche est ajoutée à `_background_tasks` puis retirée à sa complétion,
68
+ ce qui empêche son annulation prématurée par le GC et permet un drain
69
+ propre au shutdown.
70
+
71
+ Args:
72
+ coro: La coroutine à exécuter en arrière-plan.
73
+
74
+ Returns:
75
+ La tâche asyncio planifiée.
76
+ """
77
+ task = asyncio.create_task(coro)
78
+ _background_tasks.add(task)
79
+ task.add_done_callback(_background_tasks.discard)
80
+ return task
81
+
82
+
83
+ async def _track_work_patterns_and_lessons(
84
+ *,
85
+ provider: Any,
86
+ user_id: str,
87
+ user_query: str,
88
+ response_text: str,
89
+ agent_id: str,
90
+ session_id: str,
91
+ ) -> None:
92
+ """Capture les work patterns et response lessons en arrière-plan.
93
+
94
+ Extrait du chemin de streaming pour ne pas bloquer l'émission du message
95
+ final et de l'événement `done` : ces écritures (Graphiti `add_episode`)
96
+ peuvent prendre plusieurs secondes. Les données sont agrégées et
97
+ différer une entrée n'altère pas leur justesse.
98
+
99
+ Toutes les exceptions sont absorbées : un échec de tracking ne doit
100
+ jamais impacter la conversation.
101
+
102
+ Args:
103
+ provider: Provider mémoire primaire.
104
+ user_id: Identifiant utilisateur.
105
+ user_query: Message de l'utilisateur.
106
+ response_text: Réponse de l'agent.
107
+ agent_id: Identifiant de l'agent.
108
+ session_id: Identifiant de session.
109
+ """
110
+ try:
111
+ from agent_framework.memory.work_patterns import WorkPatternTracker
112
+
113
+ wp_tracker = WorkPatternTracker(provider)
114
+ wp_entry = await wp_tracker.track(
115
+ user_id=user_id,
116
+ message=user_query,
117
+ agent_id=agent_id,
118
+ session_id=session_id,
119
+ )
120
+ logger.info(
121
+ "[WORK_PATTERN] user=%s intent=%s complexity=%s domains=%s",
122
+ user_id,
123
+ wp_entry.intent.value,
124
+ wp_entry.complexity.value,
125
+ ",".join(wp_entry.domains) or "none",
126
+ )
127
+
128
+ from agent_framework.memory.response_lessons import ResponseLessonTracker
129
+
130
+ if agent_id not in _lesson_trackers:
131
+ _lesson_trackers[agent_id] = ResponseLessonTracker(provider)
132
+ lesson_tracker = _lesson_trackers[agent_id]
133
+
134
+ # Vérifie si le message courant est un suivi de la réponse précédente
135
+ await lesson_tracker.check_and_store(
136
+ user_id=user_id,
137
+ user_message=user_query,
138
+ agent_id=agent_id,
139
+ )
140
+
141
+ # Enregistre cette réponse pour la prochaine itération
142
+ lesson_tracker.record_response(user_id, response_text)
143
+ except Exception as e:
144
+ logger.debug("[WORK_PATTERN] Tracking skipped: %s", e)
145
+
54
146
  # Capability set for subagent wiring
55
147
  from ..capabilities.resolver import CapabilitySet
56
148
  from ..core.agent_interface import (
@@ -932,6 +1024,27 @@ async def lifespan(app: FastAPI):
932
1024
  except Exception as e:
933
1025
  logger.warning(f"[A2A] Error closing task provider: {e}")
934
1026
 
1027
+ # Drain des tâches de post-traitement fire-and-forget (work patterns,
1028
+ # response lessons) pour ne pas les perdre à l'arrêt.
1029
+ if _background_tasks:
1030
+ pending_count = len(_background_tasks)
1031
+ logger.info(f"[BACKGROUND] Waiting for {pending_count} background tasks...")
1032
+ try:
1033
+ await asyncio.wait_for(
1034
+ asyncio.gather(*_background_tasks, return_exceptions=True),
1035
+ timeout=_BACKGROUND_TASKS_DRAIN_TIMEOUT,
1036
+ )
1037
+ logger.debug("[BACKGROUND] All background tasks completed")
1038
+ except asyncio.TimeoutError:
1039
+ remaining = len(_background_tasks)
1040
+ logger.warning(
1041
+ f"[BACKGROUND] Timeout after {_BACKGROUND_TASKS_DRAIN_TIMEOUT}s, "
1042
+ f"{remaining} background tasks may be incomplete; cancelling."
1043
+ )
1044
+ for task in list(_background_tasks):
1045
+ if not task.done():
1046
+ task.cancel()
1047
+
935
1048
 
936
1049
  # < --- Lifespan Event Handler ---
937
1050
 
@@ -2769,6 +2882,9 @@ async def handle_stream_endpoint(
2769
2882
  )
2770
2883
 
2771
2884
  # --- Work Pattern & Implicit Feedback & Response Lessons tracking ---
2885
+ # Exécuté en tâche de fond : ces écritures Graphiti peuvent
2886
+ # prendre plusieurs secondes et ne doivent pas retarder
2887
+ # l'émission du message final ni de l'événement `done`.
2772
2888
  try:
2773
2889
  if (
2774
2890
  hasattr(agent_instance, "_memory_manager")
@@ -2785,46 +2901,18 @@ async def handle_stream_endpoint(
2785
2901
  elif hasattr(processed_input, "query") and processed_input.query:
2786
2902
  user_query = processed_input.query
2787
2903
 
2788
- # Work pattern tracking
2789
- from agent_framework.memory.work_patterns import WorkPatternTracker
2790
-
2791
- wp_tracker = WorkPatternTracker(provider)
2792
- wp_entry = await wp_tracker.track(
2793
- user_id=user_id,
2794
- message=user_query,
2795
- agent_id=agent_identity.agent_id,
2796
- session_id=session_id,
2797
- )
2798
- logger.info(
2799
- "[WORK_PATTERN] user=%s intent=%s complexity=%s domains=%s",
2800
- user_id,
2801
- wp_entry.intent.value,
2802
- wp_entry.complexity.value,
2803
- ",".join(wp_entry.domains) or "none",
2904
+ _spawn_background_task(
2905
+ _track_work_patterns_and_lessons(
2906
+ provider=provider,
2907
+ user_id=user_id,
2908
+ user_query=user_query,
2909
+ response_text=response_text,
2910
+ agent_id=agent_identity.agent_id,
2911
+ session_id=session_id,
2912
+ )
2804
2913
  )
2805
-
2806
- # Response lesson tracking
2807
- from agent_framework.memory.response_lessons import (
2808
- ResponseLessonTracker,
2809
- )
2810
-
2811
- tracker_key = agent_identity.agent_id
2812
- if tracker_key not in _lesson_trackers:
2813
- _lesson_trackers[tracker_key] = ResponseLessonTracker(provider)
2814
- lesson_tracker = _lesson_trackers[tracker_key]
2815
-
2816
- # Check if current message is a follow-up to previous response
2817
- await lesson_tracker.check_and_store(
2818
- user_id=user_id,
2819
- user_message=user_query,
2820
- agent_id=agent_identity.agent_id,
2821
- )
2822
-
2823
- # Record this response for next iteration
2824
- lesson_tracker.record_response(user_id, response_text)
2825
-
2826
2914
  except Exception as e:
2827
- logger.debug("[WORK_PATTERN] Tracking skipped: %s", e)
2915
+ logger.debug("[WORK_PATTERN] Tracking scheduling skipped: %s", e)
2828
2916
  else:
2829
2917
  logger.error(
2830
2918
  f"[PERSIST] FAILED to persist agent response in {persist_duration_ms:.2f}ms "
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agent-framework-lib
3
- Version: 0.8.7.post3
3
+ Version: 0.8.7.post4
4
4
  Summary: A comprehensive Python framework for building and serving conversational AI agents with FastAPI
5
5
  Author-email: Sebastian Pavel <sebastian@cinco.ai>, Elliott Girard <elliott.girard@icloud.com>
6
6
  Maintainer-email: Sebastian Pavel <sebastian@cinco.ai>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "agent-framework-lib"
7
- version = "0.8.7post3"
7
+ version = "0.8.7post4"
8
8
  description = "A comprehensive Python framework for building and serving conversational AI agents with FastAPI"
9
9
  readme = {file = "README.md", content-type = "text/markdown"}
10
10
  license = {text = "MIT"}