agentkernel 0.9.2__tar.gz → 0.9.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.
- {agentkernel-0.9.2 → agentkernel-0.9.4}/PKG-INFO +100 -10
- {agentkernel-0.9.2 → agentkernel-0.9.4}/README.md +85 -9
- {agentkernel-0.9.2 → agentkernel-0.9.4}/pyproject.toml +25 -6
- agentkernel-0.9.4/src/agentkernel/api/__init__.py +42 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/cli/cli.py +2 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/__init__.py +1 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/base.py +248 -21
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/chat_service.py +73 -9
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/config.py +78 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/event.py +52 -3
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/model.py +139 -5
- agentkernel-0.9.4/src/agentkernel/core/module.py +155 -0
- agentkernel-0.9.4/src/agentkernel/core/paused_run.py +279 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/runtime.py +168 -4
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/tool.py +41 -8
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/__init__.py +3 -3
- agentkernel-0.9.4/src/agentkernel/core/util/driver/s3.py +186 -0
- agentkernel-0.9.4/src/agentkernel/core/util/picklable.py +38 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/__init__.py +2 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/akagentrunner.py +17 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/akauthorizer.py +39 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/akresponsehandler.py +40 -6
- agentkernel-0.9.4/src/agentkernel/deployment/aws/serverless/core/event_translator.py +172 -0
- agentkernel-0.9.4/src/agentkernel/deployment/aws/serverless/core/webhook_host.py +152 -0
- agentkernel-0.9.4/src/agentkernel/framework/adk/adk.py +1115 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/crewai/crewai.py +17 -25
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/langgraph/langgraph.py +465 -49
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/openai/openai.py +267 -28
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/pydanticai/pydanticai.py +379 -28
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/smolagents/smolagents.py +22 -24
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/guardrail/guardrail.py +43 -1
- agentkernel-0.9.4/src/agentkernel/guardrail/walledai.py +328 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/__init__.py +4 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/base.py +11 -0
- agentkernel-0.9.4/src/agentkernel/integration/adapter/route_matcher.py +84 -0
- agentkernel-0.9.4/src/agentkernel/integration/adapter/routes.py +35 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/testing.py +12 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/webhook.py +5 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/agui/handler.py +52 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/agui/run_input.py +101 -9
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/instagram/adapter.py +7 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/messenger/adapter.py +7 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/slack/adapter.py +2 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/teams/adapter.py +2 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/telegram/adapter.py +6 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/thread_chat.py +6 -5
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/whatsapp/adapter.py +7 -2
- agentkernel-0.9.4/src/agentkernel/knowledgebase/__init__.py +74 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/base.py +233 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/knowledgebase/chroma.py +6 -2
- agentkernel-0.9.4/src/agentkernel/knowledgebase/document.py +96 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/errors.py +47 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/knowledgebuilder.py +399 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/model.py +61 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/knowledgebase/neo4j.py +35 -8
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/__init__.py +38 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/capability.py +280 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/manager.py +969 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/model.py +115 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/parser.py +504 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/prompts.py +173 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/roles.py +177 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/okf/tools.py +185 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/knowledgebase/starburst.py +29 -25
- agentkernel-0.9.4/src/agentkernel/knowledgebase/store/__init__.py +11 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/store/base.py +192 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/store/local.py +160 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/store/s3.py +166 -0
- agentkernel-0.9.4/src/agentkernel/knowledgebase/testing.py +697 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/agent_runner.py +9 -16
- agentkernel-0.9.4/src/agentkernel/pipeline/integration_delivery.py +134 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_handler.py +10 -57
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/handler.py +3 -0
- agentkernel-0.9.4/src/agentkernel/secret/__init__.py +18 -0
- agentkernel-0.9.4/src/agentkernel/secret/base.py +29 -0
- agentkernel-0.9.4/src/agentkernel/secret/cache.py +59 -0
- agentkernel-0.9.4/src/agentkernel/secret/errors.py +13 -0
- agentkernel-0.9.4/src/agentkernel/secret/factory.py +43 -0
- agentkernel-0.9.4/src/agentkernel/secret/manager.py +106 -0
- agentkernel-0.9.4/src/agentkernel/secret/providers/__init__.py +1 -0
- agentkernel-0.9.4/src/agentkernel/secret/providers/aws_ssm.py +88 -0
- agentkernel-0.9.4/src/agentkernel/secret/providers/env.py +13 -0
- agentkernel-0.9.4/src/agentkernel/secret/testing.py +63 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-add-capabilities/SKILL.md +291 -36
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-add-capabilities/evals/evals.json +103 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-add-integration/SKILL.md +46 -8
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-add-integration/evals/evals.json +1 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-build/SKILL.md +26 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-build/evals/evals.json +1 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-cloud-deploy/SKILL.md +146 -27
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-cloud-deploy/evals/evals.json +18 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-init/SKILL.md +4 -4
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-init/evals/evals.json +2 -2
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-test/SKILL.md +15 -14
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/ak-test/evals/evals.json +1 -1
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/config.py +1 -1
- agentkernel-0.9.4/src/agentkernel/test/core/evaluator/jev.py +99 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/test.py +5 -1
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/adk.py +37 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/cloudwatch.py +197 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/crewai.py +39 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/langgraph.py +33 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/openai.py +37 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/pydanticai.py +44 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/sigv4.py +57 -0
- agentkernel-0.9.4/src/agentkernel/trace/cloudwatch/smolagents.py +33 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/langgraph.py +10 -6
- agentkernel-0.9.4/src/agentkernel/trace/openllmetry/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/trace.py +6 -1
- agentkernel-0.9.2/src/agentkernel/api/__init__.py +0 -15
- agentkernel-0.9.2/src/agentkernel/core/module.py +0 -95
- agentkernel-0.9.2/src/agentkernel/framework/adk/adk.py +0 -647
- agentkernel-0.9.2/src/agentkernel/guardrail/walledai.py +0 -234
- agentkernel-0.9.2/src/agentkernel/knowledgebase/__init__.py +0 -1
- agentkernel-0.9.2/src/agentkernel/knowledgebase/base.py +0 -120
- agentkernel-0.9.2/src/agentkernel/knowledgebase/knowledgebuilder.py +0 -190
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/adk.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/agui.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/a2a/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/a2a/a2a.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/a2a/handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/http.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/mcp/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/api/mcp/akmcp.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/auth/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/auth/authoriser.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/auth/handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/auth.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/aws.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/azure.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/cli/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/cli/ak.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/builder.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/hooks.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/logger.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/hooks.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/source.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/session_cache.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/storage/storage_manager.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/multimodal/tools.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/service.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/cosmosdb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/firestore.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/redis_like.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/serde.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/session/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/async_bridge.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/config_yaml_util.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/cosmosdb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/firestore.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/redis_like.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/driver/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/error_util.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/key_value_cache.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/core/util/pagination.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/crewai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/akagentrunner.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/akoutputconsumer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/core/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/core/api/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/core/api/rest_api.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/core/api/websocket_api.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/core/sqs_consumer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/containerized/ecs_io_handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/raw_queue_consumer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/response_store/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/response_store/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/response_store/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/response_store/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/response_store/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/sqs_handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/core/websocket_service.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/aklambda.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/akwsconnectionhandler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/router/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/router/common.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/router/rest_lambda.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/router/ws_lambda.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/aws/serverless/core/sqs_consumer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/azure/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/azure/akfunction.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/common/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/common/response_store.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/common/rest_handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/common/thread_runner.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/common/websocket_service.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/gcp/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/gcp/akauthorizer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/deployment/gcp/akcloudrun.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/adk/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/crewai/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/langgraph/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/openai/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/pydanticai/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/framework/smolagents/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/gcp.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/gmail.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/guardrail/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/guardrail/bedrock.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/guardrail/openai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/instagram.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/meta.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/poller.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/adapter/producer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/agui/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/agui/mapping.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/agui/state.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/gmail/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/gmail/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/gmail/adapter.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/instagram/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/instagram/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/messenger/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/messenger/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/slack/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/slack/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/teams/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/teams/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/telegram/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/telegram/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/manager.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/model.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/naming.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/recorder.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/cosmosdb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/firestore.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/redis_like.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/thread/store/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/whatsapp/README.md +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/integration/whatsapp/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/langgraph.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/mcp.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/messenger.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/openai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/consumer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/envelope.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/io_handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/producer.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/request_handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/response_store/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/testing.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/thread_runner.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/bookkeeping.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/kafka.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/nats.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/transport/sqs.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/endpoint.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/gateway.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/push.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pipeline/ws/registry.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/pydanticai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/embedded.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/queue.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/queue_worker.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/thread.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/wire.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/broker/worker.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/errors.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/factory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/hooks.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/manager.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/model.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/principal.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/daytona.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/docker.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/e2b.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/ec2_ssm.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/kubernetes.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/providers/local_subprocess.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/testing.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/sandbox/tools.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/errors.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/handler.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/manager.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/model.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/provider/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/provider/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/provider/eventbridge.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/provider/local.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/dynamodb.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/in_memory.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/redis.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/redis_like.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/store/valkey.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/timing.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/schedule/tools.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/skills/skills.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/slack.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/smolagents.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/teams.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/telegram.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/core/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/core/evaluator/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/core/evaluator/base.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/core/evaluator/deepeval.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/test/core/evaluator/opik.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/thread.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/base.py +0 -0
- {agentkernel-0.9.2/src/agentkernel/trace/langfuse → agentkernel-0.9.4/src/agentkernel/trace/cloudwatch}/__init__.py +0 -0
- {agentkernel-0.9.2/src/agentkernel/trace/logfire → agentkernel-0.9.4/src/agentkernel/trace/langfuse}/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/adk.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/crewai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/langfuse.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/openai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/pydanticai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/langfuse/smolagents.py +0 -0
- {agentkernel-0.9.2/src/agentkernel/trace/openllmetry → agentkernel-0.9.4/src/agentkernel/trace/logfire}/__init__.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/adk.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/crewai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/langgraph.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/logfire.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/openai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/pydanticai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/logfire/smolagents.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/adk.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/crewai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/langgraph.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/openai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/openllmetry.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/pydanticai.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/trace/openllmetry/smolagents.py +0 -0
- {agentkernel-0.9.2 → agentkernel-0.9.4}/src/agentkernel/whatsapp.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: agentkernel
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: Agent Kernel - Unified AI Agents Runtime
|
|
5
5
|
Author: Yaala Labs
|
|
6
6
|
Author-email: Yaala Labs <agentkernel@yaalalabs.com>
|
|
@@ -25,6 +25,10 @@ Requires-Dist: azure-functions>=1.24.0 ; extra == 'azure'
|
|
|
25
25
|
Requires-Dist: azure-data-tables>=12.4.0 ; extra == 'azure'
|
|
26
26
|
Requires-Dist: azure-core>=1.26.0 ; extra == 'azure'
|
|
27
27
|
Requires-Dist: chromadb>=0.4.0 ; extra == 'chromadb'
|
|
28
|
+
Requires-Dist: opentelemetry-sdk>=1.30.0 ; extra == 'cloudwatch'
|
|
29
|
+
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.30.0 ; extra == 'cloudwatch'
|
|
30
|
+
Requires-Dist: botocore>=1.41.4 ; extra == 'cloudwatch'
|
|
31
|
+
Requires-Dist: requests>=2.32.0 ; extra == 'cloudwatch'
|
|
28
32
|
Requires-Dist: crewai>=1.15.0 ; extra == 'crewai'
|
|
29
33
|
Requires-Dist: openinference-instrumentation-crewai>=0.1.16 ; extra == 'crewai'
|
|
30
34
|
Requires-Dist: openinference-instrumentation-litellm>=0.1.28 ; extra == 'crewai'
|
|
@@ -37,6 +41,8 @@ Requires-Dist: google-auth-oauthlib>=1.0.0 ; extra == 'gmail'
|
|
|
37
41
|
Requires-Dist: google-auth-httplib2>=0.2.0 ; extra == 'gmail'
|
|
38
42
|
Requires-Dist: google-api-python-client>=2.0.0 ; extra == 'gmail'
|
|
39
43
|
Requires-Dist: httpx>=0.27.0 ; extra == 'instagram'
|
|
44
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'instagram'
|
|
45
|
+
Requires-Dist: typesafe-sdk>=0.7.2,<0.8 ; extra == 'jev'
|
|
40
46
|
Requires-Dist: confluent-kafka>=2.15.0 ; extra == 'kafka'
|
|
41
47
|
Requires-Dist: kubernetes>=29.0.0 ; extra == 'kubernetes'
|
|
42
48
|
Requires-Dist: langfuse>=4.2.0 ; extra == 'langfuse'
|
|
@@ -49,6 +55,7 @@ Requires-Dist: litellm~=1.89.2 ; extra == 'langgraph'
|
|
|
49
55
|
Requires-Dist: logfire>=3.0 ; extra == 'logfire'
|
|
50
56
|
Requires-Dist: fastmcp>=3.2.0,<4.0.0 ; extra == 'mcp'
|
|
51
57
|
Requires-Dist: httpx>=0.27.0 ; extra == 'messenger'
|
|
58
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'messenger'
|
|
52
59
|
Requires-Dist: litellm>=1.74.9 ; extra == 'multimodal'
|
|
53
60
|
Requires-Dist: python-multipart>=0.0.12 ; extra == 'multimodal'
|
|
54
61
|
Requires-Dist: nats-py>=2.15.0 ; extra == 'nats'
|
|
@@ -64,13 +71,17 @@ Requires-Dist: redis>=7.1.0 ; extra == 'redis'
|
|
|
64
71
|
Requires-Dist: docker>=7.0.0 ; extra == 'sandbox-docker'
|
|
65
72
|
Requires-Dist: slack-bolt==1.22.0 ; extra == 'slack'
|
|
66
73
|
Requires-Dist: httpx>=0.27.0 ; extra == 'slack'
|
|
74
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'slack'
|
|
75
|
+
Requires-Dist: aiohttp>=3.9.0 ; extra == 'slack'
|
|
67
76
|
Requires-Dist: smolagents>=1.0.0 ; extra == 'smolagents'
|
|
68
77
|
Requires-Dist: botbuilder-core>=4.17.0 ; extra == 'teams'
|
|
69
78
|
Requires-Dist: botbuilder-schema>=4.17.0 ; extra == 'teams'
|
|
70
79
|
Requires-Dist: aiohttp>=3.9.0 ; extra == 'teams'
|
|
71
80
|
Requires-Dist: msal>=1.31.1 ; extra == 'teams'
|
|
72
81
|
Requires-Dist: httpx>=0.27.0 ; extra == 'teams'
|
|
82
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'teams'
|
|
73
83
|
Requires-Dist: httpx>=0.27.0 ; extra == 'telegram'
|
|
84
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'telegram'
|
|
74
85
|
Requires-Dist: pytest>=8.4.1 ; extra == 'test'
|
|
75
86
|
Requires-Dist: pytest-asyncio>=1.2.0 ; extra == 'test'
|
|
76
87
|
Requires-Dist: pytest-cov>=6.2.1 ; extra == 'test'
|
|
@@ -83,6 +94,7 @@ Requires-Dist: trino>=0.337.0 ; extra == 'trino'
|
|
|
83
94
|
Requires-Dist: valkey>=6.0.0 ; extra == 'valkey'
|
|
84
95
|
Requires-Dist: walledai>=4.9.3 ; extra == 'walledai'
|
|
85
96
|
Requires-Dist: httpx>=0.27.0 ; extra == 'whatsapp'
|
|
97
|
+
Requires-Dist: fastapi>=0.118.0 ; extra == 'whatsapp'
|
|
86
98
|
Requires-Python: >=3.12, <3.14
|
|
87
99
|
Provides-Extra: a2a
|
|
88
100
|
Provides-Extra: adk
|
|
@@ -93,6 +105,7 @@ Provides-Extra: aws
|
|
|
93
105
|
Provides-Extra: azure
|
|
94
106
|
Provides-Extra: chromadb
|
|
95
107
|
Provides-Extra: cli
|
|
108
|
+
Provides-Extra: cloudwatch
|
|
96
109
|
Provides-Extra: crewai
|
|
97
110
|
Provides-Extra: cron
|
|
98
111
|
Provides-Extra: daytona
|
|
@@ -100,6 +113,7 @@ Provides-Extra: e2b
|
|
|
100
113
|
Provides-Extra: gcp
|
|
101
114
|
Provides-Extra: gmail
|
|
102
115
|
Provides-Extra: instagram
|
|
116
|
+
Provides-Extra: jev
|
|
103
117
|
Provides-Extra: kafka
|
|
104
118
|
Provides-Extra: kubernetes
|
|
105
119
|
Provides-Extra: langfuse
|
|
@@ -140,9 +154,11 @@ Agent Kernel is a lightweight **AI agent runtime** and adapter layer for buildin
|
|
|
140
154
|
- **Unified API**: Common abstractions (Agent, Runner, Session, Module, Runtime) across frameworks
|
|
141
155
|
- **Multi-Framework Support**: OpenAI Agents SDK, CrewAI, LangGraph, Google ADK, Smolagents, and Pydantic AI
|
|
142
156
|
- **Session Management**: Built-in session abstraction with pluggable storage backends
|
|
143
|
-
- **Knowledge Bases**: Unified `KnowledgeBase` interface with ChromaDB, Neo4j,
|
|
157
|
+
- **Knowledge Bases**: Unified, capability-declaring `KnowledgeBase` interface with ChromaDB, Neo4j, Starburst/Trino and Open Knowledge Format bundle (local directory or S3) backends via `KnowledgeBuilder`
|
|
144
158
|
- **Sandbox**: Execute agent-generated code and shell commands in an isolated, permission-bounded environment with pluggable providers (`local_subprocess`, `docker`, `kubernetes`, `e2b`, `daytona`, `ec2_ssm`), workload profiles, policy enforcement, per-user identity, and a queue-decoupled broker for long-running executions
|
|
159
|
+
- **Secret Resolution**: `SecretManager` resolves API keys and passwords environment-first, falling back to a pluggable provider (`env`, `aws_ssm` for AWS SSM Parameter Store, or your own) with a TTL'd process cache
|
|
145
160
|
- **Scheduled Tasks**: Deferred and recurring chat execution (`schedule.at`/`schedule.cron`) with a management REST API, five agent-facing tools, and pluggable provider (`local`, `eventbridge`) and store (`in_memory`, `redis`, `valkey`, `dynamodb`) backends
|
|
161
|
+
- **Human in the Loop**: Pause a run for a person's approval or answer and resume from their decision — `status: "PAUSED"` with HTTP 202, a `resume` block carrying `approved`/`denied`/`cancelled` decisions, supported on OpenAI Agents SDK, LangGraph, Pydantic AI and Google ADK over REST, streaming and AG-UI
|
|
146
162
|
- **Flexible Deployment**: Interactive CLI, REST API, serverless, or containerized deployment — see the "Multi-Cloud Deployment" section below
|
|
147
163
|
- **Pluggable Architecture**: Easy to extend with custom framework adapters
|
|
148
164
|
- **MCP Server**: Built-in Model Context Protocol server for exposing agents as MCP tools and exposing any custom tool
|
|
@@ -165,6 +181,9 @@ pip install "agentkernel[neo4j]"
|
|
|
165
181
|
pip install "agentkernel[trino]"
|
|
166
182
|
```
|
|
167
183
|
|
|
184
|
+
Open Knowledge Format bundles need no extra - `pyyaml` is a core dependency. Serving a bundle from S3
|
|
185
|
+
uses the `aws` extra: `pip install "agentkernel[aws]"`.
|
|
186
|
+
|
|
168
187
|
For LLM-based thread naming with Conversation Thread Support:
|
|
169
188
|
|
|
170
189
|
```bash
|
|
@@ -188,6 +207,12 @@ pip install "agentkernel[daytona]" # daytona cloud provider
|
|
|
188
207
|
pip install "agentkernel[aws]" # ec2_ssm provider (boto3)
|
|
189
208
|
```
|
|
190
209
|
|
|
210
|
+
For the `aws_ssm` secret provider (AWS SSM Parameter Store):
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
pip install "agentkernel[aws]"
|
|
214
|
+
```
|
|
215
|
+
|
|
191
216
|
For cron parsing with the Scheduling capability (the `eventbridge` provider rides the `aws` extra):
|
|
192
217
|
|
|
193
218
|
```bash
|
|
@@ -804,6 +829,41 @@ sort key; the AWS Terraform modules create it when `create_dynamodb_schedule_tab
|
|
|
804
829
|
- **Description**: DynamoDB item TTL in seconds
|
|
805
830
|
- **Environment Variable**: `AK_SCHEDULE__STORE__DYNAMODB__TTL`
|
|
806
831
|
|
|
832
|
+
#### Secret Resolution
|
|
833
|
+
|
|
834
|
+
`SecretManager.current().get("OPENAI_API_KEY")` resolves a secret by the same environment-variable-style
|
|
835
|
+
name the SDKs already read (`^[A-Z][A-Z0-9_]*$`). Resolution order is fixed: a set, non-empty environment
|
|
836
|
+
variable always wins, then the process cache, then the configured provider. A resolved value is returned to
|
|
837
|
+
the caller and never written back to the environment, so hand it to the SDK explicitly
|
|
838
|
+
(`set_default_openai_key(...)`). A miss raises `SecretNotFoundError` unless a `default` is passed; a provider
|
|
839
|
+
failure raises `SecretError` even with a `default`. The capability is always available — there is no
|
|
840
|
+
`enabled` flag; selecting a provider other than `env` is the only opt-in. See `examples/cli/openai-secret`.
|
|
841
|
+
|
|
842
|
+
- **Provider Type**
|
|
843
|
+
- **Field**: `secret.provider.type`
|
|
844
|
+
- **Type**: string
|
|
845
|
+
- **Default**: `env`
|
|
846
|
+
- **Options**: `env` (the process environment), `aws_ssm` (AWS SSM Parameter Store; requires
|
|
847
|
+
`secret.prefix` and the `aws` extra — `OPENAI_API_KEY` is read from `/ak/<prefix>/openai_api_key`), or a
|
|
848
|
+
dotted path to a `SecretProvider` subclass
|
|
849
|
+
- **Environment Variable**: `AK_SECRET__PROVIDER__TYPE`
|
|
850
|
+
|
|
851
|
+
- **Prefix**
|
|
852
|
+
- **Field**: `secret.prefix`
|
|
853
|
+
- **Type**: string
|
|
854
|
+
- **Default**: `""`
|
|
855
|
+
- **Description**: Deployment scope providers namespace secrets under; a single path segment. Required by
|
|
856
|
+
`aws_ssm`, ignored by `env`. Injected by the AWS Terraform modules when `ssm_enabled = true`
|
|
857
|
+
- **Environment Variable**: `AK_SECRET__PREFIX`
|
|
858
|
+
|
|
859
|
+
- **Cache TTL**
|
|
860
|
+
- **Field**: `secret.cache_ttl`
|
|
861
|
+
- **Type**: integer
|
|
862
|
+
- **Default**: `300`
|
|
863
|
+
- **Description**: Seconds a provider hit is served from the process cache (`0` disables caching); the
|
|
864
|
+
rotation-pickup window for values read per call
|
|
865
|
+
- **Environment Variable**: `AK_SECRET__CACHE_TTL`
|
|
866
|
+
|
|
807
867
|
#### Execution Configuration
|
|
808
868
|
|
|
809
869
|
Configure queue-backed and serverless execution behavior.
|
|
@@ -1174,7 +1234,7 @@ Configure tracing and observability for monitoring agent execution.
|
|
|
1174
1234
|
|
|
1175
1235
|
- **Type**
|
|
1176
1236
|
- **Field**: `trace.type`
|
|
1177
|
-
- **Options**: `langfuse`, `openllmetry`, `logfire`
|
|
1237
|
+
- **Options**: `langfuse`, `openllmetry`, `logfire`, `cloudwatch`
|
|
1178
1238
|
- **Default**: `langfuse`
|
|
1179
1239
|
- **Description**: Type of tracing provider to use
|
|
1180
1240
|
- **Environment Variable**: `AK_TRACE__TYPE`
|
|
@@ -1249,6 +1309,32 @@ trace:
|
|
|
1249
1309
|
type: logfire
|
|
1250
1310
|
```
|
|
1251
1311
|
|
|
1312
|
+
**AWS CloudWatch Setup:**
|
|
1313
|
+
|
|
1314
|
+
To send traces to Amazon CloudWatch (via AWS X-Ray, searchable in Transaction Search), install the cloudwatch extra:
|
|
1315
|
+
|
|
1316
|
+
```bash
|
|
1317
|
+
pip install agentkernel[cloudwatch]
|
|
1318
|
+
```
|
|
1319
|
+
|
|
1320
|
+
Spans are exported over OTLP to the X-Ray endpoint of your region, signed with the standard AWS credential
|
|
1321
|
+
chain (environment, profile, SSO, or instance/task role). Enable CloudWatch Transaction Search once in the
|
|
1322
|
+
account, and give the agent's role the `AWSXrayWriteOnlyAccess` managed policy:
|
|
1323
|
+
|
|
1324
|
+
```bash
|
|
1325
|
+
export AWS_REGION=us-east-1
|
|
1326
|
+
# Optional: export through the CloudWatch agent or an OpenTelemetry collector instead
|
|
1327
|
+
# export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://localhost:4318/v1/traces
|
|
1328
|
+
```
|
|
1329
|
+
|
|
1330
|
+
Enable tracing in your configuration:
|
|
1331
|
+
|
|
1332
|
+
```yaml
|
|
1333
|
+
trace:
|
|
1334
|
+
enabled: true
|
|
1335
|
+
type: cloudwatch
|
|
1336
|
+
```
|
|
1337
|
+
|
|
1252
1338
|
#### Test Configuration
|
|
1253
1339
|
|
|
1254
1340
|
Configure test comparison modes for automated testing. Test configuration is separate from the application configuration: it is **not** part of `config.yaml`. It lives in its own `test-config.yaml` file and is only loaded when the testing utilities (`agentkernel.test`) are used — see the [Test Configuration (test-config.yaml)](#test-configuration-test-configyaml) section for file resolution, environment variables, and migration notes.
|
|
@@ -1263,7 +1349,7 @@ Configure test comparison modes for automated testing. Test configuration is sep
|
|
|
1263
1349
|
- **Evaluator**
|
|
1264
1350
|
- **Field**: `evaluator`
|
|
1265
1351
|
- **Default**: `deepeval`
|
|
1266
|
-
- **Description**: Built-in evaluator short name (`deepeval` or `
|
|
1352
|
+
- **Description**: Built-in evaluator short name (`deepeval`, `opik` or `jev`), or a dotted path to your own `AKEvaluator` subclass
|
|
1267
1353
|
- **Environment Variable**: `AK_TEST__EVALUATOR`
|
|
1268
1354
|
|
|
1269
1355
|
- **Llm Model**
|
|
@@ -1285,8 +1371,8 @@ Configure test comparison modes for automated testing. Test configuration is sep
|
|
|
1285
1371
|
- **Environment Variable**: `AK_TEST__LLM__EMBEDDING_MODEL`
|
|
1286
1372
|
|
|
1287
1373
|
**Test Modes:**
|
|
1288
|
-
- `score`: Deterministic, offline string-match scoring via the configured evaluator (built-in `deepeval`: `Scorer.quasi_exact_match_score`; built-in `opik`: `LevenshteinRatio`, requires `pip install "agentkernel[opik]"`)
|
|
1289
|
-
- `llm`: LLM-as-judge evaluation via the configured evaluator (built-in `deepeval` or `opik`: `GEval`) for semantic similarity
|
|
1374
|
+
- `score`: Deterministic, offline string-match scoring via the configured evaluator (built-in `deepeval`: `Scorer.quasi_exact_match_score`; built-in `opik`: `LevenshteinRatio`, requires `pip install "agentkernel[opik]"`; built-in `jev` has no score mode)
|
|
1375
|
+
- `llm`: LLM-as-judge evaluation via the configured evaluator (built-in `deepeval` or `opik`: `GEval`; built-in `jev`: a TypeSafe JEV yes/no Noul question) for semantic similarity
|
|
1290
1376
|
- `fallback`: Tries score first, falls back to llm if score fails
|
|
1291
1377
|
|
|
1292
1378
|
```yaml
|
|
@@ -1637,7 +1723,7 @@ export AK_API__PORT=8000
|
|
|
1637
1723
|
export AK_A2A__ENABLED=true
|
|
1638
1724
|
export AK_MCP__ENABLED=false
|
|
1639
1725
|
export AK_TRACE__ENABLED=true
|
|
1640
|
-
export AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
1726
|
+
export AK_TRACE__TYPE=langfuse # or openllmetry, logfire, cloudwatch
|
|
1641
1727
|
# For Langfuse:
|
|
1642
1728
|
# export LANGFUSE_PUBLIC_KEY=pk-lf-...
|
|
1643
1729
|
# export LANGFUSE_SECRET_KEY=sk-lf-...
|
|
@@ -1646,9 +1732,11 @@ export AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
|
1646
1732
|
# export TRACELOOP_API_KEY=your-api-key
|
|
1647
1733
|
# For Logfire:
|
|
1648
1734
|
# export LOGFIRE_TOKEN=your-write-token
|
|
1735
|
+
# For CloudWatch:
|
|
1736
|
+
# export AWS_REGION=us-east-1
|
|
1649
1737
|
# Test harness (loaded from the separate test-config.yaml — see Test Configuration)
|
|
1650
1738
|
export AK_TEST__MODE=fallback # Options: score, llm, fallback
|
|
1651
|
-
export AK_TEST__EVALUATOR=deepeval # Built-in short name (deepeval or
|
|
1739
|
+
export AK_TEST__EVALUATOR=deepeval # Built-in short name (deepeval, opik or jev), or a dotted path to your own AKEvaluator subclass
|
|
1652
1740
|
export AK_TEST__LLM__MODEL=gpt-4o-mini
|
|
1653
1741
|
export AK_TEST__LLM__PROVIDER=openai
|
|
1654
1742
|
export AK_TEST__LLM__EMBEDDING_MODEL=text-embedding-3-small
|
|
@@ -1692,7 +1780,7 @@ AK_API__PORT=8080
|
|
|
1692
1780
|
AK_A2A__ENABLED=true
|
|
1693
1781
|
AK_A2A__URL=http://localhost:8080/a2a
|
|
1694
1782
|
AK_TRACE__ENABLED=true
|
|
1695
|
-
AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
1783
|
+
AK_TRACE__TYPE=langfuse # or openllmetry, logfire, cloudwatch
|
|
1696
1784
|
# Langfuse credentials (if using langfuse):
|
|
1697
1785
|
# LANGFUSE_PUBLIC_KEY=pk-lf-...
|
|
1698
1786
|
# LANGFUSE_SECRET_KEY=sk-lf-...
|
|
@@ -1701,6 +1789,8 @@ AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
|
1701
1789
|
# TRACELOOP_API_KEY=your-api-key
|
|
1702
1790
|
# Logfire credentials (if using logfire):
|
|
1703
1791
|
# LOGFIRE_TOKEN=your-write-token
|
|
1792
|
+
# CloudWatch region (if using cloudwatch; credentials come from the AWS credential chain):
|
|
1793
|
+
# AWS_REGION=us-east-1
|
|
1704
1794
|
```
|
|
1705
1795
|
|
|
1706
1796
|
#### config.yaml
|
|
@@ -1918,7 +2008,7 @@ gmail:
|
|
|
1918
2008
|
|
|
1919
2009
|
Test harness configuration (comparison mode, evaluator backend, llm models) is separate from the application configuration. It is not part of `config.yaml` — it lives in its own `test-config.yaml` file, resolved from the current working directory, and is only loaded when the testing utilities (`agentkernel.test`) are used. A legacy `test:` section in `config.yaml` is ignored. See [Test Configuration](#test-configuration) under Configuration Options for the full list of fields and defaults.
|
|
1920
2010
|
|
|
1921
|
-
The `evaluator` field accepts
|
|
2011
|
+
The `evaluator` field accepts three built-in short names — `deepeval` (default, `pip install "agentkernel[test]"`) or `opik` (`pip install "agentkernel[opik]"`, [Opik](https://www.comet.com/docs/opik/) by Comet, runs entirely locally with `OPIK_TRACK_DISABLE` set so no Opik Cloud account or API key is needed) or `jev` (`pip install "agentkernel[jev]"`, hosted [TypeSafe JEV](https://docs.typesafe.ai) judge; `mode: llm` only, needs `TYPESAFE_API_KEY`, and sends the comparison text to `api.typesafe.ai`) — or a dotted path to your own `AKEvaluator` subclass.
|
|
1922
2012
|
|
|
1923
2013
|
**test-config.yaml:**
|
|
1924
2014
|
|
|
@@ -10,9 +10,11 @@ Agent Kernel is a lightweight **AI agent runtime** and adapter layer for buildin
|
|
|
10
10
|
- **Unified API**: Common abstractions (Agent, Runner, Session, Module, Runtime) across frameworks
|
|
11
11
|
- **Multi-Framework Support**: OpenAI Agents SDK, CrewAI, LangGraph, Google ADK, Smolagents, and Pydantic AI
|
|
12
12
|
- **Session Management**: Built-in session abstraction with pluggable storage backends
|
|
13
|
-
- **Knowledge Bases**: Unified `KnowledgeBase` interface with ChromaDB, Neo4j,
|
|
13
|
+
- **Knowledge Bases**: Unified, capability-declaring `KnowledgeBase` interface with ChromaDB, Neo4j, Starburst/Trino and Open Knowledge Format bundle (local directory or S3) backends via `KnowledgeBuilder`
|
|
14
14
|
- **Sandbox**: Execute agent-generated code and shell commands in an isolated, permission-bounded environment with pluggable providers (`local_subprocess`, `docker`, `kubernetes`, `e2b`, `daytona`, `ec2_ssm`), workload profiles, policy enforcement, per-user identity, and a queue-decoupled broker for long-running executions
|
|
15
|
+
- **Secret Resolution**: `SecretManager` resolves API keys and passwords environment-first, falling back to a pluggable provider (`env`, `aws_ssm` for AWS SSM Parameter Store, or your own) with a TTL'd process cache
|
|
15
16
|
- **Scheduled Tasks**: Deferred and recurring chat execution (`schedule.at`/`schedule.cron`) with a management REST API, five agent-facing tools, and pluggable provider (`local`, `eventbridge`) and store (`in_memory`, `redis`, `valkey`, `dynamodb`) backends
|
|
17
|
+
- **Human in the Loop**: Pause a run for a person's approval or answer and resume from their decision — `status: "PAUSED"` with HTTP 202, a `resume` block carrying `approved`/`denied`/`cancelled` decisions, supported on OpenAI Agents SDK, LangGraph, Pydantic AI and Google ADK over REST, streaming and AG-UI
|
|
16
18
|
- **Flexible Deployment**: Interactive CLI, REST API, serverless, or containerized deployment — see the "Multi-Cloud Deployment" section below
|
|
17
19
|
- **Pluggable Architecture**: Easy to extend with custom framework adapters
|
|
18
20
|
- **MCP Server**: Built-in Model Context Protocol server for exposing agents as MCP tools and exposing any custom tool
|
|
@@ -35,6 +37,9 @@ pip install "agentkernel[neo4j]"
|
|
|
35
37
|
pip install "agentkernel[trino]"
|
|
36
38
|
```
|
|
37
39
|
|
|
40
|
+
Open Knowledge Format bundles need no extra - `pyyaml` is a core dependency. Serving a bundle from S3
|
|
41
|
+
uses the `aws` extra: `pip install "agentkernel[aws]"`.
|
|
42
|
+
|
|
38
43
|
For LLM-based thread naming with Conversation Thread Support:
|
|
39
44
|
|
|
40
45
|
```bash
|
|
@@ -58,6 +63,12 @@ pip install "agentkernel[daytona]" # daytona cloud provider
|
|
|
58
63
|
pip install "agentkernel[aws]" # ec2_ssm provider (boto3)
|
|
59
64
|
```
|
|
60
65
|
|
|
66
|
+
For the `aws_ssm` secret provider (AWS SSM Parameter Store):
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
pip install "agentkernel[aws]"
|
|
70
|
+
```
|
|
71
|
+
|
|
61
72
|
For cron parsing with the Scheduling capability (the `eventbridge` provider rides the `aws` extra):
|
|
62
73
|
|
|
63
74
|
```bash
|
|
@@ -674,6 +685,41 @@ sort key; the AWS Terraform modules create it when `create_dynamodb_schedule_tab
|
|
|
674
685
|
- **Description**: DynamoDB item TTL in seconds
|
|
675
686
|
- **Environment Variable**: `AK_SCHEDULE__STORE__DYNAMODB__TTL`
|
|
676
687
|
|
|
688
|
+
#### Secret Resolution
|
|
689
|
+
|
|
690
|
+
`SecretManager.current().get("OPENAI_API_KEY")` resolves a secret by the same environment-variable-style
|
|
691
|
+
name the SDKs already read (`^[A-Z][A-Z0-9_]*$`). Resolution order is fixed: a set, non-empty environment
|
|
692
|
+
variable always wins, then the process cache, then the configured provider. A resolved value is returned to
|
|
693
|
+
the caller and never written back to the environment, so hand it to the SDK explicitly
|
|
694
|
+
(`set_default_openai_key(...)`). A miss raises `SecretNotFoundError` unless a `default` is passed; a provider
|
|
695
|
+
failure raises `SecretError` even with a `default`. The capability is always available — there is no
|
|
696
|
+
`enabled` flag; selecting a provider other than `env` is the only opt-in. See `examples/cli/openai-secret`.
|
|
697
|
+
|
|
698
|
+
- **Provider Type**
|
|
699
|
+
- **Field**: `secret.provider.type`
|
|
700
|
+
- **Type**: string
|
|
701
|
+
- **Default**: `env`
|
|
702
|
+
- **Options**: `env` (the process environment), `aws_ssm` (AWS SSM Parameter Store; requires
|
|
703
|
+
`secret.prefix` and the `aws` extra — `OPENAI_API_KEY` is read from `/ak/<prefix>/openai_api_key`), or a
|
|
704
|
+
dotted path to a `SecretProvider` subclass
|
|
705
|
+
- **Environment Variable**: `AK_SECRET__PROVIDER__TYPE`
|
|
706
|
+
|
|
707
|
+
- **Prefix**
|
|
708
|
+
- **Field**: `secret.prefix`
|
|
709
|
+
- **Type**: string
|
|
710
|
+
- **Default**: `""`
|
|
711
|
+
- **Description**: Deployment scope providers namespace secrets under; a single path segment. Required by
|
|
712
|
+
`aws_ssm`, ignored by `env`. Injected by the AWS Terraform modules when `ssm_enabled = true`
|
|
713
|
+
- **Environment Variable**: `AK_SECRET__PREFIX`
|
|
714
|
+
|
|
715
|
+
- **Cache TTL**
|
|
716
|
+
- **Field**: `secret.cache_ttl`
|
|
717
|
+
- **Type**: integer
|
|
718
|
+
- **Default**: `300`
|
|
719
|
+
- **Description**: Seconds a provider hit is served from the process cache (`0` disables caching); the
|
|
720
|
+
rotation-pickup window for values read per call
|
|
721
|
+
- **Environment Variable**: `AK_SECRET__CACHE_TTL`
|
|
722
|
+
|
|
677
723
|
#### Execution Configuration
|
|
678
724
|
|
|
679
725
|
Configure queue-backed and serverless execution behavior.
|
|
@@ -1044,7 +1090,7 @@ Configure tracing and observability for monitoring agent execution.
|
|
|
1044
1090
|
|
|
1045
1091
|
- **Type**
|
|
1046
1092
|
- **Field**: `trace.type`
|
|
1047
|
-
- **Options**: `langfuse`, `openllmetry`, `logfire`
|
|
1093
|
+
- **Options**: `langfuse`, `openllmetry`, `logfire`, `cloudwatch`
|
|
1048
1094
|
- **Default**: `langfuse`
|
|
1049
1095
|
- **Description**: Type of tracing provider to use
|
|
1050
1096
|
- **Environment Variable**: `AK_TRACE__TYPE`
|
|
@@ -1119,6 +1165,32 @@ trace:
|
|
|
1119
1165
|
type: logfire
|
|
1120
1166
|
```
|
|
1121
1167
|
|
|
1168
|
+
**AWS CloudWatch Setup:**
|
|
1169
|
+
|
|
1170
|
+
To send traces to Amazon CloudWatch (via AWS X-Ray, searchable in Transaction Search), install the cloudwatch extra:
|
|
1171
|
+
|
|
1172
|
+
```bash
|
|
1173
|
+
pip install agentkernel[cloudwatch]
|
|
1174
|
+
```
|
|
1175
|
+
|
|
1176
|
+
Spans are exported over OTLP to the X-Ray endpoint of your region, signed with the standard AWS credential
|
|
1177
|
+
chain (environment, profile, SSO, or instance/task role). Enable CloudWatch Transaction Search once in the
|
|
1178
|
+
account, and give the agent's role the `AWSXrayWriteOnlyAccess` managed policy:
|
|
1179
|
+
|
|
1180
|
+
```bash
|
|
1181
|
+
export AWS_REGION=us-east-1
|
|
1182
|
+
# Optional: export through the CloudWatch agent or an OpenTelemetry collector instead
|
|
1183
|
+
# export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://localhost:4318/v1/traces
|
|
1184
|
+
```
|
|
1185
|
+
|
|
1186
|
+
Enable tracing in your configuration:
|
|
1187
|
+
|
|
1188
|
+
```yaml
|
|
1189
|
+
trace:
|
|
1190
|
+
enabled: true
|
|
1191
|
+
type: cloudwatch
|
|
1192
|
+
```
|
|
1193
|
+
|
|
1122
1194
|
#### Test Configuration
|
|
1123
1195
|
|
|
1124
1196
|
Configure test comparison modes for automated testing. Test configuration is separate from the application configuration: it is **not** part of `config.yaml`. It lives in its own `test-config.yaml` file and is only loaded when the testing utilities (`agentkernel.test`) are used — see the [Test Configuration (test-config.yaml)](#test-configuration-test-configyaml) section for file resolution, environment variables, and migration notes.
|
|
@@ -1133,7 +1205,7 @@ Configure test comparison modes for automated testing. Test configuration is sep
|
|
|
1133
1205
|
- **Evaluator**
|
|
1134
1206
|
- **Field**: `evaluator`
|
|
1135
1207
|
- **Default**: `deepeval`
|
|
1136
|
-
- **Description**: Built-in evaluator short name (`deepeval` or `
|
|
1208
|
+
- **Description**: Built-in evaluator short name (`deepeval`, `opik` or `jev`), or a dotted path to your own `AKEvaluator` subclass
|
|
1137
1209
|
- **Environment Variable**: `AK_TEST__EVALUATOR`
|
|
1138
1210
|
|
|
1139
1211
|
- **Llm Model**
|
|
@@ -1155,8 +1227,8 @@ Configure test comparison modes for automated testing. Test configuration is sep
|
|
|
1155
1227
|
- **Environment Variable**: `AK_TEST__LLM__EMBEDDING_MODEL`
|
|
1156
1228
|
|
|
1157
1229
|
**Test Modes:**
|
|
1158
|
-
- `score`: Deterministic, offline string-match scoring via the configured evaluator (built-in `deepeval`: `Scorer.quasi_exact_match_score`; built-in `opik`: `LevenshteinRatio`, requires `pip install "agentkernel[opik]"`)
|
|
1159
|
-
- `llm`: LLM-as-judge evaluation via the configured evaluator (built-in `deepeval` or `opik`: `GEval`) for semantic similarity
|
|
1230
|
+
- `score`: Deterministic, offline string-match scoring via the configured evaluator (built-in `deepeval`: `Scorer.quasi_exact_match_score`; built-in `opik`: `LevenshteinRatio`, requires `pip install "agentkernel[opik]"`; built-in `jev` has no score mode)
|
|
1231
|
+
- `llm`: LLM-as-judge evaluation via the configured evaluator (built-in `deepeval` or `opik`: `GEval`; built-in `jev`: a TypeSafe JEV yes/no Noul question) for semantic similarity
|
|
1160
1232
|
- `fallback`: Tries score first, falls back to llm if score fails
|
|
1161
1233
|
|
|
1162
1234
|
```yaml
|
|
@@ -1507,7 +1579,7 @@ export AK_API__PORT=8000
|
|
|
1507
1579
|
export AK_A2A__ENABLED=true
|
|
1508
1580
|
export AK_MCP__ENABLED=false
|
|
1509
1581
|
export AK_TRACE__ENABLED=true
|
|
1510
|
-
export AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
1582
|
+
export AK_TRACE__TYPE=langfuse # or openllmetry, logfire, cloudwatch
|
|
1511
1583
|
# For Langfuse:
|
|
1512
1584
|
# export LANGFUSE_PUBLIC_KEY=pk-lf-...
|
|
1513
1585
|
# export LANGFUSE_SECRET_KEY=sk-lf-...
|
|
@@ -1516,9 +1588,11 @@ export AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
|
1516
1588
|
# export TRACELOOP_API_KEY=your-api-key
|
|
1517
1589
|
# For Logfire:
|
|
1518
1590
|
# export LOGFIRE_TOKEN=your-write-token
|
|
1591
|
+
# For CloudWatch:
|
|
1592
|
+
# export AWS_REGION=us-east-1
|
|
1519
1593
|
# Test harness (loaded from the separate test-config.yaml — see Test Configuration)
|
|
1520
1594
|
export AK_TEST__MODE=fallback # Options: score, llm, fallback
|
|
1521
|
-
export AK_TEST__EVALUATOR=deepeval # Built-in short name (deepeval or
|
|
1595
|
+
export AK_TEST__EVALUATOR=deepeval # Built-in short name (deepeval, opik or jev), or a dotted path to your own AKEvaluator subclass
|
|
1522
1596
|
export AK_TEST__LLM__MODEL=gpt-4o-mini
|
|
1523
1597
|
export AK_TEST__LLM__PROVIDER=openai
|
|
1524
1598
|
export AK_TEST__LLM__EMBEDDING_MODEL=text-embedding-3-small
|
|
@@ -1562,7 +1636,7 @@ AK_API__PORT=8080
|
|
|
1562
1636
|
AK_A2A__ENABLED=true
|
|
1563
1637
|
AK_A2A__URL=http://localhost:8080/a2a
|
|
1564
1638
|
AK_TRACE__ENABLED=true
|
|
1565
|
-
AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
1639
|
+
AK_TRACE__TYPE=langfuse # or openllmetry, logfire, cloudwatch
|
|
1566
1640
|
# Langfuse credentials (if using langfuse):
|
|
1567
1641
|
# LANGFUSE_PUBLIC_KEY=pk-lf-...
|
|
1568
1642
|
# LANGFUSE_SECRET_KEY=sk-lf-...
|
|
@@ -1571,6 +1645,8 @@ AK_TRACE__TYPE=langfuse # or openllmetry, logfire
|
|
|
1571
1645
|
# TRACELOOP_API_KEY=your-api-key
|
|
1572
1646
|
# Logfire credentials (if using logfire):
|
|
1573
1647
|
# LOGFIRE_TOKEN=your-write-token
|
|
1648
|
+
# CloudWatch region (if using cloudwatch; credentials come from the AWS credential chain):
|
|
1649
|
+
# AWS_REGION=us-east-1
|
|
1574
1650
|
```
|
|
1575
1651
|
|
|
1576
1652
|
#### config.yaml
|
|
@@ -1788,7 +1864,7 @@ gmail:
|
|
|
1788
1864
|
|
|
1789
1865
|
Test harness configuration (comparison mode, evaluator backend, llm models) is separate from the application configuration. It is not part of `config.yaml` — it lives in its own `test-config.yaml` file, resolved from the current working directory, and is only loaded when the testing utilities (`agentkernel.test`) are used. A legacy `test:` section in `config.yaml` is ignored. See [Test Configuration](#test-configuration) under Configuration Options for the full list of fields and defaults.
|
|
1790
1866
|
|
|
1791
|
-
The `evaluator` field accepts
|
|
1867
|
+
The `evaluator` field accepts three built-in short names — `deepeval` (default, `pip install "agentkernel[test]"`) or `opik` (`pip install "agentkernel[opik]"`, [Opik](https://www.comet.com/docs/opik/) by Comet, runs entirely locally with `OPIK_TRACK_DISABLE` set so no Opik Cloud account or API key is needed) or `jev` (`pip install "agentkernel[jev]"`, hosted [TypeSafe JEV](https://docs.typesafe.ai) judge; `mode: llm` only, needs `TYPESAFE_API_KEY`, and sends the comparison text to `api.typesafe.ai`) — or a dotted path to your own `AKEvaluator` subclass.
|
|
1792
1868
|
|
|
1793
1869
|
**test-config.yaml:**
|
|
1794
1870
|
|
|
@@ -4,7 +4,7 @@ build-backend = "uv_build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "agentkernel"
|
|
7
|
-
version = "0.9.
|
|
7
|
+
version = "0.9.4"
|
|
8
8
|
description = "Agent Kernel - Unified AI Agents Runtime"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.12,<3.14"
|
|
@@ -34,6 +34,12 @@ openllmetry = [
|
|
|
34
34
|
logfire = [
|
|
35
35
|
"logfire>=3.0",
|
|
36
36
|
]
|
|
37
|
+
cloudwatch = [
|
|
38
|
+
"opentelemetry-sdk>=1.30.0",
|
|
39
|
+
"opentelemetry-exporter-otlp-proto-http>=1.30.0",
|
|
40
|
+
"botocore>=1.41.4",
|
|
41
|
+
"requests>=2.32.0",
|
|
42
|
+
]
|
|
37
43
|
crewai = [
|
|
38
44
|
"crewai>=1.15.0",
|
|
39
45
|
"openinference-instrumentation-crewai>=0.1.16",
|
|
@@ -125,19 +131,25 @@ api = [
|
|
|
125
131
|
]
|
|
126
132
|
slack = [
|
|
127
133
|
"slack-bolt==1.22.0",
|
|
128
|
-
"httpx>=0.27.0"
|
|
134
|
+
"httpx>=0.27.0",
|
|
135
|
+
"fastapi>=0.118.0",
|
|
136
|
+
"aiohttp>=3.9.0",
|
|
129
137
|
]
|
|
130
138
|
whatsapp = [
|
|
131
|
-
"httpx>=0.27.0"
|
|
139
|
+
"httpx>=0.27.0",
|
|
140
|
+
"fastapi>=0.118.0",
|
|
132
141
|
]
|
|
133
142
|
messenger = [
|
|
134
|
-
"httpx>=0.27.0"
|
|
143
|
+
"httpx>=0.27.0",
|
|
144
|
+
"fastapi>=0.118.0",
|
|
135
145
|
]
|
|
136
146
|
instagram = [
|
|
137
|
-
"httpx>=0.27.0"
|
|
147
|
+
"httpx>=0.27.0",
|
|
148
|
+
"fastapi>=0.118.0",
|
|
138
149
|
]
|
|
139
150
|
telegram = [
|
|
140
|
-
"httpx>=0.27.0"
|
|
151
|
+
"httpx>=0.27.0",
|
|
152
|
+
"fastapi>=0.118.0",
|
|
141
153
|
]
|
|
142
154
|
teams = [
|
|
143
155
|
"botbuilder-core>=4.17.0",
|
|
@@ -145,6 +157,7 @@ teams = [
|
|
|
145
157
|
"aiohttp>=3.9.0",
|
|
146
158
|
"msal>=1.31.1",
|
|
147
159
|
"httpx>=0.27.0",
|
|
160
|
+
"fastapi>=0.118.0",
|
|
148
161
|
]
|
|
149
162
|
gmail = [
|
|
150
163
|
"google-auth>=2.0.0",
|
|
@@ -191,6 +204,9 @@ kubernetes = [
|
|
|
191
204
|
opik = [
|
|
192
205
|
"opik>=1.7.0",
|
|
193
206
|
]
|
|
207
|
+
jev = [
|
|
208
|
+
"typesafe-sdk>=0.7.2,<0.8",
|
|
209
|
+
]
|
|
194
210
|
|
|
195
211
|
[project.scripts]
|
|
196
212
|
ak = "agentkernel.cli.ak:main"
|
|
@@ -230,3 +246,6 @@ target-version = ["py312"]
|
|
|
230
246
|
|
|
231
247
|
[tool.pytest.ini_options]
|
|
232
248
|
addopts = "--cov=src --cov-report=term --cov-report=html --html=report.html"
|
|
249
|
+
# CI runs everything; `-m "not slow"` is for a local run that should not spend a minute
|
|
250
|
+
# materialising a 10,000-concept bundle.
|
|
251
|
+
markers = ["slow: builds a large fixture on disk or otherwise takes tens of seconds"]
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Agent Kernel REST package.
|
|
3
|
+
|
|
4
|
+
This package contains the REST API implementation for exposing Agent Kernel over HTTP.
|
|
5
|
+
|
|
6
|
+
Exports are lazy (the ``agentkernel.integration.adapter`` pattern) so importing one piece never
|
|
7
|
+
drags in another's dependencies: a webhook host on Lambda imports ``api.handler`` and has no use
|
|
8
|
+
for ``api.http``'s uvicorn server.
|
|
9
|
+
"""
|
|
10
|
+
|
|
11
|
+
import importlib
|
|
12
|
+
import importlib.metadata
|
|
13
|
+
from typing import TYPE_CHECKING, Any
|
|
14
|
+
|
|
15
|
+
try:
|
|
16
|
+
__version__ = importlib.metadata.version("agentkernel")
|
|
17
|
+
except importlib.metadata.PackageNotFoundError:
|
|
18
|
+
__version__ = "0.1.0"
|
|
19
|
+
|
|
20
|
+
_LAZY_EXPORTS = {
|
|
21
|
+
"AgentRESTRequestHandler": ".handler",
|
|
22
|
+
"RESTRequestHandler": ".handler",
|
|
23
|
+
"RESTAPI": ".http",
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
__all__ = sorted(_LAZY_EXPORTS)
|
|
27
|
+
|
|
28
|
+
if TYPE_CHECKING: # pragma: no cover: static resolution only, preserves laziness at runtime
|
|
29
|
+
from .handler import AgentRESTRequestHandler, RESTRequestHandler
|
|
30
|
+
from .http import RESTAPI
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def __getattr__(name: str) -> Any:
|
|
34
|
+
module_path = _LAZY_EXPORTS.get(name)
|
|
35
|
+
if module_path is None:
|
|
36
|
+
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
|
37
|
+
module = importlib.import_module(module_path, __name__)
|
|
38
|
+
return getattr(module, name)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def __dir__() -> list[str]:
|
|
42
|
+
return sorted(__all__)
|
|
@@ -87,8 +87,8 @@ class CLI:
|
|
|
87
87
|
if not prompt.strip():
|
|
88
88
|
continue
|
|
89
89
|
if prompt.startswith("!"):
|
|
90
|
-
tokens = prompt.
|
|
91
|
-
command = tokens[0]
|
|
90
|
+
tokens = prompt.split()
|
|
91
|
+
command = tokens[0].lower() # only the command is case-insensitive; arguments are names
|
|
92
92
|
if command in ["!h", "!help"]:
|
|
93
93
|
self.help()
|
|
94
94
|
elif command in ["!c", "!clear"]:
|