@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
|
@@ -1,60 +0,0 @@
|
|
|
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 {
|
|
11
|
-
isGemini1Model,
|
|
12
|
-
isGeminiModel,
|
|
13
|
-
isGeminiModelIdCheckDisabled
|
|
14
|
-
} from "../utils/model_name.js";
|
|
15
|
-
import { BaseTool } from "./base_tool.js";
|
|
16
|
-
function applyEnterpriseWebSearch(llmRequest) {
|
|
17
|
-
if (!llmRequest.model) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
const modelCheckDisabled = isGeminiModelIdCheckDisabled();
|
|
21
|
-
llmRequest.config = llmRequest.config || {};
|
|
22
|
-
llmRequest.config.tools = llmRequest.config.tools || [];
|
|
23
|
-
if (isGeminiModel(llmRequest.model) || modelCheckDisabled) {
|
|
24
|
-
if (isGemini1Model(llmRequest.model) && llmRequest.config.tools.length > 0) {
|
|
25
|
-
throw new Error(
|
|
26
|
-
"Enterprise Web Search tool cannot be used with other tools in Gemini 1.x."
|
|
27
|
-
);
|
|
28
|
-
}
|
|
29
|
-
llmRequest.config.tools.push({ enterpriseWebSearch: {} });
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
throw new Error(
|
|
33
|
-
"Enterprise Web Search tool is not supported for model ".concat(llmRequest.model)
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
__name(applyEnterpriseWebSearch, "applyEnterpriseWebSearch");
|
|
37
|
-
const _EnterpriseWebSearchTool = class _EnterpriseWebSearchTool extends BaseTool {
|
|
38
|
-
constructor() {
|
|
39
|
-
super({
|
|
40
|
-
name: "enterprise_web_search",
|
|
41
|
-
description: "Enterprise Web Search Tool"
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
runAsync() {
|
|
45
|
-
return Promise.resolve();
|
|
46
|
-
}
|
|
47
|
-
async processLlmRequest({
|
|
48
|
-
llmRequest
|
|
49
|
-
}) {
|
|
50
|
-
applyEnterpriseWebSearch(llmRequest);
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
__name(_EnterpriseWebSearchTool, "EnterpriseWebSearchTool");
|
|
54
|
-
let EnterpriseWebSearchTool = _EnterpriseWebSearchTool;
|
|
55
|
-
const ENTERPRISE_WEB_SEARCH = new EnterpriseWebSearchTool();
|
|
56
|
-
export {
|
|
57
|
-
ENTERPRISE_WEB_SEARCH,
|
|
58
|
-
EnterpriseWebSearchTool,
|
|
59
|
-
applyEnterpriseWebSearch
|
|
60
|
-
};
|
|
@@ -1,46 +0,0 @@
|
|
|
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 { buildExampleSi } from "../examples/example_util.js";
|
|
11
|
-
import { appendInstructions } from "../models/llm_request.js";
|
|
12
|
-
import {
|
|
13
|
-
BaseTool
|
|
14
|
-
} from "./base_tool.js";
|
|
15
|
-
const _ExampleTool = class _ExampleTool extends BaseTool {
|
|
16
|
-
constructor(examples) {
|
|
17
|
-
super({
|
|
18
|
-
// Name and description are not used because this tool only changes
|
|
19
|
-
// llmRequest.
|
|
20
|
-
name: "example_tool",
|
|
21
|
-
description: "example tool"
|
|
22
|
-
});
|
|
23
|
-
this.examples = examples;
|
|
24
|
-
}
|
|
25
|
-
async runAsync(_request) {
|
|
26
|
-
throw new Error("ExampleTool should not be called by model");
|
|
27
|
-
}
|
|
28
|
-
async processLlmRequest({
|
|
29
|
-
toolContext,
|
|
30
|
-
llmRequest
|
|
31
|
-
}) {
|
|
32
|
-
var _a, _b;
|
|
33
|
-
const parts = (_a = toolContext.userContent) == null ? void 0 : _a.parts;
|
|
34
|
-
if (!parts || !((_b = parts[0]) == null ? void 0 : _b.text)) {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
appendInstructions(llmRequest, [
|
|
38
|
-
buildExampleSi(this.examples, parts[0].text, llmRequest.model)
|
|
39
|
-
]);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
__name(_ExampleTool, "ExampleTool");
|
|
43
|
-
let ExampleTool = _ExampleTool;
|
|
44
|
-
export {
|
|
45
|
-
ExampleTool
|
|
46
|
-
};
|
|
@@ -1,47 +0,0 @@
|
|
|
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 { BaseTool } from "./base_tool.js";
|
|
11
|
-
const _ExitLoopTool = class _ExitLoopTool extends BaseTool {
|
|
12
|
-
/** Creates an ExitLoopTool with its fixed name and description. */
|
|
13
|
-
constructor() {
|
|
14
|
-
super({
|
|
15
|
-
name: "exit_loop",
|
|
16
|
-
description: "Exits the loop.\n\nCall this function only when you are instructed to do so."
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
/** Returns the function declaration for this tool. */
|
|
20
|
-
_getDeclaration() {
|
|
21
|
-
return {
|
|
22
|
-
name: this.name,
|
|
23
|
-
description: this.description
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Sets `escalate` and `skipSummarization` on the event actions, signalling
|
|
28
|
-
* the {@link LoopAgent} to stop iterating.
|
|
29
|
-
*
|
|
30
|
-
* @param request The tool request containing the current tool context.
|
|
31
|
-
* @returns An empty string response.
|
|
32
|
-
*/
|
|
33
|
-
async runAsync({
|
|
34
|
-
toolContext
|
|
35
|
-
}) {
|
|
36
|
-
toolContext.actions.escalate = true;
|
|
37
|
-
toolContext.actions.skipSummarization = true;
|
|
38
|
-
return "";
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
__name(_ExitLoopTool, "ExitLoopTool");
|
|
42
|
-
let ExitLoopTool = _ExitLoopTool;
|
|
43
|
-
const EXIT_LOOP = new ExitLoopTool();
|
|
44
|
-
export {
|
|
45
|
-
EXIT_LOOP,
|
|
46
|
-
ExitLoopTool
|
|
47
|
-
};
|
|
@@ -1,92 +0,0 @@
|
|
|
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 { appendInstructions } from "../models/llm_request.js";
|
|
12
|
-
import {
|
|
13
|
-
BaseTool
|
|
14
|
-
} from "./base_tool.js";
|
|
15
|
-
const FINISH_TASK_TOOL_NAME = "finish_task";
|
|
16
|
-
const FINISH_TASK_SUCCESS_RESULT = "Task completed.";
|
|
17
|
-
const DEFAULT_TASK_OUTPUT_SCHEMA = {
|
|
18
|
-
type: Type.OBJECT,
|
|
19
|
-
properties: {
|
|
20
|
-
result: {
|
|
21
|
-
type: Type.STRING,
|
|
22
|
-
description: "A brief summary of what the agent accomplished."
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
required: ["result"]
|
|
26
|
-
};
|
|
27
|
-
const _FinishTaskTool = class _FinishTaskTool extends BaseTool {
|
|
28
|
-
constructor(outputSchema) {
|
|
29
|
-
const schema = outputSchema != null ? outputSchema : DEFAULT_TASK_OUTPUT_SCHEMA;
|
|
30
|
-
let description = "Signal that this agent has completed its delegated task. Call this when you have finished your delegated task.";
|
|
31
|
-
if (outputSchema) {
|
|
32
|
-
description += " Pass the required output data in the parameters.";
|
|
33
|
-
}
|
|
34
|
-
super({ name: FINISH_TASK_TOOL_NAME, description });
|
|
35
|
-
this.outputSchema = schema;
|
|
36
|
-
this.wrapperKey = schema.type === Type.OBJECT ? void 0 : "result";
|
|
37
|
-
}
|
|
38
|
-
_getDeclaration() {
|
|
39
|
-
const parameters = this.wrapperKey ? {
|
|
40
|
-
type: Type.OBJECT,
|
|
41
|
-
properties: { [this.wrapperKey]: this.outputSchema },
|
|
42
|
-
required: [this.wrapperKey]
|
|
43
|
-
} : this.outputSchema;
|
|
44
|
-
return { name: this.name, description: this.description, parameters };
|
|
45
|
-
}
|
|
46
|
-
async processLlmRequest(request) {
|
|
47
|
-
await super.processLlmRequest(request);
|
|
48
|
-
appendInstructions(request.llmRequest, [
|
|
49
|
-
"Do NOT call `finish_task` prematurely. Use your available tools to fully complete every aspect of the task first. If the task is unclear, ask the user for clarification before proceeding. Once the task is fully complete, call `finish_task` by itself with no accompanying text output."
|
|
50
|
-
]);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Extracts the task output from a `finish_task` call's arguments, applying the
|
|
54
|
-
* wrapper-key unwrapping when the schema is a non-object.
|
|
55
|
-
*/
|
|
56
|
-
extractOutput(args) {
|
|
57
|
-
if (this.wrapperKey) {
|
|
58
|
-
return args[this.wrapperKey];
|
|
59
|
-
}
|
|
60
|
-
return args;
|
|
61
|
-
}
|
|
62
|
-
async runAsync({ args }) {
|
|
63
|
-
const value = this.wrapperKey ? args[this.wrapperKey] : args;
|
|
64
|
-
const missing = this.missingRequiredKeys(value);
|
|
65
|
-
if (missing.length > 0) {
|
|
66
|
-
return {
|
|
67
|
-
error: "Invoking `".concat(this.name, "()` failed due to missing required ") + "parameters: ".concat(missing.join(", "), ". You could retry calling this ") + "tool, but it is IMPORTANT for you to provide all the mandatory parameters with correct types."
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
return FINISH_TASK_SUCCESS_RESULT;
|
|
71
|
-
}
|
|
72
|
-
/** Returns any `required` keys the schema declares that are absent. */
|
|
73
|
-
missingRequiredKeys(value) {
|
|
74
|
-
var _a;
|
|
75
|
-
const required = this.wrapperKey ? value === void 0 || value === null ? [this.wrapperKey] : [] : (_a = this.outputSchema.required) != null ? _a : [];
|
|
76
|
-
if (this.wrapperKey) {
|
|
77
|
-
return required;
|
|
78
|
-
}
|
|
79
|
-
if (typeof value !== "object" || value === null) {
|
|
80
|
-
return required;
|
|
81
|
-
}
|
|
82
|
-
const obj = value;
|
|
83
|
-
return required.filter((key) => obj[key] === void 0);
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
__name(_FinishTaskTool, "FinishTaskTool");
|
|
87
|
-
let FinishTaskTool = _FinishTaskTool;
|
|
88
|
-
export {
|
|
89
|
-
FINISH_TASK_SUCCESS_RESULT,
|
|
90
|
-
FINISH_TASK_TOOL_NAME,
|
|
91
|
-
FinishTaskTool
|
|
92
|
-
};
|
|
@@ -1,51 +0,0 @@
|
|
|
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 2025 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
const _ForwardingArtifactService = class _ForwardingArtifactService {
|
|
11
|
-
constructor(toolContext) {
|
|
12
|
-
this.toolContext = toolContext;
|
|
13
|
-
this.invocationContext = toolContext.invocationContext;
|
|
14
|
-
}
|
|
15
|
-
async saveArtifact(request) {
|
|
16
|
-
return this.toolContext.saveArtifact(request.filename, request.artifact);
|
|
17
|
-
}
|
|
18
|
-
async loadArtifact(request) {
|
|
19
|
-
return this.toolContext.loadArtifact(request.filename, request.version);
|
|
20
|
-
}
|
|
21
|
-
async listArtifactKeys(_request) {
|
|
22
|
-
return this.toolContext.listArtifacts();
|
|
23
|
-
}
|
|
24
|
-
getArtifactService() {
|
|
25
|
-
const service = this.invocationContext.artifactService;
|
|
26
|
-
if (!service) {
|
|
27
|
-
throw new Error("Artifact service is not initialized.");
|
|
28
|
-
}
|
|
29
|
-
return service;
|
|
30
|
-
}
|
|
31
|
-
async deleteArtifact(request) {
|
|
32
|
-
return this.getArtifactService().deleteArtifact(request.filename);
|
|
33
|
-
}
|
|
34
|
-
async listVersions(request) {
|
|
35
|
-
return this.getArtifactService().listVersions(request.filename);
|
|
36
|
-
}
|
|
37
|
-
async listArtifactVersions(request) {
|
|
38
|
-
return this.getArtifactService().listArtifactVersions(request.filename);
|
|
39
|
-
}
|
|
40
|
-
async getArtifactVersion(request) {
|
|
41
|
-
return this.getArtifactService().getArtifactVersion({
|
|
42
|
-
filename: request.filename,
|
|
43
|
-
version: request.version
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
__name(_ForwardingArtifactService, "ForwardingArtifactService");
|
|
48
|
-
let ForwardingArtifactService = _ForwardingArtifactService;
|
|
49
|
-
export {
|
|
50
|
-
ForwardingArtifactService
|
|
51
|
-
};
|
|
@@ -1,151 +0,0 @@
|
|
|
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 2025 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
var _a, _b;
|
|
11
|
-
import { Type } from "@google/genai";
|
|
12
|
-
import { isZodObject, zodObjectToSchema } from "../utils/simple_zod_to_json.js";
|
|
13
|
-
import { BaseTool } from "./base_tool.js";
|
|
14
|
-
function toSchema(parameters) {
|
|
15
|
-
if (parameters === void 0) {
|
|
16
|
-
return { type: Type.OBJECT, properties: {} };
|
|
17
|
-
}
|
|
18
|
-
if (isZodObject(parameters)) {
|
|
19
|
-
return zodObjectToSchema(parameters);
|
|
20
|
-
}
|
|
21
|
-
return parameters;
|
|
22
|
-
}
|
|
23
|
-
__name(toSchema, "toSchema");
|
|
24
|
-
const FUNCTION_TOOL_SIGNATURE_SYMBOL = Symbol.for("google.adk.functionTool");
|
|
25
|
-
function isFunctionTool(obj) {
|
|
26
|
-
return typeof obj === "object" && obj !== null && FUNCTION_TOOL_SIGNATURE_SYMBOL in obj && obj[FUNCTION_TOOL_SIGNATURE_SYMBOL] === true;
|
|
27
|
-
}
|
|
28
|
-
__name(isFunctionTool, "isFunctionTool");
|
|
29
|
-
const _FunctionTool = class _FunctionTool extends (_b = BaseTool, _a = FUNCTION_TOOL_SIGNATURE_SYMBOL, _b) {
|
|
30
|
-
/**
|
|
31
|
-
* The constructor acts as the user-friendly factory.
|
|
32
|
-
* @param options The configuration for the tool.
|
|
33
|
-
*/
|
|
34
|
-
constructor(options) {
|
|
35
|
-
var _a2, _b2;
|
|
36
|
-
const name = (_a2 = options.name) != null ? _a2 : options.execute.name;
|
|
37
|
-
if (!name) {
|
|
38
|
-
throw new Error(
|
|
39
|
-
"Tool name cannot be empty. Either name the `execute` function or provide a `name`."
|
|
40
|
-
);
|
|
41
|
-
}
|
|
42
|
-
super({
|
|
43
|
-
name,
|
|
44
|
-
description: options.description,
|
|
45
|
-
isLongRunning: options.isLongRunning
|
|
46
|
-
});
|
|
47
|
-
/** A unique symbol to identify ADK function tool class. */
|
|
48
|
-
this[_a] = true;
|
|
49
|
-
this.execute = options.execute;
|
|
50
|
-
this.parameters = options.parameters;
|
|
51
|
-
this.requireConfirmation = (_b2 = options.requireConfirmation) != null ? _b2 : false;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Returns the function declaration derived from the tool's name, description,
|
|
55
|
-
* and parameter schema.
|
|
56
|
-
*/
|
|
57
|
-
_getDeclaration() {
|
|
58
|
-
return {
|
|
59
|
-
name: this.name,
|
|
60
|
-
description: this.description,
|
|
61
|
-
parameters: toSchema(this.parameters)
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Validates the model-provided arguments against the parameter schema and
|
|
66
|
-
* invokes the user-defined `execute` function.
|
|
67
|
-
*
|
|
68
|
-
* @param req The tool request containing arguments and tool context.
|
|
69
|
-
* @returns A promise resolving to the function's return value.
|
|
70
|
-
*/
|
|
71
|
-
async runAsync(req) {
|
|
72
|
-
try {
|
|
73
|
-
const validatedArgs = this.validateArgs(req.args);
|
|
74
|
-
const pending = await this.checkConfirmation(
|
|
75
|
-
validatedArgs,
|
|
76
|
-
req.toolContext
|
|
77
|
-
);
|
|
78
|
-
if (pending !== void 0) {
|
|
79
|
-
return pending;
|
|
80
|
-
}
|
|
81
|
-
return await this.execute(validatedArgs, req.toolContext);
|
|
82
|
-
} catch (error) {
|
|
83
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
84
|
-
throw new Error("Error in tool '".concat(this.name, "': ").concat(errorMessage));
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Whether this call is gated on human approval — the static flag, or the
|
|
89
|
-
* predicate evaluated against the validated arguments.
|
|
90
|
-
*
|
|
91
|
-
* @param args The arguments the tool would run with.
|
|
92
|
-
* @param toolContext The context of the call, when there is one.
|
|
93
|
-
* @return Whether the call requires confirmation.
|
|
94
|
-
*/
|
|
95
|
-
async checkRequireConfirmation(args, toolContext) {
|
|
96
|
-
if (typeof this.requireConfirmation !== "function") {
|
|
97
|
-
return this.requireConfirmation;
|
|
98
|
-
}
|
|
99
|
-
return this.requireConfirmation(this.validateArgs(args), toolContext);
|
|
100
|
-
}
|
|
101
|
-
/** Parses `args` against the parameter schema, when one is declared. */
|
|
102
|
-
validateArgs(args) {
|
|
103
|
-
if (isZodObject(this.parameters)) {
|
|
104
|
-
return this.parameters.parse(args);
|
|
105
|
-
}
|
|
106
|
-
return args;
|
|
107
|
-
}
|
|
108
|
-
/** Resolves `requireConfirmation`, which may be a flag or a predicate. */
|
|
109
|
-
async evaluateRequireConfirmation(input, toolContext) {
|
|
110
|
-
return typeof this.requireConfirmation === "function" ? this.requireConfirmation(input, toolContext) : this.requireConfirmation;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Evaluates the confirmation gate. Returns `undefined` if the tool may
|
|
114
|
-
* proceed; otherwise returns the function response payload to surface instead
|
|
115
|
-
* of running (a request-for-confirmation on the first pass, or a rejection
|
|
116
|
-
* once the user declined).
|
|
117
|
-
*/
|
|
118
|
-
async checkConfirmation(input, toolContext) {
|
|
119
|
-
const requireConfirmation = await this.evaluateRequireConfirmation(
|
|
120
|
-
input,
|
|
121
|
-
toolContext
|
|
122
|
-
);
|
|
123
|
-
if (!requireConfirmation) {
|
|
124
|
-
return void 0;
|
|
125
|
-
}
|
|
126
|
-
if (!toolContext) {
|
|
127
|
-
throw new Error(
|
|
128
|
-
"Tool '".concat(this.name, "' requires confirmation but no tool context was provided.")
|
|
129
|
-
);
|
|
130
|
-
}
|
|
131
|
-
if (!toolContext.toolConfirmation) {
|
|
132
|
-
toolContext.requestConfirmation({
|
|
133
|
-
hint: "Please approve or reject the tool call ".concat(this.name, "() by ") + "responding with a FunctionResponse with an expected ToolConfirmation payload."
|
|
134
|
-
});
|
|
135
|
-
toolContext.actions.skipSummarization = true;
|
|
136
|
-
return {
|
|
137
|
-
error: "This tool call requires confirmation, please approve or reject."
|
|
138
|
-
};
|
|
139
|
-
}
|
|
140
|
-
if (!toolContext.toolConfirmation.confirmed) {
|
|
141
|
-
return { error: "This tool call is rejected." };
|
|
142
|
-
}
|
|
143
|
-
return void 0;
|
|
144
|
-
}
|
|
145
|
-
};
|
|
146
|
-
__name(_FunctionTool, "FunctionTool");
|
|
147
|
-
let FunctionTool = _FunctionTool;
|
|
148
|
-
export {
|
|
149
|
-
FunctionTool,
|
|
150
|
-
isFunctionTool
|
|
151
|
-
};
|
|
@@ -1,27 +0,0 @@
|
|
|
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 { z } from "zod";
|
|
11
|
-
import { LongRunningFunctionTool } from "./long_running_tool.js";
|
|
12
|
-
const getUserChoiceTool = new LongRunningFunctionTool({
|
|
13
|
-
name: "get_user_choice",
|
|
14
|
-
description: "Presents a list of options to the user and awaits their selection.",
|
|
15
|
-
parameters: z.object({
|
|
16
|
-
options: z.array(z.string()).describe("List of options to present to the user.")
|
|
17
|
-
}),
|
|
18
|
-
execute: /* @__PURE__ */ __name(async (input, context) => {
|
|
19
|
-
if (context) {
|
|
20
|
-
context.actions.skipSummarization = true;
|
|
21
|
-
}
|
|
22
|
-
return null;
|
|
23
|
-
}, "execute")
|
|
24
|
-
});
|
|
25
|
-
export {
|
|
26
|
-
getUserChoiceTool
|
|
27
|
-
};
|
|
@@ -1,59 +0,0 @@
|
|
|
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 {
|
|
11
|
-
isGemini1Model,
|
|
12
|
-
isGeminiModel,
|
|
13
|
-
isGeminiModelIdCheckDisabled
|
|
14
|
-
} from "../utils/model_name.js";
|
|
15
|
-
import { BaseTool } from "./base_tool.js";
|
|
16
|
-
function applyGoogleMapsGrounding(llmRequest) {
|
|
17
|
-
if (!llmRequest.model) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
const modelCheckDisabled = isGeminiModelIdCheckDisabled();
|
|
21
|
-
llmRequest.config = llmRequest.config || {};
|
|
22
|
-
llmRequest.config.tools = llmRequest.config.tools || [];
|
|
23
|
-
if (isGemini1Model(llmRequest.model)) {
|
|
24
|
-
throw new Error(
|
|
25
|
-
"Google Maps grounding tool cannot be used with Gemini 1.x models."
|
|
26
|
-
);
|
|
27
|
-
}
|
|
28
|
-
if (isGeminiModel(llmRequest.model) || modelCheckDisabled) {
|
|
29
|
-
llmRequest.config.tools.push({
|
|
30
|
-
googleMaps: {}
|
|
31
|
-
});
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
throw new Error(
|
|
35
|
-
"Google maps tool is not supported for model ".concat(llmRequest.model)
|
|
36
|
-
);
|
|
37
|
-
}
|
|
38
|
-
__name(applyGoogleMapsGrounding, "applyGoogleMapsGrounding");
|
|
39
|
-
const _GoogleMapsGroundingTool = class _GoogleMapsGroundingTool extends BaseTool {
|
|
40
|
-
constructor() {
|
|
41
|
-
super({ name: "google_maps", description: "Google Maps Grounding Tool" });
|
|
42
|
-
}
|
|
43
|
-
runAsync() {
|
|
44
|
-
return Promise.resolve();
|
|
45
|
-
}
|
|
46
|
-
async processLlmRequest({
|
|
47
|
-
llmRequest
|
|
48
|
-
}) {
|
|
49
|
-
applyGoogleMapsGrounding(llmRequest);
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
__name(_GoogleMapsGroundingTool, "GoogleMapsGroundingTool");
|
|
53
|
-
let GoogleMapsGroundingTool = _GoogleMapsGroundingTool;
|
|
54
|
-
const GOOGLE_MAPS_GROUNDING = new GoogleMapsGroundingTool();
|
|
55
|
-
export {
|
|
56
|
-
GOOGLE_MAPS_GROUNDING,
|
|
57
|
-
GoogleMapsGroundingTool,
|
|
58
|
-
applyGoogleMapsGrounding
|
|
59
|
-
};
|
|
@@ -1,55 +0,0 @@
|
|
|
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 2025 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
import { isGemini1Model, isGeminiModel } from "../utils/model_name.js";
|
|
11
|
-
import { BaseTool } from "./base_tool.js";
|
|
12
|
-
const _GoogleSearchTool = class _GoogleSearchTool extends BaseTool {
|
|
13
|
-
constructor() {
|
|
14
|
-
super({ name: "google_search", description: "Google Search Tool" });
|
|
15
|
-
}
|
|
16
|
-
runAsync() {
|
|
17
|
-
return Promise.resolve();
|
|
18
|
-
}
|
|
19
|
-
async processLlmRequest({
|
|
20
|
-
llmRequest
|
|
21
|
-
}) {
|
|
22
|
-
if (!llmRequest.model) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
llmRequest.config = llmRequest.config || {};
|
|
26
|
-
llmRequest.config.tools = llmRequest.config.tools || [];
|
|
27
|
-
if (isGemini1Model(llmRequest.model)) {
|
|
28
|
-
if (llmRequest.config.tools.length > 0) {
|
|
29
|
-
throw new Error(
|
|
30
|
-
"Google search tool can not be used with other tools in Gemini 1.x."
|
|
31
|
-
);
|
|
32
|
-
}
|
|
33
|
-
llmRequest.config.tools.push({
|
|
34
|
-
googleSearchRetrieval: {}
|
|
35
|
-
});
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
if (isGeminiModel(llmRequest.model)) {
|
|
39
|
-
llmRequest.config.tools.push({
|
|
40
|
-
googleSearch: {}
|
|
41
|
-
});
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
throw new Error(
|
|
45
|
-
"Google search tool is not supported for model ".concat(llmRequest.model)
|
|
46
|
-
);
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
__name(_GoogleSearchTool, "GoogleSearchTool");
|
|
50
|
-
let GoogleSearchTool = _GoogleSearchTool;
|
|
51
|
-
const GOOGLE_SEARCH = new GoogleSearchTool();
|
|
52
|
-
export {
|
|
53
|
-
GOOGLE_SEARCH,
|
|
54
|
-
GoogleSearchTool
|
|
55
|
-
};
|