@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
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
/**
|
|
4
|
-
* @license
|
|
5
|
-
* Copyright 2025 Google LLC
|
|
6
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
-
*/
|
|
8
|
-
function appendInstructions(llmRequest, instructions) {
|
|
9
|
-
if (!llmRequest.config) {
|
|
10
|
-
llmRequest.config = {};
|
|
11
|
-
}
|
|
12
|
-
const newInstructions = instructions.join("\n\n");
|
|
13
|
-
if (llmRequest.config.systemInstruction) {
|
|
14
|
-
llmRequest.config.systemInstruction += "\n\n" + newInstructions;
|
|
15
|
-
} else {
|
|
16
|
-
llmRequest.config.systemInstruction = newInstructions;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
function appendTools(llmRequest, tools) {
|
|
20
|
-
if (!(tools == null ? void 0 : tools.length)) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
const functionDeclarations = [];
|
|
24
|
-
for (const tool of tools) {
|
|
25
|
-
const declaration = tool._getDeclaration();
|
|
26
|
-
if (declaration) {
|
|
27
|
-
functionDeclarations.push(declaration);
|
|
28
|
-
llmRequest.toolsDict[tool.name] = tool;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
if (functionDeclarations.length) {
|
|
32
|
-
if (!llmRequest.config) {
|
|
33
|
-
llmRequest.config = {};
|
|
34
|
-
}
|
|
35
|
-
if (!llmRequest.config.tools) {
|
|
36
|
-
llmRequest.config.tools = [];
|
|
37
|
-
}
|
|
38
|
-
llmRequest.config.tools.push({ functionDeclarations });
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
function setOutputSchema(llmRequest, schema) {
|
|
42
|
-
if (!llmRequest.config) {
|
|
43
|
-
llmRequest.config = {};
|
|
44
|
-
}
|
|
45
|
-
llmRequest.config.responseSchema = schema;
|
|
46
|
-
llmRequest.config.responseMimeType = "application/json";
|
|
47
|
-
}
|
|
48
|
-
export {
|
|
49
|
-
appendInstructions,
|
|
50
|
-
appendTools,
|
|
51
|
-
setOutputSchema
|
|
52
|
-
};
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
/**
|
|
4
|
-
* @license
|
|
5
|
-
* Copyright 2025 Google LLC
|
|
6
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
-
*/
|
|
8
|
-
function createLlmResponse(response) {
|
|
9
|
-
var _a;
|
|
10
|
-
const usageMetadata = response.usageMetadata;
|
|
11
|
-
if (response.candidates && response.candidates.length > 0) {
|
|
12
|
-
const candidate = response.candidates[0];
|
|
13
|
-
if (((_a = candidate.content) == null ? void 0 : _a.parts) && candidate.content.parts.length > 0) {
|
|
14
|
-
return {
|
|
15
|
-
content: candidate.content,
|
|
16
|
-
groundingMetadata: candidate.groundingMetadata,
|
|
17
|
-
citationMetadata: candidate.citationMetadata,
|
|
18
|
-
usageMetadata,
|
|
19
|
-
finishReason: candidate.finishReason
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
return {
|
|
23
|
-
errorCode: candidate.finishReason,
|
|
24
|
-
errorMessage: candidate.finishMessage,
|
|
25
|
-
usageMetadata,
|
|
26
|
-
citationMetadata: candidate.citationMetadata,
|
|
27
|
-
finishReason: candidate.finishReason
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
if (response.promptFeedback) {
|
|
31
|
-
return {
|
|
32
|
-
errorCode: response.promptFeedback.blockReason,
|
|
33
|
-
errorMessage: response.promptFeedback.blockReasonMessage,
|
|
34
|
-
usageMetadata
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
return {
|
|
38
|
-
errorCode: "UNKNOWN_ERROR",
|
|
39
|
-
errorMessage: "Unknown error.",
|
|
40
|
-
usageMetadata
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
export {
|
|
44
|
-
createLlmResponse
|
|
45
|
-
};
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
/**
|
|
4
|
-
* @license
|
|
5
|
-
* Copyright 2025 Google LLC
|
|
6
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
-
*/
|
|
8
|
-
import { logger } from "../utils/logger.js";
|
|
9
|
-
import { ApigeeLlm } from "./apigee_llm.js";
|
|
10
|
-
import { Gemini } from "./google_llm.js";
|
|
11
|
-
class LRUCache {
|
|
12
|
-
constructor(maxSize) {
|
|
13
|
-
this.maxSize = maxSize;
|
|
14
|
-
this.cache = /* @__PURE__ */ new Map();
|
|
15
|
-
}
|
|
16
|
-
get(key) {
|
|
17
|
-
const item = this.cache.get(key);
|
|
18
|
-
if (item) {
|
|
19
|
-
this.cache.delete(key);
|
|
20
|
-
this.cache.set(key, item);
|
|
21
|
-
}
|
|
22
|
-
return item;
|
|
23
|
-
}
|
|
24
|
-
set(key, value) {
|
|
25
|
-
if (this.cache.size >= this.maxSize && !this.cache.has(key)) {
|
|
26
|
-
const lruKey = this.cache.keys().next().value;
|
|
27
|
-
if (lruKey !== void 0) {
|
|
28
|
-
this.cache.delete(lruKey);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
this.cache.set(key, value);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
const _LLMRegistry = class _LLMRegistry {
|
|
35
|
-
/**
|
|
36
|
-
* Creates a new LLM instance.
|
|
37
|
-
* @param model The model name.
|
|
38
|
-
* @returns The LLM instance.
|
|
39
|
-
*/
|
|
40
|
-
static newLlm(model) {
|
|
41
|
-
return new (_LLMRegistry.resolve(model))({ model });
|
|
42
|
-
}
|
|
43
|
-
static _register(modelNameRegex, llmCls) {
|
|
44
|
-
if (_LLMRegistry.llmRegistryDict.has(modelNameRegex)) {
|
|
45
|
-
logger.info(
|
|
46
|
-
"Updating LLM class for ".concat(modelNameRegex, " from ").concat(_LLMRegistry.llmRegistryDict.get(modelNameRegex), " to ").concat(llmCls)
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
_LLMRegistry.llmRegistryDict.set(modelNameRegex, llmCls);
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Registers a new LLM class.
|
|
53
|
-
* @param llmCls The class that implements the model.
|
|
54
|
-
*/
|
|
55
|
-
static register(llmCls) {
|
|
56
|
-
for (const regex of llmCls.supportedModels) {
|
|
57
|
-
_LLMRegistry._register(regex, llmCls);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Resolves the model to a BaseLlm subclass.
|
|
62
|
-
* @param model The model name.
|
|
63
|
-
* @returns The BaseLlm subclass.
|
|
64
|
-
* @throws If the model is not found.
|
|
65
|
-
*/
|
|
66
|
-
static resolve(model) {
|
|
67
|
-
const cachedLlm = _LLMRegistry.resolveCache.get(model);
|
|
68
|
-
if (cachedLlm) {
|
|
69
|
-
return cachedLlm;
|
|
70
|
-
}
|
|
71
|
-
for (const [regex, llmClass] of _LLMRegistry.llmRegistryDict.entries()) {
|
|
72
|
-
const pattern = new RegExp(
|
|
73
|
-
"^".concat(regex instanceof RegExp ? regex.source : regex, "$"),
|
|
74
|
-
regex instanceof RegExp ? regex.flags : void 0
|
|
75
|
-
);
|
|
76
|
-
if (pattern.test(model)) {
|
|
77
|
-
_LLMRegistry.resolveCache.set(model, llmClass);
|
|
78
|
-
return llmClass;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
throw new Error("Model ".concat(model, " not found."));
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
/**
|
|
85
|
-
* Key is the regex that matches the model name.
|
|
86
|
-
* Value is the class that implements the model.
|
|
87
|
-
*/
|
|
88
|
-
_LLMRegistry.llmRegistryDict = /* @__PURE__ */ new Map();
|
|
89
|
-
_LLMRegistry.resolveCache = new LRUCache(32);
|
|
90
|
-
let LLMRegistry = _LLMRegistry;
|
|
91
|
-
LLMRegistry.register(Gemini);
|
|
92
|
-
LLMRegistry.register(ApigeeLlm);
|
|
93
|
-
export {
|
|
94
|
-
LLMRegistry
|
|
95
|
-
};
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
6
|
-
var __typeError = (msg) => {
|
|
7
|
-
throw TypeError(msg);
|
|
8
|
-
};
|
|
9
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
10
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
11
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
12
|
-
if (decorator = decorators[i])
|
|
13
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
14
|
-
if (kind && result) __defProp(target, key, result);
|
|
15
|
-
return result;
|
|
16
|
-
};
|
|
17
|
-
var __await = function(promise, isYieldStar) {
|
|
18
|
-
this[0] = promise;
|
|
19
|
-
this[1] = isYieldStar;
|
|
20
|
-
};
|
|
21
|
-
var __asyncGenerator = (__this, __arguments, generator) => {
|
|
22
|
-
var resume = (k, v, yes, no) => {
|
|
23
|
-
try {
|
|
24
|
-
var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
|
|
25
|
-
Promise.resolve(isAwait ? v[0] : v).then((y) => isAwait ? resume(k === "return" ? k : "next", v[1] ? { done: y.done, value: y.value } : y, yes, no) : yes({ value: y, done })).catch((e) => resume("throw", e, yes, no));
|
|
26
|
-
} catch (e) {
|
|
27
|
-
no(e);
|
|
28
|
-
}
|
|
29
|
-
}, method = (k) => it[k] = (x) => new Promise((yes, no) => resume(k, x, yes, no)), it = {};
|
|
30
|
-
return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
|
|
31
|
-
};
|
|
32
|
-
var __yieldStar = (value) => {
|
|
33
|
-
var obj = value[__knownSymbol("asyncIterator")], isAwait = false, method, it = {};
|
|
34
|
-
if (obj == null) {
|
|
35
|
-
obj = value[__knownSymbol("iterator")]();
|
|
36
|
-
method = (k) => it[k] = (x) => obj[k](x);
|
|
37
|
-
} else {
|
|
38
|
-
obj = obj.call(value);
|
|
39
|
-
method = (k) => it[k] = (v) => {
|
|
40
|
-
if (isAwait) {
|
|
41
|
-
isAwait = false;
|
|
42
|
-
if (k === "throw") throw v;
|
|
43
|
-
return v;
|
|
44
|
-
}
|
|
45
|
-
isAwait = true;
|
|
46
|
-
return {
|
|
47
|
-
done: false,
|
|
48
|
-
value: new __await(new Promise((resolve) => {
|
|
49
|
-
var x = obj[k](v);
|
|
50
|
-
if (!(x instanceof Object)) __typeError("Object expected");
|
|
51
|
-
resolve(x);
|
|
52
|
-
}), 1)
|
|
53
|
-
};
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
|
|
57
|
-
throw x;
|
|
58
|
-
}, "return" in obj && method("return"), it;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* @license
|
|
62
|
-
* Copyright 2026 Google LLC
|
|
63
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
64
|
-
*/
|
|
65
|
-
import { BaseLlm } from "./base_llm.js";
|
|
66
|
-
import { experimental } from "../utils/experimental.js";
|
|
67
|
-
import { runWithRouting } from "../utils/failover_utils.js";
|
|
68
|
-
import { logger } from "../utils/logger.js";
|
|
69
|
-
let RoutedLlm = class extends BaseLlm {
|
|
70
|
-
constructor({
|
|
71
|
-
models,
|
|
72
|
-
router,
|
|
73
|
-
modelName = "routed-llm"
|
|
74
|
-
}) {
|
|
75
|
-
const modelsMap = Array.isArray(models) ? Object.fromEntries(models.map((m) => [m.model, m])) : models;
|
|
76
|
-
const modelNames = Object.entries(modelsMap).map(
|
|
77
|
-
([name, model]) => "".concat(name, " (").concat(model.model, ")")
|
|
78
|
-
);
|
|
79
|
-
const computedName = "RoutedLlm[".concat(modelNames.join(", "), "]");
|
|
80
|
-
super({ model: modelName === "routed-llm" ? computedName : modelName });
|
|
81
|
-
this.models = modelsMap;
|
|
82
|
-
this.router = router;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Generates content by delegating to the selected model.
|
|
86
|
-
*/
|
|
87
|
-
generateContentAsync(llmRequest, stream) {
|
|
88
|
-
return __asyncGenerator(this, null, function* () {
|
|
89
|
-
logger.info("Routing request via ".concat(this.model));
|
|
90
|
-
yield* __yieldStar(runWithRouting(
|
|
91
|
-
this.models,
|
|
92
|
-
llmRequest,
|
|
93
|
-
this.router,
|
|
94
|
-
(model) => model.generateContentAsync(llmRequest, stream)
|
|
95
|
-
));
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Creates a live connection to the LLM by delegating to the selected model.
|
|
100
|
-
* This live connection cannot be switched mid-stream, it is tied to the model
|
|
101
|
-
* selected at the time of connection.
|
|
102
|
-
*/
|
|
103
|
-
async connect(llmRequest) {
|
|
104
|
-
const generator = runWithRouting(
|
|
105
|
-
this.models,
|
|
106
|
-
llmRequest,
|
|
107
|
-
this.router,
|
|
108
|
-
(model) => model.connect(llmRequest)
|
|
109
|
-
);
|
|
110
|
-
const result = await generator.next();
|
|
111
|
-
if (result.done || result.value === void 0) {
|
|
112
|
-
throw new Error("Failed to establish connection: No connection yielded.");
|
|
113
|
-
}
|
|
114
|
-
return result.value;
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
RoutedLlm = __decorateClass([
|
|
118
|
-
experimental
|
|
119
|
-
], RoutedLlm);
|
|
120
|
-
export {
|
|
121
|
-
RoutedLlm
|
|
122
|
-
};
|
|
@@ -1,271 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
6
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
7
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
8
|
-
if (decorator = decorators[i])
|
|
9
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
10
|
-
if (kind && result) __defProp(target, key, result);
|
|
11
|
-
return result;
|
|
12
|
-
};
|
|
13
|
-
/**
|
|
14
|
-
* @license
|
|
15
|
-
* Copyright 2025 Google LLC
|
|
16
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
17
|
-
*/
|
|
18
|
-
import { experimental } from "../utils/experimental.js";
|
|
19
|
-
var ContextCompactionTrigger = /* @__PURE__ */ ((ContextCompactionTrigger2) => {
|
|
20
|
-
ContextCompactionTrigger2["Manual"] = "Manual";
|
|
21
|
-
ContextCompactionTrigger2["Auto"] = "Auto";
|
|
22
|
-
ContextCompactionTrigger2["AgentControlled"] = "AgentControlled";
|
|
23
|
-
return ContextCompactionTrigger2;
|
|
24
|
-
})(ContextCompactionTrigger || {});
|
|
25
|
-
class BasePlugin {
|
|
26
|
-
/**
|
|
27
|
-
* Initializes the plugin.
|
|
28
|
-
*
|
|
29
|
-
* @param name A unique identifier for this plugin instance.
|
|
30
|
-
*/
|
|
31
|
-
constructor(name) {
|
|
32
|
-
this.name = name;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Callback executed when a user message is received before an invocation
|
|
36
|
-
* starts.
|
|
37
|
-
*
|
|
38
|
-
* This callback helps logging and modifying the user message before the
|
|
39
|
-
* runner starts the invocation.
|
|
40
|
-
*
|
|
41
|
-
* @param params.invocationContext The context for the entire invocation.
|
|
42
|
-
* @param params.userMessage The message content input by user.
|
|
43
|
-
* @returns An optional `Content` to be returned to the ADK. Returning a
|
|
44
|
-
* value to replace the user message. Returning `undefined` to proceed
|
|
45
|
-
* normally.
|
|
46
|
-
*/
|
|
47
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
48
|
-
async onUserMessageCallback(params) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Callback executed before the ADK runner runs.
|
|
53
|
-
*
|
|
54
|
-
* This is the first callback to be called in the lifecycle, ideal for global
|
|
55
|
-
* setup or initialization tasks.
|
|
56
|
-
*
|
|
57
|
-
* @param params.invocationContext The context for the entire invocation, containing
|
|
58
|
-
* session information, the root agent, etc.
|
|
59
|
-
* @returns An optional `Event` to be returned to the ADK. Returning a value
|
|
60
|
-
* to halt execution of the runner and ends the runner with that event.
|
|
61
|
-
* Return `undefined` to proceed normally.
|
|
62
|
-
*/
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
64
|
-
async beforeRunCallback(params) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Callback executed after an event is yielded from runner.
|
|
69
|
-
*
|
|
70
|
-
* This is the ideal place to make modification to the event before the event
|
|
71
|
-
* is handled by the underlying agent app.
|
|
72
|
-
*
|
|
73
|
-
* @param params.invocationContext The context for the entire invocation.
|
|
74
|
-
* @param params.event The event raised by the runner.
|
|
75
|
-
* @returns An optional value. A non-`undefined` return may be used by the
|
|
76
|
-
* framework to modify or replace the response. Copy `params.event` when
|
|
77
|
-
* constructing a replacement to preserve fields that are not being
|
|
78
|
-
* modified, such as event actions. Returning `undefined` allows the
|
|
79
|
-
* original response to be used.
|
|
80
|
-
*/
|
|
81
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
82
|
-
async onEventCallback(params) {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Callback executed after an ADK runner run has completed.
|
|
87
|
-
*
|
|
88
|
-
* This is the final callback in the ADK lifecycle, suitable for cleanup,
|
|
89
|
-
* final logging, or reporting tasks.
|
|
90
|
-
*
|
|
91
|
-
* @param params.invocationContext The context for the entire invocation.
|
|
92
|
-
* @returns undefined
|
|
93
|
-
*/
|
|
94
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
95
|
-
async afterRunCallback(params) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Callback executed before an agent's primary logic is invoked.
|
|
100
|
-
*
|
|
101
|
-
* This callback can be used for logging, setup, or to short-circuit the
|
|
102
|
-
* agent's execution by returning a value.
|
|
103
|
-
*
|
|
104
|
-
* @param params.agent The agent that is about to run.
|
|
105
|
-
* @param params.callbackContext The context for the agent invocation.
|
|
106
|
-
* @returns An optional `Content` object. If a value is returned, it will
|
|
107
|
-
* bypass the agent's callbacks and its execution, and return this value
|
|
108
|
-
* directly. Returning `undefined` allows the agent to proceed normally.
|
|
109
|
-
*/
|
|
110
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
111
|
-
async beforeAgentCallback(params) {
|
|
112
|
-
return;
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Callback executed after an agent's primary logic has completed.
|
|
116
|
-
*
|
|
117
|
-
* This callback can be used to inspect, log, or modify the agent's final
|
|
118
|
-
* result before it is returned.
|
|
119
|
-
*
|
|
120
|
-
* @param params.agent The agent that has just run.
|
|
121
|
-
* @param params.callbackContext The context for the agent invocation.
|
|
122
|
-
* @returns An optional `Content` object. If a value is returned, it will
|
|
123
|
-
* replace the agent's original result. Returning `undefined` uses the
|
|
124
|
-
* original, unmodified result.
|
|
125
|
-
*/
|
|
126
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
127
|
-
async afterAgentCallback(params) {
|
|
128
|
-
return;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Callback executed before a request is sent to the model.
|
|
132
|
-
*
|
|
133
|
-
* This provides an opportunity to inspect, log, or modify the `LlmRequest`
|
|
134
|
-
* object. It can also be used to implement caching by returning a cached
|
|
135
|
-
* `LlmResponse`, which would skip the actual model call.
|
|
136
|
-
*
|
|
137
|
-
* @param params.callbackContext The context for the current agent call.
|
|
138
|
-
* @param params.llmRequest The prepared request object to be sent to the model.
|
|
139
|
-
* @returns An optional value. The interpretation of a non-`undefined`
|
|
140
|
-
* trigger an early exit and returns the response immediately. Returning
|
|
141
|
-
* `undefined` allows the LLM request to proceed normally.
|
|
142
|
-
*/
|
|
143
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
144
|
-
async beforeModelCallback(params) {
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Callback executed after a response is received from the model.
|
|
149
|
-
*
|
|
150
|
-
* This is the ideal place to log model responses, collect metrics on token
|
|
151
|
-
* usage, or perform post-processing on the raw `LlmResponse`.
|
|
152
|
-
*
|
|
153
|
-
* @param params.callbackContext The context for the current agent call.
|
|
154
|
-
* @param params.llmResponse The response object received from the model.
|
|
155
|
-
* @returns An optional value. A non-`undefined` return may be used by the
|
|
156
|
-
* framework to modify or replace the response. Returning `undefined`
|
|
157
|
-
* allows the original response to be used.
|
|
158
|
-
*/
|
|
159
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
160
|
-
async afterModelCallback(params) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Callback executed when a model call encounters an error.
|
|
165
|
-
*
|
|
166
|
-
* This callback provides an opportunity to handle model errors gracefully,
|
|
167
|
-
* potentially providing alternative responses or recovery mechanisms.
|
|
168
|
-
*
|
|
169
|
-
* @param params.callbackContext The context for the current agent call.
|
|
170
|
-
* @param params.llmRequest The request that was sent to the model when the error
|
|
171
|
-
* occurred.
|
|
172
|
-
* @param params.error The exception that was raised during model execution.
|
|
173
|
-
* @returns An optional LlmResponse. If an LlmResponse is returned, it will be
|
|
174
|
-
* used instead of propagating the error. Returning `undefined` allows
|
|
175
|
-
* the original error to be raised.
|
|
176
|
-
*/
|
|
177
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
178
|
-
async onModelErrorCallback(params) {
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
182
|
-
async beforeToolSelection(params) {
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
186
|
-
async beforeContextCompaction(params) {
|
|
187
|
-
return;
|
|
188
|
-
}
|
|
189
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
190
|
-
async afterContextCompaction(params) {
|
|
191
|
-
return;
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* Callback executed before a tool is called.
|
|
195
|
-
*
|
|
196
|
-
* This callback is useful for logging tool usage, input validation, or
|
|
197
|
-
* modifying the arguments before they are passed to the tool.
|
|
198
|
-
*
|
|
199
|
-
* @param params.tool The tool instance that is about to be executed.
|
|
200
|
-
* @param params.toolArgs The dictionary of arguments to be used for invoking the
|
|
201
|
-
* tool.
|
|
202
|
-
* @param params.toolContext The context specific to the tool execution.
|
|
203
|
-
* @returns An optional dictionary. If a dictionary is returned, it will stop
|
|
204
|
-
* the tool execution and return this response immediately. Returning
|
|
205
|
-
* `undefined` uses the original, unmodified arguments.
|
|
206
|
-
*/
|
|
207
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
208
|
-
async beforeToolCallback(params) {
|
|
209
|
-
return;
|
|
210
|
-
}
|
|
211
|
-
/**
|
|
212
|
-
* Callback executed after a tool has been called.
|
|
213
|
-
*
|
|
214
|
-
* This callback allows for inspecting, logging, or modifying the result
|
|
215
|
-
* returned by a tool.
|
|
216
|
-
*
|
|
217
|
-
* @param params.tool The tool instance that has just been executed.
|
|
218
|
-
* @param params.toolArgs The original arguments that were passed to the tool.
|
|
219
|
-
* @param params.toolContext The context specific to the tool execution.
|
|
220
|
-
* @param params.result The dictionary returned by the tool invocation.
|
|
221
|
-
* @returns An optional dictionary. If a dictionary is returned, it will
|
|
222
|
-
* **replace** the original result from the tool. This allows for
|
|
223
|
-
* post-processing or altering tool outputs. Returning `undefined` uses
|
|
224
|
-
* the original, unmodified result.
|
|
225
|
-
*/
|
|
226
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
227
|
-
async afterToolCallback(params) {
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Callback executed when a tool call encounters an error.
|
|
232
|
-
tool: BaseTool;
|
|
233
|
-
toolArgs: Record<string, unknown>;
|
|
234
|
-
toolContext: Context;
|
|
235
|
-
result: Record<string, unknown>;
|
|
236
|
-
}): Promise<Record<string, unknown> | undefined> {
|
|
237
|
-
return;
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* Callback executed when a tool call encounters an error.
|
|
242
|
-
*
|
|
243
|
-
* This callback provides an opportunity to handle tool errors gracefully,
|
|
244
|
-
* potentially providing alternative responses or recovery mechanisms.
|
|
245
|
-
*
|
|
246
|
-
* @param params.tool The tool instance that encountered an error.
|
|
247
|
-
* @param params.toolArgs The arguments that were passed to the tool.
|
|
248
|
-
* @param params.toolContext The context specific to the tool execution.
|
|
249
|
-
* @param params.error The exception that was raised during tool execution.
|
|
250
|
-
* @returns An optional dictionary. If a dictionary is returned, it will be
|
|
251
|
-
* used as the tool response instead of propagating the error. Returning
|
|
252
|
-
* `undefined` allows the original error to be raised.
|
|
253
|
-
*/
|
|
254
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
255
|
-
async onToolErrorCallback(params) {
|
|
256
|
-
return;
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
__decorateClass([
|
|
260
|
-
experimental
|
|
261
|
-
], BasePlugin.prototype, "beforeToolSelection", 1);
|
|
262
|
-
__decorateClass([
|
|
263
|
-
experimental
|
|
264
|
-
], BasePlugin.prototype, "beforeContextCompaction", 1);
|
|
265
|
-
__decorateClass([
|
|
266
|
-
experimental
|
|
267
|
-
], BasePlugin.prototype, "afterContextCompaction", 1);
|
|
268
|
-
export {
|
|
269
|
-
BasePlugin,
|
|
270
|
-
ContextCompactionTrigger
|
|
271
|
-
};
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
/**
|
|
4
|
-
* @license
|
|
5
|
-
* Copyright 2026 Google LLC
|
|
6
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
-
*/
|
|
8
|
-
import { injectSessionState } from "../agents/instructions.js";
|
|
9
|
-
import { ReadonlyContext } from "../agents/readonly_context.js";
|
|
10
|
-
import { BasePlugin } from "./base_plugin.js";
|
|
11
|
-
class GlobalInstructionPlugin extends BasePlugin {
|
|
12
|
-
/**
|
|
13
|
-
* Initializes the GlobalInstructionPlugin.
|
|
14
|
-
*
|
|
15
|
-
* @param globalInstruction The instruction to apply globally. Can be a string
|
|
16
|
-
* or an InstructionProvider function that takes ReadonlyContext and
|
|
17
|
-
* returns a string (sync or async).
|
|
18
|
-
* @param name The name of the plugin (defaults to 'global_instruction').
|
|
19
|
-
*/
|
|
20
|
-
constructor(globalInstruction, name = "global_instruction") {
|
|
21
|
-
super(name);
|
|
22
|
-
this.globalInstruction = globalInstruction;
|
|
23
|
-
}
|
|
24
|
-
async beforeModelCallback(params) {
|
|
25
|
-
if (!this.globalInstruction) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
const readonlyContext = new ReadonlyContext(
|
|
29
|
-
params.callbackContext.invocationContext
|
|
30
|
-
);
|
|
31
|
-
const finalGlobalInstruction = await this.resolveGlobalInstruction(readonlyContext);
|
|
32
|
-
if (!finalGlobalInstruction) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (!params.llmRequest.config) {
|
|
36
|
-
params.llmRequest.config = {};
|
|
37
|
-
}
|
|
38
|
-
const existingInstruction = params.llmRequest.config.systemInstruction;
|
|
39
|
-
if (!existingInstruction || Array.isArray(existingInstruction) && existingInstruction.length === 0) {
|
|
40
|
-
params.llmRequest.config.systemInstruction = finalGlobalInstruction;
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
if (typeof existingInstruction === "string") {
|
|
44
|
-
params.llmRequest.config.systemInstruction = "".concat(finalGlobalInstruction, "\n\n").concat(existingInstruction);
|
|
45
|
-
} else if (Array.isArray(existingInstruction)) {
|
|
46
|
-
params.llmRequest.config.systemInstruction = [
|
|
47
|
-
finalGlobalInstruction,
|
|
48
|
-
...existingInstruction
|
|
49
|
-
];
|
|
50
|
-
} else {
|
|
51
|
-
params.llmRequest.config.systemInstruction = [
|
|
52
|
-
finalGlobalInstruction,
|
|
53
|
-
existingInstruction
|
|
54
|
-
];
|
|
55
|
-
}
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
async resolveGlobalInstruction(readonlyContext) {
|
|
59
|
-
if (typeof this.globalInstruction === "string") {
|
|
60
|
-
return await injectSessionState(this.globalInstruction, readonlyContext);
|
|
61
|
-
}
|
|
62
|
-
return await this.globalInstruction(readonlyContext);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
export {
|
|
66
|
-
GlobalInstructionPlugin
|
|
67
|
-
};
|