agentkit-sdk-python 0.5.5__tar.gz → 0.5.7__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.
- {agentkit_sdk_python-0.5.5/agentkit_sdk_python.egg-info → agentkit_sdk_python-0.5.7}/PKG-INFO +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/agent_server_app.py +12 -4
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/base_service_client.py +117 -26
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/__init__.py +3 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/configuration.py +111 -12
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/version.py +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7/agentkit_sdk_python.egg-info}/PKG-INFO +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/pyproject.toml +2 -2
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/LICENSE +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/MANIFEST.in +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/README.md +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/a2a_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/a2a_app/a2a_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/a2a_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/middleware.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/base_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/mcp_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/mcp_app/mcp_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/mcp_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/simple_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/simple_app_handlers.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/base_agentkit_client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/base_iam_client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/console_urls.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/constants.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/context.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/platform/provider.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/account/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/account/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/identity/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/identity/auth.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/knowledge/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/knowledge/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/knowledge/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/mcp/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/mcp/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/mcp/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/memory/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/memory/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/memory/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/runtime/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/runtime/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/runtime/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/skills/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/skills/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/skills/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/tools/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/tools/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/sdk/tools/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/base.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/local_docker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/ve_pipeline.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/__main__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_build.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_deploy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_destroy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_init.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_invoke.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_knowledge.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_launch.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_memory.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_runtime.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_skills.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_skills_workflow.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_status.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_tools.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/cli_version.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/console_reporter.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/interactive_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/cli/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/choice_resolvers.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/cloud_provider.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/config_handler.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/config_validator.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/constants.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/dataclass_utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/docker_build_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/global_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/region_defaults.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/region_resolver.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/strategy_configs.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/config/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/context.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/base_images.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/container.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/dockerfile/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/dockerfile/manager.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/dockerfile/metadata.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/docker/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/errors.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/base_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/build_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/deploy_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/init_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/invoke_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/lifecycle_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/executors/status_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/models.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/reporter.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/__pycache__/customer_support_assistant.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/__pycache__/financial_analyst.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/__pycache__/simple_app_veadk.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/__pycache__/simple_mcp_veadk.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/a2a.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/agent_server.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/basic.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/basic_stream.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/customer_support_assistant.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/eino_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/eino_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/eino_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/eino_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/eino_a2a/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/financial_analyst.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/langchain_basic_stream.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/simple_app_veadk.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/simple_mcp_veadk.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_a2a/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_basic/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_basic/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_basic/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_basic/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/samples/veadk_go_basic/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/templates/code-pipeline-tos-cr-step.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/templates/golang/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/templates/python/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/wrappers/wrapper_basic.py.jinja2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/resources/wrappers/wrapper_stream.py.jinja2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/runners/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/runners/base.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/runners/local_docker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/runners/ve_agentkit.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/bindings/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/bindings/memory.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/builder.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/deployer.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/initializer.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/invoker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/lifecycle.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/sdk/status.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/strategies/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/strategies/base_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/strategies/cloud_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/strategies/hybrid_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/strategies/local_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/utils/agent_parser.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/code_pipeline.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/cr.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/iam.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/services/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/services/cr_service.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/services/tos_service.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/sts.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/volcengine/utils/project_archiver.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/global_config_io.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/logging_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/misc.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/request.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/template_utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/utils/ve_sign.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit_sdk_python.egg-info/SOURCES.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit_sdk_python.egg-info/dependency_links.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit_sdk_python.egg-info/entry_points.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit_sdk_python.egg-info/requires.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit_sdk_python.egg-info/top_level.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/setup.cfg +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/tests/test_client_uses_platform_context.py +0 -0
{agentkit_sdk_python-0.5.5/agentkit_sdk_python.egg-info → agentkit_sdk_python-0.5.7}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentkit-sdk-python
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.7
|
|
4
4
|
Summary: Python SDK for transforming any AI agent into a production-ready application. Framework-agnostic primitives for runtime, memory, authentication, and tools with volcengine-managed infrastructure.
|
|
5
5
|
Author-email: Xiangrui Cheng <innsdcc@gmail.com>, Yumeng Bao <baoyumeng.123@gmail.com>, Yaozheng Fang <fangyozheng@gmail.com>, Guodong Li <cu.eric.lee@gmail.com>
|
|
6
6
|
License: Apache License
|
|
@@ -16,7 +16,6 @@ import json
|
|
|
16
16
|
import logging
|
|
17
17
|
from contextlib import asynccontextmanager
|
|
18
18
|
from typing import Any
|
|
19
|
-
from typing_extensions import override
|
|
20
19
|
|
|
21
20
|
import uvicorn
|
|
22
21
|
from fastapi import FastAPI, HTTPException, Request
|
|
@@ -42,9 +41,10 @@ from google.adk.sessions.base_session_service import BaseSessionService
|
|
|
42
41
|
from google.adk.utils.context_utils import Aclosing
|
|
43
42
|
from google.genai import types
|
|
44
43
|
from opentelemetry import trace
|
|
44
|
+
from typing_extensions import override
|
|
45
45
|
from veadk import Agent
|
|
46
|
-
from veadk.runner import Runner
|
|
47
46
|
from veadk.memory.short_term_memory import ShortTermMemory
|
|
47
|
+
from veadk.runner import Runner
|
|
48
48
|
|
|
49
49
|
from agentkit.apps.agent_server_app.middleware import (
|
|
50
50
|
AgentkitTelemetryHTTPMiddleware,
|
|
@@ -100,6 +100,7 @@ class AgentkitAgentServerApp(BaseAgentkitApp):
|
|
|
100
100
|
short_term_memory: BaseSessionService | ShortTermMemory | None = None,
|
|
101
101
|
*,
|
|
102
102
|
app: App | None = None,
|
|
103
|
+
allow_origins: list[str] | None = None,
|
|
103
104
|
) -> None:
|
|
104
105
|
super().__init__()
|
|
105
106
|
|
|
@@ -136,7 +137,12 @@ class AgentkitAgentServerApp(BaseAgentkitApp):
|
|
|
136
137
|
agents_dir=".",
|
|
137
138
|
)
|
|
138
139
|
|
|
139
|
-
runner = Runner(
|
|
140
|
+
runner = Runner(
|
|
141
|
+
agent=root_agent,
|
|
142
|
+
short_term_memory=short_term_memory
|
|
143
|
+
if isinstance(short_term_memory, ShortTermMemory)
|
|
144
|
+
else None,
|
|
145
|
+
)
|
|
140
146
|
_a2a_server_app = to_a2a(agent=root_agent, runner=runner)
|
|
141
147
|
|
|
142
148
|
@asynccontextmanager
|
|
@@ -147,7 +153,9 @@ class AgentkitAgentServerApp(BaseAgentkitApp):
|
|
|
147
153
|
await handler()
|
|
148
154
|
yield
|
|
149
155
|
|
|
150
|
-
self.app = self.server.get_fast_api_app(
|
|
156
|
+
self.app = self.server.get_fast_api_app(
|
|
157
|
+
lifespan=lifespan, allow_origins=allow_origins
|
|
158
|
+
)
|
|
151
159
|
|
|
152
160
|
@self.app.post("/run_sse")
|
|
153
161
|
async def run_agent_sse(req: RunAgentRequest) -> StreamingResponse:
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/base_service_client.py
RENAMED
|
@@ -18,12 +18,13 @@ This is the top-level base class for all service clients.
|
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
20
|
import json
|
|
21
|
+
import logging
|
|
21
22
|
from typing import Any, Dict, Type, TypeVar, Union, Optional
|
|
22
23
|
from dataclasses import dataclass
|
|
23
24
|
|
|
24
25
|
from volcengine.ApiInfo import ApiInfo
|
|
25
26
|
from volcengine.base.Service import Service
|
|
26
|
-
from volcengine.Credentials import Credentials
|
|
27
|
+
from volcengine.Credentials import Credentials as VolcCredentials
|
|
27
28
|
from volcengine.ServiceInfo import ServiceInfo
|
|
28
29
|
|
|
29
30
|
from agentkit.platform import (
|
|
@@ -31,9 +32,23 @@ from agentkit.platform import (
|
|
|
31
32
|
resolve_credentials,
|
|
32
33
|
resolve_endpoint,
|
|
33
34
|
)
|
|
35
|
+
from agentkit.platform.configuration import Credentials as PlatformCredentials
|
|
36
|
+
from agentkit.platform.provider import CloudProvider
|
|
34
37
|
from agentkit.utils.ve_sign import ensure_x_custom_source_header
|
|
38
|
+
logger = logging.getLogger(__name__)
|
|
35
39
|
|
|
36
40
|
T = TypeVar("T")
|
|
41
|
+
_CREDENTIAL_ERROR_TOKENS = frozenset(
|
|
42
|
+
{
|
|
43
|
+
"invalidaccesskeyid",
|
|
44
|
+
"invalidaccesskey",
|
|
45
|
+
"signaturedoesnotmatch",
|
|
46
|
+
"expiredtoken",
|
|
47
|
+
"invalidsecuritytoken",
|
|
48
|
+
"invalidtoken",
|
|
49
|
+
"requestexpired",
|
|
50
|
+
}
|
|
51
|
+
)
|
|
37
52
|
|
|
38
53
|
|
|
39
54
|
@dataclass
|
|
@@ -94,6 +109,9 @@ class BaseServiceClient(Service):
|
|
|
94
109
|
"""
|
|
95
110
|
if platform_config is None:
|
|
96
111
|
platform_config = VolcConfiguration()
|
|
112
|
+
self._platform_config = platform_config
|
|
113
|
+
self._explicit_credentials = bool(access_key and secret_key)
|
|
114
|
+
self._credential_source: Optional[str] = None
|
|
97
115
|
|
|
98
116
|
creds = resolve_credentials(
|
|
99
117
|
service=service,
|
|
@@ -101,6 +119,7 @@ class BaseServiceClient(Service):
|
|
|
101
119
|
explicit_secret_key=secret_key or None,
|
|
102
120
|
platform_config=platform_config,
|
|
103
121
|
)
|
|
122
|
+
self._credential_source = getattr(creds, "source", None)
|
|
104
123
|
|
|
105
124
|
ep = resolve_endpoint(
|
|
106
125
|
service=service,
|
|
@@ -132,7 +151,7 @@ class BaseServiceClient(Service):
|
|
|
132
151
|
self.service_info = ServiceInfo(
|
|
133
152
|
host=self.host,
|
|
134
153
|
header=effective_header,
|
|
135
|
-
credentials=
|
|
154
|
+
credentials=VolcCredentials(
|
|
136
155
|
ak=self.access_key,
|
|
137
156
|
sk=self.secret_key,
|
|
138
157
|
service=self.service,
|
|
@@ -152,6 +171,57 @@ class BaseServiceClient(Service):
|
|
|
152
171
|
# need setting ak/sk after initializing Service to avoid volcengine SDK bugs
|
|
153
172
|
self.set_ak(self.access_key)
|
|
154
173
|
self.set_sk(self.secret_key)
|
|
174
|
+
if self.session_token:
|
|
175
|
+
self.set_session_token(self.session_token)
|
|
176
|
+
|
|
177
|
+
def _should_auto_refresh_vefaas_credentials(self) -> bool:
|
|
178
|
+
if self._explicit_credentials:
|
|
179
|
+
return False
|
|
180
|
+
if self._platform_config.provider != CloudProvider.VOLCENGINE:
|
|
181
|
+
return False
|
|
182
|
+
return self._credential_source == "vefaas"
|
|
183
|
+
|
|
184
|
+
def _apply_credentials(self, creds: PlatformCredentials) -> bool:
|
|
185
|
+
new_token = creds.session_token or ""
|
|
186
|
+
old_token = self.session_token or ""
|
|
187
|
+
if (
|
|
188
|
+
creds.access_key == self.access_key
|
|
189
|
+
and creds.secret_key == self.secret_key
|
|
190
|
+
and new_token == old_token
|
|
191
|
+
):
|
|
192
|
+
return False
|
|
193
|
+
|
|
194
|
+
self.access_key = creds.access_key
|
|
195
|
+
self.secret_key = creds.secret_key
|
|
196
|
+
self.session_token = creds.session_token
|
|
197
|
+
|
|
198
|
+
self.service_info.credentials = VolcCredentials(
|
|
199
|
+
ak=self.access_key,
|
|
200
|
+
sk=self.secret_key,
|
|
201
|
+
service=self.service,
|
|
202
|
+
region=self.region,
|
|
203
|
+
session_token=self.session_token or "",
|
|
204
|
+
)
|
|
205
|
+
self.set_ak(self.access_key)
|
|
206
|
+
self.set_sk(self.secret_key)
|
|
207
|
+
self.set_session_token(self.session_token or "")
|
|
208
|
+
return True
|
|
209
|
+
|
|
210
|
+
def _refresh_credentials_if_needed(self, *, force: bool = False) -> bool:
|
|
211
|
+
if not self._should_auto_refresh_vefaas_credentials():
|
|
212
|
+
return False
|
|
213
|
+
creds = self._platform_config.get_vefaas_iam_credentials(force=force)
|
|
214
|
+
if not creds:
|
|
215
|
+
return False
|
|
216
|
+
return self._apply_credentials(creds)
|
|
217
|
+
|
|
218
|
+
def _is_probable_credential_error_code(self, code: str) -> bool:
|
|
219
|
+
c = (code or "").lower()
|
|
220
|
+
return c in _CREDENTIAL_ERROR_TOKENS
|
|
221
|
+
|
|
222
|
+
def _is_probable_credential_error_text(self, text: str) -> bool:
|
|
223
|
+
t = (text or "").lower()
|
|
224
|
+
return any(token in t for token in _CREDENTIAL_ERROR_TOKENS)
|
|
155
225
|
|
|
156
226
|
def _build_api_info(self) -> Dict[str, ApiInfo]:
|
|
157
227
|
"""
|
|
@@ -213,27 +283,48 @@ class BaseServiceClient(Service):
|
|
|
213
283
|
Raises:
|
|
214
284
|
Exception: If API call fails or returns an error
|
|
215
285
|
"""
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
286
|
+
self._refresh_credentials_if_needed()
|
|
287
|
+
last_error: Optional[BaseException] = None
|
|
288
|
+
|
|
289
|
+
for attempt in (0, 1):
|
|
290
|
+
if attempt == 1:
|
|
291
|
+
self._refresh_credentials_if_needed(force=True)
|
|
292
|
+
|
|
293
|
+
try:
|
|
294
|
+
res = self.json(
|
|
295
|
+
api=api_action,
|
|
296
|
+
params=params or {},
|
|
297
|
+
body=json.dumps(
|
|
298
|
+
request.model_dump(by_alias=True, exclude_none=True)
|
|
299
|
+
),
|
|
300
|
+
)
|
|
301
|
+
except Exception as e:
|
|
302
|
+
last_error = e
|
|
303
|
+
if attempt == 0 and self._is_probable_credential_error_text(str(e)):
|
|
304
|
+
continue
|
|
305
|
+
raise Exception(f"Failed to {api_action}: {str(e)}") from e
|
|
306
|
+
|
|
307
|
+
if not res:
|
|
308
|
+
raise Exception(f"Empty response from {api_action} request.")
|
|
309
|
+
# debug level log res
|
|
310
|
+
logger.debug(f"Response from {api_action} request: {res}")
|
|
311
|
+
response_data = json.loads(res)
|
|
312
|
+
metadata = response_data.get("ResponseMetadata", {})
|
|
313
|
+
if metadata.get("Error"):
|
|
314
|
+
err = metadata.get("Error", {}) or {}
|
|
315
|
+
error_code = str(err.get("Code") or "")
|
|
316
|
+
error_msg = str(err.get("Message") or "Unknown error")
|
|
317
|
+
if attempt == 0 and (
|
|
318
|
+
self._is_probable_credential_error_code(error_code)
|
|
319
|
+
or self._is_probable_credential_error_text(error_msg)
|
|
320
|
+
):
|
|
321
|
+
continue
|
|
322
|
+
raise Exception(f"Failed to {api_action}: {error_msg}")
|
|
323
|
+
|
|
324
|
+
return response_type(**response_data.get("Result", {}))
|
|
325
|
+
|
|
326
|
+
if last_error is not None:
|
|
327
|
+
raise Exception(
|
|
328
|
+
f"Failed to {api_action}: {str(last_error)}"
|
|
329
|
+
) from last_error
|
|
330
|
+
raise Exception(f"Failed to {api_action}: Unknown error")
|
|
@@ -88,7 +88,9 @@ def resolve_credentials(
|
|
|
88
88
|
# 1. Explicit args take absolute precedence
|
|
89
89
|
if explicit_access_key and explicit_secret_key:
|
|
90
90
|
return Credentials(
|
|
91
|
-
access_key=explicit_access_key,
|
|
91
|
+
access_key=explicit_access_key,
|
|
92
|
+
secret_key=explicit_secret_key,
|
|
93
|
+
source="explicit_args",
|
|
92
94
|
)
|
|
93
95
|
|
|
94
96
|
cfg = platform_config or VolcConfiguration()
|
|
@@ -17,7 +17,10 @@ from __future__ import annotations
|
|
|
17
17
|
import json
|
|
18
18
|
import logging
|
|
19
19
|
import os
|
|
20
|
+
import threading
|
|
21
|
+
import time
|
|
20
22
|
from dataclasses import dataclass
|
|
23
|
+
from datetime import datetime, timezone
|
|
21
24
|
from pathlib import Path
|
|
22
25
|
from typing import Optional, Dict
|
|
23
26
|
|
|
@@ -43,6 +46,8 @@ from agentkit.utils.global_config_io import (
|
|
|
43
46
|
logger = logging.getLogger(__name__)
|
|
44
47
|
|
|
45
48
|
VEFAAS_IAM_CREDENTIAL_PATH = "/var/run/secrets/iam/credential"
|
|
49
|
+
VEFAAS_IAM_CREDENTIAL_FALLBACK_TTL_SECONDS = 60
|
|
50
|
+
VEFAAS_IAM_CREDENTIAL_MIN_VALIDITY_SECONDS = 60
|
|
46
51
|
|
|
47
52
|
|
|
48
53
|
@dataclass
|
|
@@ -59,6 +64,8 @@ class Credentials:
|
|
|
59
64
|
access_key: str
|
|
60
65
|
secret_key: str
|
|
61
66
|
session_token: Optional[str] = None
|
|
67
|
+
expires_at: Optional[datetime] = None
|
|
68
|
+
source: Optional[str] = None
|
|
62
69
|
|
|
63
70
|
def __repr__(self) -> str:
|
|
64
71
|
masked_sk = "*" * 6
|
|
@@ -68,7 +75,9 @@ class Credentials:
|
|
|
68
75
|
return (
|
|
69
76
|
f"Credentials(access_key='{self.access_key}', "
|
|
70
77
|
f"secret_key='{masked_sk}', "
|
|
71
|
-
f"session_token={'***' if self.session_token else 'None'}
|
|
78
|
+
f"session_token={'***' if self.session_token else 'None'}, "
|
|
79
|
+
f"expires_at={self.expires_at.isoformat() if self.expires_at else 'None'}, "
|
|
80
|
+
f"source={self.source or 'None'})"
|
|
72
81
|
)
|
|
73
82
|
|
|
74
83
|
|
|
@@ -115,6 +124,15 @@ class VolcConfiguration:
|
|
|
115
124
|
or normalize_cloud_provider(cfg_provider)
|
|
116
125
|
or CloudProvider.VOLCENGINE
|
|
117
126
|
)
|
|
127
|
+
self._vefaas_cache_mtime_ns: Optional[int] = None
|
|
128
|
+
self._vefaas_cache_loaded_at_monotonic: Optional[float] = None
|
|
129
|
+
self._vefaas_cache_credentials: Optional[Credentials] = None
|
|
130
|
+
self._vefaas_lock = threading.Lock()
|
|
131
|
+
|
|
132
|
+
def get_vefaas_iam_credentials(
|
|
133
|
+
self, *, force: bool = False
|
|
134
|
+
) -> Optional[Credentials]:
|
|
135
|
+
return self._get_credential_from_vefaas_iam(force=force)
|
|
118
136
|
|
|
119
137
|
@property
|
|
120
138
|
def provider(self) -> CloudProvider:
|
|
@@ -202,11 +220,13 @@ class VolcConfiguration:
|
|
|
202
220
|
"""
|
|
203
221
|
# 1. Explicit
|
|
204
222
|
if self._ak and self._sk:
|
|
205
|
-
|
|
223
|
+
creds = Credentials(
|
|
206
224
|
access_key=self._ak,
|
|
207
225
|
secret_key=self._sk,
|
|
208
226
|
session_token=self._token,
|
|
227
|
+
source="explicit",
|
|
209
228
|
)
|
|
229
|
+
return creds
|
|
210
230
|
|
|
211
231
|
# 2. Service-specific Environment Variables
|
|
212
232
|
if creds := self._get_service_env_credentials(service_key):
|
|
@@ -293,7 +313,7 @@ class VolcConfiguration:
|
|
|
293
313
|
sk = sk or _get(f"VOLC_{svc_upper}_SECRETKEY")
|
|
294
314
|
|
|
295
315
|
if ak and sk:
|
|
296
|
-
return Credentials(access_key=ak, secret_key=sk)
|
|
316
|
+
return Credentials(access_key=ak, secret_key=sk, source="dotenv")
|
|
297
317
|
|
|
298
318
|
# Global keys
|
|
299
319
|
if self._provider == CloudProvider.BYTEPLUS:
|
|
@@ -304,7 +324,7 @@ class VolcConfiguration:
|
|
|
304
324
|
sk = _get("VOLCENGINE_SECRET_KEY") or _get("VOLC_SECRETKEY")
|
|
305
325
|
|
|
306
326
|
if ak and sk:
|
|
307
|
-
return Credentials(access_key=ak, secret_key=sk)
|
|
327
|
+
return Credentials(access_key=ak, secret_key=sk, source="dotenv")
|
|
308
328
|
|
|
309
329
|
return None
|
|
310
330
|
|
|
@@ -323,7 +343,7 @@ class VolcConfiguration:
|
|
|
323
343
|
sk = sk or os.getenv(f"VOLC_{svc_upper}_SECRETKEY")
|
|
324
344
|
|
|
325
345
|
if ak and sk:
|
|
326
|
-
return Credentials(access_key=ak, secret_key=sk)
|
|
346
|
+
return Credentials(access_key=ak, secret_key=sk, source="service_env")
|
|
327
347
|
return None
|
|
328
348
|
|
|
329
349
|
def _get_global_env_credentials(self) -> Optional[Credentials]:
|
|
@@ -335,7 +355,7 @@ class VolcConfiguration:
|
|
|
335
355
|
sk = os.getenv("VOLCENGINE_SECRET_KEY") or os.getenv("VOLC_SECRETKEY")
|
|
336
356
|
|
|
337
357
|
if ak and sk:
|
|
338
|
-
return Credentials(access_key=ak, secret_key=sk)
|
|
358
|
+
return Credentials(access_key=ak, secret_key=sk, source="global_env")
|
|
339
359
|
return None
|
|
340
360
|
|
|
341
361
|
def _get_config_file_credentials(self) -> Optional[Credentials]:
|
|
@@ -346,10 +366,14 @@ class VolcConfiguration:
|
|
|
346
366
|
gc_ak = get_global_config_str("volcengine", "access_key")
|
|
347
367
|
gc_sk = get_global_config_str("volcengine", "secret_key")
|
|
348
368
|
if gc_ak and gc_sk:
|
|
349
|
-
return Credentials(
|
|
369
|
+
return Credentials(
|
|
370
|
+
access_key=gc_ak, secret_key=gc_sk, source="global_config"
|
|
371
|
+
)
|
|
350
372
|
return None
|
|
351
373
|
|
|
352
|
-
def _get_credential_from_vefaas_iam(
|
|
374
|
+
def _get_credential_from_vefaas_iam(
|
|
375
|
+
self, *, force: bool = False
|
|
376
|
+
) -> Optional[Credentials]:
|
|
353
377
|
"""
|
|
354
378
|
Internal helper to attempt retrieving credentials from VeFaaS IAM environment.
|
|
355
379
|
"""
|
|
@@ -359,15 +383,90 @@ class VolcConfiguration:
|
|
|
359
383
|
if not path.exists():
|
|
360
384
|
return None
|
|
361
385
|
|
|
386
|
+
try:
|
|
387
|
+
mtime_ns = path.stat().st_mtime_ns
|
|
388
|
+
except Exception:
|
|
389
|
+
return None
|
|
390
|
+
|
|
391
|
+
now = datetime.now(tz=timezone.utc)
|
|
392
|
+
|
|
393
|
+
def _get_cached_if_usable(
|
|
394
|
+
*, min_validity_seconds: int
|
|
395
|
+
) -> Optional[Credentials]:
|
|
396
|
+
with self._vefaas_lock:
|
|
397
|
+
cached = self._vefaas_cache_credentials
|
|
398
|
+
if not cached or self._vefaas_cache_mtime_ns != mtime_ns:
|
|
399
|
+
return None
|
|
400
|
+
|
|
401
|
+
if cached.expires_at is None:
|
|
402
|
+
loaded_at = self._vefaas_cache_loaded_at_monotonic
|
|
403
|
+
if loaded_at is None:
|
|
404
|
+
return None
|
|
405
|
+
if (
|
|
406
|
+
time.monotonic() - loaded_at
|
|
407
|
+
<= VEFAAS_IAM_CREDENTIAL_FALLBACK_TTL_SECONDS
|
|
408
|
+
):
|
|
409
|
+
return cached
|
|
410
|
+
return None
|
|
411
|
+
|
|
412
|
+
if (cached.expires_at - now).total_seconds() > min_validity_seconds:
|
|
413
|
+
return cached
|
|
414
|
+
return None
|
|
415
|
+
|
|
416
|
+
if not force:
|
|
417
|
+
cached = _get_cached_if_usable(
|
|
418
|
+
min_validity_seconds=VEFAAS_IAM_CREDENTIAL_MIN_VALIDITY_SECONDS
|
|
419
|
+
)
|
|
420
|
+
if cached is not None:
|
|
421
|
+
return cached
|
|
422
|
+
|
|
362
423
|
try:
|
|
363
424
|
with open(path, "r") as f:
|
|
364
425
|
cred_dict = json.load(f)
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
426
|
+
access_key = str(cred_dict.get("access_key_id") or "")
|
|
427
|
+
secret_key = str(cred_dict.get("secret_access_key") or "")
|
|
428
|
+
session_token = str(cred_dict.get("session_token") or "") or None
|
|
429
|
+
|
|
430
|
+
expired_time_raw = cred_dict.get("expired_time")
|
|
431
|
+
expires_at: Optional[datetime] = None
|
|
432
|
+
if expired_time_raw:
|
|
433
|
+
try:
|
|
434
|
+
s = str(expired_time_raw)
|
|
435
|
+
if s.endswith("Z"):
|
|
436
|
+
s = s[:-1] + "+00:00"
|
|
437
|
+
expires_at = datetime.fromisoformat(s)
|
|
438
|
+
if expires_at.tzinfo is None:
|
|
439
|
+
expires_at = expires_at.replace(tzinfo=timezone.utc)
|
|
440
|
+
expires_at = expires_at.astimezone(timezone.utc)
|
|
441
|
+
except Exception:
|
|
442
|
+
expires_at = None
|
|
443
|
+
|
|
444
|
+
if not access_key or not secret_key:
|
|
445
|
+
return None
|
|
446
|
+
|
|
447
|
+
if expires_at is not None:
|
|
448
|
+
if expires_at <= now:
|
|
449
|
+
return None
|
|
450
|
+
|
|
451
|
+
creds = Credentials(
|
|
452
|
+
access_key=access_key,
|
|
453
|
+
secret_key=secret_key,
|
|
454
|
+
session_token=session_token,
|
|
455
|
+
expires_at=expires_at,
|
|
456
|
+
source="vefaas",
|
|
369
457
|
)
|
|
458
|
+
with self._vefaas_lock:
|
|
459
|
+
self._vefaas_cache_mtime_ns = mtime_ns
|
|
460
|
+
self._vefaas_cache_loaded_at_monotonic = time.monotonic()
|
|
461
|
+
self._vefaas_cache_credentials = creds
|
|
462
|
+
return creds
|
|
370
463
|
except Exception as e:
|
|
464
|
+
if not force:
|
|
465
|
+
cached = _get_cached_if_usable(
|
|
466
|
+
min_validity_seconds=VEFAAS_IAM_CREDENTIAL_MIN_VALIDITY_SECONDS
|
|
467
|
+
)
|
|
468
|
+
if cached is not None:
|
|
469
|
+
return cached
|
|
371
470
|
logger.warning(f"Found VeFaaS credential file but failed to parse: {e}")
|
|
372
471
|
return None
|
|
373
472
|
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7/agentkit_sdk_python.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentkit-sdk-python
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.7
|
|
4
4
|
Summary: Python SDK for transforming any AI agent into a production-ready application. Framework-agnostic primitives for runtime, memory, authentication, and tools with volcengine-managed infrastructure.
|
|
5
5
|
Author-email: Xiangrui Cheng <innsdcc@gmail.com>, Yumeng Bao <baoyumeng.123@gmail.com>, Yaozheng Fang <fangyozheng@gmail.com>, Guodong Li <cu.eric.lee@gmail.com>
|
|
6
6
|
License: Apache License
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "agentkit-sdk-python"
|
|
3
|
-
version = "0.5.
|
|
3
|
+
version = "0.5.7"
|
|
4
4
|
description = "Python SDK for transforming any AI agent into a production-ready application. Framework-agnostic primitives for runtime, memory, authentication, and tools with volcengine-managed infrastructure."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -105,4 +105,4 @@ exclude = [
|
|
|
105
105
|
|
|
106
106
|
[tool.ruff.lint.per-file-ignores]
|
|
107
107
|
"__init__.py" = ["F401"]
|
|
108
|
-
"tests/*" = ["F401", "F811"]
|
|
108
|
+
"tests/*" = ["F401", "F811"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/__init__.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/middleware.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/agent_server_app/telemetry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/__init__.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/simple_app.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/apps/simple_app/telemetry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/client/base_agentkit_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.7}/agentkit/toolkit/builders/local_docker.py
RENAMED
|
File without changes
|