@google/adk 2.0.0 → 2.2.0
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.
- package/dist/cjs/a2a/a2a_event.js +0 -29
- package/dist/cjs/a2a/a2a_remote_agent.js +8 -5
- package/dist/cjs/a2a/a2a_remote_agent_utils.js +104 -2
- package/dist/cjs/a2a/agent_card.js +66 -6
- package/dist/cjs/a2a/agent_executor.js +18 -6
- package/dist/cjs/a2a/agent_to_a2a.js +6 -1
- package/dist/cjs/a2a/event_processor_utils.js +1 -1
- package/dist/cjs/a2a/executor_context.js +4 -2
- package/dist/cjs/a2a/index.js +4 -0
- package/dist/cjs/a2a/request_metadata.js +94 -0
- package/dist/cjs/agents/base_agent.js +9 -8
- package/dist/cjs/agents/context.js +7 -0
- package/dist/cjs/agents/functions.js +150 -47
- package/dist/cjs/agents/invocation_context.js +1 -0
- package/dist/cjs/agents/llm_agent.js +21 -6
- package/dist/cjs/agents/loop_agent.js +1 -1
- package/dist/cjs/agents/parallel_agent.js +1 -1
- package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +26 -5
- package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -2
- package/dist/cjs/agents/processors/content_processor_utils.js +15 -7
- package/dist/cjs/agents/processors/content_request_processor.js +4 -1
- package/dist/cjs/agents/processors/nl_planning_processor.js +114 -0
- package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +19 -12
- package/dist/cjs/agents/processors/request_input_llm_request_processor.js +3 -7
- package/dist/cjs/agents/readonly_context.js +6 -0
- package/dist/cjs/agents/routed_agent.js +1 -1
- package/dist/cjs/agents/sequential_agent.js +1 -1
- package/dist/cjs/apps/app.js +1 -1
- package/dist/cjs/artifacts/file_artifact_service.js +1 -2
- package/dist/cjs/artifacts/gcs_artifact_service.js +13 -7
- package/dist/cjs/artifacts/scoped_artifact_service.js +9 -0
- package/dist/cjs/artifacts/session_artifact_service.js +19 -0
- package/dist/cjs/auth/auth_credential.js +12 -2
- package/dist/cjs/auth/auth_handler.js +44 -8
- package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +1 -1
- package/dist/cjs/auth/oauth2/oauth2_utils.js +17 -2
- package/dist/cjs/code_executors/base_code_executor.js +1 -1
- package/dist/cjs/code_executors/built_in_code_executor.js +1 -1
- package/dist/cjs/code_executors/code_execution_utils.js +5 -5
- package/dist/cjs/code_executors/container_code_executor.js +186 -0
- package/dist/cjs/code_executors/docker_container.js +282 -0
- package/dist/cjs/code_executors/unsafe_local_code_executor.js +11 -6
- package/dist/cjs/common.js +119 -45
- package/dist/cjs/context/agent_controlled_context_compactor.js +10 -5
- package/dist/cjs/context/anchored_context_compactor.js +41 -18
- package/dist/cjs/context/compaction_utils.js +15 -6
- package/dist/cjs/context/token_based_context_compactor.js +10 -2
- package/dist/cjs/context/trajectory_thought_pruning_compactor.js +17 -10
- package/dist/cjs/context/truncating_context_compactor.js +17 -5
- package/dist/cjs/errors/already_exists_error.js +50 -0
- package/dist/cjs/errors/input_validation_error.js +50 -0
- package/dist/cjs/errors/not_found_error.js +50 -0
- package/dist/cjs/errors/session_not_found_error.js +50 -0
- package/dist/cjs/errors/tool_execution_error.js +68 -0
- package/dist/cjs/events/event.js +1 -1
- package/dist/cjs/events/event_actions.js +7 -0
- package/dist/cjs/examples/base_example_provider.js +1 -1
- package/dist/cjs/examples/example.js +92 -0
- package/dist/cjs/examples/example_util.js +28 -4
- package/dist/cjs/examples/index.js +39 -0
- package/dist/cjs/examples/vertex_ai_example_store.js +39 -0
- package/dist/cjs/index.js +93 -0
- package/dist/cjs/index_web.js +2 -0
- package/dist/cjs/integrations/agent_registry/agent_registry.js +3 -2
- package/dist/cjs/memory/rag_memory_transcript.js +136 -0
- package/dist/cjs/memory/vertex_ai_memory_bank_service.js +19 -7
- package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
- package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
- package/dist/cjs/models/apigee_llm.js +1 -1
- package/dist/cjs/models/base_llm.js +2 -7
- package/dist/cjs/models/chrome_prompt_llm.js +318 -0
- package/dist/cjs/models/chrome_prompt_utils.js +281 -0
- package/dist/cjs/models/gemini_llm_connection.js +5 -4
- package/dist/cjs/models/google_llm.js +9 -4
- package/dist/cjs/models/interactions_utils.js +2 -3
- package/dist/cjs/models/registry.js +2 -0
- package/dist/cjs/planners/base_planner.js +56 -0
- package/dist/cjs/planners/built_in_planner.js +85 -0
- package/dist/cjs/planners/plan_re_act_planner.js +172 -0
- package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
- package/dist/cjs/plugins/base_plugin.js +46 -61
- package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
- package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
- package/dist/cjs/runner/runner.js +29 -26
- package/dist/cjs/sessions/database_session_service.js +78 -43
- package/dist/cjs/sessions/db/operations.js +229 -22
- package/dist/cjs/sessions/db/schema.js +113 -159
- package/dist/cjs/sessions/registry.js +5 -1
- package/dist/cjs/sessions/vertex_ai_session_service.js +2 -2
- package/dist/cjs/telemetry/setup.js +1 -1
- package/dist/cjs/telemetry/tracing.js +11 -1
- package/dist/cjs/tools/agent_tool.js +4 -5
- package/dist/cjs/tools/base_tool.js +14 -4
- package/dist/cjs/tools/base_toolset.js +4 -4
- package/dist/cjs/tools/built_in_tool.js +75 -0
- package/dist/cjs/tools/enterprise_web_search_tool.js +3 -6
- package/dist/cjs/tools/example_tool.js +1 -1
- package/dist/cjs/tools/forwarding_artifact_service.js +18 -13
- package/dist/cjs/tools/function_tool.js +6 -3
- package/dist/cjs/tools/google_maps_grounding_tool.js +3 -6
- package/dist/cjs/tools/google_search_tool.js +3 -6
- package/dist/cjs/tools/load_artifacts_tool.js +47 -23
- package/dist/cjs/tools/load_web_page.js +6 -172
- package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +34 -5
- package/dist/cjs/tools/mcp/mcp_session_manager.js +14 -8
- package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +292 -4
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +70 -0
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +120 -0
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -10
- package/dist/cjs/tools/openapi_tool/common/common.js +139 -0
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +74 -14
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -34
- package/dist/cjs/tools/openapi_tool/openapi_toolset.js +14 -2
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +106 -46
- package/dist/cjs/tools/preload_memory_tool.js +1 -1
- package/dist/cjs/tools/resume_inputs.js +27 -0
- package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
- package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
- package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
- package/dist/cjs/tools/skill/skill_toolset.js +2 -0
- package/dist/cjs/tools/tool_context.js +41 -0
- package/dist/cjs/tools/url_context_tool.js +3 -6
- package/dist/cjs/tools/vertex_ai_search_tool.js +4 -8
- package/dist/cjs/tools/vertex_rag_retrieval_tool.js +3 -10
- package/dist/cjs/tools/webmcp/index.js +37 -0
- package/dist/cjs/tools/webmcp/webmcp_tool.js +156 -0
- package/dist/cjs/tools/webmcp/webmcp_toolset.js +116 -0
- package/dist/cjs/tools/webmcp/webmcp_types.js +50 -0
- package/dist/cjs/utils/case_utils.js +52 -2
- package/dist/cjs/utils/client_labels.js +67 -0
- package/dist/cjs/utils/crypto_shim.js +16 -0
- package/dist/cjs/utils/gemini_schema_util.js +103 -9
- package/dist/cjs/utils/hash_utils.js +73 -0
- package/dist/cjs/utils/live_connection_utils.js +10 -9
- package/dist/cjs/utils/logger.js +15 -50
- package/dist/cjs/utils/logger_browser.js +86 -0
- package/dist/cjs/utils/logger_node.js +119 -0
- package/dist/cjs/utils/model_name.js +17 -2
- package/dist/cjs/utils/redact_inline_data.js +46 -0
- package/dist/cjs/utils/redact_uri.js +15 -1
- package/dist/cjs/utils/schema.js +1 -1
- package/dist/cjs/utils/simple_zod_to_json.js +5 -0
- package/dist/cjs/utils/ssrf_guard.js +262 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/workflow/base_node.js +1 -1
- package/dist/cjs/workflow/graph.js +1 -1
- package/dist/cjs/workflow/nodes/node_tool.js +2 -11
- package/dist/cjs/workflow/request_input.js +1 -1
- package/dist/cjs/workflow/run_llm_agent_as_node.js +1 -1
- package/dist/cjs/workflow/workflow.js +1 -1
- package/dist/esm/a2a/a2a_event.js +0 -28
- package/dist/esm/a2a/a2a_remote_agent.js +10 -5
- package/dist/esm/a2a/a2a_remote_agent_utils.js +102 -2
- package/dist/esm/a2a/agent_card.js +71 -6
- package/dist/esm/a2a/agent_executor.js +18 -6
- package/dist/esm/a2a/agent_to_a2a.js +8 -2
- package/dist/esm/a2a/event_processor_utils.js +1 -2
- package/dist/esm/a2a/executor_context.js +4 -2
- package/dist/esm/a2a/index.js +7 -1
- package/dist/esm/a2a/request_metadata.js +68 -0
- package/dist/esm/agents/base_agent.js +9 -8
- package/dist/esm/agents/context.js +7 -0
- package/dist/esm/agents/functions.js +152 -48
- package/dist/esm/agents/invocation_context.js +1 -0
- package/dist/esm/agents/llm_agent.js +24 -6
- package/dist/esm/agents/loop_agent.js +1 -1
- package/dist/esm/agents/parallel_agent.js +1 -1
- package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +26 -5
- package/dist/esm/agents/processors/code_execution_request_processor.js +2 -2
- package/dist/esm/agents/processors/content_processor_utils.js +15 -7
- package/dist/esm/agents/processors/content_request_processor.js +4 -1
- package/dist/esm/agents/processors/nl_planning_processor.js +87 -0
- package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +19 -12
- package/dist/esm/agents/processors/request_input_llm_request_processor.js +3 -7
- package/dist/esm/agents/readonly_context.js +6 -0
- package/dist/esm/agents/routed_agent.js +1 -1
- package/dist/esm/agents/sequential_agent.js +1 -1
- package/dist/esm/apps/app.js +1 -1
- package/dist/esm/artifacts/file_artifact_service.js +1 -2
- package/dist/esm/artifacts/gcs_artifact_service.js +13 -7
- package/dist/esm/artifacts/scoped_artifact_service.js +9 -0
- package/dist/esm/artifacts/session_artifact_service.js +12 -0
- package/dist/esm/auth/auth_credential.js +11 -1
- package/dist/esm/auth/auth_handler.js +47 -8
- package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +1 -1
- package/dist/esm/auth/oauth2/oauth2_utils.js +15 -2
- package/dist/esm/code_executors/base_code_executor.js +1 -1
- package/dist/esm/code_executors/built_in_code_executor.js +1 -1
- package/dist/esm/code_executors/code_execution_utils.js +5 -5
- package/dist/esm/code_executors/container_code_executor.js +155 -0
- package/dist/esm/code_executors/docker_container.js +265 -0
- package/dist/esm/code_executors/unsafe_local_code_executor.js +11 -6
- package/dist/esm/common.js +111 -40
- package/dist/esm/context/agent_controlled_context_compactor.js +10 -5
- package/dist/esm/context/anchored_context_compactor.js +45 -19
- package/dist/esm/context/compaction_utils.js +13 -5
- package/dist/esm/context/token_based_context_compactor.js +10 -2
- package/dist/esm/context/trajectory_thought_pruning_compactor.js +17 -10
- package/dist/esm/context/truncating_context_compactor.js +17 -5
- package/dist/esm/errors/already_exists_error.js +23 -0
- package/dist/esm/errors/input_validation_error.js +23 -0
- package/dist/{web/auth/refresher/base_credential_refresher.js → esm/errors/not_found_error.js} +9 -6
- package/dist/esm/errors/session_not_found_error.js +23 -0
- package/dist/esm/errors/tool_execution_error.js +40 -0
- package/dist/esm/events/event.js +1 -1
- package/dist/esm/events/event_actions.js +6 -0
- package/dist/esm/examples/base_example_provider.js +1 -1
- package/dist/esm/examples/example.js +85 -0
- package/dist/esm/examples/example_util.js +25 -3
- package/dist/{web/auth/credential_service/base_credential_service.js → esm/examples/index.js} +4 -0
- package/dist/{web/version.js → esm/examples/vertex_ai_example_store.js} +2 -2
- package/dist/esm/index.js +87 -0
- package/dist/esm/index_web.js +2 -0
- package/dist/esm/integrations/agent_registry/agent_registry.js +3 -2
- package/dist/esm/memory/rag_memory_transcript.js +106 -0
- package/dist/esm/memory/vertex_ai_memory_bank_service.js +19 -7
- package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
- package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
- package/dist/esm/models/apigee_llm.js +1 -1
- package/dist/esm/models/base_llm.js +3 -8
- package/dist/esm/models/chrome_prompt_llm.js +302 -0
- package/dist/esm/models/chrome_prompt_utils.js +241 -0
- package/dist/esm/models/gemini_llm_connection.js +6 -5
- package/dist/esm/models/google_llm.js +9 -4
- package/dist/esm/models/interactions_utils.js +2 -3
- package/dist/esm/models/registry.js +2 -0
- package/dist/esm/planners/base_planner.js +28 -0
- package/dist/esm/planners/built_in_planner.js +57 -0
- package/dist/esm/planners/plan_re_act_planner.js +145 -0
- package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
- package/dist/esm/plugins/base_plugin.js +46 -61
- package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
- package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
- package/dist/esm/runner/runner.js +35 -27
- package/dist/esm/sessions/database_session_service.js +58 -25
- package/dist/esm/sessions/db/operations.js +229 -22
- package/dist/esm/sessions/db/schema.js +111 -160
- package/dist/esm/sessions/registry.js +5 -1
- package/dist/esm/sessions/vertex_ai_session_service.js +1 -1
- package/dist/esm/telemetry/setup.js +1 -1
- package/dist/esm/telemetry/tracing.js +11 -1
- package/dist/esm/tools/agent_tool.js +4 -5
- package/dist/esm/tools/base_tool.js +11 -3
- package/dist/esm/tools/base_toolset.js +4 -4
- package/dist/esm/tools/built_in_tool.js +51 -0
- package/dist/esm/tools/enterprise_web_search_tool.js +3 -6
- package/dist/esm/tools/example_tool.js +1 -1
- package/dist/esm/tools/forwarding_artifact_service.js +18 -13
- package/dist/esm/tools/function_tool.js +6 -3
- package/dist/esm/tools/google_maps_grounding_tool.js +3 -6
- package/dist/esm/tools/google_search_tool.js +3 -6
- package/dist/esm/tools/load_artifacts_tool.js +48 -24
- package/dist/esm/tools/load_web_page.js +10 -170
- package/dist/esm/tools/mcp/load_mcp_resource_tool.js +34 -5
- package/dist/esm/tools/mcp/mcp_session_manager.js +14 -8
- package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +285 -3
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +43 -0
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +93 -0
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -12
- package/dist/esm/tools/openapi_tool/common/common.js +112 -0
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +81 -14
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -33
- package/dist/esm/tools/openapi_tool/openapi_toolset.js +14 -2
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +105 -46
- package/dist/esm/tools/preload_memory_tool.js +1 -1
- package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
- package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
- package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
- package/dist/esm/tools/skill/skill_toolset.js +2 -0
- package/dist/{web/context/base_context_compactor.js → esm/tools/tool_context.js} +8 -0
- package/dist/esm/tools/url_context_tool.js +3 -6
- package/dist/esm/tools/vertex_ai_search_tool.js +4 -8
- package/dist/esm/tools/vertex_rag_retrieval_tool.js +3 -10
- package/dist/{web/auth/base_auth_provider.js → esm/tools/webmcp/index.js} +3 -0
- package/dist/esm/tools/webmcp/webmcp_tool.js +131 -0
- package/dist/esm/tools/webmcp/webmcp_toolset.js +89 -0
- package/dist/{web/utils/crypto_shim.js → esm/tools/webmcp/webmcp_types.js} +10 -6
- package/dist/esm/utils/case_utils.js +49 -1
- package/dist/esm/utils/client_labels.js +65 -0
- package/dist/esm/utils/crypto_shim.js +14 -0
- package/dist/esm/utils/gemini_schema_util.js +102 -9
- package/dist/esm/utils/hash_utils.js +45 -0
- package/dist/esm/utils/live_connection_utils.js +11 -10
- package/dist/esm/utils/logger.js +14 -40
- package/dist/esm/utils/logger_browser.js +58 -0
- package/dist/esm/utils/logger_node.js +81 -0
- package/dist/esm/utils/model_name.js +15 -2
- package/dist/esm/utils/redact_inline_data.js +19 -0
- package/dist/esm/utils/redact_uri.js +15 -1
- package/dist/esm/utils/schema.js +1 -1
- package/dist/esm/utils/simple_zod_to_json.js +5 -0
- package/dist/{web/tools/load_web_page.js → esm/utils/ssrf_guard.js} +95 -107
- package/dist/esm/version.js +1 -1
- package/dist/esm/workflow/base_node.js +1 -1
- package/dist/esm/workflow/graph.js +1 -1
- package/dist/esm/workflow/nodes/node_tool.js +2 -11
- package/dist/esm/workflow/request_input.js +1 -1
- package/dist/esm/workflow/run_llm_agent_as_node.js +1 -1
- package/dist/esm/workflow/workflow.js +1 -1
- package/dist/types/a2a/a2a_event.d.ts +7 -10
- package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
- package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
- package/dist/types/a2a/agent_card.d.ts +9 -0
- package/dist/types/a2a/agent_executor.d.ts +1 -1
- package/dist/types/a2a/agent_to_a2a.d.ts +2 -0
- package/dist/types/a2a/auth.d.ts +5 -1
- package/dist/types/a2a/executor_context.d.ts +7 -1
- package/dist/types/a2a/index.d.ts +1 -1
- package/dist/types/a2a/request_metadata.d.ts +22 -0
- package/dist/types/agents/base_agent.d.ts +19 -16
- package/dist/types/agents/context.d.ts +8 -0
- package/dist/types/agents/functions.d.ts +72 -6
- package/dist/types/agents/invocation_context.d.ts +11 -3
- package/dist/types/agents/llm_agent.d.ts +20 -7
- package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
- package/dist/types/agents/processors/nl_planning_processor.d.ts +30 -0
- package/dist/types/agents/readonly_context.d.ts +4 -0
- package/dist/types/agents/run_config.d.ts +21 -8
- package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
- package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
- package/dist/types/auth/auth_credential.d.ts +22 -8
- package/dist/types/auth/auth_handler.d.ts +12 -1
- package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
- package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
- package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
- package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
- package/dist/types/code_executors/container_code_executor.d.ts +89 -0
- package/dist/types/code_executors/docker_container.d.ts +79 -0
- package/dist/types/common.d.ts +37 -23
- package/dist/types/context/compaction_utils.d.ts +9 -1
- package/dist/types/errors/already_exists_error.d.ts +14 -0
- package/dist/types/errors/input_validation_error.d.ts +14 -0
- package/dist/types/errors/not_found_error.d.ts +14 -0
- package/dist/types/errors/session_not_found_error.d.ts +14 -0
- package/dist/types/errors/tool_execution_error.d.ts +36 -0
- package/dist/types/events/event_actions.d.ts +13 -0
- package/dist/types/examples/base_example_provider.d.ts +2 -2
- package/dist/types/examples/example.d.ts +75 -0
- package/dist/types/examples/example_util.d.ts +13 -2
- package/dist/types/examples/index.d.ts +18 -0
- package/dist/types/examples/vertex_ai_example_store.d.ts +7 -0
- package/dist/types/index.d.ts +31 -1
- package/dist/types/memory/memory_entry.d.ts +15 -0
- package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
- package/dist/types/memory/vertex_ai_memory_bank_service.d.ts +9 -0
- package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
- package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
- package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
- package/dist/types/models/chrome_prompt_utils.d.ts +97 -0
- package/dist/types/models/google_llm.d.ts +8 -3
- package/dist/types/models/registry.d.ts +3 -2
- package/dist/types/planners/base_planner.d.ts +50 -0
- package/dist/types/planners/built_in_planner.d.ts +53 -0
- package/dist/types/planners/plan_re_act_planner.d.ts +21 -0
- package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
- package/dist/types/plugins/base_plugin.d.ts +64 -62
- package/dist/types/plugins/logging_plugin.d.ts +3 -2
- package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
- package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
- package/dist/types/runner/runner.d.ts +7 -8
- package/dist/types/sessions/database_session_service.d.ts +1 -1
- package/dist/types/sessions/db/operations.d.ts +13 -1
- package/dist/types/sessions/db/schema.d.ts +23 -9
- package/dist/types/skills/skill_registry.d.ts +8 -0
- package/dist/types/tools/base_tool.d.ts +11 -0
- package/dist/types/tools/base_toolset.d.ts +3 -4
- package/dist/types/tools/built_in_tool.d.ts +41 -0
- package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
- package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
- package/dist/types/tools/function_tool.d.ts +42 -9
- package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
- package/dist/types/tools/google_search_tool.d.ts +4 -4
- package/dist/types/tools/long_running_tool.d.ts +1 -1
- package/dist/types/tools/mcp/mcp_toolset.d.ts +11 -10
- package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +115 -1
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +31 -2
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.d.ts +35 -0
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.d.ts +54 -0
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
- package/dist/types/tools/openapi_tool/common/common.d.ts +60 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.d.ts +7 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/operation_parser.d.ts +56 -2
- package/dist/types/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.d.ts +73 -5
- package/dist/types/tools/openapi_tool/openapi_toolset.d.ts +11 -0
- package/dist/types/tools/openapi_tool/rest_api_tool.d.ts +42 -8
- package/dist/types/tools/preload_memory_tool.d.ts +1 -1
- package/dist/types/tools/resume_inputs.d.ts +25 -0
- package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
- package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
- package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
- package/dist/types/tools/tool_context.d.ts +19 -0
- package/dist/types/tools/url_context_tool.d.ts +4 -4
- package/dist/types/tools/vertex_ai_search_tool.d.ts +4 -4
- package/dist/types/tools/vertex_rag_retrieval_tool.d.ts +13 -12
- package/dist/types/tools/webmcp/index.d.ts +12 -0
- package/dist/types/tools/webmcp/webmcp_tool.d.ts +47 -0
- package/dist/types/tools/webmcp/webmcp_toolset.d.ts +67 -0
- package/dist/types/tools/webmcp/webmcp_types.d.ts +69 -0
- package/dist/types/utils/case_utils.d.ts +36 -0
- package/dist/types/utils/client_labels.d.ts +33 -0
- package/dist/types/utils/crypto_shim.d.ts +16 -0
- package/dist/types/utils/gemini_schema_util.d.ts +18 -7
- package/dist/types/utils/hash_utils.d.ts +25 -0
- package/dist/types/utils/logger.d.ts +33 -3
- package/dist/types/utils/logger_browser.d.ts +28 -0
- package/dist/types/utils/logger_node.d.ts +20 -0
- package/dist/types/utils/model_name.d.ts +30 -2
- package/dist/types/utils/output_schema_utils.d.ts +3 -3
- package/dist/types/utils/redact_inline_data.d.ts +16 -0
- package/dist/types/utils/redact_uri.d.ts +12 -8
- package/dist/types/utils/ssrf_guard.d.ts +32 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/web/index_web.js +337 -3
- package/dist/web/index_web.js.map +7 -0
- package/package.json +24 -15
- package/dist/web/a2a/a2a_event.js +0 -290
- package/dist/web/a2a/a2a_remote_agent.js +0 -200
- package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -189
- package/dist/web/a2a/a2a_remote_agent_utils.js +0 -141
- package/dist/web/a2a/agent_card.js +0 -373
- package/dist/web/a2a/agent_executor.js +0 -246
- package/dist/web/a2a/agent_to_a2a.js +0 -126
- package/dist/web/a2a/auth.js +0 -41
- package/dist/web/a2a/event_converter_utils.js +0 -242
- package/dist/web/a2a/event_processor_utils.js +0 -209
- package/dist/web/a2a/executor_context.js +0 -28
- package/dist/web/a2a/index.js +0 -20
- package/dist/web/a2a/metadata_converter_utils.js +0 -115
- package/dist/web/a2a/part_converter_utils.js +0 -201
- package/dist/web/agents/active_streaming_tool.js +0 -25
- package/dist/web/agents/base_agent.js +0 -462
- package/dist/web/agents/context.js +0 -146
- package/dist/web/agents/framework_function_calls.js +0 -34
- package/dist/web/agents/functions.js +0 -462
- package/dist/web/agents/instructions.js +0 -188
- package/dist/web/agents/invocation_context.js +0 -126
- package/dist/web/agents/live_request_queue.js +0 -151
- package/dist/web/agents/llm_agent.js +0 -1514
- package/dist/web/agents/loop_agent.js +0 -131
- package/dist/web/agents/parallel_agent.js +0 -122
- package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -113
- package/dist/web/agents/processors/base_llm_processor.js +0 -21
- package/dist/web/agents/processors/basic_llm_request_processor.js +0 -84
- package/dist/web/agents/processors/code_execution_request_processor.js +0 -381
- package/dist/web/agents/processors/content_processor_utils.js +0 -432
- package/dist/web/agents/processors/content_request_processor.js +0 -73
- package/dist/web/agents/processors/context_compactor_request_processor.js +0 -78
- package/dist/web/agents/processors/identity_llm_request_processor.js +0 -59
- package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -85
- package/dist/web/agents/processors/interactions_request_processor.js +0 -56
- package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -393
- package/dist/web/agents/processors/request_input_llm_request_processor.js +0 -228
- package/dist/web/agents/processors/tool_filter_request_processor.js +0 -72
- package/dist/web/agents/readonly_context.js +0 -60
- package/dist/web/agents/routed_agent.js +0 -161
- package/dist/web/agents/run_config.js +0 -74
- package/dist/web/agents/sequential_agent.js +0 -141
- package/dist/web/agents/transcription_entry.js +0 -7
- package/dist/web/agents/user_input_request.js +0 -135
- package/dist/web/apps/app.js +0 -52
- package/dist/web/apps/resumability_config.js +0 -33
- package/dist/web/artifacts/base_artifact_service.js +0 -7
- package/dist/web/artifacts/file_artifact_service.js +0 -568
- package/dist/web/artifacts/gcs_artifact_service.js +0 -298
- package/dist/web/artifacts/in_memory_artifact_service.js +0 -172
- package/dist/web/artifacts/registry.js +0 -36
- package/dist/web/artifacts/scoped_artifact_service.js +0 -89
- package/dist/web/auth/auth_credential.js +0 -18
- package/dist/web/auth/auth_handler.js +0 -151
- package/dist/web/auth/auth_preprocessor.js +0 -184
- package/dist/web/auth/auth_provider_registry.js +0 -37
- package/dist/web/auth/auth_schemes.js +0 -36
- package/dist/web/auth/auth_tool.js +0 -7
- package/dist/web/auth/credential_response_binding.js +0 -91
- package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -50
- package/dist/web/auth/credential_service/session_state_credential_service.js +0 -27
- package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -16
- package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -35
- package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -194
- package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -105
- package/dist/web/auth/oauth2/oauth2_discovery.js +0 -196
- package/dist/web/auth/oauth2/oauth2_utils.js +0 -105
- package/dist/web/auth/refresher/credential_refresher_registry.js +0 -44
- package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -284
- package/dist/web/code_executors/base_code_executor.js +0 -68
- package/dist/web/code_executors/built_in_code_executor.js +0 -50
- package/dist/web/code_executors/code_execution_utils.js +0 -131
- package/dist/web/code_executors/code_executor_context.js +0 -174
- package/dist/web/code_executors/unsafe_local_code_executor.js +0 -221
- package/dist/web/common.js +0 -452
- package/dist/web/context/agent_controlled_context_compactor.js +0 -76
- package/dist/web/context/anchored_context_compactor.js +0 -120
- package/dist/web/context/compaction_utils.js +0 -42
- package/dist/web/context/summarizers/base_summarizer.js +0 -7
- package/dist/web/context/summarizers/llm_summarizer.js +0 -91
- package/dist/web/context/token_based_context_compactor.js +0 -118
- package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -47
- package/dist/web/context/truncating_context_compactor.js +0 -34
- package/dist/web/environment/base_environment.js +0 -71
- package/dist/web/environment/local_environment.js +0 -165
- package/dist/web/events/compacted_event.js +0 -51
- package/dist/web/events/event.js +0 -208
- package/dist/web/events/event_actions.js +0 -74
- package/dist/web/events/structured_events.js +0 -79
- package/dist/web/examples/base_example_provider.js +0 -32
- package/dist/web/examples/example.js +0 -7
- package/dist/web/examples/example_util.js +0 -83
- package/dist/web/features/feature_registry.js +0 -115
- package/dist/web/index.js +0 -57
- package/dist/web/integrations/agent_registry/agent_registry.js +0 -337
- package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -120
- package/dist/web/integrations/agent_registry/helpers.js +0 -32
- package/dist/web/integrations/agent_registry/types.js +0 -20
- package/dist/web/memory/base_memory_service.js +0 -7
- package/dist/web/memory/in_memory_memory_service.js +0 -89
- package/dist/web/memory/memory_entry.js +0 -7
- package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -496
- package/dist/web/models/apigee_llm.js +0 -227
- package/dist/web/models/base_llm.js +0 -78
- package/dist/web/models/base_llm_connection.js +0 -7
- package/dist/web/models/gemini_llm_connection.js +0 -183
- package/dist/web/models/google_llm.js +0 -396
- package/dist/web/models/interactions_utils.js +0 -745
- package/dist/web/models/llm_request.js +0 -57
- package/dist/web/models/llm_response.js +0 -48
- package/dist/web/models/registry.js +0 -100
- package/dist/web/models/routed_llm.js +0 -112
- package/dist/web/plugins/base_plugin.js +0 -305
- package/dist/web/plugins/global_instruction_plugin.js +0 -71
- package/dist/web/plugins/logging_plugin.js +0 -241
- package/dist/web/plugins/plugin_manager.js +0 -318
- package/dist/web/plugins/security_plugin.js +0 -148
- package/dist/web/runner/in_memory_runner.js +0 -50
- package/dist/web/runner/runner.js +0 -747
- package/dist/web/sessions/base_session_service.js +0 -123
- package/dist/web/sessions/database_session_service.js +0 -440
- package/dist/web/sessions/db/operations.js +0 -124
- package/dist/web/sessions/db/schema.js +0 -216
- package/dist/web/sessions/in_memory_session_service.js +0 -251
- package/dist/web/sessions/registry.js +0 -38
- package/dist/web/sessions/session.js +0 -23
- package/dist/web/sessions/state.js +0 -159
- package/dist/web/sessions/state_write_order.js +0 -74
- package/dist/web/sessions/vertex_ai_session_service.js +0 -546
- package/dist/web/skills/gcp_skill_registry.js +0 -80
- package/dist/web/skills/loader.js +0 -372
- package/dist/web/skills/prompt.js +0 -34
- package/dist/web/skills/skill.js +0 -67
- package/dist/web/skills/skill_registry.js +0 -7
- package/dist/web/telemetry/google_cloud.js +0 -99
- package/dist/web/telemetry/setup.js +0 -89
- package/dist/web/telemetry/tracing.js +0 -304
- package/dist/web/tools/agent_tool.js +0 -150
- package/dist/web/tools/base_tool.js +0 -116
- package/dist/web/tools/base_toolset.js +0 -62
- package/dist/web/tools/consolidate_context_tool.js +0 -55
- package/dist/web/tools/enterprise_web_search_tool.js +0 -60
- package/dist/web/tools/example_tool.js +0 -46
- package/dist/web/tools/exit_loop_tool.js +0 -47
- package/dist/web/tools/finish_task_tool.js +0 -92
- package/dist/web/tools/forwarding_artifact_service.js +0 -51
- package/dist/web/tools/function_tool.js +0 -151
- package/dist/web/tools/get_user_choice_tool.js +0 -27
- package/dist/web/tools/google_maps_grounding_tool.js +0 -59
- package/dist/web/tools/google_search_tool.js +0 -55
- package/dist/web/tools/load_artifacts_tool.js +0 -159
- package/dist/web/tools/load_memory_tool.js +0 -83
- package/dist/web/tools/long_running_tool.js +0 -58
- package/dist/web/tools/mcp/index.js +0 -11
- package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -111
- package/dist/web/tools/mcp/mcp_session_manager.js +0 -114
- package/dist/web/tools/mcp/mcp_tool.js +0 -47
- package/dist/web/tools/mcp/mcp_toolset.js +0 -144
- package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -53
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -62
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -113
- package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -242
- package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -200
- package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -98
- package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -99
- package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -247
- package/dist/web/tools/preload_memory_tool.js +0 -81
- package/dist/web/tools/request_input_tool.js +0 -29
- package/dist/web/tools/skill/list_skills_tool.js +0 -52
- package/dist/web/tools/skill/load_skill_resource_tool.js +0 -192
- package/dist/web/tools/skill/load_skill_tool.js +0 -96
- package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -191
- package/dist/web/tools/skill/run_skill_script_tool.js +0 -227
- package/dist/web/tools/skill/search_skills_tool.js +0 -84
- package/dist/web/tools/skill/skill_toolset.js +0 -185
- package/dist/web/tools/tool_confirmation.js +0 -43
- package/dist/web/tools/url_context_tool.js +0 -48
- package/dist/web/tools/vertex_ai_search_tool.js +0 -107
- package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -40
- package/dist/web/utils/async_hooks_shim.js +0 -28
- package/dist/web/utils/async_queue.js +0 -88
- package/dist/web/utils/branch_trie.js +0 -16
- package/dist/web/utils/case_utils.js +0 -28
- package/dist/web/utils/client_labels.js +0 -70
- package/dist/web/utils/deprecated.js +0 -40
- package/dist/web/utils/env_aware_utils.js +0 -115
- package/dist/web/utils/error_utils.js +0 -101
- package/dist/web/utils/experimental.js +0 -54
- package/dist/web/utils/failover_utils.js +0 -100
- package/dist/web/utils/file_extension_utils.js +0 -55
- package/dist/web/utils/file_utils.js +0 -108
- package/dist/web/utils/gemini_schema_util.js +0 -177
- package/dist/web/utils/genai_schema_to_json.js +0 -80
- package/dist/web/utils/live_connection_utils.js +0 -257
- package/dist/web/utils/logger.js +0 -140
- package/dist/web/utils/model_name.js +0 -75
- package/dist/web/utils/object_notation_utils.js +0 -54
- package/dist/web/utils/optional_peer.js +0 -38
- package/dist/web/utils/output_schema_utils.js +0 -18
- package/dist/web/utils/partial_copy.js +0 -26
- package/dist/web/utils/redact_uri.js +0 -39
- package/dist/web/utils/schema.js +0 -167
- package/dist/web/utils/simple_zod_to_json.js +0 -134
- package/dist/web/utils/streaming_utils.js +0 -438
- package/dist/web/utils/task.js +0 -38
- package/dist/web/utils/variant_utils.js +0 -23
- package/dist/web/utils/vertex_ai_utils.js +0 -27
- package/dist/web/workflow/base_node.js +0 -215
- package/dist/web/workflow/branch_path.js +0 -77
- package/dist/web/workflow/dynamic_node_scheduler.js +0 -202
- package/dist/web/workflow/errors.js +0 -140
- package/dist/web/workflow/graph.js +0 -127
- package/dist/web/workflow/index.js +0 -80
- package/dist/web/workflow/node.js +0 -87
- package/dist/web/workflow/node_builders.js +0 -40
- package/dist/web/workflow/node_context.js +0 -236
- package/dist/web/workflow/node_error_event.js +0 -86
- package/dist/web/workflow/node_runner.js +0 -481
- package/dist/web/workflow/node_state.js +0 -43
- package/dist/web/workflow/node_status.js +0 -20
- package/dist/web/workflow/nodes/function_node.js +0 -221
- package/dist/web/workflow/nodes/join_node.js +0 -47
- package/dist/web/workflow/nodes/node_tool.js +0 -131
- package/dist/web/workflow/nodes/parallel_worker.js +0 -120
- package/dist/web/workflow/nodes/tool_node.js +0 -126
- package/dist/web/workflow/request_input.js +0 -36
- package/dist/web/workflow/retry_config.js +0 -43
- package/dist/web/workflow/run_llm_agent_as_node.js +0 -266
- package/dist/web/workflow/run_node_as_invocation.js +0 -170
- package/dist/web/workflow/schedule_dynamic_node.js +0 -26
- package/dist/web/workflow/trigger.js +0 -7
- package/dist/web/workflow/utils/graph_parser.js +0 -188
- package/dist/web/workflow/utils/graph_validation.js +0 -189
- package/dist/web/workflow/utils/hitl_utils.js +0 -239
- package/dist/web/workflow/utils/rehydration_utils.js +0 -342
- package/dist/web/workflow/utils/retry_utils.js +0 -82
- package/dist/web/workflow/utils/workflow_graph_utils.js +0 -115
- package/dist/web/workflow/workflow.js +0 -529
- /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
|
@@ -27,7 +27,6 @@ var a2a_event_exports = {};
|
|
|
27
27
|
__export(a2a_event_exports, {
|
|
28
28
|
MessageRole: () => MessageRole,
|
|
29
29
|
TaskState: () => TaskState,
|
|
30
|
-
createInputMissingErrorEvent: () => createInputMissingErrorEvent,
|
|
31
30
|
createTask: () => createTask,
|
|
32
31
|
createTaskArtifactUpdateEvent: () => createTaskArtifactUpdateEvent,
|
|
33
32
|
createTaskCompletedEvent: () => createTaskCompletedEvent,
|
|
@@ -284,38 +283,10 @@ function createTaskInputRequiredEvent({
|
|
|
284
283
|
};
|
|
285
284
|
}
|
|
286
285
|
__name(createTaskInputRequiredEvent, "createTaskInputRequiredEvent");
|
|
287
|
-
function createInputMissingErrorEvent({
|
|
288
|
-
taskId,
|
|
289
|
-
contextId,
|
|
290
|
-
parts,
|
|
291
|
-
metadata
|
|
292
|
-
}) {
|
|
293
|
-
return {
|
|
294
|
-
kind: "status-update",
|
|
295
|
-
taskId,
|
|
296
|
-
contextId,
|
|
297
|
-
final: true,
|
|
298
|
-
status: {
|
|
299
|
-
state: "input-required" /* INPUT_REQUIRED */,
|
|
300
|
-
message: {
|
|
301
|
-
kind: "message",
|
|
302
|
-
messageId: (0, import_env_aware_utils.randomUUID)(),
|
|
303
|
-
role: "agent",
|
|
304
|
-
taskId,
|
|
305
|
-
contextId,
|
|
306
|
-
parts
|
|
307
|
-
},
|
|
308
|
-
timestamp: (/* @__PURE__ */ new Date()).toISOString()
|
|
309
|
-
},
|
|
310
|
-
metadata
|
|
311
|
-
};
|
|
312
|
-
}
|
|
313
|
-
__name(createInputMissingErrorEvent, "createInputMissingErrorEvent");
|
|
314
286
|
// Annotate the CommonJS export names for ESM import in node:
|
|
315
287
|
0 && (module.exports = {
|
|
316
288
|
MessageRole,
|
|
317
289
|
TaskState,
|
|
318
|
-
createInputMissingErrorEvent,
|
|
319
290
|
createTask,
|
|
320
291
|
createTaskArtifactUpdateEvent,
|
|
321
292
|
createTaskCompletedEvent,
|
|
@@ -41,7 +41,6 @@ var import_a2a_remote_agent_utils = require("./a2a_remote_agent_utils.js");
|
|
|
41
41
|
var import_agent_card = require("./agent_card.js");
|
|
42
42
|
var import_event_converter_utils = require("./event_converter_utils.js");
|
|
43
43
|
var import_metadata_converter_utils = require("./metadata_converter_utils.js");
|
|
44
|
-
var import_part_converter_utils = require("./part_converter_utils.js");
|
|
45
44
|
/**
|
|
46
45
|
* @license
|
|
47
46
|
* Copyright 2026 Google LLC
|
|
@@ -89,9 +88,11 @@ const _RemoteA2AAgent = class _RemoteA2AAgent extends import_base_agent.BaseAgen
|
|
|
89
88
|
let contextId = void 0;
|
|
90
89
|
if (userFnCall) {
|
|
91
90
|
const event = userFnCall.response;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
event.
|
|
91
|
+
const peerRequestedIds = (0, import_a2a_remote_agent_utils.peerRequestedCallIds)(events, this.name);
|
|
92
|
+
parts = (0, import_a2a_remote_agent_utils.toForwardableA2AParts)(
|
|
93
|
+
event.content,
|
|
94
|
+
event.longRunningToolIds,
|
|
95
|
+
peerRequestedIds
|
|
95
96
|
);
|
|
96
97
|
taskId = userFnCall.taskId;
|
|
97
98
|
contextId = userFnCall.contextId;
|
|
@@ -113,9 +114,11 @@ const _RemoteA2AAgent = class _RemoteA2AAgent extends import_base_agent.BaseAgen
|
|
|
113
114
|
};
|
|
114
115
|
if (taskId) message.taskId = taskId;
|
|
115
116
|
if (contextId) message.contextId = contextId;
|
|
117
|
+
const metadata = (_a = this.a2aConfig.metadata) != null ? _a : context.a2aMetadata;
|
|
116
118
|
const params = {
|
|
117
119
|
message,
|
|
118
|
-
configuration: this.a2aConfig.messageSendConfig
|
|
120
|
+
configuration: this.a2aConfig.messageSendConfig,
|
|
121
|
+
...metadata ? { metadata } : {}
|
|
119
122
|
};
|
|
120
123
|
const processor = new import_a2a_remote_agent_run_processor.A2ARemoteAgentRunProcessor(params);
|
|
121
124
|
if (this.a2aConfig.beforeRequestCallbacks) {
|
|
@@ -28,12 +28,17 @@ __export(a2a_remote_agent_utils_exports, {
|
|
|
28
28
|
getFunctionResponseCallId: () => getFunctionResponseCallId,
|
|
29
29
|
getUserFunctionCallAt: () => getUserFunctionCallAt,
|
|
30
30
|
isFunctionCallEvent: () => isFunctionCallEvent,
|
|
31
|
+
peerRequestedCallIds: () => peerRequestedCallIds,
|
|
31
32
|
presentAsUserMessage: () => presentAsUserMessage,
|
|
33
|
+
toForwardableA2AParts: () => toForwardableA2AParts,
|
|
32
34
|
toMissingRemoteSessionParts: () => toMissingRemoteSessionParts
|
|
33
35
|
});
|
|
34
36
|
module.exports = __toCommonJS(a2a_remote_agent_utils_exports);
|
|
37
|
+
var import_functions = require("../agents/functions.js");
|
|
35
38
|
var import_invocation_context = require("../agents/invocation_context.js");
|
|
36
39
|
var import_event = require("../events/event.js");
|
|
40
|
+
var import_case_utils = require("../utils/case_utils.js");
|
|
41
|
+
var import_logger = require("../utils/logger.js");
|
|
37
42
|
var import_metadata_converter_utils = require("./metadata_converter_utils.js");
|
|
38
43
|
var import_part_converter_utils = require("./part_converter_utils.js");
|
|
39
44
|
/**
|
|
@@ -91,23 +96,118 @@ function getFunctionResponseCallId(event) {
|
|
|
91
96
|
return (_a = responsePart == null ? void 0 : responsePart.functionResponse) == null ? void 0 : _a.id;
|
|
92
97
|
}
|
|
93
98
|
__name(getFunctionResponseCallId, "getFunctionResponseCallId");
|
|
99
|
+
const AUTH_CONFIG_SCHEME_KEY = "authScheme";
|
|
100
|
+
const AUTH_CONFIG_CREDENTIAL_KEYS = [
|
|
101
|
+
// camelCase only by design: callers normalise the payload with
|
|
102
|
+
// camelCaseKeys() before these keys are looked up, so the snake_case
|
|
103
|
+
// spellings (raw_auth_credential, exchanged_auth_credential) are covered.
|
|
104
|
+
"rawAuthCredential",
|
|
105
|
+
"exchangedAuthCredential"
|
|
106
|
+
];
|
|
107
|
+
function payloadIsAuthConfig(payload) {
|
|
108
|
+
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
const keys = new Set(Object.keys(payload));
|
|
112
|
+
if (!keys.has(AUTH_CONFIG_SCHEME_KEY)) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
return AUTH_CONFIG_CREDENTIAL_KEYS.some((key) => keys.has(key));
|
|
116
|
+
}
|
|
117
|
+
__name(payloadIsAuthConfig, "payloadIsAuthConfig");
|
|
118
|
+
function isCredentialFunctionCall(functionCall) {
|
|
119
|
+
if (functionCall.name === import_functions.REQUEST_CREDENTIAL_FUNCTION_CALL_NAME) {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
const args = (0, import_case_utils.camelCaseKeys)(functionCall.args);
|
|
123
|
+
if (!args || typeof args !== "object") {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
const authConfig = args["authConfig"];
|
|
127
|
+
return payloadIsAuthConfig(authConfig);
|
|
128
|
+
}
|
|
129
|
+
__name(isCredentialFunctionCall, "isCredentialFunctionCall");
|
|
130
|
+
function isCredentialFunctionResponse(functionResponse) {
|
|
131
|
+
if (functionResponse.name === import_functions.REQUEST_CREDENTIAL_FUNCTION_CALL_NAME) {
|
|
132
|
+
return true;
|
|
133
|
+
}
|
|
134
|
+
return payloadIsAuthConfig((0, import_case_utils.camelCaseKeys)(functionResponse.response));
|
|
135
|
+
}
|
|
136
|
+
__name(isCredentialFunctionResponse, "isCredentialFunctionResponse");
|
|
137
|
+
function peerRequestedCallIds(events, peerName) {
|
|
138
|
+
var _a, _b, _c;
|
|
139
|
+
const peer = /* @__PURE__ */ new Set();
|
|
140
|
+
const local = /* @__PURE__ */ new Set();
|
|
141
|
+
for (const event of events) {
|
|
142
|
+
for (const part of (_b = (_a = event.content) == null ? void 0 : _a.parts) != null ? _b : []) {
|
|
143
|
+
const id = (_c = part.functionCall) == null ? void 0 : _c.id;
|
|
144
|
+
if (!id) {
|
|
145
|
+
continue;
|
|
146
|
+
}
|
|
147
|
+
(event.author === peerName ? peer : local).add(id);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return new Set([...peer].filter((id) => !local.has(id)));
|
|
151
|
+
}
|
|
152
|
+
__name(peerRequestedCallIds, "peerRequestedCallIds");
|
|
153
|
+
function withoutCredentialParts(content, peerRequestedIds) {
|
|
154
|
+
if (!content || !content.parts) {
|
|
155
|
+
return content;
|
|
156
|
+
}
|
|
157
|
+
const isDroppedCredentialPart = /* @__PURE__ */ __name((part) => {
|
|
158
|
+
if (part.functionCall && isCredentialFunctionCall(part.functionCall)) {
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
if (part.functionResponse && isCredentialFunctionResponse(part.functionResponse)) {
|
|
162
|
+
const id = part.functionResponse.id;
|
|
163
|
+
return !(id && peerRequestedIds.has(id));
|
|
164
|
+
}
|
|
165
|
+
return false;
|
|
166
|
+
}, "isDroppedCredentialPart");
|
|
167
|
+
const parts = content.parts.filter((part) => !isDroppedCredentialPart(part));
|
|
168
|
+
if (parts.length === content.parts.length) {
|
|
169
|
+
return content;
|
|
170
|
+
}
|
|
171
|
+
import_logger.logger.warn(
|
|
172
|
+
`Dropped ${content.parts.length - parts.length} credential-bearing part(s) before forwarding to the remote peer -- it did not request them.`
|
|
173
|
+
);
|
|
174
|
+
return { ...content, parts };
|
|
175
|
+
}
|
|
176
|
+
__name(withoutCredentialParts, "withoutCredentialParts");
|
|
177
|
+
function toForwardableA2AParts(content, longRunningToolIds, peerRequestedIds) {
|
|
178
|
+
const scrubbed = withoutCredentialParts(content, peerRequestedIds);
|
|
179
|
+
if (!(scrubbed == null ? void 0 : scrubbed.parts)) {
|
|
180
|
+
return [];
|
|
181
|
+
}
|
|
182
|
+
return (0, import_part_converter_utils.toA2AParts)(scrubbed.parts, longRunningToolIds);
|
|
183
|
+
}
|
|
184
|
+
__name(toForwardableA2AParts, "toForwardableA2AParts");
|
|
94
185
|
function toMissingRemoteSessionParts(ctx, session) {
|
|
95
186
|
const events = session.events;
|
|
187
|
+
const peerName = (0, import_invocation_context.requireAgent)(ctx).name;
|
|
96
188
|
let contextId = void 0;
|
|
97
189
|
let lastRemoteResponseIndex = -1;
|
|
98
190
|
for (let i = events.length - 1; i >= 0; i--) {
|
|
99
191
|
const event = events[i];
|
|
100
|
-
if (event.author ===
|
|
192
|
+
if (event.author === peerName) {
|
|
101
193
|
lastRemoteResponseIndex = i;
|
|
102
194
|
const metadata = event.customMetadata || {};
|
|
103
195
|
contextId = metadata[import_metadata_converter_utils.AdkMetadataKeys.CONTEXT_ID];
|
|
104
196
|
break;
|
|
105
197
|
}
|
|
106
198
|
}
|
|
199
|
+
const peerRequestedIds = peerRequestedCallIds(events, peerName);
|
|
107
200
|
const missingParts = [];
|
|
108
201
|
for (let i = lastRemoteResponseIndex + 1; i < events.length; i++) {
|
|
109
202
|
let event = events[i];
|
|
110
|
-
|
|
203
|
+
const scrubbedContent = withoutCredentialParts(
|
|
204
|
+
event.content,
|
|
205
|
+
peerRequestedIds
|
|
206
|
+
);
|
|
207
|
+
if (scrubbedContent !== event.content) {
|
|
208
|
+
event = { ...event, content: scrubbedContent };
|
|
209
|
+
}
|
|
210
|
+
if (event.author !== "user" && event.author !== peerName) {
|
|
111
211
|
event = presentAsUserMessage(ctx, event);
|
|
112
212
|
}
|
|
113
213
|
if (!event.content || !event.content.parts || event.content.parts.length === 0) {
|
|
@@ -167,6 +267,8 @@ __name(presentAsUserMessage, "presentAsUserMessage");
|
|
|
167
267
|
getFunctionResponseCallId,
|
|
168
268
|
getUserFunctionCallAt,
|
|
169
269
|
isFunctionCallEvent,
|
|
270
|
+
peerRequestedCallIds,
|
|
170
271
|
presentAsUserMessage,
|
|
272
|
+
toForwardableA2AParts,
|
|
171
273
|
toMissingRemoteSessionParts
|
|
172
274
|
});
|
|
@@ -42,6 +42,7 @@ __export(agent_card_exports, {
|
|
|
42
42
|
module.exports = __toCommonJS(agent_card_exports);
|
|
43
43
|
var import_client = require("@a2a-js/sdk/client");
|
|
44
44
|
var fs = __toESM(require("node:fs/promises"), 1);
|
|
45
|
+
var import_node_url = require("node:url");
|
|
45
46
|
var import_invocation_context = require("../agents/invocation_context.js");
|
|
46
47
|
var import_llm_agent = require("../agents/llm_agent.js");
|
|
47
48
|
var import_loop_agent = require("../agents/loop_agent.js");
|
|
@@ -51,23 +52,48 @@ var import_sequential_agent = require("../agents/sequential_agent.js");
|
|
|
51
52
|
var import_base_tool = require("../tools/base_tool.js");
|
|
52
53
|
var import_base_toolset = require("../tools/base_toolset.js");
|
|
53
54
|
var import_logger = require("../utils/logger.js");
|
|
55
|
+
var import_ssrf_guard = require("../utils/ssrf_guard.js");
|
|
54
56
|
var import_workflow = require("../workflow/workflow.js");
|
|
55
57
|
/**
|
|
56
58
|
* @license
|
|
57
59
|
* Copyright 2026 Google LLC
|
|
58
60
|
* SPDX-License-Identifier: Apache-2.0
|
|
59
61
|
*/
|
|
62
|
+
const WINDOWS_DRIVE_PROTOCOL = /^[a-z]:$/i;
|
|
60
63
|
async function resolveAgentCard(agentCard) {
|
|
61
64
|
if (typeof agentCard === "object") {
|
|
62
65
|
return agentCard;
|
|
63
66
|
}
|
|
64
|
-
const
|
|
65
|
-
if (
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
const url = parseCardUrl(agentCard);
|
|
68
|
+
if (url && (0, import_ssrf_guard.isHttpUrl)(url)) {
|
|
69
|
+
await assertHostAllowed(url);
|
|
70
|
+
const resolver = new import_client.DefaultAgentCardResolver({
|
|
71
|
+
fetchImpl: noRedirectFetch(agentCard)
|
|
72
|
+
});
|
|
73
|
+
return resolver.resolve(agentCard);
|
|
74
|
+
}
|
|
75
|
+
if (url && url.protocol !== "file:") {
|
|
76
|
+
throw new Error(
|
|
77
|
+
`Unsupported agent card URL scheme "${url.protocol}": ${agentCard}. Use http://, https:// or file://, or pass a filesystem path with no scheme.`
|
|
78
|
+
);
|
|
68
79
|
}
|
|
80
|
+
return readAgentCardFile(agentCard, url);
|
|
81
|
+
}
|
|
82
|
+
__name(resolveAgentCard, "resolveAgentCard");
|
|
83
|
+
function parseCardUrl(source) {
|
|
84
|
+
let url;
|
|
69
85
|
try {
|
|
70
|
-
|
|
86
|
+
url = new URL(source);
|
|
87
|
+
} catch {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
return WINDOWS_DRIVE_PROTOCOL.test(url.protocol) ? null : url;
|
|
91
|
+
}
|
|
92
|
+
__name(parseCardUrl, "parseCardUrl");
|
|
93
|
+
async function readAgentCardFile(source, url) {
|
|
94
|
+
try {
|
|
95
|
+
const path = url ? (0, import_node_url.fileURLToPath)(url) : source;
|
|
96
|
+
const content = await fs.readFile(path, "utf-8");
|
|
71
97
|
return JSON.parse(content);
|
|
72
98
|
} catch (err) {
|
|
73
99
|
throw new Error(
|
|
@@ -75,7 +101,33 @@ async function resolveAgentCard(agentCard) {
|
|
|
75
101
|
);
|
|
76
102
|
}
|
|
77
103
|
}
|
|
78
|
-
__name(
|
|
104
|
+
__name(readAgentCardFile, "readAgentCardFile");
|
|
105
|
+
function noRedirectFetch(source) {
|
|
106
|
+
return async (input, init) => {
|
|
107
|
+
const response = await fetch(input, { ...init, redirect: "manual" });
|
|
108
|
+
if (isRedirect(response.status)) {
|
|
109
|
+
throw new Error(
|
|
110
|
+
`Refusing to follow a redirect while fetching the agent card from ${source} (status ${response.status}, location ${response.headers.get("location")}). Configure the final URL instead.`
|
|
111
|
+
);
|
|
112
|
+
}
|
|
113
|
+
return response;
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
__name(noRedirectFetch, "noRedirectFetch");
|
|
117
|
+
function isRedirect(status) {
|
|
118
|
+
return status === 0 || status >= 300 && status < 400;
|
|
119
|
+
}
|
|
120
|
+
__name(isRedirect, "isRedirect");
|
|
121
|
+
async function assertHostAllowed(url) {
|
|
122
|
+
const host = (0, import_ssrf_guard.normalizeHost)(url.hostname);
|
|
123
|
+
const addresses = await (0, import_ssrf_guard.resolveHostAddresses)(host);
|
|
124
|
+
if (addresses.some(import_ssrf_guard.isLinkLocalAddress)) {
|
|
125
|
+
throw new Error(
|
|
126
|
+
`Refusing to fetch agent card from a link-local address: ${host}`
|
|
127
|
+
);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
__name(assertHostAllowed, "assertHostAllowed");
|
|
79
131
|
async function getA2AAgentCard(agent, transports) {
|
|
80
132
|
return {
|
|
81
133
|
name: agent.name,
|
|
@@ -161,6 +213,14 @@ async function buildLLMAgentSkills(agent) {
|
|
|
161
213
|
}
|
|
162
214
|
}
|
|
163
215
|
}
|
|
216
|
+
if (agent.codeExecutor) {
|
|
217
|
+
skills.push({
|
|
218
|
+
id: `${agent.name}-code-executor`,
|
|
219
|
+
name: "code-execution",
|
|
220
|
+
description: "Can execute code",
|
|
221
|
+
tags: ["llm", "code_execution"]
|
|
222
|
+
});
|
|
223
|
+
}
|
|
164
224
|
return skills;
|
|
165
225
|
}
|
|
166
226
|
__name(buildLLMAgentSkills, "buildLLMAgentSkills");
|
|
@@ -36,6 +36,7 @@ var import_event_processor_utils = require("./event_processor_utils.js");
|
|
|
36
36
|
var import_executor_context = require("./executor_context.js");
|
|
37
37
|
var import_metadata_converter_utils = require("./metadata_converter_utils.js");
|
|
38
38
|
var import_part_converter_utils = require("./part_converter_utils.js");
|
|
39
|
+
var import_request_metadata = require("./request_metadata.js");
|
|
39
40
|
/**
|
|
40
41
|
* @license
|
|
41
42
|
* Copyright 2026 Google LLC
|
|
@@ -62,14 +63,16 @@ const _A2AAgentExecutor = class _A2AAgentExecutor {
|
|
|
62
63
|
adkRunner.sessionService,
|
|
63
64
|
adkRunner.appName
|
|
64
65
|
);
|
|
66
|
+
const a2aMetadata = (0, import_request_metadata.getA2aRequestMetadata)(ctx);
|
|
65
67
|
const executorContext = (0, import_executor_context.createExecutorContext)({
|
|
66
68
|
session,
|
|
67
69
|
userContent: genAIUserMessage,
|
|
68
|
-
requestContext: ctx
|
|
70
|
+
requestContext: ctx,
|
|
71
|
+
a2aMetadata
|
|
69
72
|
});
|
|
70
73
|
try {
|
|
71
74
|
if (this.config.beforeExecuteCallback) {
|
|
72
|
-
await this.config.beforeExecuteCallback(ctx);
|
|
75
|
+
await this.config.beforeExecuteCallback(ctx, a2aMetadata);
|
|
73
76
|
}
|
|
74
77
|
const unansweredRequestEvent = (0, import_event_processor_utils.getUnansweredRequestEvent)({
|
|
75
78
|
taskId: ctx.taskId,
|
|
@@ -82,7 +85,10 @@ const _A2AAgentExecutor = class _A2AAgentExecutor {
|
|
|
82
85
|
await this.publishFinalTaskStatus({
|
|
83
86
|
executorContext,
|
|
84
87
|
eventBus,
|
|
85
|
-
event:
|
|
88
|
+
event: {
|
|
89
|
+
...unansweredRequestEvent,
|
|
90
|
+
metadata: (0, import_metadata_converter_utils.getA2ASessionMetadata)(executorContext)
|
|
91
|
+
}
|
|
86
92
|
});
|
|
87
93
|
return;
|
|
88
94
|
}
|
|
@@ -91,14 +97,16 @@ const _A2AAgentExecutor = class _A2AAgentExecutor {
|
|
|
91
97
|
(0, import_a2a_event.createTask)({
|
|
92
98
|
taskId: ctx.taskId,
|
|
93
99
|
contextId: ctx.contextId,
|
|
94
|
-
message: a2aUserMessage
|
|
100
|
+
message: a2aUserMessage,
|
|
101
|
+
metadata: (0, import_metadata_converter_utils.getA2ASessionMetadata)(executorContext)
|
|
95
102
|
})
|
|
96
103
|
);
|
|
97
104
|
}
|
|
98
105
|
eventBus.publish(
|
|
99
106
|
(0, import_a2a_event.createTaskWorkingEvent)({
|
|
100
107
|
taskId: ctx.taskId,
|
|
101
|
-
contextId: ctx.contextId
|
|
108
|
+
contextId: ctx.contextId,
|
|
109
|
+
metadata: (0, import_metadata_converter_utils.getA2ASessionMetadata)(executorContext)
|
|
102
110
|
})
|
|
103
111
|
);
|
|
104
112
|
const adkEvents = [];
|
|
@@ -109,7 +117,11 @@ const _A2AAgentExecutor = class _A2AAgentExecutor {
|
|
|
109
117
|
// Marked remote so the run knows this message came from a peer rather
|
|
110
118
|
// than from the operator: a human-in-the-loop gate is not answerable
|
|
111
119
|
// over A2A unless the deployment opts in.
|
|
112
|
-
runConfig: {
|
|
120
|
+
runConfig: {
|
|
121
|
+
...this.config.runConfig,
|
|
122
|
+
remoteDelivered: true,
|
|
123
|
+
...a2aMetadata ? { a2aMetadata } : {}
|
|
124
|
+
}
|
|
113
125
|
})) {
|
|
114
126
|
adkEvents.push(adkEvent);
|
|
115
127
|
const a2aEvent = this.convertAdkEventToA2AEvent(
|
|
@@ -35,6 +35,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
35
35
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
36
36
|
var agent_to_a2a_exports = {};
|
|
37
37
|
__export(agent_to_a2a_exports, {
|
|
38
|
+
AdkDefaultRequestHandler: () => import_request_metadata.AdkDefaultRequestHandler,
|
|
39
|
+
getA2aRequestMetadata: () => import_request_metadata.getA2aRequestMetadata,
|
|
38
40
|
toA2a: () => toA2a
|
|
39
41
|
});
|
|
40
42
|
module.exports = __toCommonJS(agent_to_a2a_exports);
|
|
@@ -46,6 +48,7 @@ var import_logger = require("../utils/logger.js");
|
|
|
46
48
|
var import_optional_peer = require("../utils/optional_peer.js");
|
|
47
49
|
var import_agent_card = require("./agent_card.js");
|
|
48
50
|
var import_agent_executor = require("./agent_executor.js");
|
|
51
|
+
var import_request_metadata = require("./request_metadata.js");
|
|
49
52
|
/**
|
|
50
53
|
* @license
|
|
51
54
|
* Copyright 2026 Google LLC
|
|
@@ -106,7 +109,7 @@ async function toA2a(agent, options = {}) {
|
|
|
106
109
|
streamingMode: import_run_config.StreamingMode.SSE
|
|
107
110
|
}
|
|
108
111
|
});
|
|
109
|
-
const requestHandler = new
|
|
112
|
+
const requestHandler = new import_request_metadata.AdkDefaultRequestHandler(
|
|
110
113
|
agentCard,
|
|
111
114
|
new import_server.InMemoryTaskStore(),
|
|
112
115
|
agentExecutor
|
|
@@ -138,5 +141,7 @@ async function toA2a(agent, options = {}) {
|
|
|
138
141
|
__name(toA2a, "toA2a");
|
|
139
142
|
// Annotate the CommonJS export names for ESM import in node:
|
|
140
143
|
0 && (module.exports = {
|
|
144
|
+
AdkDefaultRequestHandler,
|
|
145
|
+
getA2aRequestMetadata,
|
|
141
146
|
toA2a
|
|
142
147
|
});
|
|
@@ -152,7 +152,7 @@ function getUnansweredRequestEvent(options) {
|
|
|
152
152
|
if (!missingId) {
|
|
153
153
|
return void 0;
|
|
154
154
|
}
|
|
155
|
-
return (0, import_a2a_event.
|
|
155
|
+
return (0, import_a2a_event.createTaskInputRequiredEvent)({
|
|
156
156
|
taskId: (_b = task == null ? void 0 : task.id) != null ? _b : taskId,
|
|
157
157
|
contextId: (_c = task == null ? void 0 : task.contextId) != null ? _c : contextId,
|
|
158
158
|
parts: [
|
|
@@ -36,7 +36,8 @@ module.exports = __toCommonJS(executor_context_exports);
|
|
|
36
36
|
function createExecutorContext({
|
|
37
37
|
session,
|
|
38
38
|
userContent,
|
|
39
|
-
requestContext
|
|
39
|
+
requestContext,
|
|
40
|
+
a2aMetadata
|
|
40
41
|
}) {
|
|
41
42
|
return {
|
|
42
43
|
userId: session.userId,
|
|
@@ -45,7 +46,8 @@ function createExecutorContext({
|
|
|
45
46
|
readonlyState: session.state,
|
|
46
47
|
events: session.events,
|
|
47
48
|
userContent,
|
|
48
|
-
requestContext
|
|
49
|
+
requestContext,
|
|
50
|
+
a2aMetadata
|
|
49
51
|
};
|
|
50
52
|
}
|
|
51
53
|
__name(createExecutorContext, "createExecutorContext");
|
package/dist/cjs/a2a/index.js
CHANGED
|
@@ -26,9 +26,11 @@ var a2a_exports = {};
|
|
|
26
26
|
__export(a2a_exports, {
|
|
27
27
|
A2AAgentExecutor: () => import_agent_executor.A2AAgentExecutor,
|
|
28
28
|
AGENT_CARD_PATH: () => import_a2a_remote_agent.AGENT_CARD_PATH,
|
|
29
|
+
AdkDefaultRequestHandler: () => import_agent_to_a2a.AdkDefaultRequestHandler,
|
|
29
30
|
RemoteA2AAgent: () => import_a2a_remote_agent.RemoteA2AAgent,
|
|
30
31
|
bearerTokenUserBuilder: () => import_auth.bearerTokenUserBuilder,
|
|
31
32
|
getA2AAgentCard: () => import_agent_card.getA2AAgentCard,
|
|
33
|
+
getA2aRequestMetadata: () => import_agent_to_a2a.getA2aRequestMetadata,
|
|
32
34
|
toA2a: () => import_agent_to_a2a.toA2a
|
|
33
35
|
});
|
|
34
36
|
module.exports = __toCommonJS(a2a_exports);
|
|
@@ -46,8 +48,10 @@ var import_auth = require("./auth.js");
|
|
|
46
48
|
0 && (module.exports = {
|
|
47
49
|
A2AAgentExecutor,
|
|
48
50
|
AGENT_CARD_PATH,
|
|
51
|
+
AdkDefaultRequestHandler,
|
|
49
52
|
RemoteA2AAgent,
|
|
50
53
|
bearerTokenUserBuilder,
|
|
51
54
|
getA2AAgentCard,
|
|
55
|
+
getA2aRequestMetadata,
|
|
52
56
|
toA2a
|
|
53
57
|
});
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
13
|
+
var __export = (target, all) => {
|
|
14
|
+
for (var name in all)
|
|
15
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
16
|
+
};
|
|
17
|
+
var __copyProps = (to, from, except, desc) => {
|
|
18
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
+
for (let key of __getOwnPropNames(from))
|
|
20
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
+
}
|
|
23
|
+
return to;
|
|
24
|
+
};
|
|
25
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
26
|
+
var request_metadata_exports = {};
|
|
27
|
+
__export(request_metadata_exports, {
|
|
28
|
+
AdkDefaultRequestHandler: () => AdkDefaultRequestHandler,
|
|
29
|
+
getA2aRequestMetadata: () => getA2aRequestMetadata
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(request_metadata_exports);
|
|
32
|
+
var import_server = require("@a2a-js/sdk/server");
|
|
33
|
+
/**
|
|
34
|
+
* @license
|
|
35
|
+
* Copyright 2026 Google LLC
|
|
36
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
37
|
+
*/
|
|
38
|
+
const requestMetadataStore = /* @__PURE__ */ new Map();
|
|
39
|
+
function getA2aRequestMetadata(ctx) {
|
|
40
|
+
var _a, _b;
|
|
41
|
+
const reqContext = ctx;
|
|
42
|
+
if ((_a = reqContext.request) == null ? void 0 : _a.metadata) {
|
|
43
|
+
return reqContext.request.metadata;
|
|
44
|
+
}
|
|
45
|
+
const messageId = (_b = ctx.userMessage) == null ? void 0 : _b.messageId;
|
|
46
|
+
if (messageId && requestMetadataStore.has(messageId)) {
|
|
47
|
+
return requestMetadataStore.get(messageId);
|
|
48
|
+
}
|
|
49
|
+
return void 0;
|
|
50
|
+
}
|
|
51
|
+
__name(getA2aRequestMetadata, "getA2aRequestMetadata");
|
|
52
|
+
const _AdkDefaultRequestHandler = class _AdkDefaultRequestHandler extends import_server.DefaultRequestHandler {
|
|
53
|
+
async sendMessage(params, context) {
|
|
54
|
+
var _a;
|
|
55
|
+
const messageId = (_a = params.message) == null ? void 0 : _a.messageId;
|
|
56
|
+
if (messageId && params.metadata) {
|
|
57
|
+
requestMetadataStore.set(
|
|
58
|
+
messageId,
|
|
59
|
+
params.metadata
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
try {
|
|
63
|
+
return await super.sendMessage(params, context);
|
|
64
|
+
} finally {
|
|
65
|
+
if (messageId) {
|
|
66
|
+
requestMetadataStore.delete(messageId);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
async *sendMessageStream(params, context) {
|
|
71
|
+
var _a;
|
|
72
|
+
const messageId = (_a = params.message) == null ? void 0 : _a.messageId;
|
|
73
|
+
if (messageId && params.metadata) {
|
|
74
|
+
requestMetadataStore.set(
|
|
75
|
+
messageId,
|
|
76
|
+
params.metadata
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
yield* super.sendMessageStream(params, context);
|
|
81
|
+
} finally {
|
|
82
|
+
if (messageId) {
|
|
83
|
+
requestMetadataStore.delete(messageId);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
__name(_AdkDefaultRequestHandler, "AdkDefaultRequestHandler");
|
|
89
|
+
let AdkDefaultRequestHandler = _AdkDefaultRequestHandler;
|
|
90
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
91
|
+
0 && (module.exports = {
|
|
92
|
+
AdkDefaultRequestHandler,
|
|
93
|
+
getA2aRequestMetadata
|
|
94
|
+
});
|
|
@@ -42,7 +42,7 @@ var import_invocation_context = require("./invocation_context.js");
|
|
|
42
42
|
* SPDX-License-Identifier: Apache-2.0
|
|
43
43
|
*/
|
|
44
44
|
var _a, _b;
|
|
45
|
-
const BASE_AGENT_SIGNATURE_SYMBOL = Symbol.for("google.adk.baseAgent");
|
|
45
|
+
const BASE_AGENT_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.baseAgent");
|
|
46
46
|
function isBaseAgent(obj) {
|
|
47
47
|
return typeof obj === "object" && obj !== null && BASE_AGENT_SIGNATURE_SYMBOL in obj && obj[BASE_AGENT_SIGNATURE_SYMBOL] === true;
|
|
48
48
|
}
|
|
@@ -78,15 +78,16 @@ const _BaseAgent = class _BaseAgent extends (_b = import_base_node.BaseNode, _a
|
|
|
78
78
|
/**
|
|
79
79
|
* Creates a copy of this agent with the given config fields overridden.
|
|
80
80
|
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* `
|
|
86
|
-
*
|
|
81
|
+
* The clone is a detached root: its `parentAgent` is always `undefined`.
|
|
82
|
+
* Sub-agents are recursively cloned (and re-parented to the clone) unless
|
|
83
|
+
* `subAgents` is overridden. Rebuilding via the concrete constructor
|
|
84
|
+
* re-derives all state, so a cloned `LlmAgent` gets a fresh
|
|
85
|
+
* `requestProcessors` array rather than sharing the original's.
|
|
86
|
+
* See google/adk-js#534.
|
|
87
87
|
*
|
|
88
88
|
* @param overrides Config fields to override on the clone. Overriding
|
|
89
|
-
* `parentAgent` is rejected
|
|
89
|
+
* `parentAgent` is rejected: parentage is assigned only when a parent
|
|
90
|
+
* agent is constructed with its sub-agents.
|
|
90
91
|
* @returns A new detached agent instance of the same concrete class.
|
|
91
92
|
*/
|
|
92
93
|
clone(overrides) {
|
|
@@ -50,8 +50,14 @@ const _Context = class _Context extends import_readonly_context.ReadonlyContext
|
|
|
50
50
|
* call.
|
|
51
51
|
* @param options.toolConfirmation The tool confirmation of the current tool
|
|
52
52
|
* call.
|
|
53
|
+
* @param options.resumeInputs The inputs the current tool call is being
|
|
54
|
+
* resumed with, if it paused to ask for them, keyed by interrupt id.
|
|
55
|
+
* Defaults to empty rather than absent, matching adk-python's
|
|
56
|
+
* `Context.resume_inputs`. Carries no approval; see
|
|
57
|
+
* {@link ResumeInputs}.
|
|
53
58
|
*/
|
|
54
59
|
constructor(options) {
|
|
60
|
+
var _a;
|
|
55
61
|
super(options.invocationContext);
|
|
56
62
|
this.eventActions = options.eventActions || (0, import_event_actions.createEventActions)();
|
|
57
63
|
this._state = new import_state.State(
|
|
@@ -60,6 +66,7 @@ const _Context = class _Context extends import_readonly_context.ReadonlyContext
|
|
|
60
66
|
);
|
|
61
67
|
this.functionCallId = options.functionCallId;
|
|
62
68
|
this.toolConfirmation = options.toolConfirmation;
|
|
69
|
+
this.resumeInputs = (_a = options.resumeInputs) != null ? _a : {};
|
|
63
70
|
this.abortSignal = options.invocationContext.abortSignal;
|
|
64
71
|
}
|
|
65
72
|
/**
|