@google/adk 2.3.0 → 2.5.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_remote_agent.js +17 -2
- package/dist/cjs/a2a/a2a_remote_agent_utils.js +8 -4
- package/dist/cjs/a2a/agent_card.js +5 -81
- package/dist/cjs/a2a/agent_to_a2a.js +7 -0
- package/dist/cjs/a2a/event_converter_utils.js +10 -3
- package/dist/cjs/agents/agent_engine_client.js +399 -0
- package/dist/cjs/agents/base_agent.js +127 -68
- package/dist/cjs/agents/functions.js +64 -59
- package/dist/cjs/agents/instructions.js +8 -6
- package/dist/cjs/agents/invocation_context.js +2 -2
- package/dist/cjs/agents/llm_agent.js +124 -101
- package/dist/cjs/agents/processors/basic_llm_request_processor.js +1 -1
- package/dist/cjs/agents/processors/code_execution_request_processor.js +8 -0
- package/dist/cjs/agents/processors/content_processor_utils.js +72 -17
- package/dist/cjs/agents/processors/content_request_processor.js +51 -2
- package/dist/cjs/agents/processors/context_compactor_request_processor.js +5 -1
- package/dist/cjs/agents/processors/instructions_llm_request_processor.js +1 -1
- package/dist/cjs/agents/processors/nl_planning_processor.js +13 -3
- package/dist/cjs/artifacts/file_artifact_service.js +1 -1
- package/dist/cjs/cli/cli_eval.js +884 -17
- package/dist/cjs/cli/utils/cleanup.js +84 -0
- package/dist/cjs/cli/utils/envs.js +33 -2
- package/dist/cjs/cli/utils/evals.js +75 -8
- package/dist/cjs/cli/utils/logs.js +134 -15
- package/dist/cjs/cli/utils/path_validation.js +83 -0
- package/dist/cjs/code_executors/container_code_executor.js +171 -38
- package/dist/cjs/code_executors/unsafe_local_code_executor.js +6 -1
- package/dist/cjs/common.js +59 -32
- package/dist/cjs/context/compaction_utils.js +19 -0
- package/dist/cjs/errors/input_validation_error.js +3 -2
- package/dist/cjs/events/event.js +7 -3
- package/dist/cjs/features/feature_registry.js +5 -0
- package/dist/cjs/index.js +34 -12
- package/dist/cjs/models/google_llm.js +33 -2
- package/dist/cjs/models/interactions_utils.js +3 -0
- package/dist/cjs/plugins/base_plugin.js +54 -40
- package/dist/cjs/plugins/plugin_manager.js +27 -0
- package/dist/cjs/runner/runner.js +306 -189
- package/dist/cjs/sessions/base_session_service.js +15 -12
- package/dist/cjs/sessions/database_session_service.js +232 -38
- package/dist/cjs/sessions/db/operations.js +70 -1
- package/dist/cjs/sessions/db/schema.js +4 -0
- package/dist/cjs/sessions/in_memory_session_service.js +2 -2
- package/dist/cjs/sessions/stale_session_error.js +59 -0
- package/dist/cjs/sessions/vertex_ai_session_service.js +11 -3
- package/dist/cjs/skills/loader.js +76 -41
- package/dist/cjs/telemetry/api/instrumentation.js +632 -0
- package/dist/cjs/telemetry/api/internal/common/accumulators.js +169 -0
- package/dist/cjs/telemetry/api/internal/common/attributes.js +131 -0
- package/dist/cjs/telemetry/api/internal/common/config.js +159 -0
- package/dist/cjs/telemetry/api/internal/common/error.js +98 -0
- package/dist/cjs/telemetry/api/internal/common/finish_reason.js +63 -0
- package/dist/cjs/telemetry/api/internal/common/genai_messages.js +217 -0
- package/dist/cjs/telemetry/api/internal/common/http_exchange.js +169 -0
- package/dist/cjs/telemetry/api/internal/common/provider_name.js +87 -0
- package/dist/cjs/telemetry/api/internal/common/redaction.js +148 -0
- package/dist/cjs/telemetry/api/internal/common/serialization.js +58 -0
- package/dist/cjs/telemetry/api/internal/common/token_usage.js +118 -0
- package/dist/cjs/telemetry/api/internal/logs/inference.js +50 -0
- package/dist/cjs/telemetry/api/internal/logs/logger.js +46 -0
- package/dist/cjs/telemetry/api/internal/logs/mcp.js +141 -0
- package/dist/cjs/telemetry/api/internal/metrics/agent.js +128 -0
- package/dist/cjs/telemetry/api/internal/metrics/inference_start_hook.js +56 -0
- package/dist/cjs/telemetry/api/internal/metrics/meters.js +189 -0
- package/dist/cjs/telemetry/api/internal/metrics/tool.js +147 -0
- package/dist/cjs/telemetry/api/internal/metrics/workflow.js +132 -0
- package/dist/cjs/telemetry/api/internal/trace/agent.js +52 -0
- package/dist/cjs/telemetry/api/internal/trace/compaction.js +78 -0
- package/dist/cjs/telemetry/api/internal/trace/inference.js +132 -0
- package/dist/cjs/telemetry/api/internal/trace/live.js +52 -0
- package/dist/cjs/telemetry/api/internal/trace/node.js +73 -0
- package/dist/cjs/telemetry/api/internal/trace/propagation.js +67 -0
- package/dist/cjs/telemetry/api/internal/trace/tool.js +122 -0
- package/dist/cjs/telemetry/api/internal/trace/tracer.js +77 -0
- package/dist/cjs/telemetry/api/internal/trace/workflow.js +77 -0
- package/dist/cjs/telemetry/export/agent_engine.js +90 -0
- package/dist/cjs/telemetry/export/agent_runtime.js +73 -0
- package/dist/cjs/telemetry/export/google_cloud.js +763 -0
- package/dist/cjs/telemetry/export/request_driven_metric_reader.js +303 -0
- package/dist/cjs/telemetry/{setup.js → export/setup.js} +72 -6
- package/dist/cjs/tools/agent_tool.js +9 -1
- package/dist/cjs/tools/apihub_tool/apihub_toolset.js +18 -23
- package/dist/cjs/tools/application_integration_tool/application_integration_toolset.js +109 -43
- package/dist/cjs/tools/application_integration_tool/clients/connections_client.js +222 -114
- package/dist/cjs/tools/application_integration_tool/clients/integration_client.js +34 -14
- package/dist/cjs/tools/application_integration_tool/integration_connector_tool.js +175 -0
- package/dist/cjs/tools/base_toolset.js +1 -1
- package/dist/cjs/tools/computer_use/base_computer.js +125 -0
- package/dist/cjs/tools/computer_use/computer_use_actions.js +502 -0
- package/dist/cjs/tools/computer_use/computer_use_tool.js +244 -0
- package/dist/cjs/tools/computer_use/computer_use_toolset.js +360 -0
- package/dist/cjs/tools/function_tool.js +15 -5
- package/dist/cjs/tools/google_api_tool/google_api_tool.js +4 -1
- package/dist/cjs/tools/google_api_tool/google_api_toolset.js +174 -0
- package/dist/cjs/tools/google_api_tool/google_api_toolsets.js +124 -0
- package/dist/cjs/tools/google_api_tool/googleapi_to_openapi_converter.js +5 -3
- package/dist/cjs/tools/google_api_tool/index.js +20 -23
- package/dist/cjs/tools/load_artifacts_tool.js +27 -11
- package/dist/cjs/tools/load_memory_tool.js +14 -15
- package/dist/cjs/tools/mcp/mcp_session_manager.js +23 -3
- package/dist/cjs/tools/mcp/mcp_tool.js +7 -3
- package/dist/cjs/tools/mcp/mcp_toolset.js +19 -20
- package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +30 -29
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +4 -4
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +20 -6
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +17 -6
- package/dist/cjs/tools/openapi_tool/openapi_toolset.js +7 -13
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +57 -10
- package/dist/cjs/tools/skill/load_skill_resource_tool.js +7 -0
- package/dist/cjs/tools/skill/load_skill_tool.js +3 -0
- package/dist/cjs/tools/skill/run_skill_script_tool.js +12 -2
- package/dist/cjs/tools/toolbox_toolset.js +193 -0
- package/dist/cjs/tools/webmcp/webmcp_toolset.js +1 -14
- package/dist/cjs/utils/async_queue.js +37 -3
- package/dist/cjs/utils/client_labels.js +17 -2
- package/dist/cjs/utils/env_aware_utils.js +13 -7
- package/dist/cjs/utils/error_utils.js +40 -2
- package/dist/cjs/utils/failover_utils.js +11 -10
- package/dist/cjs/utils/gemini_schema_util.js +145 -14
- package/dist/cjs/utils/id_provider.js +63 -0
- package/dist/cjs/utils/logger_node.js +4 -0
- package/dist/cjs/utils/model_name.js +15 -0
- package/dist/cjs/utils/output_schema_utils.js +5 -2
- package/dist/cjs/utils/simple_zod_to_json.js +13 -31
- package/dist/cjs/utils/ssrf_guard.js +46 -16
- package/dist/cjs/utils/task.js +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/workflow/index.js +2 -0
- package/dist/cjs/workflow/node_runner.js +24 -80
- package/dist/cjs/workflow/nodes/parallel_worker.js +18 -7
- package/dist/cjs/workflow/run_llm_agent_as_node.js +19 -14
- package/dist/cjs/workflow/utils/retry_utils.js +2 -2
- package/dist/cjs/workflow/workflow.js +12 -12
- package/dist/esm/a2a/a2a_remote_agent.js +23 -3
- package/dist/esm/a2a/a2a_remote_agent_utils.js +8 -4
- package/dist/esm/a2a/agent_card.js +5 -83
- package/dist/esm/a2a/agent_to_a2a.js +7 -0
- package/dist/esm/a2a/event_converter_utils.js +10 -3
- package/dist/esm/agents/agent_engine_client.js +382 -0
- package/dist/esm/agents/base_agent.js +127 -72
- package/dist/esm/agents/functions.js +69 -63
- package/dist/esm/agents/instructions.js +8 -6
- package/dist/esm/agents/invocation_context.js +2 -2
- package/dist/esm/agents/llm_agent.js +130 -106
- package/dist/esm/agents/processors/basic_llm_request_processor.js +1 -1
- package/dist/esm/agents/processors/code_execution_request_processor.js +8 -0
- package/dist/esm/agents/processors/content_processor_utils.js +72 -17
- package/dist/esm/agents/processors/content_request_processor.js +51 -2
- package/dist/esm/agents/processors/context_compactor_request_processor.js +5 -1
- package/dist/esm/agents/processors/instructions_llm_request_processor.js +1 -1
- package/dist/esm/agents/processors/nl_planning_processor.js +13 -3
- package/dist/esm/artifacts/file_artifact_service.js +1 -1
- package/dist/esm/cli/cli_eval.js +880 -17
- package/dist/esm/cli/utils/cleanup.js +56 -0
- package/dist/esm/cli/utils/envs.js +33 -2
- package/dist/esm/cli/utils/evals.js +74 -8
- package/dist/esm/cli/utils/logs.js +132 -13
- package/dist/esm/cli/utils/path_validation.js +45 -0
- package/dist/esm/code_executors/container_code_executor.js +171 -38
- package/dist/esm/code_executors/unsafe_local_code_executor.js +6 -1
- package/dist/esm/common.js +59 -19
- package/dist/esm/context/compaction_utils.js +19 -0
- package/dist/esm/errors/input_validation_error.js +3 -2
- package/dist/esm/events/event.js +7 -3
- package/dist/esm/features/feature_registry.js +5 -0
- package/dist/esm/index.js +36 -10
- package/dist/esm/models/google_llm.js +33 -2
- package/dist/esm/models/interactions_utils.js +3 -0
- package/dist/esm/plugins/base_plugin.js +54 -40
- package/dist/esm/plugins/plugin_manager.js +27 -0
- package/dist/esm/runner/runner.js +310 -192
- package/dist/esm/sessions/base_session_service.js +13 -11
- package/dist/esm/sessions/database_session_service.js +231 -38
- package/dist/esm/sessions/db/operations.js +70 -1
- package/dist/esm/sessions/db/schema.js +4 -0
- package/dist/esm/sessions/in_memory_session_service.js +2 -2
- package/dist/esm/sessions/stale_session_error.js +31 -0
- package/dist/esm/sessions/vertex_ai_session_service.js +11 -3
- package/dist/esm/skills/loader.js +76 -41
- package/dist/esm/telemetry/api/instrumentation.js +655 -0
- package/dist/esm/telemetry/api/internal/common/accumulators.js +139 -0
- package/dist/esm/telemetry/api/internal/common/attributes.js +94 -0
- package/dist/esm/telemetry/api/internal/common/config.js +128 -0
- package/dist/esm/telemetry/api/internal/common/error.js +69 -0
- package/dist/esm/telemetry/api/internal/common/finish_reason.js +35 -0
- package/dist/esm/telemetry/api/internal/common/genai_messages.js +188 -0
- package/dist/esm/telemetry/api/internal/common/http_exchange.js +142 -0
- package/dist/esm/telemetry/api/internal/common/provider_name.js +59 -0
- package/dist/esm/telemetry/api/internal/common/redaction.js +121 -0
- package/dist/esm/telemetry/api/internal/common/serialization.js +30 -0
- package/dist/esm/telemetry/api/internal/common/token_usage.js +85 -0
- package/dist/esm/telemetry/api/internal/logs/inference.js +23 -0
- package/dist/esm/telemetry/api/internal/logs/logger.js +19 -0
- package/dist/esm/telemetry/api/internal/logs/mcp.js +113 -0
- package/dist/esm/telemetry/api/internal/metrics/agent.js +107 -0
- package/dist/esm/telemetry/api/internal/metrics/inference_start_hook.js +29 -0
- package/dist/esm/telemetry/api/internal/metrics/meters.js +165 -0
- package/dist/esm/telemetry/api/internal/metrics/tool.js +119 -0
- package/dist/esm/telemetry/api/internal/metrics/workflow.js +112 -0
- package/dist/esm/telemetry/api/internal/trace/agent.js +25 -0
- package/dist/esm/telemetry/api/internal/trace/compaction.js +50 -0
- package/dist/esm/telemetry/api/internal/trace/inference.js +107 -0
- package/dist/esm/telemetry/api/internal/trace/live.js +28 -0
- package/dist/esm/telemetry/api/internal/trace/node.js +44 -0
- package/dist/esm/telemetry/api/internal/trace/propagation.js +39 -0
- package/dist/esm/telemetry/api/internal/trace/tool.js +96 -0
- package/dist/esm/telemetry/api/internal/trace/tracer.js +52 -0
- package/dist/esm/telemetry/api/internal/trace/workflow.js +54 -0
- package/dist/esm/telemetry/export/agent_engine.js +67 -0
- package/dist/esm/telemetry/export/agent_runtime.js +46 -0
- package/dist/esm/telemetry/export/google_cloud.js +733 -0
- package/dist/esm/telemetry/export/request_driven_metric_reader.js +276 -0
- package/dist/esm/telemetry/export/setup.js +160 -0
- package/dist/esm/tools/agent_tool.js +9 -1
- package/dist/esm/tools/apihub_tool/apihub_toolset.js +17 -22
- package/dist/esm/tools/application_integration_tool/application_integration_toolset.js +114 -44
- package/dist/esm/tools/application_integration_tool/clients/connections_client.js +226 -115
- package/dist/esm/tools/application_integration_tool/clients/integration_client.js +34 -14
- package/dist/esm/tools/application_integration_tool/integration_connector_tool.js +149 -0
- package/dist/esm/tools/base_toolset.js +1 -1
- package/dist/esm/tools/computer_use/base_computer.js +99 -0
- package/dist/esm/tools/computer_use/computer_use_actions.js +477 -0
- package/dist/esm/tools/computer_use/computer_use_tool.js +217 -0
- package/dist/esm/tools/computer_use/computer_use_toolset.js +344 -0
- package/dist/esm/tools/function_tool.js +15 -5
- package/dist/esm/tools/google_api_tool/google_api_tool.js +4 -1
- package/dist/esm/tools/google_api_tool/google_api_toolset.js +147 -0
- package/dist/esm/tools/google_api_tool/google_api_toolsets.js +94 -0
- package/dist/esm/tools/google_api_tool/googleapi_to_openapi_converter.js +5 -3
- package/dist/esm/tools/google_api_tool/index.js +18 -20
- package/dist/esm/tools/load_artifacts_tool.js +25 -10
- package/dist/esm/tools/load_memory_tool.js +14 -15
- package/dist/esm/tools/mcp/mcp_session_manager.js +23 -3
- package/dist/esm/tools/mcp/mcp_tool.js +7 -3
- package/dist/esm/tools/mcp/mcp_toolset.js +19 -20
- package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +27 -26
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +4 -4
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +20 -6
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +17 -6
- package/dist/esm/tools/openapi_tool/openapi_toolset.js +6 -12
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +57 -10
- package/dist/esm/tools/skill/load_skill_resource_tool.js +7 -0
- package/dist/esm/tools/skill/load_skill_tool.js +3 -0
- package/dist/esm/tools/skill/run_skill_script_tool.js +12 -2
- package/dist/esm/tools/toolbox_toolset.js +167 -0
- package/dist/esm/tools/webmcp/webmcp_toolset.js +1 -14
- package/dist/esm/utils/async_queue.js +37 -3
- package/dist/esm/utils/client_labels.js +17 -2
- package/dist/esm/utils/env_aware_utils.js +12 -7
- package/dist/esm/utils/error_utils.js +37 -1
- package/dist/esm/utils/failover_utils.js +11 -10
- package/dist/esm/utils/gemini_schema_util.js +144 -14
- package/dist/esm/utils/id_provider.js +33 -0
- package/dist/esm/utils/logger_node.js +4 -0
- package/dist/esm/utils/model_name.js +14 -0
- package/dist/esm/utils/output_schema_utils.js +5 -2
- package/dist/esm/utils/simple_zod_to_json.js +13 -31
- package/dist/esm/utils/ssrf_guard.js +55 -15
- package/dist/esm/utils/task.js +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/workflow/index.js +2 -1
- package/dist/esm/workflow/node_runner.js +26 -80
- package/dist/esm/workflow/nodes/parallel_worker.js +16 -6
- package/dist/esm/workflow/run_llm_agent_as_node.js +19 -14
- package/dist/esm/workflow/utils/retry_utils.js +2 -2
- package/dist/esm/workflow/workflow.js +12 -12
- package/dist/types/a2a/a2a_remote_agent.d.ts +6 -0
- package/dist/types/a2a/a2a_remote_agent_utils.d.ts +3 -2
- package/dist/types/agents/agent_engine_client.d.ts +155 -0
- package/dist/types/agents/base_agent.d.ts +14 -0
- package/dist/types/agents/llm_agent.d.ts +5 -1
- package/dist/types/agents/processors/content_processor_utils.d.ts +12 -10
- package/dist/types/agents/processors/nl_planning_processor.d.ts +2 -1
- package/dist/types/agents/run_config.d.ts +14 -0
- package/dist/types/cli/cli_eval.d.ts +172 -9
- package/dist/types/cli/utils/cleanup.d.ts +18 -0
- package/dist/types/cli/utils/envs.d.ts +13 -3
- package/dist/types/cli/utils/evals.d.ts +64 -1
- package/dist/types/cli/utils/logs.d.ts +20 -3
- package/dist/types/cli/utils/path_validation.d.ts +30 -0
- package/dist/types/code_executors/container_code_executor.d.ts +62 -9
- package/dist/types/common.d.ts +21 -18
- package/dist/types/context/compaction_utils.d.ts +13 -1
- package/dist/types/errors/input_validation_error.d.ts +2 -1
- package/dist/types/events/event.d.ts +3 -0
- package/dist/types/features/feature_registry.d.ts +1 -0
- package/dist/types/index.d.ts +11 -6
- package/dist/types/plugins/base_plugin.d.ts +50 -31
- package/dist/types/plugins/plugin_manager.d.ts +13 -0
- package/dist/types/runner/runner.d.ts +11 -0
- package/dist/types/sessions/base_session_service.d.ts +5 -2
- package/dist/types/sessions/database_session_service.d.ts +17 -1
- package/dist/types/sessions/db/operations.d.ts +2 -1
- package/dist/types/sessions/db/schema.d.ts +5 -3
- package/dist/types/sessions/stale_session_error.d.ts +21 -0
- package/dist/types/skills/loader.d.ts +3 -2
- package/dist/types/telemetry/api/instrumentation.d.ts +259 -0
- package/dist/types/telemetry/api/internal/common/accumulators.d.ts +91 -0
- package/dist/types/telemetry/api/internal/common/attributes.d.ts +90 -0
- package/dist/types/telemetry/api/internal/common/config.d.ts +61 -0
- package/dist/types/telemetry/api/internal/common/error.d.ts +29 -0
- package/dist/types/telemetry/api/internal/common/finish_reason.d.ts +18 -0
- package/dist/types/telemetry/api/internal/common/genai_messages.d.ts +26 -0
- package/dist/types/telemetry/api/internal/common/http_exchange.d.ts +50 -0
- package/dist/types/telemetry/api/internal/common/provider_name.d.ts +16 -0
- package/dist/types/telemetry/api/internal/common/redaction.d.ts +14 -0
- package/dist/types/telemetry/api/internal/common/serialization.d.ts +18 -0
- package/dist/types/telemetry/api/internal/common/token_usage.d.ts +47 -0
- package/dist/types/telemetry/api/internal/logs/inference.d.ts +15 -0
- package/dist/types/telemetry/api/internal/logs/logger.d.ts +13 -0
- package/dist/types/telemetry/api/internal/logs/mcp.d.ts +31 -0
- package/dist/types/telemetry/api/internal/metrics/agent.d.ts +28 -0
- package/dist/types/telemetry/api/internal/metrics/inference_start_hook.d.ts +12 -0
- package/dist/types/telemetry/api/internal/metrics/meters.d.ts +57 -0
- package/dist/types/telemetry/api/internal/metrics/tool.d.ts +44 -0
- package/dist/types/telemetry/api/internal/metrics/workflow.d.ts +32 -0
- package/dist/types/telemetry/api/internal/trace/agent.d.ts +14 -0
- package/dist/types/telemetry/api/internal/trace/compaction.d.ts +20 -0
- package/dist/types/telemetry/api/internal/trace/inference.d.ts +31 -0
- package/dist/types/telemetry/api/internal/trace/live.d.ts +21 -0
- package/dist/types/telemetry/api/internal/trace/node.d.ts +22 -0
- package/dist/types/telemetry/api/internal/trace/propagation.d.ts +22 -0
- package/dist/types/telemetry/api/internal/trace/tool.d.ts +57 -0
- package/dist/types/telemetry/api/internal/trace/tracer.d.ts +31 -0
- package/dist/types/telemetry/api/internal/trace/workflow.d.ts +21 -0
- package/dist/types/telemetry/export/agent_engine.d.ts +23 -0
- package/dist/types/telemetry/export/agent_runtime.d.ts +40 -0
- package/dist/types/telemetry/export/google_cloud.d.ts +189 -0
- package/dist/types/telemetry/export/request_driven_metric_reader.d.ts +144 -0
- package/dist/types/telemetry/{setup.d.ts → export/setup.d.ts} +3 -0
- package/dist/types/tools/agent_tool.d.ts +1 -1
- package/dist/types/tools/apihub_tool/apihub_toolset.d.ts +14 -21
- package/dist/types/tools/application_integration_tool/application_integration_toolset.d.ts +32 -9
- package/dist/types/tools/application_integration_tool/clients/connections_client.d.ts +35 -12
- package/dist/types/tools/application_integration_tool/clients/integration_client.d.ts +3 -3
- package/dist/types/tools/application_integration_tool/integration_connector_tool.d.ts +70 -0
- package/dist/types/tools/base_toolset.d.ts +7 -6
- package/dist/types/tools/computer_use/base_computer.d.ts +281 -0
- package/dist/types/tools/computer_use/computer_use_actions.d.ts +53 -0
- package/dist/types/tools/computer_use/computer_use_tool.d.ts +108 -0
- package/dist/types/tools/computer_use/computer_use_toolset.d.ts +132 -0
- package/dist/types/tools/google_api_tool/google_api_tool.d.ts +10 -3
- package/dist/types/tools/google_api_tool/google_api_toolset.d.ts +57 -0
- package/dist/types/tools/google_api_tool/google_api_toolsets.d.ts +48 -0
- package/dist/types/tools/google_api_tool/googleapi_to_openapi_converter.d.ts +5 -4
- package/dist/types/tools/google_api_tool/index.d.ts +4 -5
- package/dist/types/tools/load_artifacts_tool.d.ts +18 -1
- package/dist/types/tools/load_memory_tool.d.ts +32 -4
- package/dist/types/tools/mcp/mcp_session_manager.d.ts +16 -0
- package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +8 -8
- package/dist/types/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.d.ts +12 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/operation_parser.d.ts +15 -3
- package/dist/types/tools/openapi_tool/openapi_toolset.d.ts +5 -0
- package/dist/types/tools/openapi_tool/rest_api_tool.d.ts +10 -0
- package/dist/types/tools/toolbox_toolset.d.ts +154 -0
- package/dist/types/utils/async_queue.d.ts +14 -0
- package/dist/types/utils/client_labels.d.ts +2 -1
- package/dist/types/utils/env_aware_utils.d.ts +11 -0
- package/dist/types/utils/error_utils.d.ts +4 -0
- package/dist/types/utils/gemini_schema_util.d.ts +29 -0
- package/dist/types/utils/id_provider.d.ts +43 -0
- package/dist/types/utils/model_name.d.ts +8 -0
- package/dist/types/utils/output_schema_utils.d.ts +3 -2
- package/dist/types/utils/simple_zod_to_json.d.ts +1 -2
- package/dist/types/utils/ssrf_guard.d.ts +2 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/types/workflow/index.d.ts +1 -1
- package/dist/types/workflow/nodes/parallel_worker.d.ts +8 -1
- package/dist/web/index_web.js +94 -88
- package/dist/web/index_web.js.map +4 -4
- package/package.json +43 -38
- package/dist/cjs/agents/remote_agent.js +0 -187
- package/dist/cjs/telemetry/google_cloud.js +0 -116
- package/dist/cjs/telemetry/tracing.js +0 -350
- package/dist/cjs/tools/crewai_tool.js +0 -132
- package/dist/cjs/tools/google_api_tool/google_api_tool_set.js +0 -226
- package/dist/cjs/tools/google_api_tool/google_api_tool_sets.js +0 -58
- package/dist/cjs/tools/langchain_tool.js +0 -172
- package/dist/cjs/tools/toolbox_tool.js +0 -108
- package/dist/esm/agents/remote_agent.js +0 -164
- package/dist/esm/telemetry/google_cloud.js +0 -99
- package/dist/esm/telemetry/setup.js +0 -89
- package/dist/esm/telemetry/tracing.js +0 -315
- package/dist/esm/tools/crewai_tool.js +0 -107
- package/dist/esm/tools/google_api_tool/google_api_tool_set.js +0 -188
- package/dist/esm/tools/google_api_tool/google_api_tool_sets.js +0 -24
- package/dist/esm/tools/langchain_tool.js +0 -148
- package/dist/esm/tools/toolbox_tool.js +0 -80
- package/dist/types/agents/remote_agent.d.ts +0 -68
- package/dist/types/telemetry/google_cloud.d.ts +0 -9
- package/dist/types/telemetry/tracing.d.ts +0 -129
- package/dist/types/tools/crewai_tool.d.ts +0 -85
- package/dist/types/tools/google_api_tool/google_api_tool_set.d.ts +0 -78
- package/dist/types/tools/google_api_tool/google_api_tool_sets.d.ts +0 -33
- package/dist/types/tools/langchain_tool.d.ts +0 -103
- package/dist/types/tools/toolbox_tool.d.ts +0 -73
|
@@ -0,0 +1,174 @@
|
|
|
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 __decorateClass = (decorators, target, key, kind) => {
|
|
27
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
28
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
29
|
+
if (decorator = decorators[i])
|
|
30
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
31
|
+
if (kind && result) __defProp(target, key, result);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
var google_api_toolset_exports = {};
|
|
35
|
+
__export(google_api_toolset_exports, {
|
|
36
|
+
GoogleApiToolset: () => GoogleApiToolset,
|
|
37
|
+
isGoogleApiToolset: () => isGoogleApiToolset
|
|
38
|
+
});
|
|
39
|
+
module.exports = __toCommonJS(google_api_toolset_exports);
|
|
40
|
+
var import_experimental = require("../../utils/experimental.js");
|
|
41
|
+
var import_base_toolset = require("../base_toolset.js");
|
|
42
|
+
var import_openapi_toolset = require("../openapi_tool/openapi_toolset.js");
|
|
43
|
+
var import_google_api_tool = require("./google_api_tool.js");
|
|
44
|
+
var import_googleapi_to_openapi_converter = require("./googleapi_to_openapi_converter.js");
|
|
45
|
+
/**
|
|
46
|
+
* @license
|
|
47
|
+
* Copyright 2026 Google LLC
|
|
48
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
49
|
+
*/
|
|
50
|
+
var _a, _b;
|
|
51
|
+
const GOOGLE_API_TOOLSET_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
|
|
52
|
+
"google.adk.googleApiToolset"
|
|
53
|
+
);
|
|
54
|
+
const GOOGLE_OIDC_AUTH_ENDPOINT = "https://accounts.google.com/o/oauth2/v2/auth";
|
|
55
|
+
const GOOGLE_OIDC_TOKEN_ENDPOINT = "https://oauth2.googleapis.com/token";
|
|
56
|
+
const GOOGLE_OIDC_USERINFO_ENDPOINT = "https://openidconnect.googleapis.com/v1/userinfo";
|
|
57
|
+
const GOOGLE_OIDC_REVOCATION_ENDPOINT = "https://oauth2.googleapis.com/revoke";
|
|
58
|
+
function isGoogleApiToolset(obj) {
|
|
59
|
+
return typeof obj === "object" && obj !== null && GOOGLE_API_TOOLSET_SIGNATURE_SYMBOL in obj && obj[GOOGLE_API_TOOLSET_SIGNATURE_SYMBOL] === true;
|
|
60
|
+
}
|
|
61
|
+
__name(isGoogleApiToolset, "isGoogleApiToolset");
|
|
62
|
+
let GoogleApiToolset = class extends (_b = import_base_toolset.BaseToolset, _a = GOOGLE_API_TOOLSET_SIGNATURE_SYMBOL, _b) {
|
|
63
|
+
constructor(options = {}) {
|
|
64
|
+
var _a2;
|
|
65
|
+
const toolFilter = (_a2 = options.toolFilter) != null ? _a2 : [];
|
|
66
|
+
super(toolFilter);
|
|
67
|
+
this[_a] = true;
|
|
68
|
+
this.tools = [];
|
|
69
|
+
this.toolFilter = toolFilter;
|
|
70
|
+
this.apiName = options.apiName;
|
|
71
|
+
this.apiVersion = options.apiVersion;
|
|
72
|
+
this.clientId = options.clientId;
|
|
73
|
+
this.clientSecret = options.clientSecret;
|
|
74
|
+
this.scopes = options.scopes ? [...options.scopes] : void 0;
|
|
75
|
+
}
|
|
76
|
+
async loadToolsetWithOidcAuth() {
|
|
77
|
+
var _a2, _b2, _c, _d, _e;
|
|
78
|
+
if (!this.apiName || !this.apiVersion) {
|
|
79
|
+
throw new Error(
|
|
80
|
+
"Both apiName and apiVersion are required to load a GoogleApiToolset."
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
const specDict = await new import_googleapi_to_openapi_converter.GoogleApiToOpenApiConverter(
|
|
84
|
+
this.apiName,
|
|
85
|
+
this.apiVersion
|
|
86
|
+
).convert();
|
|
87
|
+
const oauth2Scheme = (_b2 = (_a2 = specDict.components) == null ? void 0 : _a2.securitySchemes) == null ? void 0 : _b2["oauth2"];
|
|
88
|
+
const scopesMap = (_e = (_d = (_c = oauth2Scheme == null ? void 0 : oauth2Scheme.flows) == null ? void 0 : _c.authorizationCode) == null ? void 0 : _d.scopes) != null ? _e : {};
|
|
89
|
+
const firstScope = Object.keys(scopesMap)[0];
|
|
90
|
+
const scopes = this.scopes !== void 0 ? [...this.scopes] : firstScope ? [firstScope] : void 0;
|
|
91
|
+
const authScheme = {
|
|
92
|
+
type: "openIdConnect",
|
|
93
|
+
openIdConnectUrl: "",
|
|
94
|
+
authorizationEndpoint: GOOGLE_OIDC_AUTH_ENDPOINT,
|
|
95
|
+
tokenEndpoint: GOOGLE_OIDC_TOKEN_ENDPOINT,
|
|
96
|
+
userinfoEndpoint: GOOGLE_OIDC_USERINFO_ENDPOINT,
|
|
97
|
+
revocationEndpoint: GOOGLE_OIDC_REVOCATION_ENDPOINT,
|
|
98
|
+
tokenEndpointAuthMethodsSupported: [
|
|
99
|
+
"client_secret_post",
|
|
100
|
+
"client_secret_basic"
|
|
101
|
+
],
|
|
102
|
+
grantTypesSupported: ["authorization_code"],
|
|
103
|
+
scopes
|
|
104
|
+
};
|
|
105
|
+
return new import_openapi_toolset.OpenAPIToolset({
|
|
106
|
+
specDict,
|
|
107
|
+
specType: "yaml",
|
|
108
|
+
authScheme
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
async ensureToolsLoaded() {
|
|
112
|
+
var _a2;
|
|
113
|
+
if (this.openapiToolset) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
(_a2 = this.loadingPromise) != null ? _a2 : this.loadingPromise = (async () => {
|
|
117
|
+
try {
|
|
118
|
+
const openapiToolset = await this.loadToolsetWithOidcAuth();
|
|
119
|
+
const restTools = await openapiToolset.getTools();
|
|
120
|
+
this.tools = restTools.map(
|
|
121
|
+
(tool) => new import_google_api_tool.GoogleApiTool(tool, {
|
|
122
|
+
clientId: this.clientId,
|
|
123
|
+
clientSecret: this.clientSecret
|
|
124
|
+
})
|
|
125
|
+
);
|
|
126
|
+
this.openapiToolset = openapiToolset;
|
|
127
|
+
} catch (error) {
|
|
128
|
+
this.loadingPromise = void 0;
|
|
129
|
+
throw error;
|
|
130
|
+
}
|
|
131
|
+
})();
|
|
132
|
+
await this.loadingPromise;
|
|
133
|
+
}
|
|
134
|
+
async getTools(context) {
|
|
135
|
+
await this.ensureToolsLoaded();
|
|
136
|
+
return this.tools.filter((tool) => this.isToolSelected(tool, context));
|
|
137
|
+
}
|
|
138
|
+
setToolFilter(toolFilter) {
|
|
139
|
+
this.toolFilter = toolFilter;
|
|
140
|
+
}
|
|
141
|
+
configureAuth(clientId, clientSecret) {
|
|
142
|
+
this.clientId = clientId;
|
|
143
|
+
this.clientSecret = clientSecret;
|
|
144
|
+
for (const tool of this.tools) {
|
|
145
|
+
tool.configureAuth(clientId, clientSecret);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
async close() {
|
|
149
|
+
if (this.openapiToolset) {
|
|
150
|
+
await this.openapiToolset.close();
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
__name(GoogleApiToolset, "GoogleApiToolset");
|
|
155
|
+
__decorateClass([
|
|
156
|
+
import_experimental.experimental
|
|
157
|
+
], GoogleApiToolset.prototype, "getTools", 1);
|
|
158
|
+
__decorateClass([
|
|
159
|
+
import_experimental.experimental
|
|
160
|
+
], GoogleApiToolset.prototype, "setToolFilter", 1);
|
|
161
|
+
__decorateClass([
|
|
162
|
+
import_experimental.experimental
|
|
163
|
+
], GoogleApiToolset.prototype, "configureAuth", 1);
|
|
164
|
+
__decorateClass([
|
|
165
|
+
import_experimental.experimental
|
|
166
|
+
], GoogleApiToolset.prototype, "close", 1);
|
|
167
|
+
GoogleApiToolset = __decorateClass([
|
|
168
|
+
import_experimental.experimental
|
|
169
|
+
], GoogleApiToolset);
|
|
170
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
171
|
+
0 && (module.exports = {
|
|
172
|
+
GoogleApiToolset,
|
|
173
|
+
isGoogleApiToolset
|
|
174
|
+
});
|
|
@@ -0,0 +1,124 @@
|
|
|
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 __decorateClass = (decorators, target, key, kind) => {
|
|
27
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
28
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
29
|
+
if (decorator = decorators[i])
|
|
30
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
31
|
+
if (kind && result) __defProp(target, key, result);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
var google_api_toolsets_exports = {};
|
|
35
|
+
__export(google_api_toolsets_exports, {
|
|
36
|
+
BigQueryToolset: () => BigQueryToolset,
|
|
37
|
+
CalendarToolset: () => CalendarToolset,
|
|
38
|
+
DocsToolset: () => DocsToolset,
|
|
39
|
+
GmailToolset: () => GmailToolset,
|
|
40
|
+
SheetsToolset: () => SheetsToolset,
|
|
41
|
+
SlidesToolset: () => SlidesToolset,
|
|
42
|
+
YoutubeToolset: () => YoutubeToolset
|
|
43
|
+
});
|
|
44
|
+
module.exports = __toCommonJS(google_api_toolsets_exports);
|
|
45
|
+
var import_experimental = require("../../utils/experimental.js");
|
|
46
|
+
var import_google_api_toolset = require("./google_api_toolset.js");
|
|
47
|
+
/**
|
|
48
|
+
* @license
|
|
49
|
+
* Copyright 2026 Google LLC
|
|
50
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
51
|
+
*/
|
|
52
|
+
let BigQueryToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
53
|
+
constructor(options = {}) {
|
|
54
|
+
super({ ...options, apiName: "bigquery", apiVersion: "v2" });
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
__name(BigQueryToolset, "BigQueryToolset");
|
|
58
|
+
BigQueryToolset = __decorateClass([
|
|
59
|
+
import_experimental.experimental
|
|
60
|
+
], BigQueryToolset);
|
|
61
|
+
let CalendarToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
62
|
+
constructor(options = {}) {
|
|
63
|
+
super({ ...options, apiName: "calendar", apiVersion: "v3" });
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
__name(CalendarToolset, "CalendarToolset");
|
|
67
|
+
CalendarToolset = __decorateClass([
|
|
68
|
+
import_experimental.experimental
|
|
69
|
+
], CalendarToolset);
|
|
70
|
+
let GmailToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
71
|
+
constructor(options = {}) {
|
|
72
|
+
super({ ...options, apiName: "gmail", apiVersion: "v1" });
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
__name(GmailToolset, "GmailToolset");
|
|
76
|
+
GmailToolset = __decorateClass([
|
|
77
|
+
import_experimental.experimental
|
|
78
|
+
], GmailToolset);
|
|
79
|
+
let YoutubeToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
80
|
+
constructor(options = {}) {
|
|
81
|
+
super({ ...options, apiName: "youtube", apiVersion: "v3" });
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
__name(YoutubeToolset, "YoutubeToolset");
|
|
85
|
+
YoutubeToolset = __decorateClass([
|
|
86
|
+
import_experimental.experimental
|
|
87
|
+
], YoutubeToolset);
|
|
88
|
+
let SlidesToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
89
|
+
constructor(options = {}) {
|
|
90
|
+
super({ ...options, apiName: "slides", apiVersion: "v1" });
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
__name(SlidesToolset, "SlidesToolset");
|
|
94
|
+
SlidesToolset = __decorateClass([
|
|
95
|
+
import_experimental.experimental
|
|
96
|
+
], SlidesToolset);
|
|
97
|
+
let SheetsToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
98
|
+
constructor(options = {}) {
|
|
99
|
+
super({ ...options, apiName: "sheets", apiVersion: "v4" });
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
__name(SheetsToolset, "SheetsToolset");
|
|
103
|
+
SheetsToolset = __decorateClass([
|
|
104
|
+
import_experimental.experimental
|
|
105
|
+
], SheetsToolset);
|
|
106
|
+
let DocsToolset = class extends import_google_api_toolset.GoogleApiToolset {
|
|
107
|
+
constructor(options = {}) {
|
|
108
|
+
super({ ...options, apiName: "docs", apiVersion: "v1" });
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
__name(DocsToolset, "DocsToolset");
|
|
112
|
+
DocsToolset = __decorateClass([
|
|
113
|
+
import_experimental.experimental
|
|
114
|
+
], DocsToolset);
|
|
115
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
116
|
+
0 && (module.exports = {
|
|
117
|
+
BigQueryToolset,
|
|
118
|
+
CalendarToolset,
|
|
119
|
+
DocsToolset,
|
|
120
|
+
GmailToolset,
|
|
121
|
+
SheetsToolset,
|
|
122
|
+
SlidesToolset,
|
|
123
|
+
YoutubeToolset
|
|
124
|
+
});
|
|
@@ -251,11 +251,13 @@ function convertOperation(methodData, pathParams) {
|
|
|
251
251
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
252
252
|
const parameters = [];
|
|
253
253
|
for (const paramName of pathParams) {
|
|
254
|
+
const paramData = methodData.parameters && Object.hasOwn(methodData.parameters, paramName) ? methodData.parameters[paramName] : void 0;
|
|
254
255
|
parameters.push({
|
|
255
256
|
name: paramName,
|
|
256
257
|
in: "path",
|
|
258
|
+
...(paramData == null ? void 0 : paramData.description) !== void 0 ? { description: paramData.description } : {},
|
|
257
259
|
required: true,
|
|
258
|
-
schema: { type: "string" }
|
|
260
|
+
schema: paramData ? convertParameterSchema(paramData) : { type: "string" }
|
|
259
261
|
});
|
|
260
262
|
}
|
|
261
263
|
const pathParamSet = new Set(pathParams);
|
|
@@ -319,10 +321,10 @@ function convertOperation(methodData, pathParams) {
|
|
|
319
321
|
}
|
|
320
322
|
__name(convertOperation, "convertOperation");
|
|
321
323
|
function convertMethods(methods, _resourcePath, openapiSpec) {
|
|
322
|
-
var _a, _b;
|
|
324
|
+
var _a, _b, _c;
|
|
323
325
|
for (const methodData of Object.values(methods)) {
|
|
324
326
|
const httpMethod = ((_a = methodData.httpMethod) != null ? _a : "GET").toLowerCase();
|
|
325
|
-
let restPath = ((_b = methodData.
|
|
327
|
+
let restPath = ((_c = (_b = methodData.flatPath) != null ? _b : methodData.path) != null ? _c : "/").replace(
|
|
326
328
|
/\{\+([^{}]+)\}/g,
|
|
327
329
|
(_match, paramName) => `{${paramName}}`
|
|
328
330
|
);
|
|
@@ -24,24 +24,22 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
25
|
var google_api_tool_exports = {};
|
|
26
26
|
__export(google_api_tool_exports, {
|
|
27
|
-
|
|
27
|
+
BigQueryToolset: () => import_google_api_toolsets.BigQueryToolset,
|
|
28
|
+
CalendarToolset: () => import_google_api_toolsets.CalendarToolset,
|
|
29
|
+
DocsToolset: () => import_google_api_toolsets.DocsToolset,
|
|
30
|
+
GmailToolset: () => import_google_api_toolsets.GmailToolset,
|
|
28
31
|
GoogleApiTool: () => import_google_api_tool.GoogleApiTool,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
gmailToolSet: () => import_google_api_tool_sets.gmailToolSet,
|
|
32
|
+
GoogleApiToolset: () => import_google_api_toolset.GoogleApiToolset,
|
|
33
|
+
SheetsToolset: () => import_google_api_toolsets.SheetsToolset,
|
|
34
|
+
SlidesToolset: () => import_google_api_toolsets.SlidesToolset,
|
|
35
|
+
YoutubeToolset: () => import_google_api_toolsets.YoutubeToolset,
|
|
34
36
|
isGoogleApiTool: () => import_google_api_tool.isGoogleApiTool,
|
|
35
|
-
|
|
36
|
-
sheetsToolSet: () => import_google_api_tool_sets.sheetsToolSet,
|
|
37
|
-
slidesToolSet: () => import_google_api_tool_sets.slidesToolSet,
|
|
38
|
-
youtubeToolSet: () => import_google_api_tool_sets.youtubeToolSet
|
|
37
|
+
isGoogleApiToolset: () => import_google_api_toolset.isGoogleApiToolset
|
|
39
38
|
});
|
|
40
39
|
module.exports = __toCommonJS(google_api_tool_exports);
|
|
41
40
|
var import_google_api_tool = require("./google_api_tool.js");
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var import_googleapi_to_openapi_converter = require("./googleapi_to_openapi_converter.js");
|
|
41
|
+
var import_google_api_toolset = require("./google_api_toolset.js");
|
|
42
|
+
var import_google_api_toolsets = require("./google_api_toolsets.js");
|
|
45
43
|
/**
|
|
46
44
|
* @license
|
|
47
45
|
* Copyright 2026 Google LLC
|
|
@@ -49,16 +47,15 @@ var import_googleapi_to_openapi_converter = require("./googleapi_to_openapi_conv
|
|
|
49
47
|
*/
|
|
50
48
|
// Annotate the CommonJS export names for ESM import in node:
|
|
51
49
|
0 && (module.exports = {
|
|
52
|
-
|
|
50
|
+
BigQueryToolset,
|
|
51
|
+
CalendarToolset,
|
|
52
|
+
DocsToolset,
|
|
53
|
+
GmailToolset,
|
|
53
54
|
GoogleApiTool,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
gmailToolSet,
|
|
55
|
+
GoogleApiToolset,
|
|
56
|
+
SheetsToolset,
|
|
57
|
+
SlidesToolset,
|
|
58
|
+
YoutubeToolset,
|
|
59
59
|
isGoogleApiTool,
|
|
60
|
-
|
|
61
|
-
sheetsToolSet,
|
|
62
|
-
slidesToolSet,
|
|
63
|
-
youtubeToolSet
|
|
60
|
+
isGoogleApiToolset
|
|
64
61
|
});
|
|
@@ -26,11 +26,13 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
26
26
|
var load_artifacts_tool_exports = {};
|
|
27
27
|
__export(load_artifacts_tool_exports, {
|
|
28
28
|
LOAD_ARTIFACTS: () => LOAD_ARTIFACTS,
|
|
29
|
-
LoadArtifactsTool: () => LoadArtifactsTool
|
|
29
|
+
LoadArtifactsTool: () => LoadArtifactsTool,
|
|
30
|
+
asSafePartForLlm: () => asSafePartForLlm
|
|
30
31
|
});
|
|
31
32
|
module.exports = __toCommonJS(load_artifacts_tool_exports);
|
|
32
33
|
var import_genai = require("@google/genai");
|
|
33
34
|
var import_llm_request = require("../models/llm_request.js");
|
|
35
|
+
var import_env_aware_utils = require("../utils/env_aware_utils.js");
|
|
34
36
|
var import_logger = require("../utils/logger.js");
|
|
35
37
|
var import_base_tool = require("./base_tool.js");
|
|
36
38
|
/**
|
|
@@ -49,7 +51,7 @@ function normalizeMimeType(mimeType) {
|
|
|
49
51
|
if (!mimeType) {
|
|
50
52
|
return void 0;
|
|
51
53
|
}
|
|
52
|
-
return mimeType.split(";")[0].trim();
|
|
54
|
+
return mimeType.split(";")[0].trim().toLowerCase();
|
|
53
55
|
}
|
|
54
56
|
__name(normalizeMimeType, "normalizeMimeType");
|
|
55
57
|
function isInlineMimeTypeSupported(mimeType) {
|
|
@@ -62,31 +64,44 @@ function isInlineMimeTypeSupported(mimeType) {
|
|
|
62
64
|
) || GEMINI_SUPPORTED_INLINE_MIME_TYPES.has(normalized);
|
|
63
65
|
}
|
|
64
66
|
__name(isInlineMimeTypeSupported, "isInlineMimeTypeSupported");
|
|
65
|
-
function
|
|
67
|
+
function base64ByteLength(data) {
|
|
68
|
+
const digits = data.replace(/[=\s]/g, "").length;
|
|
69
|
+
return Math.floor(digits * 3 / 4);
|
|
70
|
+
}
|
|
71
|
+
__name(base64ByteLength, "base64ByteLength");
|
|
72
|
+
function asSafePartForLlm(artifact, artifactName, options) {
|
|
73
|
+
if ((options == null ? void 0 : options.inlineMediaAsPlaceholder) && !artifact.inlineData && artifact.fileData) {
|
|
74
|
+
const fileUri = artifact.fileData.fileUri || "unknown";
|
|
75
|
+
const mimeType2 = normalizeMimeType(artifact.fileData.mimeType) || "application/octet-stream";
|
|
76
|
+
return {
|
|
77
|
+
text: `[Artifact: ${artifactName}, uri: ${fileUri}, type: ${mimeType2}.]`
|
|
78
|
+
};
|
|
79
|
+
}
|
|
66
80
|
const inlineData = artifact.inlineData;
|
|
67
81
|
if (!inlineData) {
|
|
68
82
|
return artifact;
|
|
69
83
|
}
|
|
70
|
-
if (isInlineMimeTypeSupported(inlineData.mimeType)) {
|
|
84
|
+
if (!(options == null ? void 0 : options.inlineMediaAsPlaceholder) && isInlineMimeTypeSupported(inlineData.mimeType)) {
|
|
71
85
|
return artifact;
|
|
72
86
|
}
|
|
73
87
|
const mimeType = normalizeMimeType(inlineData.mimeType) || "application/octet-stream";
|
|
88
|
+
const isTextLike = mimeType.startsWith("text/") || TEXT_LIKE_MIME_TYPES.has(mimeType);
|
|
74
89
|
const data = inlineData.data;
|
|
75
|
-
if (!data) {
|
|
90
|
+
if (data === void 0 || data === null || !isTextLike && data === "") {
|
|
76
91
|
return {
|
|
77
92
|
text: `[Artifact: ${artifactName}, type: ${mimeType}. No inline data was provided.]`
|
|
78
93
|
};
|
|
79
94
|
}
|
|
80
|
-
const isTextLike = mimeType.startsWith("text/") || TEXT_LIKE_MIME_TYPES.has(mimeType);
|
|
81
|
-
const decodedBuffer = Buffer.from(data, "base64");
|
|
82
95
|
if (isTextLike) {
|
|
96
|
+
if (data === "") {
|
|
97
|
+
return { text: "" };
|
|
98
|
+
}
|
|
83
99
|
try {
|
|
84
|
-
|
|
85
|
-
return { text: decoded };
|
|
100
|
+
return { text: (0, import_env_aware_utils.base64Decode)(data.replace(/-/g, "+").replace(/_/g, "/")) };
|
|
86
101
|
} catch {
|
|
87
102
|
}
|
|
88
103
|
}
|
|
89
|
-
const sizeKb =
|
|
104
|
+
const sizeKb = base64ByteLength(data) / 1024;
|
|
90
105
|
return {
|
|
91
106
|
text: `[Binary artifact: ${artifactName}, type: ${mimeType}, size: ${sizeKb.toFixed(1)} KB. Content cannot be displayed inline.]`
|
|
92
107
|
};
|
|
@@ -214,5 +229,6 @@ const LOAD_ARTIFACTS = new LoadArtifactsTool();
|
|
|
214
229
|
// Annotate the CommonJS export names for ESM import in node:
|
|
215
230
|
0 && (module.exports = {
|
|
216
231
|
LOAD_ARTIFACTS,
|
|
217
|
-
LoadArtifactsTool
|
|
232
|
+
LoadArtifactsTool,
|
|
233
|
+
asSafePartForLlm
|
|
218
234
|
});
|
|
@@ -38,11 +38,13 @@ var import_base_tool = require("./base_tool.js");
|
|
|
38
38
|
* SPDX-License-Identifier: Apache-2.0
|
|
39
39
|
*/
|
|
40
40
|
const _LoadMemoryTool = class _LoadMemoryTool extends import_base_tool.BaseTool {
|
|
41
|
-
constructor() {
|
|
41
|
+
constructor(options = {}) {
|
|
42
|
+
var _a;
|
|
42
43
|
super({
|
|
43
44
|
name: "load_memory",
|
|
44
|
-
description: "Loads the memory for the current user
|
|
45
|
+
description: "Loads the memory for the current user."
|
|
45
46
|
});
|
|
47
|
+
this.textOnlyContent = (_a = options.textOnlyContent) != null ? _a : false;
|
|
46
48
|
}
|
|
47
49
|
_getDeclaration() {
|
|
48
50
|
return {
|
|
@@ -60,16 +62,13 @@ const _LoadMemoryTool = class _LoadMemoryTool extends import_base_tool.BaseTool
|
|
|
60
62
|
}
|
|
61
63
|
};
|
|
62
64
|
}
|
|
63
|
-
async runAsync({
|
|
64
|
-
args
|
|
65
|
-
toolContext
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
throw new Error("Memory service is not initialized.");
|
|
71
|
-
}
|
|
72
|
-
const searchMemoryResponse = await toolContext.searchMemory(query);
|
|
65
|
+
async runAsync({ args, toolContext }) {
|
|
66
|
+
const query = args["query"];
|
|
67
|
+
if (!toolContext.invocationContext.memoryService) {
|
|
68
|
+
throw new Error("Memory service is not initialized.");
|
|
69
|
+
}
|
|
70
|
+
const searchMemoryResponse = await toolContext.searchMemory(query);
|
|
71
|
+
if (this.textOnlyContent) {
|
|
73
72
|
return {
|
|
74
73
|
memories: searchMemoryResponse.memories.map((m) => {
|
|
75
74
|
var _a, _b;
|
|
@@ -84,10 +83,10 @@ const _LoadMemoryTool = class _LoadMemoryTool extends import_base_tool.BaseTool
|
|
|
84
83
|
};
|
|
85
84
|
})
|
|
86
85
|
};
|
|
87
|
-
} catch (e) {
|
|
88
|
-
console.error("ERROR in LoadMemoryTool runAsync:", e);
|
|
89
|
-
throw e;
|
|
90
86
|
}
|
|
87
|
+
return {
|
|
88
|
+
memories: searchMemoryResponse.memories
|
|
89
|
+
};
|
|
91
90
|
}
|
|
92
91
|
async processLlmRequest(request) {
|
|
93
92
|
await super.processLlmRequest(request);
|
|
@@ -38,6 +38,7 @@ __export(mcp_session_manager_exports, {
|
|
|
38
38
|
MCPSessionManager: () => MCPSessionManager
|
|
39
39
|
});
|
|
40
40
|
module.exports = __toCommonJS(mcp_session_manager_exports);
|
|
41
|
+
var import_instrumentation = require("../../telemetry/api/instrumentation.js");
|
|
41
42
|
var import_client_labels = require("../../utils/client_labels.js");
|
|
42
43
|
var import_error_utils = require("../../utils/error_utils.js");
|
|
43
44
|
var import_logger = require("../../utils/logger.js");
|
|
@@ -63,7 +64,8 @@ function buildTransportOptions(params) {
|
|
|
63
64
|
requestInit: {
|
|
64
65
|
...transportOptions == null ? void 0 : transportOptions.requestInit,
|
|
65
66
|
headers: (0, import_client_labels.mergeTrackingHeaders)(callerHeaders)
|
|
66
|
-
}
|
|
67
|
+
},
|
|
68
|
+
fetch: (0, import_instrumentation.instrumentMcpFetch)(transportOptions == null ? void 0 : transportOptions.fetch)
|
|
67
69
|
};
|
|
68
70
|
}
|
|
69
71
|
__name(buildTransportOptions, "buildTransportOptions");
|
|
@@ -75,7 +77,8 @@ function buildSseTransportOptions(params) {
|
|
|
75
77
|
requestInit: {
|
|
76
78
|
...transportOptions == null ? void 0 : transportOptions.requestInit,
|
|
77
79
|
headers: (0, import_client_labels.mergeTrackingHeaders)(callerHeaders)
|
|
78
|
-
}
|
|
80
|
+
},
|
|
81
|
+
fetch: (0, import_instrumentation.instrumentMcpFetch)(transportOptions == null ? void 0 : transportOptions.fetch)
|
|
79
82
|
};
|
|
80
83
|
}
|
|
81
84
|
__name(buildSseTransportOptions, "buildSseTransportOptions");
|
|
@@ -84,6 +87,23 @@ const _MCPSessionManager = class _MCPSessionManager {
|
|
|
84
87
|
this.activeSessions = /* @__PURE__ */ new Set();
|
|
85
88
|
this.connectionParams = connectionParams;
|
|
86
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Builds per-request options for MCP client operations.
|
|
92
|
+
*
|
|
93
|
+
* For a stdio connection with a configured `timeout`, the timeout is
|
|
94
|
+
* converted from seconds to milliseconds. Otherwise the MCP SDK applies its
|
|
95
|
+
* own default request timeout.
|
|
96
|
+
*
|
|
97
|
+
* @param signal Optional abort signal to attach to the request.
|
|
98
|
+
* @return The request options for the MCP SDK client.
|
|
99
|
+
*/
|
|
100
|
+
getRequestOptions(signal) {
|
|
101
|
+
const options = signal !== void 0 ? { signal } : {};
|
|
102
|
+
if (this.connectionParams.type === "StdioConnectionParams" && this.connectionParams.timeout !== void 0) {
|
|
103
|
+
options.timeout = this.connectionParams.timeout * 1e3;
|
|
104
|
+
}
|
|
105
|
+
return options;
|
|
106
|
+
}
|
|
87
107
|
async createSession() {
|
|
88
108
|
const { Client } = await (0, import_optional_peer.loadOptionalPeer)(
|
|
89
109
|
MCP_SDK,
|
|
@@ -101,7 +121,7 @@ const _MCPSessionManager = class _MCPSessionManager {
|
|
|
101
121
|
this.connectionParams.serverParams
|
|
102
122
|
);
|
|
103
123
|
transport.onerror = logTransportError;
|
|
104
|
-
await client.connect(transport);
|
|
124
|
+
await client.connect(transport, this.getRequestOptions());
|
|
105
125
|
break;
|
|
106
126
|
}
|
|
107
127
|
case "StreamableHTTPConnectionParams": {
|
|
@@ -57,9 +57,13 @@ const _MCPTool = class _MCPTool extends import_base_tool.BaseTool {
|
|
|
57
57
|
try {
|
|
58
58
|
const callRequest = {};
|
|
59
59
|
callRequest.params = { name: this.originalName, arguments: request.args };
|
|
60
|
-
const result = await session.callTool(
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
const result = await session.callTool(
|
|
61
|
+
callRequest.params,
|
|
62
|
+
void 0,
|
|
63
|
+
this.mcpSessionManager.getRequestOptions(
|
|
64
|
+
request.toolContext.abortSignal
|
|
65
|
+
)
|
|
66
|
+
);
|
|
63
67
|
return result;
|
|
64
68
|
} finally {
|
|
65
69
|
await this.mcpSessionManager.closeSession(session);
|
|
@@ -46,7 +46,10 @@ const _MCPToolset = class _MCPToolset extends import_base_toolset.BaseToolset {
|
|
|
46
46
|
const session = await this.mcpSessionManager.createSession();
|
|
47
47
|
let listResult;
|
|
48
48
|
try {
|
|
49
|
-
listResult = await session.listTools(
|
|
49
|
+
listResult = await session.listTools(
|
|
50
|
+
void 0,
|
|
51
|
+
this.mcpSessionManager.getRequestOptions()
|
|
52
|
+
);
|
|
50
53
|
} finally {
|
|
51
54
|
await this.mcpSessionManager.closeSession(session);
|
|
52
55
|
}
|
|
@@ -61,20 +64,7 @@ const _MCPToolset = class _MCPToolset extends import_base_toolset.BaseToolset {
|
|
|
61
64
|
};
|
|
62
65
|
return new import_mcp_tool.MCPTool(toolWithPrefix, this.mcpSessionManager, tool.name);
|
|
63
66
|
});
|
|
64
|
-
|
|
65
|
-
if (!filter || Array.isArray(filter) && filter.length === 0) {
|
|
66
|
-
return tools;
|
|
67
|
-
}
|
|
68
|
-
if (Array.isArray(filter)) {
|
|
69
|
-
return tools.filter((tool) => filter.includes(tool.name));
|
|
70
|
-
}
|
|
71
|
-
if (context) {
|
|
72
|
-
return tools.filter((tool) => filter(tool, context));
|
|
73
|
-
}
|
|
74
|
-
import_logger.logger.warn(
|
|
75
|
-
"MCPToolset: a ToolPredicate toolFilter was provided but getTools() was called without a ReadonlyContext. The filter will not be applied."
|
|
76
|
-
);
|
|
77
|
-
return tools;
|
|
67
|
+
return tools.filter((tool) => this.isToolSelected(tool, context));
|
|
78
68
|
}
|
|
79
69
|
/**
|
|
80
70
|
* Lists the names of the resources advertised by the MCP server.
|
|
@@ -84,7 +74,10 @@ const _MCPToolset = class _MCPToolset extends import_base_toolset.BaseToolset {
|
|
|
84
74
|
async listResources() {
|
|
85
75
|
const session = await this.mcpSessionManager.createSession();
|
|
86
76
|
try {
|
|
87
|
-
const result = await session.listResources(
|
|
77
|
+
const result = await session.listResources(
|
|
78
|
+
void 0,
|
|
79
|
+
this.mcpSessionManager.getRequestOptions()
|
|
80
|
+
);
|
|
88
81
|
return result.resources.map((resource) => resource.name);
|
|
89
82
|
} finally {
|
|
90
83
|
await this.mcpSessionManager.closeSession(session);
|
|
@@ -101,7 +94,10 @@ const _MCPToolset = class _MCPToolset extends import_base_toolset.BaseToolset {
|
|
|
101
94
|
const session = await this.mcpSessionManager.createSession();
|
|
102
95
|
let result;
|
|
103
96
|
try {
|
|
104
|
-
result = await session.listResources(
|
|
97
|
+
result = await session.listResources(
|
|
98
|
+
void 0,
|
|
99
|
+
this.mcpSessionManager.getRequestOptions()
|
|
100
|
+
);
|
|
105
101
|
} finally {
|
|
106
102
|
await this.mcpSessionManager.closeSession(session);
|
|
107
103
|
}
|
|
@@ -131,9 +127,12 @@ const _MCPToolset = class _MCPToolset extends import_base_toolset.BaseToolset {
|
|
|
131
127
|
}
|
|
132
128
|
const session = await this.mcpSessionManager.createSession();
|
|
133
129
|
try {
|
|
134
|
-
const result = await session.readResource(
|
|
135
|
-
|
|
136
|
-
|
|
130
|
+
const result = await session.readResource(
|
|
131
|
+
{
|
|
132
|
+
uri: resourceInfo.uri
|
|
133
|
+
},
|
|
134
|
+
this.mcpSessionManager.getRequestOptions()
|
|
135
|
+
);
|
|
137
136
|
return result.contents;
|
|
138
137
|
} finally {
|
|
139
138
|
await this.mcpSessionManager.closeSession(session);
|