agent-framework-lib 0.8.2.post2__tar.gz → 0.8.4__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.
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/MANIFEST.in +3 -0
- {agent_framework_lib-0.8.2.post2/agent_framework_lib.egg-info → agent_framework_lib-0.8.4}/PKG-INFO +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/__init__.py +48 -45
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/__init__.py +5 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/a2a_router.py +8 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/jsonrpc_dispatcher.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/models_jsonrpc.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/sse_wrapper.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/translation_layer.py +4 -5
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/providers/elasticsearch_provider.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/providers/postgres_provider.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/capabilities/__init__.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/capabilities/resolver.py +6 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/__init__.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/agent_interface.py +4 -6
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/agent_provider.py +25 -27
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/base_agent.py +99 -13
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/context_budget.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/context_summarizer.py +4 -1
- agent_framework_lib-0.8.4/agent_framework/core/execution_controller.py +406 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/implementation_validator.py +10 -9
- agent_framework_lib-0.8.4/agent_framework/core/interruption_message.py +52 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/knowledge_state.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/loop_detector.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/model_clients.py +26 -21
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/model_config.py +35 -34
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/provider_calibration.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/scratchpad_compressor.py +2 -4
- agent_framework_lib-0.8.4/agent_framework/core/scratchpad_serializer.py +292 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/state_manager.py +21 -22
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/streaming_parts_accumulator.py +1 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/implementations/__init__.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/implementations/budget_aware_agent.py +14 -13
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/implementations/llamaindex_agent.py +64 -10
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/implementations/llamaindex_memory_adapter.py +112 -32
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/implementations/microsoft_agent.py +21 -19
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/__init__.py +40 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/agent_mixin.py +61 -3
- agent_framework_lib-0.8.4/agent_framework/memory/hypothesis_engine.py +2671 -0
- agent_framework_lib-0.8.4/agent_framework/memory/implicit_feedback.py +500 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/personalization.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/providers/memori_provider.py +2 -2
- agent_framework_lib-0.8.4/agent_framework/memory/response_lessons.py +241 -0
- agent_framework_lib-0.8.4/agent_framework/memory/work_patterns.py +786 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/elasticsearch_circuit_breaker.py +14 -16
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/elasticsearch_logging.py +17 -17
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/error_handling.py +25 -24
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/error_logging.py +22 -26
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/llm_auto_instrumentor.py +6 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/otel_logging_handler.py +3 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/performance_monitor.py +30 -31
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/progress_tracker.py +27 -28
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/resource_manager.py +35 -42
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/token_counter.py +5 -5
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/notifications/__init__.py +3 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/notifications/hub.py +1 -0
- agent_framework_lib-0.8.4/agent_framework/notifications/webhook_notifier.py +117 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/processing/ai_content_management.py +22 -26
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/processing/markdown_converter.py +25 -36
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/processing/multimodal_integration.py +12 -22
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/processing/rich_content_validation.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/session/elasticsearch_session_storage.py +20 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/session/session_storage.py +162 -221
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/__init__.py +3 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/scripts/create_and_register.py +10 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/chart/chart_to_image.py +113 -7
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/csv/create_csv.py +1 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/csv/read_csv.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/csv/transform_csv.py +4 -5
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/data_format/json_to_yaml.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/data_format/yaml_to_json.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/drawio/create_drawio.py +1 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file/create_file.py +1 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file/read_file.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/image_gen/create_image.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/image_gen/generate_image.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/mermaid/mermaid_to_image.py +132 -6
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/SKILL.md +1112 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/create_powerpoint.py +2832 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/templates/Big Data Infographics.pptx +0 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/templates/Executive Design Pitch Deck.pptx +0 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/templates/Management Consulting Toolkit.pptx +0 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/templates/__init__.py +26 -0
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/powerpoint/templates/generate_templates.py +27 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/skill_creator/SKILL.md +197 -82
- agent_framework_lib-0.8.4/agent_framework/skills/builtin/skills/skill_creator/skill_api.py +312 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/table/table_to_image.py +13 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/unified_pdf/create_pdf.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/word/create_word.py +7 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/custom_skill_manager.py +8 -5
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/markdown_loader.py +6 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/tools.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/storage/__init__.py +8 -7
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/storage/file_storages.py +3 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/storage/file_system_management.py +85 -134
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/storage/storage_optimizer.py +27 -29
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/executor.py +7 -8
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/message_injector.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/retrigger.py +3 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/spawn_tool.py +5 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/__init__.py +5 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/html_content_analyzer.py +4 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/multimodal_tools.py +34 -35
- agent_framework_lib-0.8.4/agent_framework/tools/shell_tool.py +391 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/web_fetch_tool.py +5 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/web_search_tool.py +6 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/__init__.py +9 -8
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/path_utils.py +3 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/post_install.py +2 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/session_title_generator.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/special_blocks.py +7 -8
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/__init__.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/admin_services.py +81 -81
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web}/docs/BUILTIN_SKILLS_REFERENCE.md +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web}/docs/CREATING_AGENTS.md +14 -14
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web}/docs/CUSTOM_SKILLS_GUIDE.md +121 -3
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web}/docs/GETTING_STARTED.md +54 -54
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web}/docs/TOOLS_AND_MCP_GUIDE.md +33 -33
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/examples/agent_with_file_storage.py +6 -7
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web/docs}/examples/agent_with_mcp.py +8 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/examples/agent_with_memory.py +3 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/examples/agent_with_memory_graphiti.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web/docs}/examples/agent_with_memory_hybrid.py +3 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web/docs}/examples/agent_with_memory_simple.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/examples/custom_framework_agent.py +18 -20
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web/docs}/examples/simple_agent.py +2 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework/web/docs}/examples/skills_demo_agent.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/installation-guide.md +7 -7
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/documentation_generator.py +40 -40
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/gitnexus_client.py +7 -15
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/helper_agent.py +460 -28
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/modern_ui.html +1904 -1592
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/otel_tracing_middleware.py +8 -10
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/server.py +703 -333
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/skills_router.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/__init__.py +9 -8
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/artefacts.py +6 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/context.py +4 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/cursor.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/memory.py +3 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/poller.py +9 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/preferences.py +1 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/router.py +17 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/session.py +37 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/subscription.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4/agent_framework_lib.egg-info}/PKG-INFO +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework_lib.egg-info/SOURCES.txt +18 -0
- {agent_framework_lib-0.8.2.post2/agent_framework/web → agent_framework_lib-0.8.4}/docs/BUILTIN_SKILLS_REFERENCE.md +1 -1
- agent_framework_lib-0.8.4/docs/CANCEL_AND_INTERRUPT_FRONTEND.md +309 -0
- {agent_framework_lib-0.8.2.post2/agent_framework/web → agent_framework_lib-0.8.4}/docs/CREATING_AGENTS.md +14 -14
- {agent_framework_lib-0.8.2.post2/agent_framework/web → agent_framework_lib-0.8.4}/docs/CUSTOM_SKILLS_GUIDE.md +121 -3
- agent_framework_lib-0.8.4/docs/DEEPEVAL_TEST_REPORT.md +116 -0
- {agent_framework_lib-0.8.2.post2/agent_framework/web → agent_framework_lib-0.8.4}/docs/GETTING_STARTED.md +54 -54
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/MULTIMODAL_TOOLS_GUIDE.md +19 -19
- {agent_framework_lib-0.8.2.post2/agent_framework/web → agent_framework_lib-0.8.4}/docs/TOOLS_AND_MCP_GUIDE.md +33 -33
- agent_framework_lib-0.8.4/docs/helper_agent.md +66 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/index.md +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/installation-guide.md +7 -7
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_context_budget_test.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_exemple_test.py +3 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_training_with_apo.py +7 -4
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_with_custom_tools_file_storage.py +8 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_with_file_storage.py +6 -7
- {agent_framework_lib-0.8.2.post2/agent_framework/web/docs → agent_framework_lib-0.8.4}/examples/agent_with_mcp.py +8 -9
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_with_memory_graphiti.py +2 -1
- {agent_framework_lib-0.8.2.post2/agent_framework/web/docs → agent_framework_lib-0.8.4}/examples/agent_with_memory_hybrid.py +3 -2
- {agent_framework_lib-0.8.2.post2/agent_framework/web/docs → agent_framework_lib-0.8.4}/examples/agent_with_memory_simple.py +2 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_with_personalization.py +1 -2
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/biagenttest.py +11 -11
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/custom_framework_agent.py +18 -20
- {agent_framework_lib-0.8.2.post2/agent_framework/web/docs → agent_framework_lib-0.8.4}/examples/simple_agent.py +2 -2
- {agent_framework_lib-0.8.2.post2/agent_framework/web/docs → agent_framework_lib-0.8.4}/examples/skills_demo_agent.py +1 -1
- agent_framework_lib-0.8.4/examples/test_work_patterns_live.py +148 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/workspace_test_agent.py +8 -8
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/pyproject.toml +63 -36
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/setup.py +8 -9
- agent_framework_lib-0.8.2.post2/agent_framework/skills/builtin/skills/powerpoint/SKILL.md +0 -426
- agent_framework_lib-0.8.2.post2/agent_framework/skills/builtin/skills/powerpoint/create_powerpoint.py +0 -396
- agent_framework_lib-0.8.2.post2/agent_framework/tools/shell_tool.py +0 -183
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/ARCHITECTURE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/LICENSE +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/README.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/base.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/agent_card_builder.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/endpoints/agent_card_skill_builder.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/models.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/providers/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/activity_formatter.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/elasticsearch_config_provider.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/model_router.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/models.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/step_display_config.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/base.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/config.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/manager.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/providers/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/providers/graphiti_provider.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/memory/tools.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/api_timing_tracker.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/llm_metrics.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/llm_metrics_collector.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/llm_metrics_extractor.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/metrics_aggregator.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/metrics_config.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/observability_manager.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/otel_instrumentor.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/otel_metrics_recorder.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/otel_setup.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/resource_metrics_collector.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/streaming_latency_tracer.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/timing_tracker.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/monitoring/tracing_context.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/processing/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/py.typed +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/session/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/agent_mixin.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/base.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/scripts/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/scripts/register_to_storage.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/chart/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/code_format/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/code_format/format_python.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/csv/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/data_format/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/drawio/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/email_template/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/excel/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/excel/create_excel.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file/list_files.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file_access/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file_access/download_to_local.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/file_access/get_file_path.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/form/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/image_display/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/image_gen/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/mermaid/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/multimodal/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/optionsblock/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/table/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/unified_pdf/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/web_news_search/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/web_news_search/web_news_search.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/builtin/skills/word/SKILL.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/skills/discovery_prompt.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/__init__.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/subagents/message_queue.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/activity_callback.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/adaptive_pdf_css.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/base.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/pdf_image_scaler.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/tools/sizing_config.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/utils/source_detector.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/admin_auth.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/admin_models.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/admin_router.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/api_timing_middleware.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/A2A_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/DOCKER_SETUP.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/Dockerfile +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/GITNEXUS_USER_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/MEMORY_INSTALLATION.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/README.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/WORKSPACE_INTEGRATION.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/api-reference.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/configuration.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/docker-compose.yml +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/docs/examples/agent_example_multi_skills.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/helper_ui.html +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/observability/kibana-llm-dashboard-setup.json +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/observability/kibana-resource-metrics-dashboard.json +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/web/test_app.html +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/client.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/config.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/workspace/models.py +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework_lib.egg-info/dependency_links.txt +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework_lib.egg-info/entry_points.txt +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework_lib.egg-info/requires.txt +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework_lib.egg-info/top_level.txt +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/A2A_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/ACTIVITY_OUTPUT_PART.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/ARCHITECTURE_DIAGRAM.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/CONCURRENCE_VS_PARALLELISME_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/DOCKER_SETUP.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/ELASTICSEARCH_DATA_STRUCTURES.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/FILE_DOWNLOAD_LINKS.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/FILE_STORAGE_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/GITNEXUS_USER_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/HISTORY_MESSAGE_FORMAT.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/IMPLEMENTATION_GUIDE_NEW_AGENT.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/MEMORY_INSTALLATION.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/MODIFICATIONS_CONCURRENCE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/OBSERVABILITY_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/PYPI_PUBLISHING.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/QA_STREAMING_LATENCY.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/SCREENSHOTS_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/SPEC_CROSS_MODEL_HISTORY_CONVERSION.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/SSE_NOTIFICATIONS_GUIDE.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/STREAMING_EVENTS_FRONTEND.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/WORKSPACE_INTEGRATION.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/api-reference.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/configuration.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/docs/framework_audit_remarques.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/README.md +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/agent_example_multi_skills.py +1 -1
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/dependencies/docker-compose.yaml +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/examples/pyproject.toml +0 -0
- {agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/setup.cfg +0 -0
|
@@ -11,6 +11,9 @@ include docs/*.md
|
|
|
11
11
|
# Include type information
|
|
12
12
|
include agent_framework/py.typed
|
|
13
13
|
|
|
14
|
+
# Include PowerPoint templates embedded with the powerpoint skill
|
|
15
|
+
recursive-include agent_framework/skills/builtin/skills/powerpoint/templates *.pptx
|
|
16
|
+
|
|
14
17
|
# Include HTML templates and static files from the main package
|
|
15
18
|
include agent_framework/test_app.html
|
|
16
19
|
include agent_framework/*.html
|
{agent_framework_lib-0.8.2.post2/agent_framework_lib.egg-info → agent_framework_lib-0.8.4}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agent-framework-lib
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.4
|
|
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>
|
|
@@ -32,7 +32,7 @@ Example Usage:
|
|
|
32
32
|
create_basic_agent_server(MyAgent, port=8000)
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
Version: 0.8.
|
|
35
|
+
Version: 0.8.4
|
|
36
36
|
Author: Cinco AI Team
|
|
37
37
|
License: MIT
|
|
38
38
|
"""
|
|
@@ -41,6 +41,7 @@ import logging
|
|
|
41
41
|
import os
|
|
42
42
|
from typing import TYPE_CHECKING
|
|
43
43
|
|
|
44
|
+
|
|
44
45
|
# Create logger for this module
|
|
45
46
|
logger = logging.getLogger(__name__)
|
|
46
47
|
|
|
@@ -64,7 +65,7 @@ def _auto_setup_dependencies() -> None:
|
|
|
64
65
|
_AUTO_SETUP_DONE = True
|
|
65
66
|
|
|
66
67
|
try:
|
|
67
|
-
from .utils.post_install import
|
|
68
|
+
from .utils.post_install import ensure_deno, ensure_playwright_browsers
|
|
68
69
|
|
|
69
70
|
# Check/install Playwright (silent if already installed)
|
|
70
71
|
success, error = ensure_playwright_browsers()
|
|
@@ -88,99 +89,100 @@ def _auto_setup_dependencies() -> None:
|
|
|
88
89
|
# Track if auto-setup has been done
|
|
89
90
|
_AUTO_SETUP_DONE = False
|
|
90
91
|
|
|
91
|
-
__version__ = "0.8.
|
|
92
|
+
__version__ = "0.8.4"
|
|
92
93
|
__author__ = "Cinco AI Team"
|
|
93
94
|
__license__ = "MIT"
|
|
94
95
|
__email__ = "sebastian@cinco.ai"
|
|
95
96
|
|
|
96
97
|
# Core interfaces and base classes
|
|
97
98
|
from .core.agent_interface import (
|
|
99
|
+
AgentConfig,
|
|
100
|
+
AgentInputPartUnion,
|
|
98
101
|
AgentInterface,
|
|
102
|
+
AgentOutputPartUnion,
|
|
103
|
+
ChartJsOutputPart,
|
|
104
|
+
FileContentOutputPart,
|
|
105
|
+
FileDataInputPart,
|
|
106
|
+
FileDownloadLinkOutputPart,
|
|
107
|
+
FileReferenceInputPart,
|
|
108
|
+
FileReferenceOutputPart,
|
|
109
|
+
FormDefinitionOutputPart,
|
|
110
|
+
ImageOutputPart,
|
|
111
|
+
ImageUrlInputPart,
|
|
112
|
+
JsonOutputPart,
|
|
113
|
+
MermaidOutputPart,
|
|
114
|
+
OptionsBlockOutputPart,
|
|
99
115
|
StructuredAgentInput,
|
|
100
116
|
StructuredAgentOutput,
|
|
101
|
-
|
|
117
|
+
TableDataOutputPart,
|
|
102
118
|
# Input part types
|
|
103
119
|
TextInputPart,
|
|
104
|
-
ImageUrlInputPart,
|
|
105
|
-
FileDataInputPart,
|
|
106
|
-
AgentInputPartUnion,
|
|
107
120
|
# Output part types
|
|
108
121
|
TextOutputPart,
|
|
109
122
|
TextOutputStreamPart,
|
|
110
|
-
JsonOutputPart,
|
|
111
123
|
YamlOutputPart,
|
|
112
|
-
FileContentOutputPart,
|
|
113
|
-
FileReferenceInputPart,
|
|
114
|
-
FileReferenceOutputPart,
|
|
115
|
-
MermaidOutputPart,
|
|
116
|
-
ChartJsOutputPart,
|
|
117
|
-
TableDataOutputPart,
|
|
118
|
-
FormDefinitionOutputPart,
|
|
119
|
-
OptionsBlockOutputPart,
|
|
120
|
-
FileDownloadLinkOutputPart,
|
|
121
|
-
ImageOutputPart,
|
|
122
|
-
AgentOutputPartUnion,
|
|
123
124
|
# Utility functions
|
|
124
125
|
consolidate_text_parts,
|
|
125
126
|
strip_technical_details,
|
|
126
127
|
)
|
|
127
128
|
|
|
128
|
-
# Framework-agnostic base agent and implementations
|
|
129
|
-
from .core.base_agent import BaseAgent
|
|
130
|
-
from .implementations.llamaindex_agent import LlamaIndexAgent
|
|
131
|
-
from .implementations.microsoft_agent import MicrosoftAgent
|
|
132
|
-
|
|
133
|
-
# State management
|
|
134
|
-
from .core.state_manager import StateManager, AgentIdentity
|
|
135
|
-
|
|
136
129
|
# Agent provider
|
|
137
130
|
from .core.agent_provider import AgentManager
|
|
138
131
|
|
|
132
|
+
# Framework-agnostic base agent and implementations
|
|
133
|
+
from .core.base_agent import BaseAgent
|
|
134
|
+
from .core.model_clients import ModelClientFactory, client_factory
|
|
135
|
+
|
|
139
136
|
# Model configuration and clients
|
|
140
137
|
from .core.model_config import ModelConfigManager, ModelProvider, model_config
|
|
141
|
-
|
|
138
|
+
|
|
139
|
+
# State management
|
|
140
|
+
from .core.state_manager import AgentIdentity, StateManager
|
|
141
|
+
from .implementations.llamaindex_agent import LlamaIndexAgent
|
|
142
|
+
from .implementations.microsoft_agent import MicrosoftAgent
|
|
142
143
|
|
|
143
144
|
# Session storage
|
|
144
145
|
from .session.session_storage import (
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
SessionData,
|
|
146
|
+
AgentLifecycleData,
|
|
147
|
+
MemorySessionStorage,
|
|
148
148
|
MessageData,
|
|
149
149
|
MessageInsight,
|
|
150
150
|
MessageMetadata,
|
|
151
|
-
AgentLifecycleData,
|
|
152
|
-
MemorySessionStorage,
|
|
153
151
|
MongoDBSessionStorage,
|
|
152
|
+
SessionData,
|
|
153
|
+
SessionStorageFactory,
|
|
154
|
+
SessionStorageInterface,
|
|
154
155
|
history_message_to_message_data,
|
|
155
156
|
message_data_to_history_message,
|
|
156
157
|
)
|
|
158
|
+
from .storage.file_storages import (
|
|
159
|
+
FileMetadata,
|
|
160
|
+
FileStorageInterface,
|
|
161
|
+
LocalFileStorage,
|
|
162
|
+
MetadataStorageInterface,
|
|
163
|
+
)
|
|
157
164
|
|
|
158
165
|
# File system management (consolidated)
|
|
159
166
|
from .storage.file_system_management import (
|
|
160
|
-
|
|
167
|
+
FileInputMixin,
|
|
161
168
|
FileStorageFactory,
|
|
162
|
-
|
|
163
|
-
process_response_file_links,
|
|
169
|
+
FileStorageManager,
|
|
164
170
|
get_download_url,
|
|
165
171
|
get_file_processing_summary,
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
from .storage.file_storages import (
|
|
169
|
-
FileStorageInterface,
|
|
170
|
-
MetadataStorageInterface,
|
|
171
|
-
FileMetadata,
|
|
172
|
-
LocalFileStorage,
|
|
172
|
+
process_file_inputs,
|
|
173
|
+
process_response_file_links,
|
|
173
174
|
)
|
|
174
175
|
|
|
176
|
+
|
|
175
177
|
# Optional file storage backends (only available if dependencies are installed)
|
|
176
178
|
try:
|
|
177
|
-
from .storage.file_storages import
|
|
179
|
+
from .storage.file_storages import S3_AVAILABLE, S3FileStorage
|
|
178
180
|
except ImportError:
|
|
179
181
|
S3FileStorage = None
|
|
180
182
|
S3_AVAILABLE = False
|
|
181
183
|
|
|
182
184
|
try:
|
|
183
|
-
from .storage.file_storages import
|
|
185
|
+
from .storage.file_storages import MINIO_AVAILABLE, MinIOFileStorage
|
|
184
186
|
except ImportError:
|
|
185
187
|
MinIOFileStorage = None
|
|
186
188
|
MINIO_AVAILABLE = False
|
|
@@ -191,6 +193,7 @@ from .utils import get_deno_command
|
|
|
191
193
|
# Server application
|
|
192
194
|
from .web.server import app, start_server
|
|
193
195
|
|
|
196
|
+
|
|
194
197
|
# Convenience imports for common use cases
|
|
195
198
|
__all__ = [
|
|
196
199
|
# Version info
|
{agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/a2a/__init__.py
RENAMED
|
@@ -9,15 +9,16 @@ The Task Store is a lightweight mapping layer: it links A2A task IDs
|
|
|
9
9
|
to existing framework sessions, without duplicating conversational content.
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
|
-
from .models import A2ATask, TaskStatus
|
|
13
12
|
from .base import A2ATaskProvider
|
|
13
|
+
from .models import A2ATask, TaskStatus
|
|
14
14
|
from .providers import (
|
|
15
|
-
ElasticsearchTaskProvider,
|
|
16
|
-
PostgresTaskProvider,
|
|
17
15
|
ELASTICSEARCH_PROVIDER_AVAILABLE,
|
|
18
16
|
POSTGRES_PROVIDER_AVAILABLE,
|
|
17
|
+
ElasticsearchTaskProvider,
|
|
18
|
+
PostgresTaskProvider,
|
|
19
19
|
)
|
|
20
20
|
|
|
21
|
+
|
|
21
22
|
__all__ = [
|
|
22
23
|
"A2ATask",
|
|
23
24
|
"TaskStatus",
|
|
@@ -31,4 +32,5 @@ __all__ = [
|
|
|
31
32
|
|
|
32
33
|
from . import endpoints
|
|
33
34
|
|
|
35
|
+
|
|
34
36
|
__version__ = "0.1.0"
|
|
@@ -4,17 +4,22 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
import logging
|
|
6
6
|
import os
|
|
7
|
-
from typing import Any
|
|
7
|
+
from typing import TYPE_CHECKING, Any
|
|
8
8
|
|
|
9
9
|
from fastapi import APIRouter, Depends, HTTPException, Request
|
|
10
|
-
from fastapi.responses import JSONResponse
|
|
11
10
|
|
|
12
11
|
from .agent_card_builder import AgentCardBuilder
|
|
13
12
|
from .jsonrpc_dispatcher import JSONRPCDispatcher
|
|
14
|
-
from .models_jsonrpc import A2AConfigRequest
|
|
15
13
|
from .sse_wrapper import SSEWrapperA2A
|
|
16
14
|
from .translation_layer import A2ATranslationLayer
|
|
17
15
|
|
|
16
|
+
|
|
17
|
+
if TYPE_CHECKING:
|
|
18
|
+
from fastapi.responses import JSONResponse
|
|
19
|
+
|
|
20
|
+
from .models_jsonrpc import A2AConfigRequest
|
|
21
|
+
|
|
22
|
+
|
|
18
23
|
logger = logging.getLogger(__name__)
|
|
19
24
|
|
|
20
25
|
|
|
@@ -4,16 +4,12 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
import logging
|
|
6
6
|
import uuid
|
|
7
|
-
from collections.abc import AsyncGenerator
|
|
8
7
|
from datetime import datetime, timezone
|
|
9
8
|
from typing import TYPE_CHECKING, Any
|
|
10
9
|
|
|
11
|
-
from ..base import
|
|
10
|
+
from ..base import TaskNotFoundError
|
|
12
11
|
from ..models import A2ATask, TaskStatus
|
|
13
12
|
from .models_jsonrpc import (
|
|
14
|
-
INTERNAL_ERROR,
|
|
15
|
-
TASK_NOT_CANCELABLE,
|
|
16
|
-
TASK_NOT_FOUND,
|
|
17
13
|
A2AArtifact,
|
|
18
14
|
A2AMessage,
|
|
19
15
|
A2APart,
|
|
@@ -24,7 +20,10 @@ from .models_jsonrpc import (
|
|
|
24
20
|
TaskGetParams,
|
|
25
21
|
)
|
|
26
22
|
|
|
23
|
+
|
|
27
24
|
if TYPE_CHECKING:
|
|
25
|
+
from collections.abc import AsyncGenerator
|
|
26
|
+
|
|
28
27
|
from ..base import A2ATaskProvider
|
|
29
28
|
from .sse_wrapper import SSEWrapperA2A
|
|
30
29
|
|
|
@@ -8,10 +8,13 @@ import contextlib
|
|
|
8
8
|
import json
|
|
9
9
|
import logging
|
|
10
10
|
import os
|
|
11
|
-
from collections.abc import Iterator
|
|
12
11
|
from dataclasses import dataclass, field
|
|
13
12
|
from pathlib import Path
|
|
14
|
-
from typing import Any
|
|
13
|
+
from typing import TYPE_CHECKING, Any
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
if TYPE_CHECKING:
|
|
17
|
+
from collections.abc import Iterator
|
|
15
18
|
|
|
16
19
|
|
|
17
20
|
logger = logging.getLogger(__name__)
|
|
@@ -27,7 +30,7 @@ class CapabilitySet:
|
|
|
27
30
|
env_overrides: dict[str, str] = field(default_factory=dict)
|
|
28
31
|
|
|
29
32
|
@classmethod
|
|
30
|
-
def empty(cls) ->
|
|
33
|
+
def empty(cls) -> CapabilitySet:
|
|
31
34
|
"""Return an empty CapabilitySet (no capabilities authorized)."""
|
|
32
35
|
return cls()
|
|
33
36
|
|
|
@@ -95,9 +95,8 @@ class FileDataInputPart(BaseModel):
|
|
|
95
95
|
@classmethod
|
|
96
96
|
def validate_at_least_one_source(cls, data: Any) -> Any:
|
|
97
97
|
"""Ensure content_base64 is present."""
|
|
98
|
-
if isinstance(data, dict):
|
|
99
|
-
|
|
100
|
-
raise ValueError("content_base64 must be present")
|
|
98
|
+
if isinstance(data, dict) and "content_base64" not in data:
|
|
99
|
+
raise ValueError("content_base64 must be present")
|
|
101
100
|
return data
|
|
102
101
|
|
|
103
102
|
def set_binary_content(self, binary_data: bytes):
|
|
@@ -201,9 +200,8 @@ class MediaPartType(BaseModel):
|
|
|
201
200
|
@classmethod
|
|
202
201
|
def validate_at_least_one_source(cls, data: Any) -> Any:
|
|
203
202
|
"""Ensure either content or url is present."""
|
|
204
|
-
if isinstance(data, dict):
|
|
205
|
-
|
|
206
|
-
raise ValueError("Either content or url must be present")
|
|
203
|
+
if isinstance(data, dict) and not ("content" in data or "url" in data):
|
|
204
|
+
raise ValueError("Either content or url must be present")
|
|
207
205
|
return data
|
|
208
206
|
|
|
209
207
|
def set_binary_content(self, binary_data: bytes):
|
{agent_framework_lib-0.8.2.post2 → agent_framework_lib-0.8.4}/agent_framework/core/agent_provider.py
RENAMED
|
@@ -12,22 +12,23 @@ Observability Integration:
|
|
|
12
12
|
- Uses StreamingLatencyTracer for granular preprocessing instrumentation
|
|
13
13
|
"""
|
|
14
14
|
|
|
15
|
-
import logging
|
|
16
15
|
import asyncio
|
|
16
|
+
import logging
|
|
17
17
|
import uuid
|
|
18
|
+
from collections.abc import AsyncGenerator
|
|
18
19
|
from datetime import datetime, timezone
|
|
19
|
-
from typing import TYPE_CHECKING, Any
|
|
20
|
+
from typing import TYPE_CHECKING, Any
|
|
20
21
|
|
|
21
|
-
from .agent_interface import AgentInterface, StructuredAgentInput, StructuredAgentOutput
|
|
22
22
|
from agent_framework.core.model_config import model_config
|
|
23
|
-
|
|
24
|
-
from ..session.session_storage import AgentLifecycleData, SessionStorageInterface
|
|
23
|
+
|
|
25
24
|
from ..monitoring.streaming_latency_tracer import get_streaming_latency_tracer
|
|
25
|
+
from ..session.session_storage import AgentLifecycleData, SessionStorageInterface
|
|
26
|
+
from .agent_interface import AgentInterface, StructuredAgentInput, StructuredAgentOutput
|
|
27
|
+
from .state_manager import AgentIdentity, StateManager
|
|
26
28
|
|
|
27
29
|
|
|
28
30
|
if TYPE_CHECKING:
|
|
29
31
|
from ..monitoring.observability_manager import ObservabilityManager
|
|
30
|
-
from ..monitoring.tracing_context import APISpanContext
|
|
31
32
|
|
|
32
33
|
logger = logging.getLogger(__name__)
|
|
33
34
|
|
|
@@ -60,15 +61,15 @@ class _ManagedAgentProxy(AgentInterface):
|
|
|
60
61
|
"""
|
|
61
62
|
return getattr(self._real_agent, name)
|
|
62
63
|
|
|
63
|
-
async def get_metadata(self) ->
|
|
64
|
+
async def get_metadata(self) -> dict[str, Any]:
|
|
64
65
|
"""Passes the call to the real agent."""
|
|
65
66
|
return await self._real_agent.get_metadata()
|
|
66
67
|
|
|
67
|
-
async def get_system_prompt(self) ->
|
|
68
|
+
async def get_system_prompt(self) -> str | None:
|
|
68
69
|
"""Passes the call to the real agent."""
|
|
69
70
|
return await self._real_agent.get_system_prompt()
|
|
70
71
|
|
|
71
|
-
async def get_current_model(self, session_id: str) ->
|
|
72
|
+
async def get_current_model(self, session_id: str) -> str | None:
|
|
72
73
|
"""Passes the call to the real agent."""
|
|
73
74
|
return await self._real_agent.get_current_model(session_id)
|
|
74
75
|
|
|
@@ -82,17 +83,17 @@ class _ManagedAgentProxy(AgentInterface):
|
|
|
82
83
|
if hasattr(self._real_agent, "set_display_config_manager"):
|
|
83
84
|
self._real_agent.set_display_config_manager(manager)
|
|
84
85
|
|
|
85
|
-
def get_custom_tool_display_info(self) ->
|
|
86
|
+
def get_custom_tool_display_info(self) -> dict[str, Any]:
|
|
86
87
|
"""Passes the call to the real agent to get custom tool display info."""
|
|
87
88
|
if hasattr(self._real_agent, "get_custom_tool_display_info"):
|
|
88
89
|
return self._real_agent.get_custom_tool_display_info()
|
|
89
90
|
return {}
|
|
90
91
|
|
|
91
|
-
async def get_state(self) ->
|
|
92
|
+
async def get_state(self) -> dict[str, Any]:
|
|
92
93
|
"""Passes the call to the real agent."""
|
|
93
94
|
return await self._real_agent.get_state()
|
|
94
95
|
|
|
95
|
-
async def load_state(self, state:
|
|
96
|
+
async def load_state(self, state: dict[str, Any]):
|
|
96
97
|
"""Passes the call to the real agent."""
|
|
97
98
|
await self._real_agent.load_state(state)
|
|
98
99
|
|
|
@@ -182,8 +183,8 @@ class AgentManager:
|
|
|
182
183
|
|
|
183
184
|
def __init__(self, storage: SessionStorageInterface):
|
|
184
185
|
self._storage = storage
|
|
185
|
-
self._active_agents:
|
|
186
|
-
self._observability_manager:
|
|
186
|
+
self._active_agents: dict[str, AgentInterface] = {} # A cache for active agent instances
|
|
187
|
+
self._observability_manager: ObservabilityManager | None = None
|
|
187
188
|
|
|
188
189
|
def _get_observability_manager(self) -> "ObservabilityManager":
|
|
189
190
|
"""Get or create the ObservabilityManager instance.
|
|
@@ -198,7 +199,7 @@ class AgentManager:
|
|
|
198
199
|
return self._observability_manager
|
|
199
200
|
|
|
200
201
|
async def get_agent(
|
|
201
|
-
self, session_id: str, agent_class:
|
|
202
|
+
self, session_id: str, agent_class: type[AgentInterface], user_id: str = ""
|
|
202
203
|
) -> AgentInterface:
|
|
203
204
|
"""
|
|
204
205
|
Gets a fully initialized agent instance for a given session, wrapped in a
|
|
@@ -225,9 +226,7 @@ class AgentManager:
|
|
|
225
226
|
async with tracer.agent_span("inject_storage"):
|
|
226
227
|
if hasattr(real_agent, "set_session_storage"):
|
|
227
228
|
real_agent.set_session_storage(self._storage)
|
|
228
|
-
logger.debug(
|
|
229
|
-
f"AgentManager: Injected session storage into agent for memory support"
|
|
230
|
-
)
|
|
229
|
+
logger.debug("AgentManager: Injected session storage into agent for memory support")
|
|
231
230
|
|
|
232
231
|
# 2. Create agent identity before any other operations
|
|
233
232
|
agent_identity = StateManager.create_agent_identity(real_agent)
|
|
@@ -236,7 +235,6 @@ class AgentManager:
|
|
|
236
235
|
)
|
|
237
236
|
|
|
238
237
|
# Import model_config before using it
|
|
239
|
-
from agent_framework.core.model_config import model_config
|
|
240
238
|
|
|
241
239
|
# Check if agent uses remote config
|
|
242
240
|
use_remote_config = agent_class.get_use_remote_config()
|
|
@@ -329,7 +327,7 @@ class AgentManager:
|
|
|
329
327
|
else:
|
|
330
328
|
# Session has stored config but not from ES, merge it
|
|
331
329
|
logger.debug(
|
|
332
|
-
|
|
330
|
+
"AgentManager: Found existing session configuration, merging with dynamic config"
|
|
333
331
|
)
|
|
334
332
|
effective_config = dynamic_config.copy()
|
|
335
333
|
effective_config = self._merge_session_configs(effective_config, stored_config)
|
|
@@ -454,7 +452,7 @@ class AgentManager:
|
|
|
454
452
|
# Fallback: store full config if we can't get version info
|
|
455
453
|
session_data.session_configuration = effective_config
|
|
456
454
|
logger.warning(
|
|
457
|
-
|
|
455
|
+
"AgentManager: Could not get ES config version, storing full config"
|
|
458
456
|
)
|
|
459
457
|
except Exception as e:
|
|
460
458
|
logger.warning(
|
|
@@ -514,8 +512,8 @@ class AgentManager:
|
|
|
514
512
|
return proxy
|
|
515
513
|
|
|
516
514
|
def _merge_session_configs(
|
|
517
|
-
self, base_config:
|
|
518
|
-
) ->
|
|
515
|
+
self, base_config: dict[str, Any], session_config: dict[str, Any]
|
|
516
|
+
) -> dict[str, Any]:
|
|
519
517
|
"""
|
|
520
518
|
Merge session configuration with base configuration.
|
|
521
519
|
|
|
@@ -594,7 +592,7 @@ class AgentManager:
|
|
|
594
592
|
logger.error(f"AgentManager: Error updating session with agent identity: {e}")
|
|
595
593
|
|
|
596
594
|
async def _validate_agent_state_compatibility(
|
|
597
|
-
self, agent_identity: AgentIdentity, agent_state:
|
|
595
|
+
self, agent_identity: AgentIdentity, agent_state: dict[str, Any]
|
|
598
596
|
) -> bool:
|
|
599
597
|
"""
|
|
600
598
|
Validate that agent state is compatible with current agent identity.
|
|
@@ -608,9 +606,9 @@ class AgentManager:
|
|
|
608
606
|
self,
|
|
609
607
|
agent_identity: AgentIdentity,
|
|
610
608
|
event_type: str,
|
|
611
|
-
session_id:
|
|
612
|
-
user_id:
|
|
613
|
-
metadata:
|
|
609
|
+
session_id: str | None = None,
|
|
610
|
+
user_id: str | None = None,
|
|
611
|
+
metadata: dict[str, Any] | None = None,
|
|
614
612
|
) -> None:
|
|
615
613
|
"""Record an agent lifecycle event"""
|
|
616
614
|
try:
|