@google/adk 2.0.0 → 2.1.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 +58 -6
- package/dist/cjs/a2a/agent_executor.js +10 -3
- 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 +6 -5
- 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 +5 -5
- package/dist/cjs/agents/processors/content_request_processor.js +4 -1
- 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/scoped_artifact_service.js +9 -0
- package/dist/cjs/artifacts/session_artifact_service.js +19 -0
- 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 +2 -2
- 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 +74 -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/index.js +47 -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 +2 -2
- 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 +1 -1
- package/dist/cjs/models/chrome_prompt_llm.js +304 -0
- package/dist/cjs/models/chrome_prompt_utils.js +229 -0
- 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/plugins/_reflect_retry_utils.js +142 -0
- 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/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/openapi_tool/auth/auth_helpers.js +11 -2
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +16 -18
- 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/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/utils/crypto_shim.js +16 -0
- package/dist/cjs/utils/gemini_schema_util.js +0 -6
- 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/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/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 +63 -6
- package/dist/esm/a2a/agent_executor.js +10 -3
- 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 +6 -5
- 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 +5 -5
- package/dist/esm/agents/processors/content_request_processor.js +4 -1
- 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/scoped_artifact_service.js +9 -0
- package/dist/esm/artifacts/session_artifact_service.js +12 -0
- 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 +2 -2
- 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 +73 -38
- 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/index.js +37 -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 +2 -2
- 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 +1 -1
- package/dist/esm/models/chrome_prompt_llm.js +285 -0
- package/dist/esm/models/chrome_prompt_utils.js +192 -0
- 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/plugins/_reflect_retry_utils.js +111 -0
- 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/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/openapi_tool/auth/auth_helpers.js +13 -2
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +16 -18
- 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/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/esm/utils/crypto_shim.js +14 -0
- package/dist/esm/utils/gemini_schema_util.js +0 -6
- 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/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/{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 +9 -7
- package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
- 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 +13 -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 +22 -20
- 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/index.d.ts +22 -1
- package/dist/types/memory/rag_memory_transcript.d.ts +55 -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 +68 -0
- package/dist/types/models/google_llm.d.ts +8 -3
- package/dist/types/models/registry.d.ts +3 -2
- package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
- package/dist/types/plugins/base_plugin.d.ts +12 -10
- 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/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 +5 -0
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +0 -1
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
- 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/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/utils/crypto_shim.d.ts +16 -0
- package/dist/types/utils/gemini_schema_util.d.ts +5 -7
- package/dist/types/utils/logger.d.ts +23 -1
- package/dist/types/utils/logger_browser.d.ts +28 -0
- package/dist/types/utils/logger_node.d.ts +20 -0
- 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 +304 -3
- package/dist/web/index_web.js.map +7 -0
- package/package.json +17 -14
- 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/base_auth_provider.js +0 -7
- package/dist/web/auth/credential_response_binding.js +0 -91
- package/dist/web/auth/credential_service/base_credential_service.js +0 -7
- 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/base_context_compactor.js +0 -7
- 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/crypto_shim.js +0 -18
- 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/version.js +0 -11
- 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
|
@@ -8,15 +8,12 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
8
8
|
* SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
*/
|
|
10
10
|
import { isGemini1Model, isGeminiModel } from "../utils/model_name.js";
|
|
11
|
-
import {
|
|
12
|
-
const _GoogleSearchTool = class _GoogleSearchTool extends
|
|
11
|
+
import { BuiltInTool } from "./built_in_tool.js";
|
|
12
|
+
const _GoogleSearchTool = class _GoogleSearchTool extends BuiltInTool {
|
|
13
13
|
constructor() {
|
|
14
14
|
super({ name: "google_search", description: "Google Search Tool" });
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
return Promise.resolve();
|
|
18
|
-
}
|
|
19
|
-
async processLlmRequest({
|
|
16
|
+
async applyBuiltInConfig({
|
|
20
17
|
llmRequest
|
|
21
18
|
}) {
|
|
22
19
|
if (!llmRequest.model) {
|
|
@@ -9,11 +9,10 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
9
9
|
*/
|
|
10
10
|
import { Type } from "@google/genai";
|
|
11
11
|
import { appendInstructions } from "../models/llm_request.js";
|
|
12
|
-
import {
|
|
12
|
+
import { logger } from "../utils/logger.js";
|
|
13
13
|
import {
|
|
14
14
|
BaseTool
|
|
15
15
|
} from "./base_tool.js";
|
|
16
|
-
const logger = getLogger();
|
|
17
16
|
const GEMINI_SUPPORTED_INLINE_MIME_PREFIXES = ["image/", "audio/", "video/"];
|
|
18
17
|
const GEMINI_SUPPORTED_INLINE_MIME_TYPES = /* @__PURE__ */ new Set(["application/pdf"]);
|
|
19
18
|
const TEXT_LIKE_MIME_TYPES = /* @__PURE__ */ new Set([
|
|
@@ -110,6 +109,7 @@ NOTE: Call when you need access to artifacts (for example, uploads saved by the
|
|
|
110
109
|
);
|
|
111
110
|
}
|
|
112
111
|
async appendArtifactsToLlmRequest(toolContext, llmRequest) {
|
|
112
|
+
var _a, _b;
|
|
113
113
|
if (!toolContext.invocationContext.artifactService) {
|
|
114
114
|
return;
|
|
115
115
|
}
|
|
@@ -130,33 +130,57 @@ NOTE: Call when you need access to artifacts (for example, uploads saved by the
|
|
|
130
130
|
artifacts.`
|
|
131
131
|
]);
|
|
132
132
|
const contents = llmRequest.contents;
|
|
133
|
-
if (contents
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
133
|
+
if (!contents || contents.length === 0) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
let startIndex = 0;
|
|
137
|
+
for (let i = contents.length - 1; i >= 0; i--) {
|
|
138
|
+
const content = contents[i];
|
|
139
|
+
const hasFunctionResponse = (_a = content.parts) == null ? void 0 : _a.some(
|
|
140
|
+
(part) => part.functionResponse !== void 0
|
|
141
|
+
);
|
|
142
|
+
const hasFunctionCall = (_b = content.parts) == null ? void 0 : _b.some(
|
|
143
|
+
(part) => part.functionCall !== void 0
|
|
144
|
+
);
|
|
145
|
+
if (content.role === "model" && !hasFunctionCall || content.role === "user" && !hasFunctionResponse) {
|
|
146
|
+
startIndex = i;
|
|
147
|
+
break;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const namesToLoad = [];
|
|
151
|
+
for (let i = startIndex; i < contents.length; i++) {
|
|
152
|
+
const content = contents[i];
|
|
153
|
+
if (content.role === "user" && content.parts) {
|
|
154
|
+
for (const part of content.parts) {
|
|
155
|
+
const functionResponse = part.functionResponse;
|
|
156
|
+
if (functionResponse && functionResponse.name === this.name) {
|
|
157
|
+
const response = functionResponse.response || {};
|
|
158
|
+
const artifactNames2 = response["artifact_names"] || [];
|
|
159
|
+
for (const name of artifactNames2) {
|
|
160
|
+
if (name && !namesToLoad.includes(name)) {
|
|
161
|
+
namesToLoad.push(name);
|
|
162
|
+
}
|
|
150
163
|
}
|
|
151
|
-
const artifactPart = asSafePartForLlm(artifact, artifactName);
|
|
152
|
-
llmRequest.contents.push({
|
|
153
|
-
role: "user",
|
|
154
|
-
parts: [{ text: `Artifact ${artifactName} is:` }, artifactPart]
|
|
155
|
-
});
|
|
156
164
|
}
|
|
157
165
|
}
|
|
158
166
|
}
|
|
159
167
|
}
|
|
168
|
+
for (const artifactName of namesToLoad) {
|
|
169
|
+
let artifact = await toolContext.loadArtifact(artifactName);
|
|
170
|
+
if (!artifact && !artifactName.startsWith("user:")) {
|
|
171
|
+
const prefixedName = `user:${artifactName}`;
|
|
172
|
+
artifact = await toolContext.loadArtifact(prefixedName);
|
|
173
|
+
}
|
|
174
|
+
if (!artifact) {
|
|
175
|
+
logger.warn(`Artifact "${artifactName}" not found, skipping`);
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
const artifactPart = asSafePartForLlm(artifact, artifactName);
|
|
179
|
+
llmRequest.contents.push({
|
|
180
|
+
role: "user",
|
|
181
|
+
parts: [{ text: `Artifact ${artifactName} is:` }, artifactPart]
|
|
182
|
+
});
|
|
183
|
+
}
|
|
160
184
|
}
|
|
161
185
|
};
|
|
162
186
|
__name(_LoadArtifactsTool, "LoadArtifactsTool");
|
|
@@ -7,186 +7,26 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
7
7
|
* Copyright 2026 Google LLC
|
|
8
8
|
* SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
*/
|
|
10
|
-
import { lookup } from "node:dns/promises";
|
|
11
|
-
import { isIP } from "node:net";
|
|
12
10
|
import { z } from "zod";
|
|
11
|
+
import {
|
|
12
|
+
isHttpUrl,
|
|
13
|
+
isLocalhostHostname,
|
|
14
|
+
isNonGlobalAddress,
|
|
15
|
+
normalizeHost,
|
|
16
|
+
resolveHostAddresses
|
|
17
|
+
} from "../utils/ssrf_guard.js";
|
|
13
18
|
import { FunctionTool } from "./function_tool.js";
|
|
14
|
-
const ALLOWED_SCHEMES = /* @__PURE__ */ new Set(["http:", "https:"]);
|
|
15
19
|
const DEFAULT_TIMEOUT_MS = 3e4;
|
|
16
|
-
const BLOCKED_IPV4_CIDRS = [
|
|
17
|
-
"0.0.0.0/8",
|
|
18
|
-
// "this host on this network"
|
|
19
|
-
"10.0.0.0/8",
|
|
20
|
-
// private
|
|
21
|
-
"100.64.0.0/10",
|
|
22
|
-
// shared address space / CGNAT
|
|
23
|
-
"127.0.0.0/8",
|
|
24
|
-
// loopback
|
|
25
|
-
"169.254.0.0/16",
|
|
26
|
-
// link-local (includes GCP metadata 169.254.169.254)
|
|
27
|
-
"172.16.0.0/12",
|
|
28
|
-
// private
|
|
29
|
-
"192.0.0.0/24",
|
|
30
|
-
// IETF protocol assignments
|
|
31
|
-
"192.0.2.0/24",
|
|
32
|
-
// TEST-NET-1 (documentation)
|
|
33
|
-
"192.88.99.0/24",
|
|
34
|
-
// 6to4 relay anycast (deprecated)
|
|
35
|
-
"192.168.0.0/16",
|
|
36
|
-
// private
|
|
37
|
-
"198.18.0.0/15",
|
|
38
|
-
// benchmarking
|
|
39
|
-
"198.51.100.0/24",
|
|
40
|
-
// TEST-NET-2 (documentation)
|
|
41
|
-
"203.0.113.0/24",
|
|
42
|
-
// TEST-NET-3 (documentation)
|
|
43
|
-
"224.0.0.0/4",
|
|
44
|
-
// multicast
|
|
45
|
-
"240.0.0.0/4"
|
|
46
|
-
// reserved / future use (includes 255.255.255.255)
|
|
47
|
-
].map(parseIpv4Cidr);
|
|
48
|
-
const BLOCKED_IPV6_CIDRS = [
|
|
49
|
-
"::/128",
|
|
50
|
-
// unspecified
|
|
51
|
-
"::1/128",
|
|
52
|
-
// loopback
|
|
53
|
-
"64:ff9b:1::/48",
|
|
54
|
-
// local NAT64
|
|
55
|
-
"100::/64",
|
|
56
|
-
// discard-only
|
|
57
|
-
"2001:db8::/32",
|
|
58
|
-
// documentation
|
|
59
|
-
"fc00::/7",
|
|
60
|
-
// unique-local (ULA, private)
|
|
61
|
-
"fe80::/10",
|
|
62
|
-
// link-local
|
|
63
|
-
"ff00::/8"
|
|
64
|
-
// multicast
|
|
65
|
-
].map(parseIpv6Cidr);
|
|
66
20
|
function failedToFetchMessage(url) {
|
|
67
21
|
return `Failed to fetch url: ${url}`;
|
|
68
22
|
}
|
|
69
23
|
__name(failedToFetchMessage, "failedToFetchMessage");
|
|
70
|
-
function isBlockedHostname(hostname) {
|
|
71
|
-
const normalized = hostname.replace(/\.+$/, "").toLowerCase();
|
|
72
|
-
return normalized === "localhost" || normalized.endsWith(".localhost");
|
|
73
|
-
}
|
|
74
|
-
__name(isBlockedHostname, "isBlockedHostname");
|
|
75
|
-
function normalizeHost(hostname) {
|
|
76
|
-
return hostname.startsWith("[") ? hostname.slice(1, -1) : hostname;
|
|
77
|
-
}
|
|
78
|
-
__name(normalizeHost, "normalizeHost");
|
|
79
|
-
function parseIpv4(address) {
|
|
80
|
-
const match = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(address);
|
|
81
|
-
if (!match) {
|
|
82
|
-
return null;
|
|
83
|
-
}
|
|
84
|
-
const octets = match.slice(1).map(Number);
|
|
85
|
-
if (octets.some((octet) => octet > 255)) {
|
|
86
|
-
return null;
|
|
87
|
-
}
|
|
88
|
-
return octets;
|
|
89
|
-
}
|
|
90
|
-
__name(parseIpv4, "parseIpv4");
|
|
91
|
-
function parseIpv6(address) {
|
|
92
|
-
if (isIP(address) !== 6) {
|
|
93
|
-
return null;
|
|
94
|
-
}
|
|
95
|
-
const [head, tail] = address.split("::");
|
|
96
|
-
const highGroups = head ? expandHextets(head) : [];
|
|
97
|
-
const lowGroups = tail ? expandHextets(tail) : [];
|
|
98
|
-
const compressed = address.includes("::") ? new Array(8 - highGroups.length - lowGroups.length).fill(0) : [];
|
|
99
|
-
return [...highGroups, ...compressed, ...lowGroups];
|
|
100
|
-
}
|
|
101
|
-
__name(parseIpv6, "parseIpv6");
|
|
102
|
-
function expandHextets(fragment) {
|
|
103
|
-
const hextets = [];
|
|
104
|
-
for (const group of fragment.split(":")) {
|
|
105
|
-
if (group.includes(".")) {
|
|
106
|
-
const octets = parseIpv4(group);
|
|
107
|
-
hextets.push(octets[0] << 8 | octets[1], octets[2] << 8 | octets[3]);
|
|
108
|
-
} else {
|
|
109
|
-
hextets.push(parseInt(group, 16));
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return hextets;
|
|
113
|
-
}
|
|
114
|
-
__name(expandHextets, "expandHextets");
|
|
115
|
-
function ipv4ToInt(octets) {
|
|
116
|
-
return (octets[0] << 24 | octets[1] << 16 | octets[2] << 8 | octets[3]) >>> 0;
|
|
117
|
-
}
|
|
118
|
-
__name(ipv4ToInt, "ipv4ToInt");
|
|
119
|
-
function hextetsToBigInt(hextets) {
|
|
120
|
-
let value = 0n;
|
|
121
|
-
for (const hextet of hextets) {
|
|
122
|
-
value = value << 16n | BigInt(hextet);
|
|
123
|
-
}
|
|
124
|
-
return value;
|
|
125
|
-
}
|
|
126
|
-
__name(hextetsToBigInt, "hextetsToBigInt");
|
|
127
|
-
function parseIpv4Cidr(cidr) {
|
|
128
|
-
const [address, prefix] = cidr.split("/");
|
|
129
|
-
const mask = 4294967295 << 32 - Number(prefix) >>> 0;
|
|
130
|
-
return { base: (ipv4ToInt(parseIpv4(address)) & mask) >>> 0, mask };
|
|
131
|
-
}
|
|
132
|
-
__name(parseIpv4Cidr, "parseIpv4Cidr");
|
|
133
|
-
function parseIpv6Cidr(cidr) {
|
|
134
|
-
const [address, prefix] = cidr.split("/");
|
|
135
|
-
return { base: hextetsToBigInt(parseIpv6(address)), prefix: Number(prefix) };
|
|
136
|
-
}
|
|
137
|
-
__name(parseIpv6Cidr, "parseIpv6Cidr");
|
|
138
|
-
function isBlockedIpv4(octets) {
|
|
139
|
-
const value = ipv4ToInt(octets);
|
|
140
|
-
return BLOCKED_IPV4_CIDRS.some(
|
|
141
|
-
({ base, mask }) => (value & mask) >>> 0 === base
|
|
142
|
-
);
|
|
143
|
-
}
|
|
144
|
-
__name(isBlockedIpv4, "isBlockedIpv4");
|
|
145
|
-
function isBlockedIpv6(hextets) {
|
|
146
|
-
const value = hextetsToBigInt(hextets);
|
|
147
|
-
if (value >> 32n === 0xffffn) {
|
|
148
|
-
return isBlockedIpv4([
|
|
149
|
-
Number(value >> 24n & 0xffn),
|
|
150
|
-
Number(value >> 16n & 0xffn),
|
|
151
|
-
Number(value >> 8n & 0xffn),
|
|
152
|
-
Number(value & 0xffn)
|
|
153
|
-
]);
|
|
154
|
-
}
|
|
155
|
-
return BLOCKED_IPV6_CIDRS.some(
|
|
156
|
-
({ base, prefix }) => value >> BigInt(128 - prefix) === base >> BigInt(128 - prefix)
|
|
157
|
-
);
|
|
158
|
-
}
|
|
159
|
-
__name(isBlockedIpv6, "isBlockedIpv6");
|
|
160
|
-
function isBlockedAddress(address) {
|
|
161
|
-
const octets = parseIpv4(address);
|
|
162
|
-
if (octets) {
|
|
163
|
-
return isBlockedIpv4(octets);
|
|
164
|
-
}
|
|
165
|
-
const hextets = parseIpv6(address);
|
|
166
|
-
if (hextets) {
|
|
167
|
-
return isBlockedIpv6(hextets);
|
|
168
|
-
}
|
|
169
|
-
return true;
|
|
170
|
-
}
|
|
171
|
-
__name(isBlockedAddress, "isBlockedAddress");
|
|
172
|
-
async function resolveHostAddresses(hostname) {
|
|
173
|
-
if (isIP(hostname) !== 0) {
|
|
174
|
-
return [hostname];
|
|
175
|
-
}
|
|
176
|
-
const records = await lookup(hostname, { all: true });
|
|
177
|
-
const addresses = [...new Set(records.map((record) => record.address))];
|
|
178
|
-
if (addresses.length === 0) {
|
|
179
|
-
throw new Error(`Unable to resolve host: ${hostname}`);
|
|
180
|
-
}
|
|
181
|
-
return addresses;
|
|
182
|
-
}
|
|
183
|
-
__name(resolveHostAddresses, "resolveHostAddresses");
|
|
184
24
|
function assertUrlAllowed(url) {
|
|
185
25
|
const parsed = new URL(url);
|
|
186
|
-
if (!
|
|
26
|
+
if (!isHttpUrl(parsed)) {
|
|
187
27
|
throw new Error(`Unsupported url scheme: ${url}`);
|
|
188
28
|
}
|
|
189
|
-
if (
|
|
29
|
+
if (isLocalhostHostname(parsed.hostname)) {
|
|
190
30
|
throw new Error(`Blocked host: ${parsed.hostname}`);
|
|
191
31
|
}
|
|
192
32
|
return parsed;
|
|
@@ -194,7 +34,7 @@ function assertUrlAllowed(url) {
|
|
|
194
34
|
__name(assertUrlAllowed, "assertUrlAllowed");
|
|
195
35
|
async function validateResolvedAddresses(hostname) {
|
|
196
36
|
const addresses = await resolveHostAddresses(hostname);
|
|
197
|
-
if (addresses.some(
|
|
37
|
+
if (addresses.some(isNonGlobalAddress)) {
|
|
198
38
|
throw new Error(`Blocked host: ${hostname}`);
|
|
199
39
|
}
|
|
200
40
|
}
|
|
@@ -71,13 +71,42 @@ before answering questions related to the resources.`
|
|
|
71
71
|
} catch (e) {
|
|
72
72
|
logger.warn(`Failed to list MCP resources: ${e}`);
|
|
73
73
|
}
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
if (!functionResponse || functionResponse.name !== this.name) {
|
|
74
|
+
const contents = llmRequest.contents;
|
|
75
|
+
if (!contents || contents.length === 0) {
|
|
77
76
|
return;
|
|
78
77
|
}
|
|
79
|
-
|
|
80
|
-
|
|
78
|
+
let startIndex = 0;
|
|
79
|
+
for (let i = contents.length - 1; i >= 0; i--) {
|
|
80
|
+
const content = contents[i];
|
|
81
|
+
const hasFunctionResponse = (_a = content.parts) == null ? void 0 : _a.some(
|
|
82
|
+
(part) => part.functionResponse !== void 0
|
|
83
|
+
);
|
|
84
|
+
const hasFunctionCall = (_b = content.parts) == null ? void 0 : _b.some(
|
|
85
|
+
(part) => part.functionCall !== void 0
|
|
86
|
+
);
|
|
87
|
+
if (content.role === "model" && !hasFunctionCall || content.role === "user" && !hasFunctionResponse) {
|
|
88
|
+
startIndex = i;
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
const requestedResourceNames = [];
|
|
93
|
+
for (let i = startIndex; i < contents.length; i++) {
|
|
94
|
+
const content = contents[i];
|
|
95
|
+
if (content.role === "user" && content.parts) {
|
|
96
|
+
for (const part of content.parts) {
|
|
97
|
+
const functionResponse = part.functionResponse;
|
|
98
|
+
if (functionResponse && functionResponse.name === this.name) {
|
|
99
|
+
const response = functionResponse.response || {};
|
|
100
|
+
const names = response["resource_names"] || [];
|
|
101
|
+
for (const name of names) {
|
|
102
|
+
if (name && !requestedResourceNames.includes(name)) {
|
|
103
|
+
requestedResourceNames.push(name);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
81
110
|
for (const resourceName of requestedResourceNames) {
|
|
82
111
|
try {
|
|
83
112
|
const resourceContents = await this.mcpToolset.readResource(resourceName);
|
|
@@ -7,7 +7,11 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
7
7
|
* Copyright 2026 Google LLC
|
|
8
8
|
* SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
*/
|
|
10
|
+
import {
|
|
11
|
+
AuthCredentialTypes
|
|
12
|
+
} from "../../../auth/auth_credential.js";
|
|
10
13
|
function applyCredential(url, headers, credential, authScheme) {
|
|
14
|
+
var _a;
|
|
11
15
|
if (!credential) return url;
|
|
12
16
|
if (credential.apiKey) {
|
|
13
17
|
let inLocation;
|
|
@@ -25,8 +29,15 @@ function applyCredential(url, headers, credential, authScheme) {
|
|
|
25
29
|
} else {
|
|
26
30
|
headers["Authorization"] = credential.apiKey;
|
|
27
31
|
}
|
|
28
|
-
} else if (credential.
|
|
29
|
-
|
|
32
|
+
} else if (credential.authType === AuthCredentialTypes.HTTP || credential.http) {
|
|
33
|
+
const httpCredentials = (_a = credential.http) == null ? void 0 : _a.credentials;
|
|
34
|
+
if (httpCredentials == null ? void 0 : httpCredentials.token) {
|
|
35
|
+
headers["Authorization"] = `Bearer ${httpCredentials.token}`;
|
|
36
|
+
} else if ((httpCredentials == null ? void 0 : httpCredentials.username) || (httpCredentials == null ? void 0 : httpCredentials.password)) {
|
|
37
|
+
throw new Error("Basic Authentication is not supported.");
|
|
38
|
+
} else {
|
|
39
|
+
throw new Error("Invalid HTTP auth credentials");
|
|
40
|
+
}
|
|
30
41
|
}
|
|
31
42
|
return url;
|
|
32
43
|
}
|
|
@@ -198,27 +198,25 @@ function prepareRequestBody(requestBody, body, bodyData, headers) {
|
|
|
198
198
|
const finalData = body !== void 0 ? body : Object.keys(bodyData).length > 0 ? bodyData : void 0;
|
|
199
199
|
if (requestBody && "content" in requestBody) {
|
|
200
200
|
const content = requestBody.content;
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
}
|
|
201
|
+
const mimeType = Object.keys(content)[0];
|
|
202
|
+
if (mimeType && finalData !== void 0) {
|
|
203
|
+
if (mimeType === "application/json" || mimeType.endsWith("+json")) {
|
|
204
|
+
headers["Content-Type"] = mimeType;
|
|
205
|
+
return typeof finalData === "string" ? finalData : JSON.stringify(finalData);
|
|
206
|
+
} else if (mimeType === "application/x-www-form-urlencoded") {
|
|
207
|
+
return new URLSearchParams(finalData);
|
|
208
|
+
} else if (mimeType === "multipart/form-data") {
|
|
209
|
+
const formData = new FormData();
|
|
210
|
+
if (typeof finalData === "object" && finalData !== null) {
|
|
211
|
+
for (const [key, value] of Object.entries(finalData)) {
|
|
212
|
+
formData.append(key, String(value));
|
|
214
213
|
}
|
|
215
|
-
return formData;
|
|
216
|
-
} else if (mimeType === "text/plain") {
|
|
217
|
-
headers["Content-Type"] = mimeType;
|
|
218
|
-
return String(finalData);
|
|
219
214
|
}
|
|
215
|
+
return formData;
|
|
216
|
+
} else if (mimeType === "text/plain") {
|
|
217
|
+
headers["Content-Type"] = mimeType;
|
|
218
|
+
return String(finalData);
|
|
220
219
|
}
|
|
221
|
-
break;
|
|
222
220
|
}
|
|
223
221
|
} else if (finalData !== void 0) {
|
|
224
222
|
headers["Content-Type"] = "application/json";
|
|
@@ -16,7 +16,7 @@ const _PreloadMemoryTool = class _PreloadMemoryTool extends BaseTool {
|
|
|
16
16
|
constructor() {
|
|
17
17
|
super({
|
|
18
18
|
// Name and description are not used because this tool only
|
|
19
|
-
// changes
|
|
19
|
+
// changes the LlmRequest.
|
|
20
20
|
name: "preload_memory",
|
|
21
21
|
description: "preload_memory"
|
|
22
22
|
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
5
|
+
/**
|
|
6
|
+
* @license
|
|
7
|
+
* Copyright 2026 Google LLC
|
|
8
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
+
*/
|
|
10
|
+
import { Type } from "@google/genai";
|
|
11
|
+
import { BaseTool } from "../base_tool.js";
|
|
12
|
+
const _BaseRetrievalTool = class _BaseRetrievalTool extends BaseTool {
|
|
13
|
+
_getDeclaration() {
|
|
14
|
+
return {
|
|
15
|
+
name: this.name,
|
|
16
|
+
description: this.description,
|
|
17
|
+
parameters: {
|
|
18
|
+
type: Type.OBJECT,
|
|
19
|
+
properties: {
|
|
20
|
+
query: {
|
|
21
|
+
type: Type.STRING,
|
|
22
|
+
description: "The query to retrieve."
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
__name(_BaseRetrievalTool, "BaseRetrievalTool");
|
|
30
|
+
let BaseRetrievalTool = _BaseRetrievalTool;
|
|
31
|
+
export {
|
|
32
|
+
BaseRetrievalTool
|
|
33
|
+
};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
19
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
20
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
21
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
22
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
23
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
24
|
+
mod
|
|
25
|
+
));
|
|
26
|
+
/**
|
|
27
|
+
* @license
|
|
28
|
+
* Copyright 2026 Google LLC
|
|
29
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
30
|
+
*/
|
|
31
|
+
import { logger } from "../../utils/logger.js";
|
|
32
|
+
import {
|
|
33
|
+
LlamaIndexRetrieval
|
|
34
|
+
} from "./llama_index_retrieval.js";
|
|
35
|
+
const LLAMA_INDEX_MODULE = "llamaindex";
|
|
36
|
+
const DIRECTORY_READER_MODULE = "@llamaindex/readers/directory";
|
|
37
|
+
async function importOptional(specifier) {
|
|
38
|
+
try {
|
|
39
|
+
return await Promise.resolve().then(() => __toESM(require(specifier)));
|
|
40
|
+
} catch (cause) {
|
|
41
|
+
throw new Error(
|
|
42
|
+
`FilesRetrieval needs the optional package '${specifier}', which is not installed. Install '${LLAMA_INDEX_MODULE}' and '@llamaindex/readers', or build the retriever yourself and pass it to LlamaIndexRetrieval.`,
|
|
43
|
+
{ cause }
|
|
44
|
+
);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
__name(importOptional, "importOptional");
|
|
48
|
+
const _FilesRetrieval = class _FilesRetrieval extends LlamaIndexRetrieval {
|
|
49
|
+
constructor(params) {
|
|
50
|
+
super({
|
|
51
|
+
name: params.name,
|
|
52
|
+
description: params.description,
|
|
53
|
+
retriever: params.retriever
|
|
54
|
+
});
|
|
55
|
+
this.inputDir = params.inputDir;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Indexes every file under `inputDir` and returns a tool that retrieves
|
|
59
|
+
* from it.
|
|
60
|
+
*
|
|
61
|
+
* Requires the optional `llamaindex` and `@llamaindex/readers` packages,
|
|
62
|
+
* and a configured LlamaIndex embedding model.
|
|
63
|
+
*/
|
|
64
|
+
static async create(params) {
|
|
65
|
+
logger.info(`Loading data from ${params.inputDir}`);
|
|
66
|
+
const { SimpleDirectoryReader } = await importOptional(
|
|
67
|
+
DIRECTORY_READER_MODULE
|
|
68
|
+
);
|
|
69
|
+
const { VectorStoreIndex } = await importOptional(LLAMA_INDEX_MODULE);
|
|
70
|
+
const documents = await new SimpleDirectoryReader().loadData({
|
|
71
|
+
directoryPath: params.inputDir
|
|
72
|
+
});
|
|
73
|
+
const index = await VectorStoreIndex.fromDocuments(documents);
|
|
74
|
+
return new _FilesRetrieval({ ...params, retriever: index.asRetriever() });
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
__name(_FilesRetrieval, "FilesRetrieval");
|
|
78
|
+
let FilesRetrieval = _FilesRetrieval;
|
|
79
|
+
export {
|
|
80
|
+
FilesRetrieval
|
|
81
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
5
|
+
/**
|
|
6
|
+
* @license
|
|
7
|
+
* Copyright 2026 Google LLC
|
|
8
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
+
*/
|
|
10
|
+
import { BaseRetrievalTool } from "./base_retrieval_tool.js";
|
|
11
|
+
const _LlamaIndexRetrieval = class _LlamaIndexRetrieval extends BaseRetrievalTool {
|
|
12
|
+
constructor(params) {
|
|
13
|
+
super({ name: params.name, description: params.description });
|
|
14
|
+
this.retriever = params.retriever;
|
|
15
|
+
}
|
|
16
|
+
async runAsync({ args }) {
|
|
17
|
+
var _a;
|
|
18
|
+
const nodes = await this.retriever.retrieve(String((_a = args["query"]) != null ? _a : ""));
|
|
19
|
+
const top = nodes[0];
|
|
20
|
+
if (!top) {
|
|
21
|
+
throw new Error(`${this.name} retrieved no results for the query.`);
|
|
22
|
+
}
|
|
23
|
+
return top.node.text;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
__name(_LlamaIndexRetrieval, "LlamaIndexRetrieval");
|
|
27
|
+
let LlamaIndexRetrieval = _LlamaIndexRetrieval;
|
|
28
|
+
export {
|
|
29
|
+
LlamaIndexRetrieval
|
|
30
|
+
};
|
|
@@ -8,15 +8,12 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
8
8
|
* SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
*/
|
|
10
10
|
import { isGemini2OrAbove, isGeminiModel } from "../utils/model_name.js";
|
|
11
|
-
import {
|
|
12
|
-
const _UrlContextTool = class _UrlContextTool extends
|
|
11
|
+
import { BuiltInTool } from "./built_in_tool.js";
|
|
12
|
+
const _UrlContextTool = class _UrlContextTool extends BuiltInTool {
|
|
13
13
|
constructor() {
|
|
14
14
|
super({ name: "url_context", description: "URL Context Tool" });
|
|
15
15
|
}
|
|
16
|
-
|
|
17
|
-
return Promise.resolve();
|
|
18
|
-
}
|
|
19
|
-
async processLlmRequest({
|
|
16
|
+
async applyBuiltInConfig({
|
|
20
17
|
llmRequest
|
|
21
18
|
}) {
|
|
22
19
|
if (!llmRequest.model) {
|
|
@@ -7,15 +7,14 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
7
7
|
* Copyright 2026 Google LLC
|
|
8
8
|
* SPDX-License-Identifier: Apache-2.0
|
|
9
9
|
*/
|
|
10
|
-
import {
|
|
10
|
+
import { logger } from "../utils/logger.js";
|
|
11
11
|
import {
|
|
12
12
|
isGemini1Model,
|
|
13
13
|
isGeminiModel,
|
|
14
14
|
isGeminiModelIdCheckDisabled
|
|
15
15
|
} from "../utils/model_name.js";
|
|
16
|
-
import {
|
|
17
|
-
const
|
|
18
|
-
const _VertexAiSearchTool = class _VertexAiSearchTool extends BaseTool {
|
|
16
|
+
import { BuiltInTool } from "./built_in_tool.js";
|
|
17
|
+
const _VertexAiSearchTool = class _VertexAiSearchTool extends BuiltInTool {
|
|
19
18
|
constructor(params) {
|
|
20
19
|
super({ name: "vertex_ai_search", description: "vertex_ai_search" });
|
|
21
20
|
const {
|
|
@@ -43,9 +42,6 @@ const _VertexAiSearchTool = class _VertexAiSearchTool extends BaseTool {
|
|
|
43
42
|
this.maxResults = maxResults;
|
|
44
43
|
this.bypassMultiToolsLimit = bypassMultiToolsLimit;
|
|
45
44
|
}
|
|
46
|
-
runAsync() {
|
|
47
|
-
return Promise.resolve();
|
|
48
|
-
}
|
|
49
45
|
/**
|
|
50
46
|
* Builds the VertexAISearch configuration.
|
|
51
47
|
*
|
|
@@ -62,7 +58,7 @@ const _VertexAiSearchTool = class _VertexAiSearchTool extends BaseTool {
|
|
|
62
58
|
maxResults: this.maxResults
|
|
63
59
|
};
|
|
64
60
|
}
|
|
65
|
-
async
|
|
61
|
+
async applyBuiltInConfig({
|
|
66
62
|
toolContext,
|
|
67
63
|
llmRequest
|
|
68
64
|
}) {
|