agentkit-sdk-python 0.7.4__tar.gz → 0.7.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.7.4 → agentkit_sdk_python-0.7.6}/PKG-INFO +35 -1
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/README.md +34 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/__init__.py +5 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/langgraph.py +100 -60
- agentkit_sdk_python-0.7.6/agentkit/frameworks/migration.py +135 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/version.py +1 -1
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/PKG-INFO +35 -1
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/SOURCES.txt +1 -4
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/pyproject.toml +5 -1
- agentkit_sdk_python-0.7.4/agentkit/toolkit/resources/samples/__pycache__/customer_support_assistant.cpython-312.pyc +0 -0
- agentkit_sdk_python-0.7.4/agentkit/toolkit/resources/samples/__pycache__/financial_analyst.cpython-312.pyc +0 -0
- agentkit_sdk_python-0.7.4/agentkit/toolkit/resources/samples/__pycache__/simple_app_veadk.cpython-312.pyc +0 -0
- agentkit_sdk_python-0.7.4/agentkit/toolkit/resources/samples/__pycache__/simple_mcp_veadk.cpython-312.pyc +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/LICENSE +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/MANIFEST.in +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/a2a_app/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/a2a_app/a2a_app.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/a2a_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/agent_server_app.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/middleware.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/origin.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/base_app.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/mcp_app/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/mcp_app/mcp_app.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/mcp_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/simple_app.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/simple_app_handlers.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/telemetry.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/_openapi.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/_redact.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/_sigv4.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/admin.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/credential_hosting.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/errors.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/model_login.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/oauth.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/profile.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/providers.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/resolve.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/session.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/ssl_trust.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/sso.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/store.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/auth/sts.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/client/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/client/base_agentkit_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/client/base_iam_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/client/base_service_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/errors.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/_common.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/langchain.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/serving/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/serving/fastapi_mount.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/frameworks/serving/langserve.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/configuration.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/console_urls.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/constants.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/context.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/platform/provider.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/account/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/account/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/identity/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/identity/auth.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/identity/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/identity/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/knowledge/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/knowledge/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/knowledge/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/mcp/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/mcp/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/mcp/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/memory/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/memory/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/memory/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/runtime/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/runtime/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/runtime/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/skills/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/skills/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/skills/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/tools/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/tools/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/sdk/tools/types.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/builders/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/builders/base.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/builders/local_docker.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/builders/ve_pipeline.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/__main__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_add.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_auth.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_build.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_delete.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_deploy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_destroy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_init.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_invoke.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_knowledge.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_launch.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_list.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_logs.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_memory.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_runtime.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_skill.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_skills.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_skills_workflow.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_status.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_tools.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/cli_version.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/console_reporter.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/interactive_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/a2a_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/agentkit_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_create.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_exec.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_file.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_get.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_invoke.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_model_login.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_mount.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_run.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_shell.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/cli_web.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/env_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/git_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/model_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/sandbox_client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/session_create.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/session_sync.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/tool_resolve.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/sandbox/tos_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/cli/utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/choice_resolvers.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/cloud_provider.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/config_handler.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/config_validator.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/constants.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/dataclass_utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/docker_build_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/global_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/region_defaults.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/region_resolver.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/strategy_configs.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/config/utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/context.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/base_images.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/container.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/dockerfile/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/dockerfile/manager.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/dockerfile/metadata.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/docker/utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/errors.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/base_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/build_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/deploy_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/init_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/invoke_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/lifecycle_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/executors/status_executor.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/harness/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/harness/config_builder.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/harness/deploy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/harness/env_mapping.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/models.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/reporter.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/a2a.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/agent_server.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/basic.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/basic_stream.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/customer_support_assistant.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/eino_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/eino_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/eino_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/eino_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/eino_a2a/main.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/financial_analyst.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/langchain_basic_stream.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/simple_app_veadk.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/simple_mcp_veadk.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/agent.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/build.sh +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.mod +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/go.sum +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_a2a/main.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_basic/agent.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_basic/build.sh +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_basic/go.mod +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_basic/go.sum +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/samples/veadk_go_basic/main.go +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/templates/code-pipeline-tos-cr-step.j2 +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/templates/golang/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/templates/python/Dockerfile.j2 +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/wrappers/wrapper_basic.py.jinja2 +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/resources/wrappers/wrapper_stream.py.jinja2 +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/runners/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/runners/base.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/runners/local_docker.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/runners/ve_agentkit.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/bindings/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/bindings/memory.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/builder.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/client.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/deployer.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/initializer.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/invoker.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/lifecycle.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/sdk/status.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/strategies/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/strategies/base_strategy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/strategies/cloud_strategy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/strategies/hybrid_strategy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/strategies/local_strategy.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/utils/agent_parser.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/apmplus_logs.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/code_pipeline.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/cr.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/iam.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/services/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/services/cr_service.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/services/tos_service.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/sts.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/toolkit/volcengine/utils/project_archiver.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/__init__.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/global_config_io.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/http_defaults.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/logging_config.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/misc.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/redact.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/request.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/template_utils.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/utils/ve_sign.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/dependency_links.txt +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/entry_points.txt +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/requires.txt +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/top_level.txt +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/setup.cfg +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/tests/test_client_uses_platform_context.py +0 -0
- {agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/tests/test_error_hierarchy.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentkit-sdk-python
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.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
|
|
@@ -340,6 +340,40 @@ pip install agentkit-sdk-python==1.0.0.dev1
|
|
|
340
340
|
|
|
341
341
|
**Note**: Development versions may contain bugs and are not recommended for production use.
|
|
342
342
|
|
|
343
|
+
## Release Process
|
|
344
|
+
|
|
345
|
+
Stable releases are published from GitHub tags. The source tree keeps the
|
|
346
|
+
release version in `pyproject.toml` and `agentkit/version.py`, and the GitHub
|
|
347
|
+
workflow verifies that the pushed tag matches those files before building and
|
|
348
|
+
publishing the package.
|
|
349
|
+
|
|
350
|
+
The release workflow must already exist on `main` before you push the release
|
|
351
|
+
tag. For `0.7.5`, merge the tag-release automation change first, then create
|
|
352
|
+
and push `v0.7.5`.
|
|
353
|
+
|
|
354
|
+
Use the following workflow for a stable release:
|
|
355
|
+
|
|
356
|
+
```bash
|
|
357
|
+
git checkout main
|
|
358
|
+
git pull github main
|
|
359
|
+
git tag v0.7.5
|
|
360
|
+
git push github v0.7.5
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
When the tag reaches GitHub, `.github/workflows/release-pypi.yml` will:
|
|
364
|
+
|
|
365
|
+
- verify the tag is reachable from `main`
|
|
366
|
+
- verify that `pyproject.toml` and `agentkit/version.py` match the tag version
|
|
367
|
+
- build the wheel and source distribution from the tagged commit
|
|
368
|
+
- verify the built artifacts contain the expected version metadata
|
|
369
|
+
- publish the release to PyPI using the GitHub Actions secret `PYPI_API_TOKEN`
|
|
370
|
+
|
|
371
|
+
The internal `local_build.py` helper is a separate local-only workflow and is
|
|
372
|
+
not used by the GitHub tag release.
|
|
373
|
+
|
|
374
|
+
Before using the GitHub tag release workflow, configure a project-scoped PyPI
|
|
375
|
+
API token in the repository's GitHub Actions secrets as `PYPI_API_TOKEN`.
|
|
376
|
+
|
|
343
377
|
## Security and privacy
|
|
344
378
|
|
|
345
379
|
This project takes security seriously.
|
|
@@ -85,6 +85,40 @@ pip install agentkit-sdk-python==1.0.0.dev1
|
|
|
85
85
|
|
|
86
86
|
**Note**: Development versions may contain bugs and are not recommended for production use.
|
|
87
87
|
|
|
88
|
+
## Release Process
|
|
89
|
+
|
|
90
|
+
Stable releases are published from GitHub tags. The source tree keeps the
|
|
91
|
+
release version in `pyproject.toml` and `agentkit/version.py`, and the GitHub
|
|
92
|
+
workflow verifies that the pushed tag matches those files before building and
|
|
93
|
+
publishing the package.
|
|
94
|
+
|
|
95
|
+
The release workflow must already exist on `main` before you push the release
|
|
96
|
+
tag. For `0.7.5`, merge the tag-release automation change first, then create
|
|
97
|
+
and push `v0.7.5`.
|
|
98
|
+
|
|
99
|
+
Use the following workflow for a stable release:
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
git checkout main
|
|
103
|
+
git pull github main
|
|
104
|
+
git tag v0.7.5
|
|
105
|
+
git push github v0.7.5
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
When the tag reaches GitHub, `.github/workflows/release-pypi.yml` will:
|
|
109
|
+
|
|
110
|
+
- verify the tag is reachable from `main`
|
|
111
|
+
- verify that `pyproject.toml` and `agentkit/version.py` match the tag version
|
|
112
|
+
- build the wheel and source distribution from the tagged commit
|
|
113
|
+
- verify the built artifacts contain the expected version metadata
|
|
114
|
+
- publish the release to PyPI using the GitHub Actions secret `PYPI_API_TOKEN`
|
|
115
|
+
|
|
116
|
+
The internal `local_build.py` helper is a separate local-only workflow and is
|
|
117
|
+
not used by the GitHub tag release.
|
|
118
|
+
|
|
119
|
+
Before using the GitHub tag release workflow, configure a project-scoped PyPI
|
|
120
|
+
API token in the repository's GitHub Actions secrets as `PYPI_API_TOKEN`.
|
|
121
|
+
|
|
88
122
|
## Security and privacy
|
|
89
123
|
|
|
90
124
|
This project takes security seriously.
|
|
@@ -14,6 +14,7 @@ __all__ = [
|
|
|
14
14
|
"LangChainAgentkitBridge",
|
|
15
15
|
"LangGraphAgentkitBridge",
|
|
16
16
|
"UnsupportedFrameworkAgentError",
|
|
17
|
+
"load_entry_object",
|
|
17
18
|
]
|
|
18
19
|
|
|
19
20
|
|
|
@@ -26,4 +27,8 @@ def __getattr__(name: str) -> Any:
|
|
|
26
27
|
from agentkit.frameworks.langgraph import LangGraphAgentkitBridge
|
|
27
28
|
|
|
28
29
|
return LangGraphAgentkitBridge
|
|
30
|
+
if name == "load_entry_object":
|
|
31
|
+
from agentkit.frameworks.migration import load_entry_object
|
|
32
|
+
|
|
33
|
+
return load_entry_object
|
|
29
34
|
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
from collections.abc import AsyncGenerator
|
|
6
|
+
import hashlib
|
|
6
7
|
import inspect
|
|
7
8
|
import json
|
|
8
9
|
from typing import Any
|
|
@@ -84,6 +85,35 @@ def _resume_value(text_input: str) -> Any:
|
|
|
84
85
|
return text_input
|
|
85
86
|
|
|
86
87
|
|
|
88
|
+
def _update_output_text(data: Any) -> str:
|
|
89
|
+
"""Extract user-facing output from LangGraph update payloads.
|
|
90
|
+
|
|
91
|
+
LangGraph ``stream_mode=["messages", "updates"]`` can emit internal LLM
|
|
92
|
+
message chunks as well as node state updates. Generic recursive extraction
|
|
93
|
+
is too broad for updates such as ``{"classify": {"route": "x"}}``; only
|
|
94
|
+
explicit output-like fields should override streamed message text.
|
|
95
|
+
"""
|
|
96
|
+
if not isinstance(data, dict):
|
|
97
|
+
return chunk_to_text(data)
|
|
98
|
+
|
|
99
|
+
for key in ("answer", "output", "text", "content", "messages"):
|
|
100
|
+
if key in data:
|
|
101
|
+
text = chunk_to_text(data[key])
|
|
102
|
+
if text:
|
|
103
|
+
return text
|
|
104
|
+
|
|
105
|
+
latest = ""
|
|
106
|
+
for value in data.values():
|
|
107
|
+
if not isinstance(value, dict):
|
|
108
|
+
continue
|
|
109
|
+
for key in ("answer", "output", "text", "content", "messages"):
|
|
110
|
+
if key in value:
|
|
111
|
+
text = chunk_to_text(value[key])
|
|
112
|
+
if text:
|
|
113
|
+
latest = text
|
|
114
|
+
return latest
|
|
115
|
+
|
|
116
|
+
|
|
87
117
|
class LangGraphAgentkitBridge(BaseAgent):
|
|
88
118
|
"""Adapt a compiled LangGraph graph to AgentKit's ADK runtime boundary."""
|
|
89
119
|
|
|
@@ -112,7 +142,15 @@ class LangGraphAgentkitBridge(BaseAgent):
|
|
|
112
142
|
session_id = getattr(session, "id", None)
|
|
113
143
|
if not session_id:
|
|
114
144
|
return None
|
|
115
|
-
|
|
145
|
+
app_name = getattr(session, "app_name", None)
|
|
146
|
+
user_id = getattr(session, "user_id", None)
|
|
147
|
+
if app_name and user_id:
|
|
148
|
+
raw_identity = f"{app_name}\0{user_id}\0{session_id}"
|
|
149
|
+
digest = hashlib.sha256(raw_identity.encode("utf-8")).hexdigest()
|
|
150
|
+
thread_id = f"agentkit:{digest}"
|
|
151
|
+
else:
|
|
152
|
+
thread_id = session_id
|
|
153
|
+
return {"configurable": {"thread_id": thread_id}}
|
|
116
154
|
|
|
117
155
|
def _pending_interrupt(self, ctx: InvocationContext) -> Any | None:
|
|
118
156
|
session = getattr(ctx, "session", None)
|
|
@@ -189,32 +227,37 @@ class LangGraphAgentkitBridge(BaseAgent):
|
|
|
189
227
|
stream_fn = getattr(self._graph, "stream", None)
|
|
190
228
|
if not callable(stream_fn):
|
|
191
229
|
return None
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
230
|
+
attempts = [
|
|
231
|
+
{
|
|
232
|
+
"config": config,
|
|
233
|
+
"stream_mode": ["messages", "updates"],
|
|
234
|
+
"version": "v2",
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"config": config,
|
|
238
|
+
"stream_mode": ["messages", "updates"],
|
|
239
|
+
},
|
|
240
|
+
{"config": config},
|
|
241
|
+
]
|
|
242
|
+
|
|
243
|
+
def iterate_attempts():
|
|
244
|
+
last_error: TypeError | None = None
|
|
245
|
+
for kwargs in attempts:
|
|
246
|
+
emitted = False
|
|
247
|
+
try:
|
|
248
|
+
stream = stream_fn(payload, **_method_kwargs(stream_fn, kwargs))
|
|
249
|
+
for item in stream:
|
|
250
|
+
emitted = True
|
|
251
|
+
yield item
|
|
252
|
+
return
|
|
253
|
+
except TypeError as exc:
|
|
254
|
+
if emitted:
|
|
255
|
+
raise
|
|
256
|
+
last_error = exc
|
|
257
|
+
if last_error is not None:
|
|
258
|
+
raise last_error
|
|
259
|
+
|
|
260
|
+
return iterate_attempts()
|
|
218
261
|
|
|
219
262
|
async def _stream_graph(self, payload: Any, config: dict[str, Any] | None, *, prefer_sync: bool = False):
|
|
220
263
|
if prefer_sync:
|
|
@@ -226,35 +269,33 @@ class LangGraphAgentkitBridge(BaseAgent):
|
|
|
226
269
|
|
|
227
270
|
astream = getattr(self._graph, "astream", None)
|
|
228
271
|
if callable(astream):
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
272
|
+
attempts = [
|
|
273
|
+
{
|
|
274
|
+
"config": config,
|
|
275
|
+
"stream_mode": ["messages", "updates"],
|
|
276
|
+
"version": "v2",
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"config": config,
|
|
280
|
+
"stream_mode": ["messages", "updates"],
|
|
281
|
+
},
|
|
282
|
+
{"config": config},
|
|
283
|
+
]
|
|
284
|
+
last_error: TypeError | None = None
|
|
285
|
+
for kwargs in attempts:
|
|
286
|
+
emitted = False
|
|
242
287
|
try:
|
|
243
|
-
stream = astream(
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
stream = astream(payload, **_method_kwargs(astream, {"config": config}))
|
|
255
|
-
async for item in stream:
|
|
256
|
-
yield item
|
|
257
|
-
return
|
|
288
|
+
stream = astream(payload, **_method_kwargs(astream, kwargs))
|
|
289
|
+
async for item in stream:
|
|
290
|
+
emitted = True
|
|
291
|
+
yield item
|
|
292
|
+
return
|
|
293
|
+
except TypeError as exc:
|
|
294
|
+
if emitted:
|
|
295
|
+
raise
|
|
296
|
+
last_error = exc
|
|
297
|
+
if last_error is not None:
|
|
298
|
+
raise last_error
|
|
258
299
|
|
|
259
300
|
stream = self._sync_stream(payload, config)
|
|
260
301
|
if stream is not None:
|
|
@@ -318,9 +359,7 @@ class LangGraphAgentkitBridge(BaseAgent):
|
|
|
318
359
|
)
|
|
319
360
|
return
|
|
320
361
|
last_update = data
|
|
321
|
-
|
|
322
|
-
continue
|
|
323
|
-
text = chunk_to_text(data)
|
|
362
|
+
text = _update_output_text(data)
|
|
324
363
|
if text:
|
|
325
364
|
pending_update_text = text
|
|
326
365
|
continue
|
|
@@ -334,10 +373,11 @@ class LangGraphAgentkitBridge(BaseAgent):
|
|
|
334
373
|
yield adk_event(ctx, self.name, delta, partial=True)
|
|
335
374
|
|
|
336
375
|
if streamed:
|
|
376
|
+
update_text = pending_update_text or _update_output_text(last_update)
|
|
337
377
|
if saw_messages or has_output:
|
|
338
|
-
final_text = accumulated_text
|
|
378
|
+
final_text = update_text or accumulated_text
|
|
339
379
|
else:
|
|
340
|
-
final_text =
|
|
380
|
+
final_text = update_text
|
|
341
381
|
if final_text:
|
|
342
382
|
yield adk_event(ctx, self.name, final_text, partial=True)
|
|
343
383
|
else:
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"""Helpers used by generated framework migration apps."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import importlib
|
|
6
|
+
import importlib.util
|
|
7
|
+
import inspect
|
|
8
|
+
from pathlib import Path
|
|
9
|
+
import sys
|
|
10
|
+
from types import ModuleType
|
|
11
|
+
from typing import Any
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _prepend_sys_path(path: Path) -> None:
|
|
15
|
+
value = str(path)
|
|
16
|
+
if value not in sys.path:
|
|
17
|
+
sys.path.insert(0, value)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def _load_module_from_file(entry_path: Path, import_name: str) -> ModuleType:
|
|
21
|
+
if not entry_path.is_file():
|
|
22
|
+
raise FileNotFoundError(f"Entry file does not exist: {entry_path}")
|
|
23
|
+
|
|
24
|
+
spec = importlib.util.spec_from_file_location(import_name, entry_path)
|
|
25
|
+
if spec is None or spec.loader is None:
|
|
26
|
+
raise RuntimeError(f"Cannot load entry module from {entry_path}")
|
|
27
|
+
|
|
28
|
+
module = importlib.util.module_from_spec(spec)
|
|
29
|
+
sys.modules[import_name] = module
|
|
30
|
+
try:
|
|
31
|
+
spec.loader.exec_module(module)
|
|
32
|
+
except Exception:
|
|
33
|
+
if sys.modules.get(import_name) is module:
|
|
34
|
+
del sys.modules[import_name]
|
|
35
|
+
raise
|
|
36
|
+
return module
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def _resolve_object(module: ModuleType, object_path: str) -> Any:
|
|
40
|
+
if not object_path:
|
|
41
|
+
raise ValueError("entry object path is required")
|
|
42
|
+
|
|
43
|
+
target: Any = module
|
|
44
|
+
for attr in object_path.split("."):
|
|
45
|
+
if not attr:
|
|
46
|
+
raise ValueError(
|
|
47
|
+
f"entry object path contains an empty attribute: {object_path!r}"
|
|
48
|
+
)
|
|
49
|
+
try:
|
|
50
|
+
target = getattr(target, attr)
|
|
51
|
+
except AttributeError as exc:
|
|
52
|
+
raise AttributeError(
|
|
53
|
+
f"Entry object {object_path!r} was not found; "
|
|
54
|
+
f"missing attribute {attr!r} on {target!r}."
|
|
55
|
+
) from exc
|
|
56
|
+
return target
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def _call_zero_arg_factory(target: Any, object_path: str) -> Any:
|
|
60
|
+
if not callable(target):
|
|
61
|
+
raise TypeError(
|
|
62
|
+
f"Entry object {object_path!r} was marked as a factory, "
|
|
63
|
+
"but the loaded object is not callable."
|
|
64
|
+
)
|
|
65
|
+
|
|
66
|
+
try:
|
|
67
|
+
signature = inspect.signature(target)
|
|
68
|
+
except (TypeError, ValueError) as exc:
|
|
69
|
+
raise TypeError(
|
|
70
|
+
f"Entry factory {object_path!r} has no inspectable signature. "
|
|
71
|
+
"Expose a zero-argument factory or a constructed agent object."
|
|
72
|
+
) from exc
|
|
73
|
+
|
|
74
|
+
required_params = [
|
|
75
|
+
name
|
|
76
|
+
for name, param in signature.parameters.items()
|
|
77
|
+
if param.default is inspect.Parameter.empty
|
|
78
|
+
and param.kind
|
|
79
|
+
in {
|
|
80
|
+
inspect.Parameter.POSITIONAL_ONLY,
|
|
81
|
+
inspect.Parameter.POSITIONAL_OR_KEYWORD,
|
|
82
|
+
inspect.Parameter.KEYWORD_ONLY,
|
|
83
|
+
}
|
|
84
|
+
]
|
|
85
|
+
if required_params:
|
|
86
|
+
formatted = ", ".join(required_params)
|
|
87
|
+
raise TypeError(
|
|
88
|
+
f"Entry factory {object_path!r} requires arguments: {formatted}. "
|
|
89
|
+
"agentkit migrate can only call zero-argument factories; expose a "
|
|
90
|
+
"thin zero-argument entry object for migration."
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
result = target()
|
|
94
|
+
if inspect.isawaitable(result):
|
|
95
|
+
raise TypeError(
|
|
96
|
+
f"Entry factory {object_path!r} returned an awaitable object. "
|
|
97
|
+
"Async factories are not supported by generated migration apps; "
|
|
98
|
+
"expose a synchronous factory or a constructed agent object."
|
|
99
|
+
)
|
|
100
|
+
return result
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def load_entry_object(
|
|
104
|
+
*,
|
|
105
|
+
file: str,
|
|
106
|
+
object_path: str,
|
|
107
|
+
module: str | None = None,
|
|
108
|
+
project_root: str | Path = ".",
|
|
109
|
+
base_dir: str | Path | None = None,
|
|
110
|
+
import_name: str = "agentkit_migrated_entry",
|
|
111
|
+
call_factory: bool = False,
|
|
112
|
+
) -> Any:
|
|
113
|
+
"""Load an object from a migrated project's original entry reference.
|
|
114
|
+
|
|
115
|
+
The generated migration app lives beside or below the user's project files.
|
|
116
|
+
This helper keeps that app small while preserving the import behavior that
|
|
117
|
+
users expect from running their original project.
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
base_path = (
|
|
121
|
+
Path(base_dir).resolve() if base_dir is not None else Path.cwd().resolve()
|
|
122
|
+
)
|
|
123
|
+
project_root_path = (base_path / project_root).resolve()
|
|
124
|
+
_prepend_sys_path(project_root_path)
|
|
125
|
+
|
|
126
|
+
if module:
|
|
127
|
+
loaded_module = importlib.import_module(module)
|
|
128
|
+
else:
|
|
129
|
+
entry_path = (base_path / file).resolve()
|
|
130
|
+
loaded_module = _load_module_from_file(entry_path, import_name)
|
|
131
|
+
|
|
132
|
+
target = _resolve_object(loaded_module, object_path)
|
|
133
|
+
if call_factory:
|
|
134
|
+
return _call_zero_arg_factory(target, object_path)
|
|
135
|
+
return target
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.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.7.
|
|
3
|
+
Version: 0.7.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
|
|
@@ -340,6 +340,40 @@ pip install agentkit-sdk-python==1.0.0.dev1
|
|
|
340
340
|
|
|
341
341
|
**Note**: Development versions may contain bugs and are not recommended for production use.
|
|
342
342
|
|
|
343
|
+
## Release Process
|
|
344
|
+
|
|
345
|
+
Stable releases are published from GitHub tags. The source tree keeps the
|
|
346
|
+
release version in `pyproject.toml` and `agentkit/version.py`, and the GitHub
|
|
347
|
+
workflow verifies that the pushed tag matches those files before building and
|
|
348
|
+
publishing the package.
|
|
349
|
+
|
|
350
|
+
The release workflow must already exist on `main` before you push the release
|
|
351
|
+
tag. For `0.7.5`, merge the tag-release automation change first, then create
|
|
352
|
+
and push `v0.7.5`.
|
|
353
|
+
|
|
354
|
+
Use the following workflow for a stable release:
|
|
355
|
+
|
|
356
|
+
```bash
|
|
357
|
+
git checkout main
|
|
358
|
+
git pull github main
|
|
359
|
+
git tag v0.7.5
|
|
360
|
+
git push github v0.7.5
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
When the tag reaches GitHub, `.github/workflows/release-pypi.yml` will:
|
|
364
|
+
|
|
365
|
+
- verify the tag is reachable from `main`
|
|
366
|
+
- verify that `pyproject.toml` and `agentkit/version.py` match the tag version
|
|
367
|
+
- build the wheel and source distribution from the tagged commit
|
|
368
|
+
- verify the built artifacts contain the expected version metadata
|
|
369
|
+
- publish the release to PyPI using the GitHub Actions secret `PYPI_API_TOKEN`
|
|
370
|
+
|
|
371
|
+
The internal `local_build.py` helper is a separate local-only workflow and is
|
|
372
|
+
not used by the GitHub tag release.
|
|
373
|
+
|
|
374
|
+
Before using the GitHub tag release workflow, configure a project-scoped PyPI
|
|
375
|
+
API token in the repository's GitHub Actions secrets as `PYPI_API_TOKEN`.
|
|
376
|
+
|
|
343
377
|
## Security and privacy
|
|
344
378
|
|
|
345
379
|
This project takes security seriously.
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit_sdk_python.egg-info/SOURCES.txt
RENAMED
|
@@ -48,6 +48,7 @@ agentkit/frameworks/__init__.py
|
|
|
48
48
|
agentkit/frameworks/_common.py
|
|
49
49
|
agentkit/frameworks/langchain.py
|
|
50
50
|
agentkit/frameworks/langgraph.py
|
|
51
|
+
agentkit/frameworks/migration.py
|
|
51
52
|
agentkit/frameworks/serving/__init__.py
|
|
52
53
|
agentkit/frameworks/serving/fastapi_mount.py
|
|
53
54
|
agentkit/frameworks/serving/langserve.py
|
|
@@ -182,10 +183,6 @@ agentkit/toolkit/resources/samples/financial_analyst.py
|
|
|
182
183
|
agentkit/toolkit/resources/samples/langchain_basic_stream.py
|
|
183
184
|
agentkit/toolkit/resources/samples/simple_app_veadk.py
|
|
184
185
|
agentkit/toolkit/resources/samples/simple_mcp_veadk.py
|
|
185
|
-
agentkit/toolkit/resources/samples/__pycache__/customer_support_assistant.cpython-312.pyc
|
|
186
|
-
agentkit/toolkit/resources/samples/__pycache__/financial_analyst.cpython-312.pyc
|
|
187
|
-
agentkit/toolkit/resources/samples/__pycache__/simple_app_veadk.cpython-312.pyc
|
|
188
|
-
agentkit/toolkit/resources/samples/__pycache__/simple_mcp_veadk.cpython-312.pyc
|
|
189
186
|
agentkit/toolkit/resources/samples/eino_a2a/agent.go
|
|
190
187
|
agentkit/toolkit/resources/samples/eino_a2a/build.sh
|
|
191
188
|
agentkit/toolkit/resources/samples/eino_a2a/go.mod
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=77", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
1
5
|
[project]
|
|
2
6
|
name = "agentkit-sdk-python"
|
|
3
|
-
version = "0.7.
|
|
7
|
+
version = "0.7.6"
|
|
4
8
|
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
9
|
readme = "README.md"
|
|
6
10
|
requires-python = ">=3.10"
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
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.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/middleware.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/agent_server_app/origin.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.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.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/__init__.py
RENAMED
|
File without changes
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/simple_app.py
RENAMED
|
File without changes
|
|
File without changes
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/apps/simple_app/telemetry.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
|
{agentkit_sdk_python-0.7.4 → agentkit_sdk_python-0.7.6}/agentkit/client/base_agentkit_client.py
RENAMED
|
File without changes
|