agentkit-sdk-python 0.5.5__tar.gz → 0.5.6__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.6}/PKG-INFO +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/client/base_service_client.py +114 -26
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/__init__.py +3 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/configuration.py +111 -12
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/version.py +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6/agentkit_sdk_python.egg-info}/PKG-INFO +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/pyproject.toml +1 -1
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/LICENSE +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/MANIFEST.in +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/README.md +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/a2a_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/a2a_app/a2a_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/a2a_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/agent_server_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/agent_server_app/agent_server_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/agent_server_app/middleware.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/agent_server_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/base_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/mcp_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/mcp_app/mcp_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/mcp_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/simple_app/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/simple_app/simple_app.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/simple_app/simple_app_handlers.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/simple_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/client/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/client/base_agentkit_client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/client/base_iam_client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/console_urls.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/constants.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/context.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/platform/provider.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/account/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/account/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/identity/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/identity/auth.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/knowledge/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/knowledge/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/knowledge/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/mcp/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/mcp/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/mcp/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/memory/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/memory/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/memory/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/runtime/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/runtime/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/runtime/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/skills/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/skills/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/skills/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/tools/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/tools/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/sdk/tools/types.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/base.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/local_docker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/ve_pipeline.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/__main__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_build.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_deploy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_destroy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_init.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_invoke.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_knowledge.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_launch.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_memory.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_runtime.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_skills.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_skills_workflow.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_status.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_tools.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_version.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/console_reporter.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/interactive_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/choice_resolvers.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/cloud_provider.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/config_handler.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/config_validator.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/constants.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/dataclass_utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/docker_build_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/global_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/region_defaults.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/region_resolver.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/strategy_configs.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/config/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/context.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/base_images.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/container.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/dockerfile/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/dockerfile/manager.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/dockerfile/metadata.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/docker/utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/errors.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/base_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/build_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/deploy_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/init_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/invoke_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/lifecycle_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/executors/status_executor.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/models.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/reporter.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/__pycache__/customer_support_assistant.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/__pycache__/financial_analyst.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/__pycache__/simple_app_veadk.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/__pycache__/simple_mcp_veadk.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/a2a.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/agent_server.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/basic.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/basic_stream.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/customer_support_assistant.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/eino_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/eino_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/eino_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/eino_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/eino_a2a/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/financial_analyst.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/langchain_basic_stream.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/simple_app_veadk.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/simple_mcp_veadk.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_basic/agent.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_basic/build.sh +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_basic/go.mod +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_basic/go.sum +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/samples/veadk_go_basic/main.go +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/templates/code-pipeline-tos-cr-step.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/templates/golang/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/templates/python/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/wrappers/wrapper_basic.py.jinja2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/resources/wrappers/wrapper_stream.py.jinja2 +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/runners/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/runners/base.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/runners/local_docker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/runners/ve_agentkit.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/bindings/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/bindings/memory.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/builder.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/client.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/deployer.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/initializer.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/invoker.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/lifecycle.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/sdk/status.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/strategies/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/strategies/base_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/strategies/cloud_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/strategies/hybrid_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/strategies/local_strategy.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/utils/agent_parser.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/code_pipeline.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/cr.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/iam.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/services/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/services/cr_service.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/services/tos_service.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/sts.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/volcengine/utils/project_archiver.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/global_config_io.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/logging_config.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/misc.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/request.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/template_utils.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/utils/ve_sign.py +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit_sdk_python.egg-info/SOURCES.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit_sdk_python.egg-info/dependency_links.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit_sdk_python.egg-info/entry_points.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit_sdk_python.egg-info/requires.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit_sdk_python.egg-info/top_level.txt +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/setup.cfg +0 -0
- {agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/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.6}/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.6
|
|
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
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/client/base_service_client.py
RENAMED
|
@@ -23,7 +23,7 @@ from dataclasses import dataclass
|
|
|
23
23
|
|
|
24
24
|
from volcengine.ApiInfo import ApiInfo
|
|
25
25
|
from volcengine.base.Service import Service
|
|
26
|
-
from volcengine.Credentials import Credentials
|
|
26
|
+
from volcengine.Credentials import Credentials as VolcCredentials
|
|
27
27
|
from volcengine.ServiceInfo import ServiceInfo
|
|
28
28
|
|
|
29
29
|
from agentkit.platform import (
|
|
@@ -31,9 +31,22 @@ from agentkit.platform import (
|
|
|
31
31
|
resolve_credentials,
|
|
32
32
|
resolve_endpoint,
|
|
33
33
|
)
|
|
34
|
+
from agentkit.platform.configuration import Credentials as PlatformCredentials
|
|
35
|
+
from agentkit.platform.provider import CloudProvider
|
|
34
36
|
from agentkit.utils.ve_sign import ensure_x_custom_source_header
|
|
35
37
|
|
|
36
38
|
T = TypeVar("T")
|
|
39
|
+
_CREDENTIAL_ERROR_TOKENS = frozenset(
|
|
40
|
+
{
|
|
41
|
+
"invalidaccesskeyid",
|
|
42
|
+
"invalidaccesskey",
|
|
43
|
+
"signaturedoesnotmatch",
|
|
44
|
+
"expiredtoken",
|
|
45
|
+
"invalidsecuritytoken",
|
|
46
|
+
"invalidtoken",
|
|
47
|
+
"requestexpired",
|
|
48
|
+
}
|
|
49
|
+
)
|
|
37
50
|
|
|
38
51
|
|
|
39
52
|
@dataclass
|
|
@@ -94,6 +107,9 @@ class BaseServiceClient(Service):
|
|
|
94
107
|
"""
|
|
95
108
|
if platform_config is None:
|
|
96
109
|
platform_config = VolcConfiguration()
|
|
110
|
+
self._platform_config = platform_config
|
|
111
|
+
self._explicit_credentials = bool(access_key and secret_key)
|
|
112
|
+
self._credential_source: Optional[str] = None
|
|
97
113
|
|
|
98
114
|
creds = resolve_credentials(
|
|
99
115
|
service=service,
|
|
@@ -101,6 +117,7 @@ class BaseServiceClient(Service):
|
|
|
101
117
|
explicit_secret_key=secret_key or None,
|
|
102
118
|
platform_config=platform_config,
|
|
103
119
|
)
|
|
120
|
+
self._credential_source = getattr(creds, "source", None)
|
|
104
121
|
|
|
105
122
|
ep = resolve_endpoint(
|
|
106
123
|
service=service,
|
|
@@ -132,7 +149,7 @@ class BaseServiceClient(Service):
|
|
|
132
149
|
self.service_info = ServiceInfo(
|
|
133
150
|
host=self.host,
|
|
134
151
|
header=effective_header,
|
|
135
|
-
credentials=
|
|
152
|
+
credentials=VolcCredentials(
|
|
136
153
|
ak=self.access_key,
|
|
137
154
|
sk=self.secret_key,
|
|
138
155
|
service=self.service,
|
|
@@ -152,6 +169,57 @@ class BaseServiceClient(Service):
|
|
|
152
169
|
# need setting ak/sk after initializing Service to avoid volcengine SDK bugs
|
|
153
170
|
self.set_ak(self.access_key)
|
|
154
171
|
self.set_sk(self.secret_key)
|
|
172
|
+
if self.session_token:
|
|
173
|
+
self.set_session_token(self.session_token)
|
|
174
|
+
|
|
175
|
+
def _should_auto_refresh_vefaas_credentials(self) -> bool:
|
|
176
|
+
if self._explicit_credentials:
|
|
177
|
+
return False
|
|
178
|
+
if self._platform_config.provider != CloudProvider.VOLCENGINE:
|
|
179
|
+
return False
|
|
180
|
+
return self._credential_source == "vefaas"
|
|
181
|
+
|
|
182
|
+
def _apply_credentials(self, creds: PlatformCredentials) -> bool:
|
|
183
|
+
new_token = creds.session_token or ""
|
|
184
|
+
old_token = self.session_token or ""
|
|
185
|
+
if (
|
|
186
|
+
creds.access_key == self.access_key
|
|
187
|
+
and creds.secret_key == self.secret_key
|
|
188
|
+
and new_token == old_token
|
|
189
|
+
):
|
|
190
|
+
return False
|
|
191
|
+
|
|
192
|
+
self.access_key = creds.access_key
|
|
193
|
+
self.secret_key = creds.secret_key
|
|
194
|
+
self.session_token = creds.session_token
|
|
195
|
+
|
|
196
|
+
self.service_info.credentials = VolcCredentials(
|
|
197
|
+
ak=self.access_key,
|
|
198
|
+
sk=self.secret_key,
|
|
199
|
+
service=self.service,
|
|
200
|
+
region=self.region,
|
|
201
|
+
session_token=self.session_token or "",
|
|
202
|
+
)
|
|
203
|
+
self.set_ak(self.access_key)
|
|
204
|
+
self.set_sk(self.secret_key)
|
|
205
|
+
self.set_session_token(self.session_token or "")
|
|
206
|
+
return True
|
|
207
|
+
|
|
208
|
+
def _refresh_credentials_if_needed(self, *, force: bool = False) -> bool:
|
|
209
|
+
if not self._should_auto_refresh_vefaas_credentials():
|
|
210
|
+
return False
|
|
211
|
+
creds = self._platform_config.get_vefaas_iam_credentials(force=force)
|
|
212
|
+
if not creds:
|
|
213
|
+
return False
|
|
214
|
+
return self._apply_credentials(creds)
|
|
215
|
+
|
|
216
|
+
def _is_probable_credential_error_code(self, code: str) -> bool:
|
|
217
|
+
c = (code or "").lower()
|
|
218
|
+
return c in _CREDENTIAL_ERROR_TOKENS
|
|
219
|
+
|
|
220
|
+
def _is_probable_credential_error_text(self, text: str) -> bool:
|
|
221
|
+
t = (text or "").lower()
|
|
222
|
+
return any(token in t for token in _CREDENTIAL_ERROR_TOKENS)
|
|
155
223
|
|
|
156
224
|
def _build_api_info(self) -> Dict[str, ApiInfo]:
|
|
157
225
|
"""
|
|
@@ -213,27 +281,47 @@ class BaseServiceClient(Service):
|
|
|
213
281
|
Raises:
|
|
214
282
|
Exception: If API call fails or returns an error
|
|
215
283
|
"""
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
284
|
+
self._refresh_credentials_if_needed()
|
|
285
|
+
last_error: Optional[BaseException] = None
|
|
286
|
+
|
|
287
|
+
for attempt in (0, 1):
|
|
288
|
+
if attempt == 1:
|
|
289
|
+
self._refresh_credentials_if_needed(force=True)
|
|
290
|
+
|
|
291
|
+
try:
|
|
292
|
+
res = self.json(
|
|
293
|
+
api=api_action,
|
|
294
|
+
params=params or {},
|
|
295
|
+
body=json.dumps(
|
|
296
|
+
request.model_dump(by_alias=True, exclude_none=True)
|
|
297
|
+
),
|
|
298
|
+
)
|
|
299
|
+
except Exception as e:
|
|
300
|
+
last_error = e
|
|
301
|
+
if attempt == 0 and self._is_probable_credential_error_text(str(e)):
|
|
302
|
+
continue
|
|
303
|
+
raise Exception(f"Failed to {api_action}: {str(e)}") from e
|
|
304
|
+
|
|
305
|
+
if not res:
|
|
306
|
+
raise Exception(f"Empty response from {api_action} request.")
|
|
307
|
+
|
|
308
|
+
response_data = json.loads(res)
|
|
309
|
+
metadata = response_data.get("ResponseMetadata", {})
|
|
310
|
+
if metadata.get("Error"):
|
|
311
|
+
err = metadata.get("Error", {}) or {}
|
|
312
|
+
error_code = str(err.get("Code") or "")
|
|
313
|
+
error_msg = str(err.get("Message") or "Unknown error")
|
|
314
|
+
if attempt == 0 and (
|
|
315
|
+
self._is_probable_credential_error_code(error_code)
|
|
316
|
+
or self._is_probable_credential_error_text(error_msg)
|
|
317
|
+
):
|
|
318
|
+
continue
|
|
319
|
+
raise Exception(f"Failed to {api_action}: {error_msg}")
|
|
320
|
+
|
|
321
|
+
return response_type(**response_data.get("Result", {}))
|
|
322
|
+
|
|
323
|
+
if last_error is not None:
|
|
324
|
+
raise Exception(
|
|
325
|
+
f"Failed to {api_action}: {str(last_error)}"
|
|
326
|
+
) from last_error
|
|
327
|
+
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.6/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.6
|
|
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.6"
|
|
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"
|
|
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.6}/agentkit/apps/agent_server_app/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/apps/agent_server_app/middleware.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/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.6}/agentkit/apps/simple_app/__init__.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/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.6}/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.6}/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.6}/agentkit/toolkit/builders/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/local_docker.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/builders/ve_pipeline.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
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/cli_knowledge.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.6}/agentkit/toolkit/cli/cli_skills_workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.5.5 → agentkit_sdk_python-0.5.6}/agentkit/toolkit/cli/console_reporter.py
RENAMED
|
File without changes
|