@google/adk 1.6.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 +17 -28
- package/dist/cjs/a2a/a2a_remote_agent.js +13 -7
- package/dist/cjs/a2a/a2a_remote_agent_run_processor.js +7 -3
- package/dist/cjs/a2a/a2a_remote_agent_utils.js +111 -2
- package/dist/cjs/a2a/agent_card.js +90 -8
- package/dist/cjs/a2a/agent_executor.js +34 -18
- package/dist/cjs/a2a/agent_to_a2a.js +28 -11
- package/dist/cjs/a2a/auth.js +3 -0
- package/dist/cjs/a2a/event_converter_utils.js +10 -0
- package/dist/cjs/a2a/event_processor_utils.js +71 -35
- package/dist/cjs/a2a/executor_context.js +6 -2
- package/dist/cjs/a2a/index.js +57 -0
- package/dist/cjs/a2a/metadata_converter_utils.js +5 -0
- package/dist/cjs/a2a/part_converter_utils.js +12 -0
- package/dist/cjs/a2a/request_metadata.js +94 -0
- package/dist/cjs/agents/active_streaming_tool.js +5 -2
- package/dist/cjs/agents/base_agent.js +55 -17
- package/dist/cjs/agents/context.js +12 -2
- package/dist/cjs/agents/framework_function_calls.js +64 -0
- package/dist/cjs/agents/functions.js +185 -60
- package/dist/cjs/agents/instructions.js +51 -12
- package/dist/cjs/agents/invocation_context.js +43 -8
- package/dist/cjs/agents/live_request_queue.js +29 -5
- package/dist/cjs/agents/llm_agent.js +541 -50
- package/dist/cjs/agents/loop_agent.js +20 -3
- package/dist/cjs/agents/parallel_agent.js +22 -3
- package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +32 -8
- package/dist/cjs/agents/processors/base_llm_processor.js +9 -4
- package/dist/cjs/agents/processors/basic_llm_request_processor.js +6 -3
- package/dist/cjs/agents/processors/code_execution_request_processor.js +20 -7
- package/dist/cjs/agents/processors/content_processor_utils.js +85 -15
- package/dist/cjs/agents/processors/content_request_processor.js +13 -5
- package/dist/cjs/agents/processors/context_compactor_request_processor.js +5 -2
- package/dist/cjs/agents/processors/identity_llm_request_processor.js +12 -4
- package/dist/cjs/agents/processors/instructions_llm_request_processor.js +5 -2
- package/dist/cjs/agents/processors/interactions_request_processor.js +5 -2
- package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +320 -92
- package/dist/cjs/agents/processors/request_input_llm_request_processor.js +214 -0
- package/dist/cjs/agents/processors/tool_filter_request_processor.js +5 -2
- package/dist/cjs/agents/readonly_context.js +13 -3
- package/dist/cjs/agents/routed_agent.js +7 -14
- package/dist/cjs/agents/run_config.js +12 -0
- package/dist/cjs/agents/sequential_agent.js +21 -4
- package/dist/cjs/agents/user_input_request.js +145 -0
- package/dist/cjs/apps/app.js +12 -12
- package/dist/cjs/apps/resumability_config.js +2 -0
- package/dist/cjs/artifacts/file_artifact_service.js +22 -4
- package/dist/cjs/artifacts/gcs_artifact_service.js +46 -11
- package/dist/cjs/artifacts/in_memory_artifact_service.js +9 -2
- package/dist/cjs/artifacts/registry.js +6 -1
- package/dist/cjs/artifacts/scoped_artifact_service.js +14 -2
- package/dist/cjs/artifacts/session_artifact_service.js +19 -0
- package/dist/cjs/auth/auth_handler.js +49 -10
- package/dist/cjs/auth/auth_preprocessor.js +48 -40
- package/dist/cjs/auth/auth_provider_registry.js +5 -2
- package/dist/cjs/auth/auth_schemes.js +2 -0
- package/dist/cjs/auth/credential_response_binding.js +101 -0
- package/dist/cjs/auth/credential_service/in_memory_credential_service.js +5 -2
- package/dist/cjs/auth/credential_service/session_state_credential_service.js +5 -2
- package/dist/cjs/auth/exchanger/base_credential_exchanger.js +5 -2
- package/dist/cjs/auth/exchanger/credential_exchanger_registry.js +5 -2
- package/dist/cjs/auth/oauth2/oauth2_credential_exchanger.js +8 -2
- package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +6 -3
- package/dist/cjs/auth/oauth2/oauth2_discovery.js +7 -2
- package/dist/cjs/auth/oauth2/oauth2_utils.js +23 -2
- package/dist/cjs/auth/refresher/base_credential_refresher.js +5 -2
- package/dist/cjs/auth/refresher/credential_refresher_registry.js +5 -2
- package/dist/cjs/code_executors/agent_engine_sandbox_code_executor.js +3 -0
- package/dist/cjs/code_executors/base_code_executor.js +7 -3
- package/dist/cjs/code_executors/built_in_code_executor.js +7 -3
- package/dist/cjs/code_executors/code_execution_utils.js +8 -2
- package/dist/cjs/code_executors/code_executor_context.js +5 -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 +19 -8
- package/dist/cjs/common.js +180 -46
- package/dist/cjs/context/agent_controlled_context_compactor.js +15 -7
- package/dist/cjs/context/anchored_context_compactor.js +46 -20
- package/dist/cjs/context/compaction_utils.js +18 -6
- package/dist/cjs/context/summarizers/llm_summarizer.js +5 -2
- package/dist/cjs/context/token_based_context_compactor.js +19 -5
- package/dist/cjs/context/trajectory_thought_pruning_compactor.js +22 -12
- package/dist/cjs/context/truncating_context_compactor.js +22 -7
- package/dist/cjs/environment/base_environment.js +97 -0
- package/dist/cjs/environment/local_environment.js +186 -0
- 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/compacted_event.js +4 -0
- package/dist/cjs/events/event.js +38 -3
- package/dist/cjs/events/event_actions.js +12 -0
- package/dist/cjs/events/structured_events.js +2 -0
- package/dist/cjs/examples/base_example_provider.js +7 -3
- package/dist/cjs/examples/example_util.js +3 -0
- package/dist/cjs/features/feature_registry.js +7 -0
- package/dist/cjs/index.js +54 -25
- package/dist/cjs/index_web.js +2 -0
- package/dist/cjs/integrations/agent_registry/agent_registry.js +10 -6
- package/dist/cjs/integrations/agent_registry/agent_registry_mcp_toolset.js +7 -4
- package/dist/cjs/integrations/agent_registry/helpers.js +3 -0
- package/dist/cjs/memory/in_memory_memory_service.js +8 -2
- package/dist/cjs/memory/rag_memory_transcript.js +136 -0
- package/dist/cjs/memory/vertex_ai_memory_bank_service.js +19 -4
- 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 +10 -4
- package/dist/cjs/models/base_llm.js +8 -4
- package/dist/cjs/models/chrome_prompt_llm.js +304 -0
- package/dist/cjs/models/chrome_prompt_utils.js +229 -0
- package/dist/cjs/models/gemini_llm_connection.js +5 -2
- package/dist/cjs/models/google_llm.js +33 -16
- package/dist/cjs/models/interactions_utils.js +18 -3
- package/dist/cjs/models/llm_request.js +4 -0
- package/dist/cjs/models/llm_response.js +2 -0
- package/dist/cjs/models/registry.js +8 -2
- package/dist/cjs/models/routed_llm.js +4 -13
- package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
- package/dist/cjs/plugins/base_plugin.js +39 -5
- package/dist/cjs/plugins/global_instruction_plugin.js +5 -2
- package/dist/cjs/plugins/logging_plugin.js +13 -8
- package/dist/cjs/plugins/plugin_manager.js +37 -2
- 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/plugins/security_plugin.js +15 -8
- package/dist/cjs/runner/in_memory_runner.js +5 -2
- package/dist/cjs/runner/runner.js +236 -43
- package/dist/cjs/sessions/base_session_service.js +13 -2
- package/dist/cjs/sessions/database_session_service.js +84 -45
- package/dist/cjs/sessions/db/operations.js +259 -24
- package/dist/cjs/sessions/db/schema.js +118 -156
- package/dist/cjs/sessions/in_memory_session_service.js +22 -14
- package/dist/cjs/sessions/registry.js +9 -2
- package/dist/cjs/sessions/session.js +2 -0
- package/dist/cjs/sessions/state.js +80 -8
- package/dist/cjs/sessions/state_write_order.js +105 -0
- package/dist/cjs/sessions/vertex_ai_session_service.js +112 -17
- package/dist/cjs/skills/gcp_skill_registry.js +2 -0
- package/dist/cjs/skills/loader.js +22 -10
- package/dist/cjs/skills/prompt.js +3 -0
- package/dist/cjs/telemetry/google_cloud.js +42 -9
- package/dist/cjs/telemetry/setup.js +6 -1
- package/dist/cjs/telemetry/tracing.js +71 -5
- package/dist/cjs/tools/agent_tool.js +10 -7
- package/dist/cjs/tools/base_tool.js +38 -6
- package/dist/cjs/tools/base_toolset.js +10 -6
- package/dist/cjs/tools/built_in_tool.js +75 -0
- package/dist/cjs/tools/consolidate_context_tool.js +5 -2
- package/dist/cjs/tools/enterprise_web_search_tool.js +8 -7
- package/dist/cjs/tools/example_tool.js +5 -2
- package/dist/cjs/tools/exit_loop_tool.js +5 -2
- package/dist/cjs/tools/finish_task_tool.js +119 -0
- package/dist/cjs/tools/forwarding_artifact_service.js +23 -15
- package/dist/cjs/tools/function_tool.js +79 -11
- package/dist/cjs/tools/get_user_choice_tool.js +3 -2
- package/dist/cjs/tools/google_maps_grounding_tool.js +8 -7
- package/dist/cjs/tools/google_search_tool.js +7 -7
- package/dist/cjs/tools/load_artifacts_tool.js +55 -25
- package/dist/cjs/tools/load_memory_tool.js +5 -2
- package/dist/cjs/tools/load_web_page.js +14 -160
- package/dist/cjs/tools/long_running_tool.js +5 -2
- package/dist/cjs/tools/mcp/index.js +39 -0
- package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +39 -7
- package/dist/cjs/tools/mcp/mcp_session_manager.js +36 -8
- package/dist/cjs/tools/mcp/mcp_tool.js +5 -2
- package/dist/cjs/tools/mcp/mcp_toolset.js +5 -2
- package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +15 -2
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +3 -1
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
- package/dist/cjs/tools/openapi_tool/openapi_toolset.js +2 -0
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +39 -23
- package/dist/cjs/tools/preload_memory_tool.js +6 -3
- package/dist/cjs/tools/request_input_tool.js +6 -4
- package/dist/cjs/tools/resume_inputs.js +27 -0
- package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
- package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
- package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
- package/dist/cjs/tools/skill/list_skills_tool.js +2 -0
- package/dist/cjs/tools/skill/load_skill_resource_tool.js +2 -0
- package/dist/cjs/tools/skill/load_skill_tool.js +4 -1
- package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +8 -2
- package/dist/cjs/tools/skill/run_skill_script_tool.js +10 -2
- package/dist/cjs/tools/skill/search_skills_tool.js +2 -0
- package/dist/cjs/tools/skill/skill_toolset.js +35 -0
- package/dist/cjs/tools/tool_confirmation.js +26 -3
- package/dist/cjs/tools/url_context_tool.js +7 -7
- package/dist/cjs/tools/vertex_ai_search_tool.js +8 -9
- package/dist/cjs/tools/vertex_rag_retrieval_tool.js +7 -11
- package/dist/cjs/utils/async_hooks_shim.js +5 -2
- package/dist/cjs/utils/async_queue.js +45 -18
- package/dist/cjs/utils/branch_trie.js +2 -0
- package/dist/cjs/utils/case_utils.js +2 -0
- package/dist/cjs/utils/client_labels.js +5 -0
- package/dist/cjs/utils/crypto_shim.js +18 -0
- package/dist/cjs/utils/deprecated.js +68 -0
- package/dist/cjs/utils/env_aware_utils.js +41 -0
- package/dist/cjs/utils/error_utils.js +8 -0
- package/dist/cjs/utils/experimental.js +9 -2
- package/dist/cjs/utils/failover_utils.js +3 -0
- package/dist/cjs/utils/file_extension_utils.js +3 -0
- package/dist/cjs/utils/file_utils.js +7 -2
- package/dist/cjs/utils/gemini_schema_util.js +6 -8
- package/dist/cjs/utils/genai_schema_to_json.js +107 -0
- package/dist/cjs/utils/live_connection_utils.js +5 -2
- package/dist/cjs/utils/logger.js +28 -54
- package/dist/cjs/utils/logger_browser.js +86 -0
- package/dist/cjs/utils/logger_node.js +119 -0
- package/dist/cjs/utils/model_name.js +8 -0
- package/dist/cjs/utils/object_notation_utils.js +7 -3
- package/dist/cjs/utils/optional_peer.js +68 -0
- package/dist/cjs/utils/output_schema_utils.js +2 -0
- package/dist/cjs/utils/partial_copy.js +2 -0
- package/dist/cjs/utils/redact_inline_data.js +46 -0
- package/dist/cjs/utils/redact_uri.js +80 -0
- package/dist/cjs/utils/schema.js +178 -0
- package/dist/cjs/utils/simple_zod_to_json.js +17 -4
- package/dist/cjs/utils/ssrf_guard.js +262 -0
- package/dist/cjs/utils/streaming_utils.js +14 -6
- package/dist/cjs/utils/task.js +7 -4
- package/dist/cjs/utils/variant_utils.js +3 -1
- package/dist/cjs/utils/vertex_ai_utils.js +3 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/workflow/base_node.js +211 -0
- package/dist/cjs/workflow/branch_path.js +108 -0
- package/dist/cjs/workflow/dynamic_node_scheduler.js +220 -0
- package/dist/cjs/workflow/errors.js +178 -0
- package/dist/cjs/workflow/graph.js +158 -0
- package/dist/cjs/workflow/index.js +131 -0
- package/dist/cjs/workflow/node.js +65 -0
- package/dist/cjs/workflow/node_builders.js +68 -0
- package/dist/cjs/workflow/node_context.js +246 -0
- package/dist/cjs/workflow/node_error_event.js +86 -0
- package/dist/cjs/workflow/node_runner.js +459 -0
- package/dist/cjs/workflow/node_state.js +57 -0
- package/dist/cjs/workflow/node_status.js +48 -0
- package/dist/cjs/workflow/nodes/function_node.js +195 -0
- package/dist/cjs/workflow/nodes/join_node.js +56 -0
- package/dist/cjs/workflow/nodes/node_tool.js +147 -0
- package/dist/cjs/workflow/nodes/parallel_worker.js +129 -0
- package/dist/cjs/workflow/nodes/tool_node.js +117 -0
- package/dist/cjs/workflow/request_input.js +64 -0
- package/dist/cjs/workflow/retry_config.js +71 -0
- package/dist/cjs/workflow/run_llm_agent_as_node.js +192 -0
- package/dist/cjs/workflow/run_node_as_invocation.js +165 -0
- package/dist/cjs/workflow/schedule_dynamic_node.js +53 -0
- package/dist/cjs/workflow/trigger.js +27 -0
- package/dist/cjs/workflow/utils/graph_parser.js +212 -0
- package/dist/cjs/workflow/utils/graph_validation.js +216 -0
- package/dist/cjs/workflow/utils/hitl_utils.js +252 -0
- package/dist/cjs/workflow/utils/rehydration_utils.js +373 -0
- package/dist/cjs/workflow/utils/retry_utils.js +112 -0
- package/dist/cjs/workflow/utils/workflow_graph_utils.js +144 -0
- package/dist/cjs/workflow/workflow.js +509 -0
- package/dist/esm/a2a/a2a_event.js +18 -27
- package/dist/esm/a2a/a2a_remote_agent.js +16 -7
- package/dist/esm/a2a/a2a_remote_agent_run_processor.js +8 -3
- package/dist/esm/a2a/a2a_remote_agent_utils.js +110 -2
- package/dist/esm/a2a/agent_card.js +96 -8
- package/dist/esm/a2a/agent_executor.js +36 -19
- package/dist/esm/a2a/agent_to_a2a.js +52 -17
- package/dist/esm/a2a/auth.js +4 -0
- package/dist/esm/a2a/event_converter_utils.js +11 -0
- package/dist/esm/a2a/event_processor_utils.js +74 -35
- package/dist/esm/a2a/executor_context.js +7 -2
- package/dist/esm/a2a/index.js +26 -0
- package/dist/esm/a2a/metadata_converter_utils.js +6 -0
- package/dist/esm/a2a/part_converter_utils.js +13 -0
- package/dist/esm/a2a/request_metadata.js +68 -0
- package/dist/esm/agents/active_streaming_tool.js +6 -2
- package/dist/esm/agents/base_agent.js +56 -17
- package/dist/esm/agents/context.js +13 -2
- package/dist/esm/agents/framework_function_calls.js +34 -0
- package/dist/esm/agents/functions.js +191 -58
- package/dist/esm/agents/instructions.js +52 -12
- package/dist/esm/agents/invocation_context.js +42 -7
- package/dist/esm/agents/live_request_queue.js +30 -5
- package/dist/esm/agents/llm_agent.js +542 -50
- package/dist/esm/agents/loop_agent.js +22 -3
- package/dist/esm/agents/parallel_agent.js +24 -3
- package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +33 -8
- package/dist/esm/agents/processors/base_llm_processor.js +10 -4
- package/dist/esm/agents/processors/basic_llm_request_processor.js +7 -3
- package/dist/esm/agents/processors/code_execution_request_processor.js +21 -7
- package/dist/esm/agents/processors/content_processor_utils.js +88 -16
- package/dist/esm/agents/processors/content_request_processor.js +14 -5
- package/dist/esm/agents/processors/context_compactor_request_processor.js +6 -2
- package/dist/esm/agents/processors/identity_llm_request_processor.js +13 -4
- package/dist/esm/agents/processors/instructions_llm_request_processor.js +6 -2
- package/dist/esm/agents/processors/interactions_request_processor.js +6 -2
- package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +325 -93
- package/dist/esm/agents/processors/request_input_llm_request_processor.js +193 -0
- package/dist/esm/agents/processors/tool_filter_request_processor.js +6 -2
- package/dist/esm/agents/readonly_context.js +14 -3
- package/dist/esm/agents/routed_agent.js +7 -15
- package/dist/esm/agents/run_config.js +13 -0
- package/dist/esm/agents/sequential_agent.js +23 -4
- package/dist/esm/agents/user_input_request.js +120 -0
- package/dist/esm/apps/app.js +15 -12
- package/dist/esm/apps/resumability_config.js +3 -0
- package/dist/esm/artifacts/file_artifact_service.js +23 -4
- package/dist/esm/artifacts/gcs_artifact_service.js +58 -11
- package/dist/esm/artifacts/in_memory_artifact_service.js +10 -2
- package/dist/esm/artifacts/registry.js +7 -1
- package/dist/esm/artifacts/scoped_artifact_service.js +15 -2
- package/dist/esm/artifacts/session_artifact_service.js +12 -0
- package/dist/esm/auth/auth_handler.js +53 -10
- package/dist/esm/auth/auth_preprocessor.js +50 -41
- package/dist/esm/auth/auth_provider_registry.js +6 -2
- package/dist/esm/auth/auth_schemes.js +3 -0
- package/dist/esm/auth/credential_response_binding.js +74 -0
- package/dist/esm/auth/credential_service/in_memory_credential_service.js +6 -2
- package/dist/esm/auth/credential_service/session_state_credential_service.js +6 -2
- package/dist/esm/auth/exchanger/base_credential_exchanger.js +6 -2
- package/dist/esm/auth/exchanger/credential_exchanger_registry.js +6 -2
- package/dist/esm/auth/oauth2/oauth2_credential_exchanger.js +9 -2
- package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +7 -3
- package/dist/esm/auth/oauth2/oauth2_discovery.js +8 -2
- package/dist/esm/auth/oauth2/oauth2_utils.js +22 -2
- package/dist/esm/auth/refresher/base_credential_refresher.js +6 -2
- package/dist/esm/auth/refresher/credential_refresher_registry.js +6 -2
- package/dist/esm/code_executors/agent_engine_sandbox_code_executor.js +3 -0
- package/dist/esm/code_executors/base_code_executor.js +8 -3
- package/dist/esm/code_executors/built_in_code_executor.js +8 -3
- package/dist/esm/code_executors/code_execution_utils.js +9 -2
- package/dist/esm/code_executors/code_executor_context.js +6 -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 +20 -8
- package/dist/esm/common.js +181 -41
- package/dist/esm/context/agent_controlled_context_compactor.js +16 -7
- package/dist/esm/context/anchored_context_compactor.js +51 -21
- package/dist/esm/context/compaction_utils.js +17 -5
- package/dist/esm/context/summarizers/llm_summarizer.js +6 -2
- package/dist/esm/context/token_based_context_compactor.js +20 -5
- package/dist/esm/context/trajectory_thought_pruning_compactor.js +23 -12
- package/dist/esm/context/truncating_context_compactor.js +23 -7
- package/dist/esm/environment/base_environment.js +71 -0
- package/dist/esm/environment/local_environment.js +150 -0
- package/dist/esm/errors/already_exists_error.js +23 -0
- package/dist/esm/errors/input_validation_error.js +23 -0
- package/dist/esm/errors/not_found_error.js +23 -0
- 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/compacted_event.js +5 -0
- package/dist/esm/events/event.js +38 -3
- package/dist/esm/events/event_actions.js +12 -0
- package/dist/esm/events/structured_events.js +3 -0
- package/dist/esm/examples/base_example_provider.js +8 -3
- package/dist/esm/examples/example_util.js +4 -0
- package/dist/esm/features/feature_registry.js +8 -0
- package/dist/esm/index.js +41 -15
- package/dist/esm/index_web.js +2 -0
- package/dist/esm/integrations/agent_registry/agent_registry.js +11 -6
- package/dist/esm/integrations/agent_registry/agent_registry_mcp_toolset.js +6 -2
- package/dist/esm/integrations/agent_registry/helpers.js +4 -0
- package/dist/esm/memory/in_memory_memory_service.js +9 -2
- package/dist/esm/memory/rag_memory_transcript.js +106 -0
- package/dist/esm/memory/vertex_ai_memory_bank_service.js +20 -4
- 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 +11 -4
- package/dist/esm/models/base_llm.js +9 -4
- package/dist/esm/models/chrome_prompt_llm.js +285 -0
- package/dist/esm/models/chrome_prompt_utils.js +192 -0
- package/dist/esm/models/gemini_llm_connection.js +6 -2
- package/dist/esm/models/google_llm.js +35 -17
- package/dist/esm/models/interactions_utils.js +19 -3
- package/dist/esm/models/llm_request.js +5 -0
- package/dist/esm/models/llm_response.js +3 -0
- package/dist/esm/models/registry.js +9 -2
- package/dist/esm/models/routed_llm.js +4 -14
- package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
- package/dist/esm/plugins/base_plugin.js +39 -5
- package/dist/esm/plugins/global_instruction_plugin.js +6 -2
- package/dist/esm/plugins/logging_plugin.js +14 -8
- package/dist/esm/plugins/plugin_manager.js +38 -2
- 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/plugins/security_plugin.js +14 -6
- package/dist/esm/runner/in_memory_runner.js +6 -2
- package/dist/esm/runner/runner.js +249 -46
- package/dist/esm/sessions/base_session_service.js +14 -2
- package/dist/esm/sessions/database_session_service.js +65 -27
- package/dist/esm/sessions/db/operations.js +259 -24
- package/dist/esm/sessions/db/schema.js +116 -157
- package/dist/esm/sessions/in_memory_session_service.js +23 -14
- package/dist/esm/sessions/registry.js +10 -2
- package/dist/esm/sessions/session.js +3 -0
- package/dist/esm/sessions/state.js +78 -7
- package/dist/esm/sessions/state_write_order.js +74 -0
- package/dist/esm/sessions/vertex_ai_session_service.js +111 -16
- package/dist/esm/skills/gcp_skill_registry.js +2 -0
- package/dist/esm/skills/loader.js +23 -10
- package/dist/esm/skills/prompt.js +4 -0
- package/dist/esm/telemetry/google_cloud.js +54 -9
- package/dist/esm/telemetry/setup.js +7 -1
- package/dist/esm/telemetry/tracing.js +70 -5
- package/dist/esm/tools/agent_tool.js +11 -7
- package/dist/esm/tools/base_tool.js +36 -5
- package/dist/esm/tools/base_toolset.js +11 -6
- package/dist/esm/tools/built_in_tool.js +51 -0
- package/dist/esm/tools/consolidate_context_tool.js +6 -2
- package/dist/esm/tools/enterprise_web_search_tool.js +9 -7
- package/dist/esm/tools/example_tool.js +6 -2
- package/dist/esm/tools/exit_loop_tool.js +6 -2
- package/dist/esm/tools/finish_task_tool.js +92 -0
- package/dist/esm/tools/forwarding_artifact_service.js +24 -15
- package/dist/esm/tools/function_tool.js +80 -11
- package/dist/esm/tools/get_user_choice_tool.js +4 -2
- package/dist/esm/tools/google_maps_grounding_tool.js +9 -7
- package/dist/esm/tools/google_search_tool.js +8 -7
- package/dist/esm/tools/load_artifacts_tool.js +57 -26
- package/dist/esm/tools/load_memory_tool.js +6 -2
- package/dist/esm/tools/load_web_page.js +19 -158
- package/dist/esm/tools/long_running_tool.js +6 -2
- package/dist/{web/context/summarizers/base_summarizer.js → esm/tools/mcp/index.js} +4 -0
- package/dist/esm/tools/mcp/load_mcp_resource_tool.js +40 -7
- package/dist/esm/tools/mcp/mcp_session_manager.js +45 -9
- package/dist/esm/tools/mcp/mcp_tool.js +6 -2
- package/dist/esm/tools/mcp/mcp_toolset.js +6 -2
- package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +18 -2
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +3 -1
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
- package/dist/esm/tools/openapi_tool/openapi_toolset.js +2 -0
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +39 -23
- package/dist/esm/tools/preload_memory_tool.js +7 -3
- package/dist/esm/tools/request_input_tool.js +7 -4
- package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
- package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
- package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
- package/dist/esm/tools/skill/list_skills_tool.js +2 -0
- package/dist/esm/tools/skill/load_skill_resource_tool.js +2 -0
- package/dist/esm/tools/skill/load_skill_tool.js +4 -1
- package/dist/esm/tools/skill/run_skill_inline_script_tool.js +8 -2
- package/dist/esm/tools/skill/run_skill_script_tool.js +10 -2
- package/dist/esm/tools/skill/search_skills_tool.js +2 -0
- package/dist/esm/tools/skill/skill_toolset.js +25 -0
- package/dist/esm/tools/tool_confirmation.js +24 -2
- package/dist/esm/tools/url_context_tool.js +8 -7
- package/dist/esm/tools/vertex_ai_search_tool.js +9 -9
- package/dist/esm/tools/vertex_rag_retrieval_tool.js +8 -11
- package/dist/esm/utils/async_hooks_shim.js +6 -2
- package/dist/esm/utils/async_queue.js +46 -18
- package/dist/esm/utils/branch_trie.js +3 -0
- package/dist/esm/utils/case_utils.js +3 -0
- package/dist/esm/utils/client_labels.js +6 -0
- package/dist/esm/utils/crypto_shim.js +17 -0
- package/dist/esm/utils/deprecated.js +40 -0
- package/dist/esm/utils/env_aware_utils.js +41 -0
- package/dist/esm/utils/error_utils.js +9 -0
- package/dist/esm/utils/experimental.js +10 -2
- package/dist/esm/utils/failover_utils.js +4 -0
- package/dist/esm/utils/file_extension_utils.js +4 -0
- package/dist/esm/utils/file_utils.js +8 -2
- package/dist/esm/utils/gemini_schema_util.js +7 -8
- package/dist/esm/utils/genai_schema_to_json.js +80 -0
- package/dist/esm/utils/live_connection_utils.js +6 -2
- package/dist/esm/utils/logger.js +28 -44
- package/dist/esm/utils/logger_browser.js +58 -0
- package/dist/esm/utils/logger_node.js +81 -0
- package/dist/esm/utils/model_name.js +9 -0
- package/dist/esm/utils/object_notation_utils.js +8 -3
- package/dist/esm/utils/optional_peer.js +41 -0
- package/dist/esm/utils/output_schema_utils.js +3 -0
- package/dist/esm/utils/partial_copy.js +3 -0
- package/dist/esm/utils/redact_inline_data.js +19 -0
- package/dist/esm/utils/redact_uri.js +53 -0
- package/dist/esm/utils/schema.js +152 -0
- package/dist/esm/utils/simple_zod_to_json.js +15 -4
- package/dist/esm/utils/ssrf_guard.js +230 -0
- package/dist/esm/utils/streaming_utils.js +15 -6
- package/dist/esm/utils/task.js +8 -4
- package/dist/esm/utils/variant_utils.js +5 -2
- package/dist/esm/utils/vertex_ai_utils.js +5 -2
- package/dist/esm/version.js +1 -1
- package/dist/esm/workflow/base_node.js +182 -0
- package/dist/esm/workflow/branch_path.js +77 -0
- package/dist/esm/workflow/dynamic_node_scheduler.js +202 -0
- package/dist/esm/workflow/errors.js +140 -0
- package/dist/esm/workflow/graph.js +127 -0
- package/dist/esm/workflow/index.js +80 -0
- package/dist/esm/workflow/node.js +38 -0
- package/dist/esm/workflow/node_builders.js +40 -0
- package/dist/esm/workflow/node_context.js +219 -0
- package/dist/esm/workflow/node_error_event.js +57 -0
- package/dist/esm/workflow/node_runner.js +439 -0
- package/dist/esm/workflow/node_state.js +29 -0
- package/dist/esm/workflow/node_status.js +20 -0
- package/dist/esm/workflow/nodes/function_node.js +172 -0
- package/dist/esm/workflow/nodes/join_node.js +29 -0
- package/dist/esm/workflow/nodes/node_tool.js +122 -0
- package/dist/esm/workflow/nodes/parallel_worker.js +102 -0
- package/dist/esm/workflow/nodes/tool_node.js +90 -0
- package/dist/esm/workflow/request_input.js +36 -0
- package/dist/esm/workflow/retry_config.js +43 -0
- package/dist/esm/workflow/run_llm_agent_as_node.js +172 -0
- package/dist/esm/workflow/run_node_as_invocation.js +139 -0
- package/dist/esm/workflow/schedule_dynamic_node.js +26 -0
- package/dist/esm/workflow/utils/graph_parser.js +188 -0
- package/dist/esm/workflow/utils/graph_validation.js +189 -0
- package/dist/esm/workflow/utils/hitl_utils.js +222 -0
- package/dist/esm/workflow/utils/rehydration_utils.js +342 -0
- package/dist/esm/workflow/utils/retry_utils.js +82 -0
- package/dist/esm/workflow/utils/workflow_graph_utils.js +115 -0
- package/dist/esm/workflow/workflow.js +493 -0
- 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 +12 -3
- package/dist/types/a2a/agent_executor.d.ts +1 -1
- package/dist/types/a2a/agent_to_a2a.d.ts +6 -4
- package/dist/types/a2a/auth.d.ts +5 -1
- package/dist/types/a2a/event_processor_utils.d.ts +17 -2
- package/dist/types/a2a/executor_context.d.ts +7 -1
- package/dist/types/a2a/index.d.ts +18 -0
- package/dist/types/a2a/request_metadata.d.ts +22 -0
- package/dist/types/agents/base_agent.d.ts +56 -25
- package/dist/types/agents/context.d.ts +8 -0
- package/dist/types/agents/framework_function_calls.d.ts +26 -0
- package/dist/types/agents/functions.d.ts +73 -8
- package/dist/types/agents/invocation_context.d.ts +106 -6
- package/dist/types/agents/live_request_queue.d.ts +7 -1
- package/dist/types/agents/llm_agent.d.ts +86 -8
- package/dist/types/agents/loop_agent.d.ts +5 -0
- package/dist/types/agents/parallel_agent.d.ts +5 -0
- package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
- package/dist/types/agents/processors/content_processor_utils.d.ts +3 -2
- package/dist/types/agents/processors/identity_llm_request_processor.d.ts +4 -1
- package/dist/types/agents/processors/request_input_llm_request_processor.d.ts +21 -0
- package/dist/types/agents/readonly_context.d.ts +4 -0
- package/dist/types/agents/run_config.d.ts +72 -4
- package/dist/types/agents/sequential_agent.d.ts +5 -0
- package/dist/types/agents/user_input_request.d.ts +71 -0
- package/dist/types/apps/app.d.ts +8 -3
- package/dist/types/artifacts/gcs_artifact_service.d.ts +9 -2
- 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/credential_response_binding.d.ts +24 -0
- 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 +39 -27
- package/dist/types/context/compaction_utils.d.ts +9 -1
- package/dist/types/environment/base_environment.d.ts +101 -0
- package/dist/types/environment/local_environment.d.ts +72 -0
- 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.d.ts +94 -1
- package/dist/types/events/event_actions.d.ts +23 -0
- package/dist/types/index.d.ts +27 -14
- 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/apigee_llm.d.ts +4 -4
- 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 +10 -4
- 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 +47 -10
- package/dist/types/plugins/logging_plugin.d.ts +3 -2
- package/dist/types/plugins/plugin_manager.d.ts +20 -0
- 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/plugins/security_plugin.d.ts +4 -2
- package/dist/types/runner/in_memory_runner.d.ts +2 -2
- package/dist/types/runner/runner.d.ts +64 -9
- package/dist/types/sessions/base_session_service.d.ts +2 -2
- 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/sessions/state.d.ts +34 -1
- package/dist/types/sessions/state_write_order.d.ts +39 -0
- package/dist/types/telemetry/tracing.d.ts +15 -0
- package/dist/types/tools/base_tool.d.ts +26 -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/finish_task_tool.d.ts +47 -0
- package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
- package/dist/types/tools/function_tool.d.ts +88 -10
- 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/index.d.ts +13 -0
- package/dist/types/tools/mcp/mcp_session_manager.d.ts +3 -3
- package/dist/types/tools/mcp/mcp_tool.d.ts +1 -1
- package/dist/types/tools/mcp/mcp_toolset.d.ts +12 -11
- 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/request_input_tool.d.ts +6 -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/skill/skill_toolset.d.ts +26 -0
- package/dist/types/tools/tool_confirmation.d.ts +47 -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/async_queue.d.ts +34 -2
- package/dist/types/utils/crypto_shim.d.ts +16 -0
- package/dist/types/utils/deprecated.d.ts +21 -0
- package/dist/types/utils/env_aware_utils.d.ts +16 -0
- package/dist/types/utils/file_utils.d.ts +10 -2
- package/dist/types/utils/gemini_schema_util.d.ts +5 -7
- package/dist/types/utils/genai_schema_to_json.d.ts +25 -0
- 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/optional_peer.d.ts +36 -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 +32 -0
- package/dist/types/utils/schema.d.ts +73 -0
- package/dist/types/utils/simple_zod_to_json.d.ts +8 -0
- package/dist/types/utils/ssrf_guard.d.ts +32 -0
- package/dist/types/utils/vertex_ai_utils.d.ts +4 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/types/workflow/base_node.d.ts +142 -0
- package/dist/types/workflow/branch_path.d.ts +40 -0
- package/dist/types/workflow/dynamic_node_scheduler.d.ts +64 -0
- package/dist/types/workflow/errors.d.ts +132 -0
- package/dist/types/workflow/graph.d.ts +127 -0
- package/dist/types/workflow/index.d.ts +46 -0
- package/dist/types/workflow/node.d.ts +48 -0
- package/dist/types/workflow/node_builders.d.ts +25 -0
- package/dist/types/workflow/node_context.d.ts +208 -0
- package/dist/types/workflow/node_error_event.d.ts +18 -0
- package/dist/types/workflow/node_runner.d.ts +82 -0
- package/dist/types/workflow/node_state.d.ts +47 -0
- package/dist/types/workflow/node_status.d.ts +28 -0
- package/dist/types/workflow/nodes/function_node.d.ts +78 -0
- package/dist/types/workflow/nodes/join_node.d.ts +24 -0
- package/dist/types/workflow/nodes/node_tool.d.ts +53 -0
- package/dist/types/workflow/nodes/parallel_worker.d.ts +55 -0
- package/dist/types/workflow/nodes/tool_node.d.ts +34 -0
- package/dist/types/workflow/request_input.d.ts +73 -0
- package/dist/types/workflow/retry_config.d.ts +84 -0
- package/dist/types/workflow/run_llm_agent_as_node.d.ts +28 -0
- package/dist/types/workflow/run_node_as_invocation.d.ts +72 -0
- package/dist/types/workflow/schedule_dynamic_node.d.ts +66 -0
- package/dist/types/workflow/trigger.d.ts +22 -0
- package/dist/types/workflow/utils/graph_parser.d.ts +8 -0
- package/dist/types/workflow/utils/graph_validation.d.ts +18 -0
- package/dist/types/workflow/utils/hitl_utils.d.ts +92 -0
- package/dist/types/workflow/utils/rehydration_utils.d.ts +132 -0
- package/dist/types/workflow/utils/retry_utils.d.ts +54 -0
- package/dist/types/workflow/utils/workflow_graph_utils.d.ts +76 -0
- package/dist/types/workflow/workflow.d.ts +115 -0
- package/dist/web/index_web.js +304 -3
- package/dist/web/index_web.js.map +7 -0
- package/package.json +97 -20
- package/dist/web/a2a/a2a_event.js +0 -271
- package/dist/web/a2a/a2a_remote_agent.js +0 -196
- package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -184
- package/dist/web/a2a/a2a_remote_agent_utils.js +0 -133
- package/dist/web/a2a/agent_card.js +0 -342
- package/dist/web/a2a/agent_executor.js +0 -218
- package/dist/web/a2a/agent_to_a2a.js +0 -97
- package/dist/web/a2a/auth.js +0 -37
- package/dist/web/a2a/event_converter_utils.js +0 -232
- package/dist/web/a2a/event_processor_utils.js +0 -170
- package/dist/web/a2a/executor_context.js +0 -25
- package/dist/web/a2a/metadata_converter_utils.js +0 -110
- package/dist/web/a2a/part_converter_utils.js +0 -188
- package/dist/web/agents/active_streaming_tool.js +0 -21
- package/dist/web/agents/base_agent.js +0 -423
- package/dist/web/agents/context.js +0 -142
- package/dist/web/agents/functions.js +0 -433
- package/dist/web/agents/instructions.js +0 -148
- package/dist/web/agents/invocation_context.js +0 -77
- package/dist/web/agents/live_request_queue.js +0 -126
- package/dist/web/agents/llm_agent.js +0 -936
- package/dist/web/agents/loop_agent.js +0 -112
- package/dist/web/agents/parallel_agent.js +0 -101
- package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -109
- package/dist/web/agents/processors/base_llm_processor.js +0 -15
- package/dist/web/agents/processors/basic_llm_request_processor.js +0 -81
- package/dist/web/agents/processors/code_execution_request_processor.js +0 -367
- package/dist/web/agents/processors/content_processor_utils.js +0 -361
- package/dist/web/agents/processors/content_request_processor.js +0 -67
- package/dist/web/agents/processors/context_compactor_request_processor.js +0 -74
- package/dist/web/agents/processors/identity_llm_request_processor.js +0 -50
- package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -81
- package/dist/web/agents/processors/interactions_request_processor.js +0 -52
- package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -168
- package/dist/web/agents/processors/tool_filter_request_processor.js +0 -68
- package/dist/web/agents/readonly_context.js +0 -55
- package/dist/web/agents/routed_agent.js +0 -169
- package/dist/web/agents/run_config.js +0 -62
- package/dist/web/agents/sequential_agent.js +0 -122
- package/dist/web/agents/transcription_entry.js +0 -7
- package/dist/web/apps/app.js +0 -49
- package/dist/web/apps/resumability_config.js +0 -31
- package/dist/web/artifacts/base_artifact_service.js +0 -7
- package/dist/web/artifacts/file_artifact_service.js +0 -548
- package/dist/web/artifacts/gcs_artifact_service.js +0 -253
- package/dist/web/artifacts/in_memory_artifact_service.js +0 -164
- package/dist/web/artifacts/registry.js +0 -30
- package/dist/web/artifacts/scoped_artifact_service.js +0 -86
- package/dist/web/auth/auth_credential.js +0 -18
- package/dist/web/auth/auth_handler.js +0 -148
- package/dist/web/auth/auth_preprocessor.js +0 -175
- package/dist/web/auth/auth_provider_registry.js +0 -33
- package/dist/web/auth/auth_schemes.js +0 -33
- package/dist/web/auth/auth_tool.js +0 -7
- package/dist/web/auth/credential_service/base_credential_service.js +0 -7
- package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -46
- package/dist/web/auth/credential_service/session_state_credential_service.js +0 -23
- package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -12
- package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -31
- package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -188
- package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -102
- package/dist/web/auth/oauth2/oauth2_discovery.js +0 -190
- package/dist/web/auth/oauth2/oauth2_utils.js +0 -98
- package/dist/web/auth/refresher/base_credential_refresher.js +0 -16
- package/dist/web/auth/refresher/credential_refresher_registry.js +0 -40
- package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -281
- package/dist/web/code_executors/base_code_executor.js +0 -63
- package/dist/web/code_executors/built_in_code_executor.js +0 -45
- package/dist/web/code_executors/code_execution_utils.js +0 -124
- package/dist/web/code_executors/code_executor_context.js +0 -170
- package/dist/web/code_executors/unsafe_local_code_executor.js +0 -214
- package/dist/web/common.js +0 -347
- package/dist/web/context/agent_controlled_context_compactor.js +0 -72
- package/dist/web/context/anchored_context_compactor.js +0 -117
- package/dist/web/context/base_context_compactor.js +0 -7
- package/dist/web/context/compaction_utils.js +0 -38
- package/dist/web/context/summarizers/llm_summarizer.js +0 -87
- package/dist/web/context/token_based_context_compactor.js +0 -111
- package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -43
- package/dist/web/context/truncating_context_compactor.js +0 -30
- package/dist/web/events/compacted_event.js +0 -47
- package/dist/web/events/event.js +0 -174
- package/dist/web/events/event_actions.js +0 -69
- package/dist/web/events/structured_events.js +0 -76
- package/dist/web/examples/base_example_provider.js +0 -27
- package/dist/web/examples/example.js +0 -7
- package/dist/web/examples/example_util.js +0 -79
- package/dist/web/features/feature_registry.js +0 -107
- package/dist/web/index.js +0 -68
- package/dist/web/integrations/agent_registry/agent_registry.js +0 -333
- package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -117
- package/dist/web/integrations/agent_registry/helpers.js +0 -28
- 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 -82
- package/dist/web/memory/memory_entry.js +0 -7
- package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -481
- package/dist/web/models/apigee_llm.js +0 -221
- package/dist/web/models/base_llm.js +0 -73
- package/dist/web/models/base_llm_connection.js +0 -7
- package/dist/web/models/gemini_llm_connection.js +0 -179
- package/dist/web/models/google_llm.js +0 -384
- package/dist/web/models/interactions_utils.js +0 -728
- package/dist/web/models/llm_request.js +0 -52
- package/dist/web/models/llm_response.js +0 -45
- package/dist/web/models/registry.js +0 -95
- package/dist/web/models/routed_llm.js +0 -122
- package/dist/web/plugins/base_plugin.js +0 -271
- package/dist/web/plugins/global_instruction_plugin.js +0 -67
- package/dist/web/plugins/logging_plugin.js +0 -235
- package/dist/web/plugins/plugin_manager.js +0 -282
- package/dist/web/plugins/security_plugin.js +0 -140
- package/dist/web/runner/in_memory_runner.js +0 -46
- package/dist/web/runner/runner.js +0 -535
- package/dist/web/sessions/base_session_service.js +0 -111
- package/dist/web/sessions/database_session_service.js +0 -436
- package/dist/web/sessions/db/operations.js +0 -96
- package/dist/web/sessions/db/schema.js +0 -208
- package/dist/web/sessions/in_memory_session_service.js +0 -242
- package/dist/web/sessions/registry.js +0 -34
- package/dist/web/sessions/session.js +0 -20
- package/dist/web/sessions/state.js +0 -89
- package/dist/web/sessions/vertex_ai_session_service.js +0 -443
- package/dist/web/skills/gcp_skill_registry.js +0 -78
- package/dist/web/skills/loader.js +0 -360
- package/dist/web/skills/prompt.js +0 -30
- 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 -54
- package/dist/web/telemetry/setup.js +0 -83
- package/dist/web/telemetry/tracing.js +0 -234
- package/dist/web/tools/agent_tool.js +0 -145
- package/dist/web/tools/base_tool.js +0 -93
- package/dist/web/tools/base_toolset.js +0 -57
- package/dist/web/tools/consolidate_context_tool.js +0 -51
- package/dist/web/tools/enterprise_web_search_tool.js +0 -55
- package/dist/web/tools/example_tool.js +0 -42
- package/dist/web/tools/exit_loop_tool.js +0 -43
- package/dist/web/tools/forwarding_artifact_service.js +0 -47
- package/dist/web/tools/function_tool.js +0 -85
- package/dist/web/tools/get_user_choice_tool.js +0 -25
- package/dist/web/tools/google_maps_grounding_tool.js +0 -54
- package/dist/web/tools/google_search_tool.js +0 -51
- package/dist/web/tools/load_artifacts_tool.js +0 -152
- package/dist/web/tools/load_memory_tool.js +0 -79
- package/dist/web/tools/load_web_page.js +0 -221
- package/dist/web/tools/long_running_tool.js +0 -55
- package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -107
- package/dist/web/tools/mcp/mcp_session_manager.js +0 -78
- package/dist/web/tools/mcp/mcp_tool.js +0 -43
- package/dist/web/tools/mcp/mcp_toolset.js +0 -141
- package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -48
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -60
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -111
- package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -221
- package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -198
- package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -94
- package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -97
- package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -229
- package/dist/web/tools/preload_memory_tool.js +0 -77
- package/dist/web/tools/request_input_tool.js +0 -26
- package/dist/web/tools/skill/list_skills_tool.js +0 -50
- package/dist/web/tools/skill/load_skill_resource_tool.js +0 -190
- package/dist/web/tools/skill/load_skill_tool.js +0 -93
- package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -167
- package/dist/web/tools/skill/run_skill_script_tool.js +0 -201
- package/dist/web/tools/skill/search_skills_tool.js +0 -82
- package/dist/web/tools/skill/skill_toolset.js +0 -160
- package/dist/web/tools/tool_confirmation.js +0 -21
- package/dist/web/tools/url_context_tool.js +0 -44
- package/dist/web/tools/vertex_ai_search_tool.js +0 -103
- package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -36
- package/dist/web/utils/async_hooks_shim.js +0 -24
- package/dist/web/utils/async_queue.js +0 -60
- package/dist/web/utils/branch_trie.js +0 -13
- package/dist/web/utils/case_utils.js +0 -25
- package/dist/web/utils/client_labels.js +0 -64
- package/dist/web/utils/crypto_shim.js +0 -15
- package/dist/web/utils/env_aware_utils.js +0 -74
- package/dist/web/utils/error_utils.js +0 -92
- package/dist/web/utils/experimental.js +0 -46
- package/dist/web/utils/failover_utils.js +0 -96
- package/dist/web/utils/file_extension_utils.js +0 -51
- package/dist/web/utils/file_utils.js +0 -103
- package/dist/web/utils/gemini_schema_util.js +0 -173
- package/dist/web/utils/live_connection_utils.js +0 -254
- package/dist/web/utils/logger.js +0 -130
- package/dist/web/utils/model_name.js +0 -66
- package/dist/web/utils/object_notation_utils.js +0 -49
- package/dist/web/utils/output_schema_utils.js +0 -15
- package/dist/web/utils/partial_copy.js +0 -23
- package/dist/web/utils/simple_zod_to_json.js +0 -123
- package/dist/web/utils/streaming_utils.js +0 -430
- package/dist/web/utils/task.js +0 -34
- package/dist/web/utils/variant_utils.js +0 -20
- package/dist/web/utils/vertex_ai_utils.js +0 -24
- package/dist/web/version.js +0 -11
- /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
- /package/dist/{web/auth/base_auth_provider.js → esm/workflow/trigger.js} +0 -0
|
@@ -6,14 +6,29 @@
|
|
|
6
6
|
import { Content } from '@google/genai';
|
|
7
7
|
import { SessionArtifactService } from '../artifacts/session_artifact_service.js';
|
|
8
8
|
import { BaseCredentialService } from '../auth/credential_service/base_credential_service.js';
|
|
9
|
+
import { Event } from '../events/event.js';
|
|
9
10
|
import { BaseMemoryService } from '../memory/base_memory_service.js';
|
|
10
11
|
import { PluginManager } from '../plugins/plugin_manager.js';
|
|
11
12
|
import { BaseSessionService } from '../sessions/base_session_service.js';
|
|
12
13
|
import { Session } from '../sessions/session.js';
|
|
14
|
+
import { AsyncQueue } from '../utils/async_queue.js';
|
|
13
15
|
import { ActiveStreamingTool } from './active_streaming_tool.js';
|
|
14
16
|
import { BaseAgent } from './base_agent.js';
|
|
17
|
+
import { LiveRequestQueue } from './live_request_queue.js';
|
|
15
18
|
import { RunConfig } from './run_config.js';
|
|
16
19
|
import { TranscriptionEntry } from './transcription_entry.js';
|
|
20
|
+
/**
|
|
21
|
+
* Workflow: data exposed to `{Class.field}` and `<Class.field from source_node>`
|
|
22
|
+
* instruction placeholders when an LlmAgent runs as a workflow node. Populated by
|
|
23
|
+
* `LLMAgentWrapper`; absent for ordinary (non-workflow) agent runs, in which case
|
|
24
|
+
* those placeholders are left untouched.
|
|
25
|
+
*/
|
|
26
|
+
export interface WorkflowInstructionScope {
|
|
27
|
+
/** The current node's input, exposing fields for `{Class.field}`. */
|
|
28
|
+
input?: unknown;
|
|
29
|
+
/** Predecessor node outputs keyed by node name, for `<Class.field from node>`. */
|
|
30
|
+
outputsByNode?: Record<string, unknown>;
|
|
31
|
+
}
|
|
17
32
|
/**
|
|
18
33
|
* The parameters for creating an invocation context.
|
|
19
34
|
*/
|
|
@@ -24,7 +39,7 @@ export interface InvocationContextParams {
|
|
|
24
39
|
credentialService?: BaseCredentialService;
|
|
25
40
|
invocationId: string;
|
|
26
41
|
branch?: string;
|
|
27
|
-
agent
|
|
42
|
+
agent?: BaseAgent;
|
|
28
43
|
userContent?: Content;
|
|
29
44
|
session: Session;
|
|
30
45
|
endInvocation?: boolean;
|
|
@@ -33,6 +48,16 @@ export interface InvocationContextParams {
|
|
|
33
48
|
activeStreamingTools?: Record<string, ActiveStreamingTool>;
|
|
34
49
|
pluginManager: PluginManager;
|
|
35
50
|
abortSignal?: AbortSignal;
|
|
51
|
+
workflowInstructionScope?: WorkflowInstructionScope;
|
|
52
|
+
isolationScope?: string;
|
|
53
|
+
/** Nesting depth of node-as-tool executions; used to bound recursion. */
|
|
54
|
+
nodeToolDepth?: number;
|
|
55
|
+
liveRequestQueue?: LiveRequestQueue;
|
|
56
|
+
liveSessionResumptionHandle?: string;
|
|
57
|
+
/**
|
|
58
|
+
* Request-level metadata passed from an incoming A2A request or caller.
|
|
59
|
+
*/
|
|
60
|
+
a2aMetadata?: Record<string, unknown>;
|
|
36
61
|
}
|
|
37
62
|
/**
|
|
38
63
|
* An invocation context represents the data of a single invocation of an agent.
|
|
@@ -55,7 +80,7 @@ export interface InvocationContextParams {
|
|
|
55
80
|
* An LLM agent runs steps in a loop until:
|
|
56
81
|
* 1. A final response is generated.
|
|
57
82
|
* 2. The agent transfers to another agent.
|
|
58
|
-
* 3.
|
|
83
|
+
* 3. `endInvocation` is set to true by any callbacks or tools.
|
|
59
84
|
*
|
|
60
85
|
* A step:
|
|
61
86
|
* 1. Calls the LLM only once and yields its response.
|
|
@@ -63,7 +88,7 @@ export interface InvocationContextParams {
|
|
|
63
88
|
*
|
|
64
89
|
* The summarization of the function response is considered another step, since
|
|
65
90
|
* it is another llm call.
|
|
66
|
-
* A step ends when it's done calling llm and tools, or if
|
|
91
|
+
* A step ends when it's done calling llm and tools, or if `endInvocation`
|
|
67
92
|
* is set to true at any time.
|
|
68
93
|
*
|
|
69
94
|
* ```
|
|
@@ -93,9 +118,19 @@ export declare class InvocationContext {
|
|
|
93
118
|
*/
|
|
94
119
|
branch?: string;
|
|
95
120
|
/**
|
|
96
|
-
* The
|
|
121
|
+
* The agent driving this invocation.
|
|
122
|
+
*
|
|
123
|
+
* Unset when the root being run is a bare {@link BaseNode} — a `Workflow`
|
|
124
|
+
* handed straight to the `Runner` — because there is no agent in play at
|
|
125
|
+
* that level. Nodes deeper in the graph that *are* agents get their own
|
|
126
|
+
* contexts with this set. Mirrors adk-python, whose field is
|
|
127
|
+
* `BaseAgent | BaseNode | None` and which passes `None` on the node path.
|
|
128
|
+
*
|
|
129
|
+
* Most code reaches this from inside an agent's own execution, where it is
|
|
130
|
+
* always set; prefer {@link requireAgent} there, so a broken invariant
|
|
131
|
+
* fails by name rather than as a property access on `undefined`.
|
|
97
132
|
*/
|
|
98
|
-
agent
|
|
133
|
+
agent?: BaseAgent;
|
|
99
134
|
/**
|
|
100
135
|
* The user content that started this invocation.
|
|
101
136
|
*/
|
|
@@ -106,7 +141,7 @@ export declare class InvocationContext {
|
|
|
106
141
|
readonly session: Session;
|
|
107
142
|
/**
|
|
108
143
|
* Whether to end this invocation.
|
|
109
|
-
* Set to
|
|
144
|
+
* Set to `true` in callbacks or tools to terminate this invocation.
|
|
110
145
|
*/
|
|
111
146
|
endInvocation: boolean;
|
|
112
147
|
/**
|
|
@@ -135,6 +170,45 @@ export declare class InvocationContext {
|
|
|
135
170
|
*/
|
|
136
171
|
pluginManager: PluginManager;
|
|
137
172
|
readonly abortSignal?: AbortSignal;
|
|
173
|
+
/**
|
|
174
|
+
* An optional channel into which a running tool can push events to be
|
|
175
|
+
* interleaved into the agent's output stream. Set by the LLM flow around tool
|
|
176
|
+
* execution so a {@link NodeTool} (running a node/workflow) can surface the
|
|
177
|
+
* node's intermediate and interrupt events. Cleared once tools finish.
|
|
178
|
+
*/
|
|
179
|
+
eventQueue?: AsyncQueue<Event>;
|
|
180
|
+
/**
|
|
181
|
+
* Workflow: field-resolution scope for `{Class.field}` /
|
|
182
|
+
* `<Class.field from node>` instruction placeholders (set by
|
|
183
|
+
* `LLMAgentWrapper`).
|
|
184
|
+
*/
|
|
185
|
+
workflowInstructionScope?: WorkflowInstructionScope;
|
|
186
|
+
/**
|
|
187
|
+
* Workflow: the isolation scope of the node this context runs in. Events
|
|
188
|
+
* carrying a different scope are withheld from this agent's LLM request.
|
|
189
|
+
*/
|
|
190
|
+
isolationScope?: string;
|
|
191
|
+
/**
|
|
192
|
+
* Nesting depth of node-as-tool ({@link NodeTool}) executions in this
|
|
193
|
+
* invocation. Incremented each time a node runs as a tool (via a depth+1
|
|
194
|
+
* clone), so `NodeTool` can bound `node -> tool -> node` recursion.
|
|
195
|
+
*/
|
|
196
|
+
readonly nodeToolDepth: number;
|
|
197
|
+
/**
|
|
198
|
+
* The live request queue feeding the model on the bidirectional (live) path.
|
|
199
|
+
* Set only for invocations started via `runner.runLive`.
|
|
200
|
+
*/
|
|
201
|
+
readonly liveRequestQueue?: LiveRequestQueue;
|
|
202
|
+
/**
|
|
203
|
+
* The most recent session resumption handle observed on the live path.
|
|
204
|
+
* Updated as the server emits resumption updates so a reconnect can restore
|
|
205
|
+
* server-side state instead of replaying history. Mutable by design.
|
|
206
|
+
*/
|
|
207
|
+
liveSessionResumptionHandle?: string;
|
|
208
|
+
/**
|
|
209
|
+
* Request-level metadata passed from an incoming A2A request or caller.
|
|
210
|
+
*/
|
|
211
|
+
readonly a2aMetadata?: Record<string, unknown>;
|
|
138
212
|
/**
|
|
139
213
|
* @param params The parameters for creating an invocation context.
|
|
140
214
|
*/
|
|
@@ -153,5 +227,31 @@ export declare class InvocationContext {
|
|
|
153
227
|
* @throws If number of llm calls made exceed the set threshold.
|
|
154
228
|
*/
|
|
155
229
|
incrementLlmCallCount(): void;
|
|
230
|
+
/**
|
|
231
|
+
* Returns a copy of this context with `overrides` applied. The spread carries
|
|
232
|
+
* every own field over (including the shared cost manager), so the copy keeps
|
|
233
|
+
* a single LLM-call counter for the invocation.
|
|
234
|
+
*
|
|
235
|
+
* Note: this copies own enumerable fields by value — scalar mutable fields
|
|
236
|
+
* (e.g. `endInvocation`) are decoupled from the original, while object-valued
|
|
237
|
+
* fields (`session`, …) stay shared by reference.
|
|
238
|
+
*/
|
|
239
|
+
clone(overrides?: Partial<InvocationContextParams>): InvocationContext;
|
|
156
240
|
}
|
|
157
241
|
export declare function newInvocationContextId(): string;
|
|
242
|
+
/**
|
|
243
|
+
* The agent driving `ctx`, for code that only runs because one is.
|
|
244
|
+
*
|
|
245
|
+
* An LLM flow, an agent transfer, a tool call: each is reached from inside an
|
|
246
|
+
* agent's own execution, so {@link InvocationContext.agent} is set by
|
|
247
|
+
* construction. Going through here says that out loud, and turns a violated
|
|
248
|
+
* assumption into a named error rather than a property access on `undefined`
|
|
249
|
+
* several frames away.
|
|
250
|
+
*
|
|
251
|
+
* A free function rather than an accessor on the class, because a good deal of
|
|
252
|
+
* code (and most tests) passes a duck-typed context object; a getter would be
|
|
253
|
+
* simply absent on those, which fails less clearly than not having the agent.
|
|
254
|
+
*
|
|
255
|
+
* @throws if the invocation is driving a bare node rather than an agent.
|
|
256
|
+
*/
|
|
257
|
+
export declare function requireAgent(ctx: InvocationContext): BaseAgent;
|
|
@@ -35,9 +35,15 @@ export declare class LiveRequestQueue {
|
|
|
35
35
|
/**
|
|
36
36
|
* Retrieves a request from the queue. If the queue is empty, it will
|
|
37
37
|
* wait until a request is available.
|
|
38
|
+
*
|
|
39
|
+
* @param abortSignal When provided, a parked (pending) read is released by
|
|
40
|
+
* rejecting with an abort error once the signal fires. The live send
|
|
41
|
+
* loop passes the connection's abort signal so a waiter is not stranded
|
|
42
|
+
* across reconnect/teardown, where it could otherwise steal a request
|
|
43
|
+
* from the next connection's send loop.
|
|
38
44
|
* @returns A promise that resolves with the next available request.
|
|
39
45
|
*/
|
|
40
|
-
get(): Promise<LiveRequest>;
|
|
46
|
+
get(abortSignal?: AbortSignal): Promise<LiveRequest>;
|
|
41
47
|
/**
|
|
42
48
|
* Sends a close signal to the queue.
|
|
43
49
|
*/
|
|
@@ -4,6 +4,9 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { GenerateContentConfig, Schema } from '@google/genai';
|
|
7
|
+
import { FinishTaskTool } from '../tools/finish_task_tool.js';
|
|
8
|
+
import { type BaseNode } from '../workflow/base_node.js';
|
|
9
|
+
import { NodeContext } from '../workflow/node_context.js';
|
|
7
10
|
import { z as z3 } from 'zod/v3';
|
|
8
11
|
import { z as z4 } from 'zod/v4';
|
|
9
12
|
import { BaseCodeExecutor } from '../code_executors/base_code_executor.js';
|
|
@@ -16,6 +19,7 @@ import { LlmResponse } from '../models/llm_response.js';
|
|
|
16
19
|
import { BaseTool } from '../tools/base_tool.js';
|
|
17
20
|
import { BaseToolset } from '../tools/base_toolset.js';
|
|
18
21
|
import { Context } from './context.js';
|
|
22
|
+
import { SchemaLike } from '../utils/schema.js';
|
|
19
23
|
import { BaseAgent, BaseAgentConfig } from './base_agent.js';
|
|
20
24
|
import { BaseLlmRequestProcessor, BaseLlmResponseProcessor } from './processors/base_llm_processor.js';
|
|
21
25
|
import { BaseContextCompactor } from '../context/base_context_compactor.js';
|
|
@@ -43,7 +47,7 @@ export type SingleBeforeModelCallback = (params: {
|
|
|
43
47
|
* A single callback or a list of callbacks.
|
|
44
48
|
*
|
|
45
49
|
* When a list of callbacks is provided, the callbacks will be called in the
|
|
46
|
-
* order they are listed until a callback does not return
|
|
50
|
+
* order they are listed until a callback does not return `undefined`.
|
|
47
51
|
*/
|
|
48
52
|
export type BeforeModelCallback = SingleBeforeModelCallback | SingleBeforeModelCallback[];
|
|
49
53
|
/**
|
|
@@ -63,7 +67,7 @@ export type SingleAfterModelCallback = (params: {
|
|
|
63
67
|
* A single callback or a list of callbacks.
|
|
64
68
|
*
|
|
65
69
|
* When a list of callbacks is provided, the callbacks will be called in the
|
|
66
|
-
order they are listed until a callback does not return
|
|
70
|
+
* order they are listed until a callback does not return `undefined`.
|
|
67
71
|
*/
|
|
68
72
|
export type AfterModelCallback = SingleAfterModelCallback | SingleAfterModelCallback[];
|
|
69
73
|
/**
|
|
@@ -84,7 +88,7 @@ export type SingleBeforeToolCallback = (params: {
|
|
|
84
88
|
* A single callback or a list of callbacks.
|
|
85
89
|
*
|
|
86
90
|
* When a list of callbacks is provided, the callbacks will be called in the
|
|
87
|
-
* order they are listed until a callback does not return
|
|
91
|
+
* order they are listed until a callback does not return `undefined`.
|
|
88
92
|
*/
|
|
89
93
|
export type BeforeToolCallback = SingleBeforeToolCallback | SingleBeforeToolCallback[];
|
|
90
94
|
/**
|
|
@@ -106,13 +110,13 @@ export type SingleAfterToolCallback = (params: {
|
|
|
106
110
|
* A single callback or a list of callbacks.
|
|
107
111
|
*
|
|
108
112
|
* When a list of callbacks is provided, the callbacks will be called in the
|
|
109
|
-
* order they are listed until
|
|
113
|
+
* order they are listed until a callback does not return `undefined`.
|
|
110
114
|
*/
|
|
111
115
|
export type AfterToolCallback = SingleAfterToolCallback | SingleAfterToolCallback[];
|
|
112
116
|
/** A list of examples or an example provider. */
|
|
113
117
|
export type ExamplesUnion = Example[] | BaseExampleProvider;
|
|
114
118
|
/** A union of tool types that can be provided to an agent. */
|
|
115
|
-
export type ToolUnion = BaseTool | BaseToolset;
|
|
119
|
+
export type ToolUnion = BaseTool | BaseToolset | BaseNode;
|
|
116
120
|
/**
|
|
117
121
|
* The configuration options for creating an LLM-based agent.
|
|
118
122
|
*/
|
|
@@ -139,8 +143,10 @@ export interface LlmAgentConfig extends BaseAgentConfig {
|
|
|
139
143
|
/**
|
|
140
144
|
* The additional content generation configurations.
|
|
141
145
|
*
|
|
142
|
-
*
|
|
143
|
-
* `tools
|
|
146
|
+
* Three fields are rejected by the constructor, because the agent owns them:
|
|
147
|
+
* `tools` (set them through `tools`), `systemInstruction` (through
|
|
148
|
+
* `instruction`) and `responseSchema` (through `outputSchema`). Every other
|
|
149
|
+
* field is forwarded to the model as given — `thinkingConfig` included.
|
|
144
150
|
*
|
|
145
151
|
* For example: use this config to adjust model temperature, configure safety
|
|
146
152
|
* settings, etc.
|
|
@@ -149,7 +155,7 @@ export interface LlmAgentConfig extends BaseAgentConfig {
|
|
|
149
155
|
/**
|
|
150
156
|
* Disallows LLM-controlled transferring to the parent agent.
|
|
151
157
|
*
|
|
152
|
-
* NOTE: Setting this
|
|
158
|
+
* NOTE: Setting this to `true` also prevents this agent to continue reply to
|
|
153
159
|
* the end-user. This behavior prevents one-way transfer, in which end-user
|
|
154
160
|
* may be stuck with one agent that cannot transfer to other agents in the
|
|
155
161
|
* agent tree.
|
|
@@ -166,6 +172,15 @@ export interface LlmAgentConfig extends BaseAgentConfig {
|
|
|
166
172
|
* instruction and input
|
|
167
173
|
*/
|
|
168
174
|
includeContents?: 'default' | 'none';
|
|
175
|
+
/**
|
|
176
|
+
* The agent's execution mode when run as a workflow node.
|
|
177
|
+
*
|
|
178
|
+
* - `single_turn` (default): the agent runs once against the node input.
|
|
179
|
+
* - `task`: the agent is given a `finish_task` tool and runs a multi-round
|
|
180
|
+
* loop until it calls `finish_task`, whose arguments (conforming to
|
|
181
|
+
* `outputSchema`) become the node output. Mirrors Python's `Agent(mode=...)`.
|
|
182
|
+
*/
|
|
183
|
+
mode?: 'single_turn' | 'task';
|
|
169
184
|
/** The input schema when agent is used as a tool. */
|
|
170
185
|
inputSchema?: LlmAgentSchema;
|
|
171
186
|
/** The output schema when agent replies. */
|
|
@@ -238,9 +253,34 @@ export declare class LlmAgent extends BaseAgent<LlmAgentConfig> {
|
|
|
238
253
|
disallowTransferToParent: boolean;
|
|
239
254
|
disallowTransferToPeers: boolean;
|
|
240
255
|
includeContents: 'default' | 'none';
|
|
256
|
+
/**
|
|
257
|
+
* Whether {@link includeContents} was set by the caller rather than defaulted.
|
|
258
|
+
*
|
|
259
|
+
* A workflow node runs its agent for a single turn on the input the graph
|
|
260
|
+
* handed it, so the agent must not also read the surrounding conversation —
|
|
261
|
+
* unless the author asked for it. Mirrors Python checking
|
|
262
|
+
* `'include_contents' in agent.model_fields_set`.
|
|
263
|
+
*/
|
|
264
|
+
readonly includeContentsExplicit: boolean;
|
|
265
|
+
mode?: 'single_turn' | 'task';
|
|
241
266
|
inputSchema?: Schema;
|
|
242
267
|
outputSchema?: Schema;
|
|
268
|
+
/**
|
|
269
|
+
* The input schema exactly as it was supplied, before conversion into the
|
|
270
|
+
* genai dialect.
|
|
271
|
+
*
|
|
272
|
+
* `inputSchema` is normalized to a genai `Schema` because that is what the
|
|
273
|
+
* model API and function declarations require, but that conversion is lossy:
|
|
274
|
+
* a Zod refinement, transform, or custom error message has no genai
|
|
275
|
+
* equivalent. Validation therefore uses the original, falling back to the
|
|
276
|
+
* converted form when the schema was given in the genai dialect to begin
|
|
277
|
+
* with.
|
|
278
|
+
*/
|
|
279
|
+
readonly inputSchemaSource?: SchemaLike;
|
|
280
|
+
/** The output schema as supplied — see {@link inputSchemaSource}. */
|
|
281
|
+
readonly outputSchemaSource?: SchemaLike;
|
|
243
282
|
outputKey?: string;
|
|
283
|
+
private _finishTaskTool?;
|
|
244
284
|
beforeModelCallback?: BeforeModelCallback;
|
|
245
285
|
afterModelCallback?: AfterModelCallback;
|
|
246
286
|
beforeToolCallback?: BeforeToolCallback;
|
|
@@ -255,6 +295,11 @@ export declare class LlmAgent extends BaseAgent<LlmAgentConfig> {
|
|
|
255
295
|
* When not set, the agent will inherit the model from its ancestor.
|
|
256
296
|
*/
|
|
257
297
|
get canonicalModel(): BaseLlm;
|
|
298
|
+
/**
|
|
299
|
+
* The `finish_task` tool for this agent (task mode). Lazily created and cached
|
|
300
|
+
* so its declaration (derived from `outputSchema`) is stable across turns.
|
|
301
|
+
*/
|
|
302
|
+
get finishTaskTool(): FinishTaskTool;
|
|
258
303
|
/**
|
|
259
304
|
* The resolved instruction field to construct instruction for this
|
|
260
305
|
* agent.
|
|
@@ -329,6 +374,28 @@ export declare class LlmAgent extends BaseAgent<LlmAgentConfig> {
|
|
|
329
374
|
* @param event The event to process.
|
|
330
375
|
*/
|
|
331
376
|
private maybeSaveOutputToState;
|
|
377
|
+
/**
|
|
378
|
+
* Validates a value against this agent's output schema, in whichever dialect
|
|
379
|
+
* it was declared, and returns the parsed value.
|
|
380
|
+
*
|
|
381
|
+
* Prefers the schema as supplied ({@link outputSchemaSource}) over the genai
|
|
382
|
+
* form derived from it, since the conversion drops constraints Zod can
|
|
383
|
+
* express and genai cannot.
|
|
384
|
+
*
|
|
385
|
+
* @throws if the value does not satisfy the schema.
|
|
386
|
+
*/
|
|
387
|
+
validateOutput(value: unknown): unknown;
|
|
388
|
+
/**
|
|
389
|
+
* Runs this agent as a workflow node.
|
|
390
|
+
*
|
|
391
|
+
* Where {@link BaseAgent.runImpl} delegates straight to `runAsync`, an
|
|
392
|
+
* `LlmAgent` has a node input to inject into the conversation, instruction
|
|
393
|
+
* placeholders to resolve against it, a reply to promote to node output, and
|
|
394
|
+
* — in `task` mode — a `finish_task` round-trip to drive. All of that lives
|
|
395
|
+
* in `runLlmAgentAsNode`, mirroring adk-python's `LlmAgent._run_impl`
|
|
396
|
+
* delegating to `run_llm_agent_as_node`.
|
|
397
|
+
*/
|
|
398
|
+
protected runImpl(ctx: NodeContext, nodeInput: unknown): AsyncGenerator<Event, void, void>;
|
|
332
399
|
protected runAsyncImpl(context: InvocationContext): AsyncGenerator<Event, void, void>;
|
|
333
400
|
protected runLiveImpl(context: InvocationContext): AsyncGenerator<Event, void, void>;
|
|
334
401
|
/**
|
|
@@ -346,6 +413,17 @@ export declare class LlmAgent extends BaseAgent<LlmAgentConfig> {
|
|
|
346
413
|
* already holds the conversation state associated with the handle.
|
|
347
414
|
*/
|
|
348
415
|
private runLiveFlow;
|
|
416
|
+
private runLivePreprocess;
|
|
417
|
+
private runSendLoop;
|
|
418
|
+
private dispatchLiveRequest;
|
|
419
|
+
/**
|
|
420
|
+
* Tears down a live attempt: stops the send loop, closes the connection
|
|
421
|
+
* (swallowing close errors), and waits for the send task to settle. Used
|
|
422
|
+
* before reconnecting or propagating an error.
|
|
423
|
+
*/
|
|
424
|
+
private teardownLiveConnection;
|
|
425
|
+
private runReceiveLoop;
|
|
426
|
+
private postprocessLive;
|
|
349
427
|
private runOneStepAsync;
|
|
350
428
|
private postprocess;
|
|
351
429
|
/**
|
|
@@ -33,6 +33,11 @@ export declare function isLoopAgent(obj: unknown): obj is LoopAgent;
|
|
|
33
33
|
*
|
|
34
34
|
* When sub-agent generates an event with escalate or max_iterations are
|
|
35
35
|
* reached, the loop agent will stop.
|
|
36
|
+
*
|
|
37
|
+
* @deprecated Use `Workflow` instead, which expresses the same ordering as a
|
|
38
|
+
* graph and adds routing, retries, HITL and resumability. This class will be
|
|
39
|
+
* removed in a future version. Note that a `Workflow` cannot yet be an
|
|
40
|
+
* `LlmAgent` sub-agent.
|
|
36
41
|
*/
|
|
37
42
|
export declare class LoopAgent extends BaseAgent<LoopAgentConfig> {
|
|
38
43
|
/**
|
|
@@ -25,6 +25,11 @@ export declare function isParallelAgent(obj: unknown): obj is ParallelAgent;
|
|
|
25
25
|
*
|
|
26
26
|
* - Running different algorithms simultaneously.
|
|
27
27
|
* - Generating multiple responses for review by a subsequent evaluation agent.
|
|
28
|
+
*
|
|
29
|
+
* @deprecated Use `Workflow` instead, which expresses the same ordering as a
|
|
30
|
+
* graph and adds routing, retries, HITL and resumability. This class will be
|
|
31
|
+
* removed in a future version. Note that a `Workflow` cannot yet be an
|
|
32
|
+
* `LlmAgent` sub-agent.
|
|
28
33
|
*/
|
|
29
34
|
export declare class ParallelAgent extends BaseAgent {
|
|
30
35
|
/**
|
|
@@ -16,7 +16,22 @@ import { BaseLlmRequestProcessor } from './base_llm_processor.js';
|
|
|
16
16
|
*/
|
|
17
17
|
export declare class AgentTransferLlmRequestProcessor extends BaseLlmRequestProcessor {
|
|
18
18
|
private readonly toolName;
|
|
19
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Builds the `transfer_to_agent` tool for one invocation.
|
|
21
|
+
*
|
|
22
|
+
* Built per call rather than shared, because the parameter is an enum of the
|
|
23
|
+
* agents actually reachable from here. That mirrors adk-python's
|
|
24
|
+
* `TransferToAgentTool`, and it stops the model inventing a target: an
|
|
25
|
+
* unknown name now fails argument validation and comes back to the model as
|
|
26
|
+
* a tool error it can retry, instead of silently setting `transferToAgent`
|
|
27
|
+
* to an agent that does not exist.
|
|
28
|
+
*
|
|
29
|
+
* The parameter is `agent_name`, not `agentName`. It is wire format — it
|
|
30
|
+
* appears in the declaration sent to the model and in the events that get
|
|
31
|
+
* persisted — and adk-python spells it `agent_name`, so a transcript
|
|
32
|
+
* produced by one runtime has to be readable by the other.
|
|
33
|
+
*/
|
|
34
|
+
private buildTool;
|
|
20
35
|
/**
|
|
21
36
|
* Appends transfer instructions and registers the `transfer_to_agent` tool
|
|
22
37
|
* when the agent has reachable transfer targets.
|
|
@@ -19,10 +19,11 @@ export declare function removeClientFunctionCallId(content: Content): void;
|
|
|
19
19
|
* @param events: A list of all session events.
|
|
20
20
|
* @param agentName: The name of the agent.
|
|
21
21
|
* @param currentBranch: The current branch of the agent.
|
|
22
|
+
* @param currentIsolationScope: The isolation scope of the current node, if any.
|
|
22
23
|
*
|
|
23
24
|
* @returns A list of processed contents.
|
|
24
25
|
*/
|
|
25
|
-
export declare function getContents(events: Event[], agentName: string, currentBranch?: string): Content[];
|
|
26
|
+
export declare function getContents(events: Event[], agentName: string, currentBranch?: string, currentIsolationScope?: string): Content[];
|
|
26
27
|
/**
|
|
27
28
|
* Get contents for the current turn only (no conversation history).
|
|
28
29
|
*
|
|
@@ -41,7 +42,7 @@ export declare function getContents(events: Event[], agentName: string, currentB
|
|
|
41
42
|
* @returns A list of contents for the current turn only, preserving context
|
|
42
43
|
* needed for proper tool execution while excluding conversation history.
|
|
43
44
|
*/
|
|
44
|
-
export declare function getCurrentTurnContents(events: Event[], agentName: string, currentBranch?: string): Content[];
|
|
45
|
+
export declare function getCurrentTurnContents(events: Event[], agentName: string, currentBranch?: string, currentIsolationScope?: string): Content[];
|
|
45
46
|
/**
|
|
46
47
|
* Merges a list of function_response events into one event.
|
|
47
48
|
*
|
|
@@ -10,11 +10,14 @@ import { BaseLlmRequestProcessor } from './base_llm_processor.js';
|
|
|
10
10
|
/**
|
|
11
11
|
* Appends identity instructions to the {@link LlmRequest} system prompt,
|
|
12
12
|
* informing the model of the agent's name and description.
|
|
13
|
+
*
|
|
14
|
+
* The instructions are omitted for an agent that cannot transfer control
|
|
15
|
+
* anywhere, since nothing in the prompt consumes the identity in that case.
|
|
13
16
|
*/
|
|
14
17
|
export declare class IdentityLlmRequestProcessor extends BaseLlmRequestProcessor {
|
|
15
18
|
/**
|
|
16
19
|
* Appends agent name and description as identity instructions to the system
|
|
17
|
-
* prompt of the request.
|
|
20
|
+
* prompt of the request, unless the agent has no reachable transfer target.
|
|
18
21
|
*
|
|
19
22
|
* @param invocationContext - The current invocation context.
|
|
20
23
|
* @param llmRequest - The request object to append instructions to.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Event } from '../../events/event.js';
|
|
7
|
+
import { InvocationContext } from '../invocation_context.js';
|
|
8
|
+
import { BaseLlmRequestProcessor } from './base_llm_processor.js';
|
|
9
|
+
/**
|
|
10
|
+
* Resumes a {@link NodeTool} call that paused for input. When a node/workflow
|
|
11
|
+
* run inside a node-tool raises a `RequestInput` interrupt, the node-tool's
|
|
12
|
+
* function call is left pending (no response) and the invocation pauses. On the
|
|
13
|
+
* next turn, once the user answers the `adk_request_input` interrupt, this
|
|
14
|
+
* processor re-runs the pending node-tool with the answer(s) threaded as
|
|
15
|
+
* `resumeInputs`, then emits the tool's function response so the agent can
|
|
16
|
+
* continue. Analogous to {@link RequestConfirmationLlmRequestProcessor}.
|
|
17
|
+
*/
|
|
18
|
+
export declare class RequestInputLlmRequestProcessor extends BaseLlmRequestProcessor {
|
|
19
|
+
runAsync(invocationContext: InvocationContext): AsyncGenerator<Event, void, void>;
|
|
20
|
+
}
|
|
21
|
+
export declare const REQUEST_INPUT_LLM_REQUEST_PROCESSOR: RequestInputLlmRequestProcessor;
|
|
@@ -36,4 +36,8 @@ export declare class ReadonlyContext {
|
|
|
36
36
|
* The state of the current session.
|
|
37
37
|
*/
|
|
38
38
|
get state(): Readonly<State>;
|
|
39
|
+
/**
|
|
40
|
+
* Request-level metadata passed from an incoming A2A request or caller.
|
|
41
|
+
*/
|
|
42
|
+
get a2aMetadata(): Record<string, unknown> | undefined;
|
|
39
43
|
}
|
|
@@ -3,13 +3,23 @@
|
|
|
3
3
|
* Copyright 2025 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { AudioTranscriptionConfig, Modality, ProactivityConfig, RealtimeInputConfig, SpeechConfig } from '@google/genai';
|
|
6
|
+
import { AudioTranscriptionConfig, ContextWindowCompressionConfig, Modality, ProactivityConfig, RealtimeInputConfig, SpeechConfig } from '@google/genai';
|
|
7
7
|
/**
|
|
8
8
|
* The streaming mode for the run config.
|
|
9
9
|
*/
|
|
10
10
|
export declare enum StreamingMode {
|
|
11
|
+
/** Deliver the response as a single event once the turn completes. */
|
|
11
12
|
NONE = "none",
|
|
13
|
+
/**
|
|
14
|
+
* Deliver the response incrementally, as a series of partial events
|
|
15
|
+
* followed by a final event carrying the complete text.
|
|
16
|
+
*/
|
|
12
17
|
SSE = "sse",
|
|
18
|
+
/**
|
|
19
|
+
* Reserved. Bidirectional streaming is reached through `Runner.runLive()`,
|
|
20
|
+
* not through this value: `runLive` itself calls `createRunConfig`, which
|
|
21
|
+
* rejects `BIDI`. Use {@link StreamingMode.SSE} for incremental responses.
|
|
22
|
+
*/
|
|
13
23
|
BIDI = "bidi"
|
|
14
24
|
}
|
|
15
25
|
/**
|
|
@@ -38,7 +48,11 @@ export interface RunConfig {
|
|
|
38
48
|
*/
|
|
39
49
|
supportCfc?: boolean;
|
|
40
50
|
/**
|
|
41
|
-
*
|
|
51
|
+
* How the response is delivered. Defaults to {@link StreamingMode.NONE},
|
|
52
|
+
* which emits one event when the turn completes; set
|
|
53
|
+
* {@link StreamingMode.SSE} to receive partial events as the response is
|
|
54
|
+
* produced. {@link StreamingMode.BIDI} is rejected by `createRunConfig`;
|
|
55
|
+
* bidirectional streaming is reached through `Runner.runLive()` instead.
|
|
42
56
|
*/
|
|
43
57
|
streamingMode?: StreamingMode;
|
|
44
58
|
/**
|
|
@@ -63,12 +77,18 @@ export interface RunConfig {
|
|
|
63
77
|
* Realtime input config for live agents with audio input from user.
|
|
64
78
|
*/
|
|
65
79
|
realtimeInputConfig?: RealtimeInputConfig;
|
|
80
|
+
/**
|
|
81
|
+
* Context window compression config. When the running context exceeds
|
|
82
|
+
* `triggerTokens`, the server compresses older history to `targetTokens`.
|
|
83
|
+
*/
|
|
84
|
+
contextWindowCompression?: ContextWindowCompressionConfig;
|
|
66
85
|
/**
|
|
67
86
|
* A limit on the total number of llm calls for a given run.
|
|
68
87
|
*
|
|
69
88
|
* Valid Values:
|
|
70
|
-
* - More than 0 and
|
|
71
|
-
*
|
|
89
|
+
* - More than 0 and at most `Number.MAX_SAFE_INTEGER`: The bound on the
|
|
90
|
+
* number of llm calls is enforced. `createRunConfig()` throws for
|
|
91
|
+
* anything larger.
|
|
72
92
|
* - Less than or equal to 0: This allows for unbounded number of llm calls.
|
|
73
93
|
*/
|
|
74
94
|
maxLlmCalls?: number;
|
|
@@ -77,6 +97,48 @@ export interface RunConfig {
|
|
|
77
97
|
* to intercept and execute tools (Client-Side Tool Execution).
|
|
78
98
|
*/
|
|
79
99
|
pauseOnToolCalls?: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* If true, a plain-text user reply (e.g. "yes"/"no") may resolve a pending
|
|
102
|
+
* `requireConfirmation` tool gate. Off by default so an ordinary chat message
|
|
103
|
+
* on a web/API surface is never silently reinterpreted as a security
|
|
104
|
+
* decision; interactive front-ends (e.g. `adk run`) opt in explicitly.
|
|
105
|
+
*/
|
|
106
|
+
plainTextToolConfirmation?: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Request-level metadata passed from an incoming A2A request or caller.
|
|
109
|
+
*/
|
|
110
|
+
a2aMetadata?: Record<string, unknown>;
|
|
111
|
+
/**
|
|
112
|
+
* If true, a `requireConfirmation` gate may be answered by a message that
|
|
113
|
+
* arrived over A2A.
|
|
114
|
+
*
|
|
115
|
+
* Off by default: a remote peer is not the human operator, and a peer that
|
|
116
|
+
* can post to the task would otherwise be able to approve a dangerous tool
|
|
117
|
+
* call on the operator's behalf — the thing the gate exists to prevent. Turn
|
|
118
|
+
* it on only where the peer is a trusted relay for a real person: a front-end
|
|
119
|
+
* that renders the prompt and sends back what they chose.
|
|
120
|
+
*
|
|
121
|
+
* A deliberate divergence from adk-python, which refuses a remote-delivered
|
|
122
|
+
* confirmation outright and offers no way back. The default matches; the
|
|
123
|
+
* option does not exist there.
|
|
124
|
+
*/
|
|
125
|
+
allowRemoteToolConfirmation?: boolean;
|
|
126
|
+
/**
|
|
127
|
+
* Set by the A2A executor to record that this run's message came from a
|
|
128
|
+
* remote peer. Not part of the configuration surface: an application setting
|
|
129
|
+
* it by hand is asserting something about the message's provenance that only
|
|
130
|
+
* the transport can know.
|
|
131
|
+
*
|
|
132
|
+
* Read by the tool-confirmation resume path only. The other two interrupts a
|
|
133
|
+
* peer can answer — `adk_request_credential` and `adk_request_input` — are
|
|
134
|
+
* answerable by a client by design: a credential is something a client holds,
|
|
135
|
+
* and an input request asks for data, not for judgement. Confirmation is the
|
|
136
|
+
* one that asks a specific human to take responsibility for an action, which
|
|
137
|
+
* is why it is the one a peer cannot stand in for.
|
|
138
|
+
*
|
|
139
|
+
* @internal
|
|
140
|
+
*/
|
|
141
|
+
remoteDelivered?: boolean;
|
|
80
142
|
}
|
|
81
143
|
/**
|
|
82
144
|
* Creates a {@link RunConfig} with production-safe defaults.
|
|
@@ -92,6 +154,7 @@ export interface RunConfig {
|
|
|
92
154
|
* @param params - Optional partial {@link RunConfig} overriding defaults.
|
|
93
155
|
* @returns A merged {@link RunConfig} object.
|
|
94
156
|
* @throws {Error} When `params.maxLlmCalls` exceeds `Number.MAX_SAFE_INTEGER`.
|
|
157
|
+
* @throws {Error} When `params.streamingMode` is {@link StreamingMode.BIDI}.
|
|
95
158
|
*/
|
|
96
159
|
export declare function createRunConfig(params?: Partial<RunConfig>): {
|
|
97
160
|
maxLlmCalls: number;
|
|
@@ -105,5 +168,10 @@ export declare function createRunConfig(params?: Partial<RunConfig>): {
|
|
|
105
168
|
enableAffectiveDialog: boolean;
|
|
106
169
|
proactivity?: ProactivityConfig | undefined;
|
|
107
170
|
realtimeInputConfig?: RealtimeInputConfig | undefined;
|
|
171
|
+
contextWindowCompression?: ContextWindowCompressionConfig | undefined;
|
|
108
172
|
pauseOnToolCalls: boolean;
|
|
173
|
+
plainTextToolConfirmation?: boolean | undefined;
|
|
174
|
+
a2aMetadata?: Record<string, unknown> | undefined;
|
|
175
|
+
allowRemoteToolConfirmation?: boolean | undefined;
|
|
176
|
+
remoteDelivered?: boolean | undefined;
|
|
109
177
|
};
|
|
@@ -19,6 +19,11 @@ declare const SEQUENTIAL_AGENT_SIGNATURE_SYMBOL: unique symbol;
|
|
|
19
19
|
export declare function isSequentialAgent(obj: unknown): obj is SequentialAgent;
|
|
20
20
|
/**
|
|
21
21
|
* A shell agent that runs its sub-agents in a sequential order.
|
|
22
|
+
*
|
|
23
|
+
* @deprecated Use `Workflow` instead, which expresses the same ordering as a
|
|
24
|
+
* graph and adds routing, retries, HITL and resumability. This class will be
|
|
25
|
+
* removed in a future version. Note that a `Workflow` cannot yet be an
|
|
26
|
+
* `LlmAgent` sub-agent.
|
|
22
27
|
*/
|
|
23
28
|
export declare class SequentialAgent extends BaseAgent {
|
|
24
29
|
/**
|