@google/adk 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/a2a/a2a_event.js +0 -29
- package/dist/cjs/a2a/a2a_remote_agent.js +8 -5
- package/dist/cjs/a2a/a2a_remote_agent_utils.js +104 -2
- package/dist/cjs/a2a/agent_card.js +66 -6
- package/dist/cjs/a2a/agent_executor.js +18 -6
- package/dist/cjs/a2a/agent_to_a2a.js +6 -1
- package/dist/cjs/a2a/event_processor_utils.js +1 -1
- package/dist/cjs/a2a/executor_context.js +4 -2
- package/dist/cjs/a2a/index.js +4 -0
- package/dist/cjs/a2a/request_metadata.js +94 -0
- package/dist/cjs/agents/base_agent.js +9 -8
- package/dist/cjs/agents/context.js +7 -0
- package/dist/cjs/agents/functions.js +150 -47
- package/dist/cjs/agents/invocation_context.js +1 -0
- package/dist/cjs/agents/llm_agent.js +21 -6
- package/dist/cjs/agents/loop_agent.js +1 -1
- package/dist/cjs/agents/parallel_agent.js +1 -1
- package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +26 -5
- package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -2
- package/dist/cjs/agents/processors/content_processor_utils.js +15 -7
- package/dist/cjs/agents/processors/content_request_processor.js +4 -1
- package/dist/cjs/agents/processors/nl_planning_processor.js +114 -0
- package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +19 -12
- package/dist/cjs/agents/processors/request_input_llm_request_processor.js +3 -7
- package/dist/cjs/agents/readonly_context.js +6 -0
- package/dist/cjs/agents/routed_agent.js +1 -1
- package/dist/cjs/agents/sequential_agent.js +1 -1
- package/dist/cjs/apps/app.js +1 -1
- package/dist/cjs/artifacts/file_artifact_service.js +1 -2
- package/dist/cjs/artifacts/gcs_artifact_service.js +13 -7
- package/dist/cjs/artifacts/scoped_artifact_service.js +9 -0
- package/dist/cjs/artifacts/session_artifact_service.js +19 -0
- package/dist/cjs/auth/auth_credential.js +12 -2
- package/dist/cjs/auth/auth_handler.js +44 -8
- package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +1 -1
- package/dist/cjs/auth/oauth2/oauth2_utils.js +17 -2
- package/dist/cjs/code_executors/base_code_executor.js +1 -1
- package/dist/cjs/code_executors/built_in_code_executor.js +1 -1
- package/dist/cjs/code_executors/code_execution_utils.js +5 -5
- package/dist/cjs/code_executors/container_code_executor.js +186 -0
- package/dist/cjs/code_executors/docker_container.js +282 -0
- package/dist/cjs/code_executors/unsafe_local_code_executor.js +11 -6
- package/dist/cjs/common.js +119 -45
- package/dist/cjs/context/agent_controlled_context_compactor.js +10 -5
- package/dist/cjs/context/anchored_context_compactor.js +41 -18
- package/dist/cjs/context/compaction_utils.js +15 -6
- package/dist/cjs/context/token_based_context_compactor.js +10 -2
- package/dist/cjs/context/trajectory_thought_pruning_compactor.js +17 -10
- package/dist/cjs/context/truncating_context_compactor.js +17 -5
- package/dist/cjs/errors/already_exists_error.js +50 -0
- package/dist/cjs/errors/input_validation_error.js +50 -0
- package/dist/cjs/errors/not_found_error.js +50 -0
- package/dist/cjs/errors/session_not_found_error.js +50 -0
- package/dist/cjs/errors/tool_execution_error.js +68 -0
- package/dist/cjs/events/event.js +1 -1
- package/dist/cjs/events/event_actions.js +7 -0
- package/dist/cjs/examples/base_example_provider.js +1 -1
- package/dist/cjs/examples/example.js +92 -0
- package/dist/cjs/examples/example_util.js +28 -4
- package/dist/cjs/examples/index.js +39 -0
- package/dist/cjs/examples/vertex_ai_example_store.js +39 -0
- package/dist/cjs/index.js +93 -0
- package/dist/cjs/index_web.js +2 -0
- package/dist/cjs/integrations/agent_registry/agent_registry.js +3 -2
- package/dist/cjs/memory/rag_memory_transcript.js +136 -0
- package/dist/cjs/memory/vertex_ai_memory_bank_service.js +19 -7
- package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
- package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
- package/dist/cjs/models/apigee_llm.js +1 -1
- package/dist/cjs/models/base_llm.js +2 -7
- package/dist/cjs/models/chrome_prompt_llm.js +318 -0
- package/dist/cjs/models/chrome_prompt_utils.js +281 -0
- package/dist/cjs/models/gemini_llm_connection.js +5 -4
- package/dist/cjs/models/google_llm.js +9 -4
- package/dist/cjs/models/interactions_utils.js +2 -3
- package/dist/cjs/models/registry.js +2 -0
- package/dist/cjs/planners/base_planner.js +56 -0
- package/dist/cjs/planners/built_in_planner.js +85 -0
- package/dist/cjs/planners/plan_re_act_planner.js +172 -0
- package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
- package/dist/cjs/plugins/base_plugin.js +46 -61
- package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
- package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
- package/dist/cjs/runner/runner.js +29 -26
- package/dist/cjs/sessions/database_session_service.js +78 -43
- package/dist/cjs/sessions/db/operations.js +229 -22
- package/dist/cjs/sessions/db/schema.js +113 -159
- package/dist/cjs/sessions/registry.js +5 -1
- package/dist/cjs/sessions/vertex_ai_session_service.js +2 -2
- package/dist/cjs/telemetry/setup.js +1 -1
- package/dist/cjs/telemetry/tracing.js +11 -1
- package/dist/cjs/tools/agent_tool.js +4 -5
- package/dist/cjs/tools/base_tool.js +14 -4
- package/dist/cjs/tools/base_toolset.js +4 -4
- package/dist/cjs/tools/built_in_tool.js +75 -0
- package/dist/cjs/tools/enterprise_web_search_tool.js +3 -6
- package/dist/cjs/tools/example_tool.js +1 -1
- package/dist/cjs/tools/forwarding_artifact_service.js +18 -13
- package/dist/cjs/tools/function_tool.js +6 -3
- package/dist/cjs/tools/google_maps_grounding_tool.js +3 -6
- package/dist/cjs/tools/google_search_tool.js +3 -6
- package/dist/cjs/tools/load_artifacts_tool.js +47 -23
- package/dist/cjs/tools/load_web_page.js +6 -172
- package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +34 -5
- package/dist/cjs/tools/mcp/mcp_session_manager.js +14 -8
- package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +292 -4
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +70 -0
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +120 -0
- package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -10
- package/dist/cjs/tools/openapi_tool/common/common.js +139 -0
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +74 -14
- package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -34
- package/dist/cjs/tools/openapi_tool/openapi_toolset.js +14 -2
- package/dist/cjs/tools/openapi_tool/rest_api_tool.js +106 -46
- package/dist/cjs/tools/preload_memory_tool.js +1 -1
- package/dist/cjs/tools/resume_inputs.js +27 -0
- package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
- package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
- package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
- package/dist/cjs/tools/skill/skill_toolset.js +2 -0
- package/dist/cjs/tools/tool_context.js +41 -0
- package/dist/cjs/tools/url_context_tool.js +3 -6
- package/dist/cjs/tools/vertex_ai_search_tool.js +4 -8
- package/dist/cjs/tools/vertex_rag_retrieval_tool.js +3 -10
- package/dist/cjs/tools/webmcp/index.js +37 -0
- package/dist/cjs/tools/webmcp/webmcp_tool.js +156 -0
- package/dist/cjs/tools/webmcp/webmcp_toolset.js +116 -0
- package/dist/cjs/tools/webmcp/webmcp_types.js +50 -0
- package/dist/cjs/utils/case_utils.js +52 -2
- package/dist/cjs/utils/client_labels.js +67 -0
- package/dist/cjs/utils/crypto_shim.js +16 -0
- package/dist/cjs/utils/gemini_schema_util.js +103 -9
- package/dist/cjs/utils/hash_utils.js +73 -0
- package/dist/cjs/utils/live_connection_utils.js +10 -9
- package/dist/cjs/utils/logger.js +15 -50
- package/dist/cjs/utils/logger_browser.js +86 -0
- package/dist/cjs/utils/logger_node.js +119 -0
- package/dist/cjs/utils/model_name.js +17 -2
- package/dist/cjs/utils/redact_inline_data.js +46 -0
- package/dist/cjs/utils/redact_uri.js +15 -1
- package/dist/cjs/utils/schema.js +1 -1
- package/dist/cjs/utils/simple_zod_to_json.js +5 -0
- package/dist/cjs/utils/ssrf_guard.js +262 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/workflow/base_node.js +1 -1
- package/dist/cjs/workflow/graph.js +1 -1
- package/dist/cjs/workflow/nodes/node_tool.js +2 -11
- package/dist/cjs/workflow/request_input.js +1 -1
- package/dist/cjs/workflow/run_llm_agent_as_node.js +1 -1
- package/dist/cjs/workflow/workflow.js +1 -1
- package/dist/esm/a2a/a2a_event.js +0 -28
- package/dist/esm/a2a/a2a_remote_agent.js +10 -5
- package/dist/esm/a2a/a2a_remote_agent_utils.js +102 -2
- package/dist/esm/a2a/agent_card.js +71 -6
- package/dist/esm/a2a/agent_executor.js +18 -6
- package/dist/esm/a2a/agent_to_a2a.js +8 -2
- package/dist/esm/a2a/event_processor_utils.js +1 -2
- package/dist/esm/a2a/executor_context.js +4 -2
- package/dist/esm/a2a/index.js +7 -1
- package/dist/esm/a2a/request_metadata.js +68 -0
- package/dist/esm/agents/base_agent.js +9 -8
- package/dist/esm/agents/context.js +7 -0
- package/dist/esm/agents/functions.js +152 -48
- package/dist/esm/agents/invocation_context.js +1 -0
- package/dist/esm/agents/llm_agent.js +24 -6
- package/dist/esm/agents/loop_agent.js +1 -1
- package/dist/esm/agents/parallel_agent.js +1 -1
- package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +26 -5
- package/dist/esm/agents/processors/code_execution_request_processor.js +2 -2
- package/dist/esm/agents/processors/content_processor_utils.js +15 -7
- package/dist/esm/agents/processors/content_request_processor.js +4 -1
- package/dist/esm/agents/processors/nl_planning_processor.js +87 -0
- package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +19 -12
- package/dist/esm/agents/processors/request_input_llm_request_processor.js +3 -7
- package/dist/esm/agents/readonly_context.js +6 -0
- package/dist/esm/agents/routed_agent.js +1 -1
- package/dist/esm/agents/sequential_agent.js +1 -1
- package/dist/esm/apps/app.js +1 -1
- package/dist/esm/artifacts/file_artifact_service.js +1 -2
- package/dist/esm/artifacts/gcs_artifact_service.js +13 -7
- package/dist/esm/artifacts/scoped_artifact_service.js +9 -0
- package/dist/esm/artifacts/session_artifact_service.js +12 -0
- package/dist/esm/auth/auth_credential.js +11 -1
- package/dist/esm/auth/auth_handler.js +47 -8
- package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +1 -1
- package/dist/esm/auth/oauth2/oauth2_utils.js +15 -2
- package/dist/esm/code_executors/base_code_executor.js +1 -1
- package/dist/esm/code_executors/built_in_code_executor.js +1 -1
- package/dist/esm/code_executors/code_execution_utils.js +5 -5
- package/dist/esm/code_executors/container_code_executor.js +155 -0
- package/dist/esm/code_executors/docker_container.js +265 -0
- package/dist/esm/code_executors/unsafe_local_code_executor.js +11 -6
- package/dist/esm/common.js +111 -40
- package/dist/esm/context/agent_controlled_context_compactor.js +10 -5
- package/dist/esm/context/anchored_context_compactor.js +45 -19
- package/dist/esm/context/compaction_utils.js +13 -5
- package/dist/esm/context/token_based_context_compactor.js +10 -2
- package/dist/esm/context/trajectory_thought_pruning_compactor.js +17 -10
- package/dist/esm/context/truncating_context_compactor.js +17 -5
- package/dist/esm/errors/already_exists_error.js +23 -0
- package/dist/esm/errors/input_validation_error.js +23 -0
- package/dist/{web/auth/refresher/base_credential_refresher.js → esm/errors/not_found_error.js} +9 -6
- package/dist/esm/errors/session_not_found_error.js +23 -0
- package/dist/esm/errors/tool_execution_error.js +40 -0
- package/dist/esm/events/event.js +1 -1
- package/dist/esm/events/event_actions.js +6 -0
- package/dist/esm/examples/base_example_provider.js +1 -1
- package/dist/esm/examples/example.js +85 -0
- package/dist/esm/examples/example_util.js +25 -3
- package/dist/{web/auth/credential_service/base_credential_service.js → esm/examples/index.js} +4 -0
- package/dist/{web/version.js → esm/examples/vertex_ai_example_store.js} +2 -2
- package/dist/esm/index.js +87 -0
- package/dist/esm/index_web.js +2 -0
- package/dist/esm/integrations/agent_registry/agent_registry.js +3 -2
- package/dist/esm/memory/rag_memory_transcript.js +106 -0
- package/dist/esm/memory/vertex_ai_memory_bank_service.js +19 -7
- package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
- package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
- package/dist/esm/models/apigee_llm.js +1 -1
- package/dist/esm/models/base_llm.js +3 -8
- package/dist/esm/models/chrome_prompt_llm.js +302 -0
- package/dist/esm/models/chrome_prompt_utils.js +241 -0
- package/dist/esm/models/gemini_llm_connection.js +6 -5
- package/dist/esm/models/google_llm.js +9 -4
- package/dist/esm/models/interactions_utils.js +2 -3
- package/dist/esm/models/registry.js +2 -0
- package/dist/esm/planners/base_planner.js +28 -0
- package/dist/esm/planners/built_in_planner.js +57 -0
- package/dist/esm/planners/plan_re_act_planner.js +145 -0
- package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
- package/dist/esm/plugins/base_plugin.js +46 -61
- package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
- package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
- package/dist/esm/runner/runner.js +35 -27
- package/dist/esm/sessions/database_session_service.js +58 -25
- package/dist/esm/sessions/db/operations.js +229 -22
- package/dist/esm/sessions/db/schema.js +111 -160
- package/dist/esm/sessions/registry.js +5 -1
- package/dist/esm/sessions/vertex_ai_session_service.js +1 -1
- package/dist/esm/telemetry/setup.js +1 -1
- package/dist/esm/telemetry/tracing.js +11 -1
- package/dist/esm/tools/agent_tool.js +4 -5
- package/dist/esm/tools/base_tool.js +11 -3
- package/dist/esm/tools/base_toolset.js +4 -4
- package/dist/esm/tools/built_in_tool.js +51 -0
- package/dist/esm/tools/enterprise_web_search_tool.js +3 -6
- package/dist/esm/tools/example_tool.js +1 -1
- package/dist/esm/tools/forwarding_artifact_service.js +18 -13
- package/dist/esm/tools/function_tool.js +6 -3
- package/dist/esm/tools/google_maps_grounding_tool.js +3 -6
- package/dist/esm/tools/google_search_tool.js +3 -6
- package/dist/esm/tools/load_artifacts_tool.js +48 -24
- package/dist/esm/tools/load_web_page.js +10 -170
- package/dist/esm/tools/mcp/load_mcp_resource_tool.js +34 -5
- package/dist/esm/tools/mcp/mcp_session_manager.js +14 -8
- package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +285 -3
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +43 -0
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +93 -0
- package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -12
- package/dist/esm/tools/openapi_tool/common/common.js +112 -0
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +81 -14
- package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -33
- package/dist/esm/tools/openapi_tool/openapi_toolset.js +14 -2
- package/dist/esm/tools/openapi_tool/rest_api_tool.js +105 -46
- package/dist/esm/tools/preload_memory_tool.js +1 -1
- package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
- package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
- package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
- package/dist/esm/tools/skill/skill_toolset.js +2 -0
- package/dist/{web/context/base_context_compactor.js → esm/tools/tool_context.js} +8 -0
- package/dist/esm/tools/url_context_tool.js +3 -6
- package/dist/esm/tools/vertex_ai_search_tool.js +4 -8
- package/dist/esm/tools/vertex_rag_retrieval_tool.js +3 -10
- package/dist/{web/auth/base_auth_provider.js → esm/tools/webmcp/index.js} +3 -0
- package/dist/esm/tools/webmcp/webmcp_tool.js +131 -0
- package/dist/esm/tools/webmcp/webmcp_toolset.js +89 -0
- package/dist/{web/utils/crypto_shim.js → esm/tools/webmcp/webmcp_types.js} +10 -6
- package/dist/esm/utils/case_utils.js +49 -1
- package/dist/esm/utils/client_labels.js +65 -0
- package/dist/esm/utils/crypto_shim.js +14 -0
- package/dist/esm/utils/gemini_schema_util.js +102 -9
- package/dist/esm/utils/hash_utils.js +45 -0
- package/dist/esm/utils/live_connection_utils.js +11 -10
- package/dist/esm/utils/logger.js +14 -40
- package/dist/esm/utils/logger_browser.js +58 -0
- package/dist/esm/utils/logger_node.js +81 -0
- package/dist/esm/utils/model_name.js +15 -2
- package/dist/esm/utils/redact_inline_data.js +19 -0
- package/dist/esm/utils/redact_uri.js +15 -1
- package/dist/esm/utils/schema.js +1 -1
- package/dist/esm/utils/simple_zod_to_json.js +5 -0
- package/dist/{web/tools/load_web_page.js → esm/utils/ssrf_guard.js} +95 -107
- package/dist/esm/version.js +1 -1
- package/dist/esm/workflow/base_node.js +1 -1
- package/dist/esm/workflow/graph.js +1 -1
- package/dist/esm/workflow/nodes/node_tool.js +2 -11
- package/dist/esm/workflow/request_input.js +1 -1
- package/dist/esm/workflow/run_llm_agent_as_node.js +1 -1
- package/dist/esm/workflow/workflow.js +1 -1
- package/dist/types/a2a/a2a_event.d.ts +7 -10
- package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
- package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
- package/dist/types/a2a/agent_card.d.ts +9 -0
- package/dist/types/a2a/agent_executor.d.ts +1 -1
- package/dist/types/a2a/agent_to_a2a.d.ts +2 -0
- package/dist/types/a2a/auth.d.ts +5 -1
- package/dist/types/a2a/executor_context.d.ts +7 -1
- package/dist/types/a2a/index.d.ts +1 -1
- package/dist/types/a2a/request_metadata.d.ts +22 -0
- package/dist/types/agents/base_agent.d.ts +19 -16
- package/dist/types/agents/context.d.ts +8 -0
- package/dist/types/agents/functions.d.ts +72 -6
- package/dist/types/agents/invocation_context.d.ts +11 -3
- package/dist/types/agents/llm_agent.d.ts +20 -7
- package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
- package/dist/types/agents/processors/nl_planning_processor.d.ts +30 -0
- package/dist/types/agents/readonly_context.d.ts +4 -0
- package/dist/types/agents/run_config.d.ts +21 -8
- package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
- package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
- package/dist/types/auth/auth_credential.d.ts +22 -8
- package/dist/types/auth/auth_handler.d.ts +12 -1
- package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
- package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
- package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
- package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
- package/dist/types/code_executors/container_code_executor.d.ts +89 -0
- package/dist/types/code_executors/docker_container.d.ts +79 -0
- package/dist/types/common.d.ts +37 -23
- package/dist/types/context/compaction_utils.d.ts +9 -1
- package/dist/types/errors/already_exists_error.d.ts +14 -0
- package/dist/types/errors/input_validation_error.d.ts +14 -0
- package/dist/types/errors/not_found_error.d.ts +14 -0
- package/dist/types/errors/session_not_found_error.d.ts +14 -0
- package/dist/types/errors/tool_execution_error.d.ts +36 -0
- package/dist/types/events/event_actions.d.ts +13 -0
- package/dist/types/examples/base_example_provider.d.ts +2 -2
- package/dist/types/examples/example.d.ts +75 -0
- package/dist/types/examples/example_util.d.ts +13 -2
- package/dist/types/examples/index.d.ts +18 -0
- package/dist/types/examples/vertex_ai_example_store.d.ts +7 -0
- package/dist/types/index.d.ts +31 -1
- package/dist/types/memory/memory_entry.d.ts +15 -0
- package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
- package/dist/types/memory/vertex_ai_memory_bank_service.d.ts +9 -0
- package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
- package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
- package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
- package/dist/types/models/chrome_prompt_utils.d.ts +97 -0
- package/dist/types/models/google_llm.d.ts +8 -3
- package/dist/types/models/registry.d.ts +3 -2
- package/dist/types/planners/base_planner.d.ts +50 -0
- package/dist/types/planners/built_in_planner.d.ts +53 -0
- package/dist/types/planners/plan_re_act_planner.d.ts +21 -0
- package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
- package/dist/types/plugins/base_plugin.d.ts +64 -62
- package/dist/types/plugins/logging_plugin.d.ts +3 -2
- package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
- package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
- package/dist/types/runner/runner.d.ts +7 -8
- package/dist/types/sessions/database_session_service.d.ts +1 -1
- package/dist/types/sessions/db/operations.d.ts +13 -1
- package/dist/types/sessions/db/schema.d.ts +23 -9
- package/dist/types/skills/skill_registry.d.ts +8 -0
- package/dist/types/tools/base_tool.d.ts +11 -0
- package/dist/types/tools/base_toolset.d.ts +3 -4
- package/dist/types/tools/built_in_tool.d.ts +41 -0
- package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
- package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
- package/dist/types/tools/function_tool.d.ts +42 -9
- package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
- package/dist/types/tools/google_search_tool.d.ts +4 -4
- package/dist/types/tools/long_running_tool.d.ts +1 -1
- package/dist/types/tools/mcp/mcp_toolset.d.ts +11 -10
- package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +115 -1
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +31 -2
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.d.ts +35 -0
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.d.ts +54 -0
- package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
- package/dist/types/tools/openapi_tool/common/common.d.ts +60 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.d.ts +7 -0
- package/dist/types/tools/openapi_tool/openapi_spec_parser/operation_parser.d.ts +56 -2
- package/dist/types/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.d.ts +73 -5
- package/dist/types/tools/openapi_tool/openapi_toolset.d.ts +11 -0
- package/dist/types/tools/openapi_tool/rest_api_tool.d.ts +42 -8
- package/dist/types/tools/preload_memory_tool.d.ts +1 -1
- package/dist/types/tools/resume_inputs.d.ts +25 -0
- package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
- package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
- package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
- package/dist/types/tools/tool_context.d.ts +19 -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/tools/webmcp/index.d.ts +12 -0
- package/dist/types/tools/webmcp/webmcp_tool.d.ts +47 -0
- package/dist/types/tools/webmcp/webmcp_toolset.d.ts +67 -0
- package/dist/types/tools/webmcp/webmcp_types.d.ts +69 -0
- package/dist/types/utils/case_utils.d.ts +36 -0
- package/dist/types/utils/client_labels.d.ts +33 -0
- package/dist/types/utils/crypto_shim.d.ts +16 -0
- package/dist/types/utils/gemini_schema_util.d.ts +18 -7
- package/dist/types/utils/hash_utils.d.ts +25 -0
- package/dist/types/utils/logger.d.ts +33 -3
- package/dist/types/utils/logger_browser.d.ts +28 -0
- package/dist/types/utils/logger_node.d.ts +20 -0
- package/dist/types/utils/model_name.d.ts +30 -2
- package/dist/types/utils/output_schema_utils.d.ts +3 -3
- package/dist/types/utils/redact_inline_data.d.ts +16 -0
- package/dist/types/utils/redact_uri.d.ts +12 -8
- package/dist/types/utils/ssrf_guard.d.ts +32 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/web/index_web.js +337 -3
- package/dist/web/index_web.js.map +7 -0
- package/package.json +24 -15
- package/dist/web/a2a/a2a_event.js +0 -290
- package/dist/web/a2a/a2a_remote_agent.js +0 -200
- package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -189
- package/dist/web/a2a/a2a_remote_agent_utils.js +0 -141
- package/dist/web/a2a/agent_card.js +0 -373
- package/dist/web/a2a/agent_executor.js +0 -246
- package/dist/web/a2a/agent_to_a2a.js +0 -126
- package/dist/web/a2a/auth.js +0 -41
- package/dist/web/a2a/event_converter_utils.js +0 -242
- package/dist/web/a2a/event_processor_utils.js +0 -209
- package/dist/web/a2a/executor_context.js +0 -28
- package/dist/web/a2a/index.js +0 -20
- package/dist/web/a2a/metadata_converter_utils.js +0 -115
- package/dist/web/a2a/part_converter_utils.js +0 -201
- package/dist/web/agents/active_streaming_tool.js +0 -25
- package/dist/web/agents/base_agent.js +0 -462
- package/dist/web/agents/context.js +0 -146
- package/dist/web/agents/framework_function_calls.js +0 -34
- package/dist/web/agents/functions.js +0 -462
- package/dist/web/agents/instructions.js +0 -188
- package/dist/web/agents/invocation_context.js +0 -126
- package/dist/web/agents/live_request_queue.js +0 -151
- package/dist/web/agents/llm_agent.js +0 -1514
- package/dist/web/agents/loop_agent.js +0 -131
- package/dist/web/agents/parallel_agent.js +0 -122
- package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -113
- package/dist/web/agents/processors/base_llm_processor.js +0 -21
- package/dist/web/agents/processors/basic_llm_request_processor.js +0 -84
- package/dist/web/agents/processors/code_execution_request_processor.js +0 -381
- package/dist/web/agents/processors/content_processor_utils.js +0 -432
- package/dist/web/agents/processors/content_request_processor.js +0 -73
- package/dist/web/agents/processors/context_compactor_request_processor.js +0 -78
- package/dist/web/agents/processors/identity_llm_request_processor.js +0 -59
- package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -85
- package/dist/web/agents/processors/interactions_request_processor.js +0 -56
- package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -393
- package/dist/web/agents/processors/request_input_llm_request_processor.js +0 -228
- package/dist/web/agents/processors/tool_filter_request_processor.js +0 -72
- package/dist/web/agents/readonly_context.js +0 -60
- package/dist/web/agents/routed_agent.js +0 -161
- package/dist/web/agents/run_config.js +0 -74
- package/dist/web/agents/sequential_agent.js +0 -141
- package/dist/web/agents/transcription_entry.js +0 -7
- package/dist/web/agents/user_input_request.js +0 -135
- package/dist/web/apps/app.js +0 -52
- package/dist/web/apps/resumability_config.js +0 -33
- package/dist/web/artifacts/base_artifact_service.js +0 -7
- package/dist/web/artifacts/file_artifact_service.js +0 -568
- package/dist/web/artifacts/gcs_artifact_service.js +0 -298
- package/dist/web/artifacts/in_memory_artifact_service.js +0 -172
- package/dist/web/artifacts/registry.js +0 -36
- package/dist/web/artifacts/scoped_artifact_service.js +0 -89
- package/dist/web/auth/auth_credential.js +0 -18
- package/dist/web/auth/auth_handler.js +0 -151
- package/dist/web/auth/auth_preprocessor.js +0 -184
- package/dist/web/auth/auth_provider_registry.js +0 -37
- package/dist/web/auth/auth_schemes.js +0 -36
- package/dist/web/auth/auth_tool.js +0 -7
- package/dist/web/auth/credential_response_binding.js +0 -91
- package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -50
- package/dist/web/auth/credential_service/session_state_credential_service.js +0 -27
- package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -16
- package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -35
- package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -194
- package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -105
- package/dist/web/auth/oauth2/oauth2_discovery.js +0 -196
- package/dist/web/auth/oauth2/oauth2_utils.js +0 -105
- package/dist/web/auth/refresher/credential_refresher_registry.js +0 -44
- package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -284
- package/dist/web/code_executors/base_code_executor.js +0 -68
- package/dist/web/code_executors/built_in_code_executor.js +0 -50
- package/dist/web/code_executors/code_execution_utils.js +0 -131
- package/dist/web/code_executors/code_executor_context.js +0 -174
- package/dist/web/code_executors/unsafe_local_code_executor.js +0 -221
- package/dist/web/common.js +0 -452
- package/dist/web/context/agent_controlled_context_compactor.js +0 -76
- package/dist/web/context/anchored_context_compactor.js +0 -120
- package/dist/web/context/compaction_utils.js +0 -42
- package/dist/web/context/summarizers/base_summarizer.js +0 -7
- package/dist/web/context/summarizers/llm_summarizer.js +0 -91
- package/dist/web/context/token_based_context_compactor.js +0 -118
- package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -47
- package/dist/web/context/truncating_context_compactor.js +0 -34
- package/dist/web/environment/base_environment.js +0 -71
- package/dist/web/environment/local_environment.js +0 -165
- package/dist/web/events/compacted_event.js +0 -51
- package/dist/web/events/event.js +0 -208
- package/dist/web/events/event_actions.js +0 -74
- package/dist/web/events/structured_events.js +0 -79
- package/dist/web/examples/base_example_provider.js +0 -32
- package/dist/web/examples/example.js +0 -7
- package/dist/web/examples/example_util.js +0 -83
- package/dist/web/features/feature_registry.js +0 -115
- package/dist/web/index.js +0 -57
- package/dist/web/integrations/agent_registry/agent_registry.js +0 -337
- package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -120
- package/dist/web/integrations/agent_registry/helpers.js +0 -32
- package/dist/web/integrations/agent_registry/types.js +0 -20
- package/dist/web/memory/base_memory_service.js +0 -7
- package/dist/web/memory/in_memory_memory_service.js +0 -89
- package/dist/web/memory/memory_entry.js +0 -7
- package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -496
- package/dist/web/models/apigee_llm.js +0 -227
- package/dist/web/models/base_llm.js +0 -78
- package/dist/web/models/base_llm_connection.js +0 -7
- package/dist/web/models/gemini_llm_connection.js +0 -183
- package/dist/web/models/google_llm.js +0 -396
- package/dist/web/models/interactions_utils.js +0 -745
- package/dist/web/models/llm_request.js +0 -57
- package/dist/web/models/llm_response.js +0 -48
- package/dist/web/models/registry.js +0 -100
- package/dist/web/models/routed_llm.js +0 -112
- package/dist/web/plugins/base_plugin.js +0 -305
- package/dist/web/plugins/global_instruction_plugin.js +0 -71
- package/dist/web/plugins/logging_plugin.js +0 -241
- package/dist/web/plugins/plugin_manager.js +0 -318
- package/dist/web/plugins/security_plugin.js +0 -148
- package/dist/web/runner/in_memory_runner.js +0 -50
- package/dist/web/runner/runner.js +0 -747
- package/dist/web/sessions/base_session_service.js +0 -123
- package/dist/web/sessions/database_session_service.js +0 -440
- package/dist/web/sessions/db/operations.js +0 -124
- package/dist/web/sessions/db/schema.js +0 -216
- package/dist/web/sessions/in_memory_session_service.js +0 -251
- package/dist/web/sessions/registry.js +0 -38
- package/dist/web/sessions/session.js +0 -23
- package/dist/web/sessions/state.js +0 -159
- package/dist/web/sessions/state_write_order.js +0 -74
- package/dist/web/sessions/vertex_ai_session_service.js +0 -546
- package/dist/web/skills/gcp_skill_registry.js +0 -80
- package/dist/web/skills/loader.js +0 -372
- package/dist/web/skills/prompt.js +0 -34
- package/dist/web/skills/skill.js +0 -67
- package/dist/web/skills/skill_registry.js +0 -7
- package/dist/web/telemetry/google_cloud.js +0 -99
- package/dist/web/telemetry/setup.js +0 -89
- package/dist/web/telemetry/tracing.js +0 -304
- package/dist/web/tools/agent_tool.js +0 -150
- package/dist/web/tools/base_tool.js +0 -116
- package/dist/web/tools/base_toolset.js +0 -62
- package/dist/web/tools/consolidate_context_tool.js +0 -55
- package/dist/web/tools/enterprise_web_search_tool.js +0 -60
- package/dist/web/tools/example_tool.js +0 -46
- package/dist/web/tools/exit_loop_tool.js +0 -47
- package/dist/web/tools/finish_task_tool.js +0 -92
- package/dist/web/tools/forwarding_artifact_service.js +0 -51
- package/dist/web/tools/function_tool.js +0 -151
- package/dist/web/tools/get_user_choice_tool.js +0 -27
- package/dist/web/tools/google_maps_grounding_tool.js +0 -59
- package/dist/web/tools/google_search_tool.js +0 -55
- package/dist/web/tools/load_artifacts_tool.js +0 -159
- package/dist/web/tools/load_memory_tool.js +0 -83
- package/dist/web/tools/long_running_tool.js +0 -58
- package/dist/web/tools/mcp/index.js +0 -11
- package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -111
- package/dist/web/tools/mcp/mcp_session_manager.js +0 -114
- package/dist/web/tools/mcp/mcp_tool.js +0 -47
- package/dist/web/tools/mcp/mcp_toolset.js +0 -144
- package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -53
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -62
- package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -113
- package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -242
- package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -200
- package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -98
- package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -99
- package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -247
- package/dist/web/tools/preload_memory_tool.js +0 -81
- package/dist/web/tools/request_input_tool.js +0 -29
- package/dist/web/tools/skill/list_skills_tool.js +0 -52
- package/dist/web/tools/skill/load_skill_resource_tool.js +0 -192
- package/dist/web/tools/skill/load_skill_tool.js +0 -96
- package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -191
- package/dist/web/tools/skill/run_skill_script_tool.js +0 -227
- package/dist/web/tools/skill/search_skills_tool.js +0 -84
- package/dist/web/tools/skill/skill_toolset.js +0 -185
- package/dist/web/tools/tool_confirmation.js +0 -43
- package/dist/web/tools/url_context_tool.js +0 -48
- package/dist/web/tools/vertex_ai_search_tool.js +0 -107
- package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -40
- package/dist/web/utils/async_hooks_shim.js +0 -28
- package/dist/web/utils/async_queue.js +0 -88
- package/dist/web/utils/branch_trie.js +0 -16
- package/dist/web/utils/case_utils.js +0 -28
- package/dist/web/utils/client_labels.js +0 -70
- package/dist/web/utils/deprecated.js +0 -40
- package/dist/web/utils/env_aware_utils.js +0 -115
- package/dist/web/utils/error_utils.js +0 -101
- package/dist/web/utils/experimental.js +0 -54
- package/dist/web/utils/failover_utils.js +0 -100
- package/dist/web/utils/file_extension_utils.js +0 -55
- package/dist/web/utils/file_utils.js +0 -108
- package/dist/web/utils/gemini_schema_util.js +0 -177
- package/dist/web/utils/genai_schema_to_json.js +0 -80
- package/dist/web/utils/live_connection_utils.js +0 -257
- package/dist/web/utils/logger.js +0 -140
- package/dist/web/utils/model_name.js +0 -75
- package/dist/web/utils/object_notation_utils.js +0 -54
- package/dist/web/utils/optional_peer.js +0 -38
- package/dist/web/utils/output_schema_utils.js +0 -18
- package/dist/web/utils/partial_copy.js +0 -26
- package/dist/web/utils/redact_uri.js +0 -39
- package/dist/web/utils/schema.js +0 -167
- package/dist/web/utils/simple_zod_to_json.js +0 -134
- package/dist/web/utils/streaming_utils.js +0 -438
- package/dist/web/utils/task.js +0 -38
- package/dist/web/utils/variant_utils.js +0 -23
- package/dist/web/utils/vertex_ai_utils.js +0 -27
- package/dist/web/workflow/base_node.js +0 -215
- package/dist/web/workflow/branch_path.js +0 -77
- package/dist/web/workflow/dynamic_node_scheduler.js +0 -202
- package/dist/web/workflow/errors.js +0 -140
- package/dist/web/workflow/graph.js +0 -127
- package/dist/web/workflow/index.js +0 -80
- package/dist/web/workflow/node.js +0 -87
- package/dist/web/workflow/node_builders.js +0 -40
- package/dist/web/workflow/node_context.js +0 -236
- package/dist/web/workflow/node_error_event.js +0 -86
- package/dist/web/workflow/node_runner.js +0 -481
- package/dist/web/workflow/node_state.js +0 -43
- package/dist/web/workflow/node_status.js +0 -20
- package/dist/web/workflow/nodes/function_node.js +0 -221
- package/dist/web/workflow/nodes/join_node.js +0 -47
- package/dist/web/workflow/nodes/node_tool.js +0 -131
- package/dist/web/workflow/nodes/parallel_worker.js +0 -120
- package/dist/web/workflow/nodes/tool_node.js +0 -126
- package/dist/web/workflow/request_input.js +0 -36
- package/dist/web/workflow/retry_config.js +0 -43
- package/dist/web/workflow/run_llm_agent_as_node.js +0 -266
- package/dist/web/workflow/run_node_as_invocation.js +0 -170
- package/dist/web/workflow/schedule_dynamic_node.js +0 -26
- package/dist/web/workflow/trigger.js +0 -7
- package/dist/web/workflow/utils/graph_parser.js +0 -188
- package/dist/web/workflow/utils/graph_validation.js +0 -189
- package/dist/web/workflow/utils/hitl_utils.js +0 -239
- package/dist/web/workflow/utils/rehydration_utils.js +0 -342
- package/dist/web/workflow/utils/retry_utils.js +0 -82
- package/dist/web/workflow/utils/workflow_graph_utils.js +0 -115
- package/dist/web/workflow/workflow.js +0 -529
- /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
5
|
-
/**
|
|
6
|
-
* @license
|
|
7
|
-
* Copyright 2026 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
var _a;
|
|
11
|
-
import { logger } from "../utils/logger.js";
|
|
12
|
-
import { parseEdgeItems } from "./utils/graph_parser.js";
|
|
13
|
-
import { validateGraph } from "./utils/graph_validation.js";
|
|
14
|
-
const EDGE_SIGNATURE_SYMBOL = Symbol.for("google.adk.workflow.edge");
|
|
15
|
-
const DEFAULT_ROUTE = "__DEFAULT__";
|
|
16
|
-
_a = EDGE_SIGNATURE_SYMBOL;
|
|
17
|
-
const _Edge = class _Edge {
|
|
18
|
-
constructor(fromNode, toNode, route = null) {
|
|
19
|
-
this.fromNode = fromNode;
|
|
20
|
-
this.toNode = toNode;
|
|
21
|
-
this.route = route;
|
|
22
|
-
/** Brand identifying this object as an {@link Edge} (see `isEdge`). */
|
|
23
|
-
this[_a] = true;
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
__name(_Edge, "Edge");
|
|
27
|
-
let Edge = _Edge;
|
|
28
|
-
function isEdge(value) {
|
|
29
|
-
return typeof value === "object" && value !== null && EDGE_SIGNATURE_SYMBOL in value && value[EDGE_SIGNATURE_SYMBOL] === true;
|
|
30
|
-
}
|
|
31
|
-
__name(isEdge, "isEdge");
|
|
32
|
-
const _Graph = class _Graph {
|
|
33
|
-
constructor(edges) {
|
|
34
|
-
this._terminalNodeNames = /* @__PURE__ */ new Set();
|
|
35
|
-
this.edges = edges;
|
|
36
|
-
const seen = /* @__PURE__ */ new Set();
|
|
37
|
-
const nodes = [];
|
|
38
|
-
for (const edge of edges) {
|
|
39
|
-
for (const node of [edge.fromNode, edge.toNode]) {
|
|
40
|
-
if (!seen.has(node)) {
|
|
41
|
-
seen.add(node);
|
|
42
|
-
nodes.push(node);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
this.nodes = nodes;
|
|
47
|
-
}
|
|
48
|
-
/** Terminal node names (no outgoing edges); populated by {@link validate}. */
|
|
49
|
-
get terminalNodeNames() {
|
|
50
|
-
return this._terminalNodeNames;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Determines the next nodes to transition to PENDING based on the route(s)
|
|
54
|
-
* emitted by a completed node. Ported from Python `get_next_pending_nodes`.
|
|
55
|
-
*
|
|
56
|
-
* Logs at debug when the node emitted a route, has conditional outgoing
|
|
57
|
-
* edges, and none of them (nor a `DEFAULT_ROUTE` edge) matched — the branch
|
|
58
|
-
* stops there, which is easy to mistake for a bug. Behaviour is unchanged.
|
|
59
|
-
*/
|
|
60
|
-
getNextPendingNodes(nodeName, routesToMatch) {
|
|
61
|
-
const nextPending = [];
|
|
62
|
-
let matchedSpecificRoute = false;
|
|
63
|
-
let defaultRouteNode;
|
|
64
|
-
const availableRoutes = [];
|
|
65
|
-
for (const edge of this.edges) {
|
|
66
|
-
if (edge.fromNode.name !== nodeName) {
|
|
67
|
-
continue;
|
|
68
|
-
}
|
|
69
|
-
if (edge.route === null || edge.route === void 0) {
|
|
70
|
-
nextPending.push(edge.toNode.name);
|
|
71
|
-
continue;
|
|
72
|
-
}
|
|
73
|
-
if (edge.route === DEFAULT_ROUTE) {
|
|
74
|
-
defaultRouteNode = edge.toNode.name;
|
|
75
|
-
continue;
|
|
76
|
-
}
|
|
77
|
-
const edgeRoutes = new Set(
|
|
78
|
-
(Array.isArray(edge.route) ? edge.route : [edge.route]).map(String)
|
|
79
|
-
);
|
|
80
|
-
availableRoutes.push(...edgeRoutes);
|
|
81
|
-
let edgeMatched = false;
|
|
82
|
-
if (Array.isArray(routesToMatch)) {
|
|
83
|
-
edgeMatched = routesToMatch.some((r) => edgeRoutes.has(String(r)));
|
|
84
|
-
} else if (routesToMatch !== null && routesToMatch !== void 0) {
|
|
85
|
-
edgeMatched = edgeRoutes.has(String(routesToMatch));
|
|
86
|
-
}
|
|
87
|
-
if (edgeMatched) {
|
|
88
|
-
nextPending.push(edge.toNode.name);
|
|
89
|
-
matchedSpecificRoute = true;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
if (!matchedSpecificRoute && defaultRouteNode) {
|
|
93
|
-
nextPending.push(defaultRouteNode);
|
|
94
|
-
}
|
|
95
|
-
if (nextPending.length === 0 && availableRoutes.length > 0) {
|
|
96
|
-
const emitted = routesToMatch === null || routesToMatch === void 0 ? [] : Array.isArray(routesToMatch) ? routesToMatch : [routesToMatch];
|
|
97
|
-
const isConditionalContinue = availableRoutes.includes("true") && emitted.length > 0 && emitted.every((r) => String(r) === "false");
|
|
98
|
-
if (emitted.length > 0 && !isConditionalContinue) {
|
|
99
|
-
const shown = emitted.map((r) => JSON.stringify(r)).join(", ");
|
|
100
|
-
const known = [...new Set(availableRoutes)].map((r) => JSON.stringify(r)).join(", ");
|
|
101
|
-
logger.debug(
|
|
102
|
-
"Node '".concat(nodeName, "' emitted route ").concat(shown, ", which matches no ") + "outgoing edge, so this branch stops here. Edges from this node " + "are keyed to: ".concat(known, ".")
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
return nextPending;
|
|
107
|
-
}
|
|
108
|
-
/** Validates the graph and computes terminal node names. */
|
|
109
|
-
validate() {
|
|
110
|
-
this._terminalNodeNames = validateGraph(this.nodes, this.edges);
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
__name(_Graph, "Graph");
|
|
114
|
-
let Graph = _Graph;
|
|
115
|
-
function createGraphFromEdgeItems(edgeItems) {
|
|
116
|
-
const graph = new Graph(parseEdgeItems(edgeItems));
|
|
117
|
-
graph.validate();
|
|
118
|
-
return graph;
|
|
119
|
-
}
|
|
120
|
-
__name(createGraphFromEdgeItems, "createGraphFromEdgeItems");
|
|
121
|
-
export {
|
|
122
|
-
DEFAULT_ROUTE,
|
|
123
|
-
Edge,
|
|
124
|
-
Graph,
|
|
125
|
-
createGraphFromEdgeItems,
|
|
126
|
-
isEdge
|
|
127
|
-
};
|
|
@@ -1,80 +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 {
|
|
9
|
-
asRunnableRoot,
|
|
10
|
-
isRunnableRoot,
|
|
11
|
-
runNodeAsInvocation
|
|
12
|
-
} from "./run_node_as_invocation.js";
|
|
13
|
-
import { Workflow, isWorkflow } from "./workflow.js";
|
|
14
|
-
import { BaseNode, START } from "./base_node.js";
|
|
15
|
-
import { WorkflowNode, node } from "./node.js";
|
|
16
|
-
import { FunctionNode } from "./nodes/function_node.js";
|
|
17
|
-
import { JoinNode } from "./nodes/join_node.js";
|
|
18
|
-
import { NodeTool } from "./nodes/node_tool.js";
|
|
19
|
-
import { ParallelWorker } from "./nodes/parallel_worker.js";
|
|
20
|
-
import { ToolNode } from "./nodes/tool_node.js";
|
|
21
|
-
import { DEFAULT_ROUTE, Edge, Graph } from "./graph.js";
|
|
22
|
-
import { BranchPath, commonPrefixOf, createSubBranch } from "./branch_path.js";
|
|
23
|
-
import { NodeContext } from "./node_context.js";
|
|
24
|
-
import { createNodeState, isNodeState } from "./node_state.js";
|
|
25
|
-
import { NodeStatus } from "./node_status.js";
|
|
26
|
-
import { RequestInput, isRequestInput } from "./request_input.js";
|
|
27
|
-
import {
|
|
28
|
-
REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
|
|
29
|
-
REQUEST_INPUT_FUNCTION_CALL_NAME
|
|
30
|
-
} from "./utils/hitl_utils.js";
|
|
31
|
-
import { normalizeRetryExceptions, prepareRetryConfig } from "./retry_config.js";
|
|
32
|
-
import {
|
|
33
|
-
NodeReportedError,
|
|
34
|
-
NodeSchemaValidationError,
|
|
35
|
-
NodeTimeoutError,
|
|
36
|
-
isNodeReportedError,
|
|
37
|
-
isNodeSchemaValidationError,
|
|
38
|
-
isNodeTimeoutError
|
|
39
|
-
} from "./errors.js";
|
|
40
|
-
import { createNodeErrorEvent, isNodeErrorEvent } from "./node_error_event.js";
|
|
41
|
-
export {
|
|
42
|
-
BaseNode,
|
|
43
|
-
BranchPath,
|
|
44
|
-
DEFAULT_ROUTE,
|
|
45
|
-
Edge,
|
|
46
|
-
FunctionNode,
|
|
47
|
-
Graph,
|
|
48
|
-
JoinNode,
|
|
49
|
-
NodeContext,
|
|
50
|
-
NodeReportedError,
|
|
51
|
-
NodeSchemaValidationError,
|
|
52
|
-
NodeStatus,
|
|
53
|
-
NodeTimeoutError,
|
|
54
|
-
NodeTool,
|
|
55
|
-
ParallelWorker,
|
|
56
|
-
REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
|
|
57
|
-
REQUEST_INPUT_FUNCTION_CALL_NAME,
|
|
58
|
-
RequestInput,
|
|
59
|
-
START,
|
|
60
|
-
ToolNode,
|
|
61
|
-
Workflow,
|
|
62
|
-
WorkflowNode,
|
|
63
|
-
asRunnableRoot,
|
|
64
|
-
commonPrefixOf,
|
|
65
|
-
createNodeErrorEvent,
|
|
66
|
-
createNodeState,
|
|
67
|
-
createSubBranch,
|
|
68
|
-
isNodeErrorEvent,
|
|
69
|
-
isNodeReportedError,
|
|
70
|
-
isNodeSchemaValidationError,
|
|
71
|
-
isNodeState,
|
|
72
|
-
isNodeTimeoutError,
|
|
73
|
-
isRequestInput,
|
|
74
|
-
isRunnableRoot,
|
|
75
|
-
isWorkflow,
|
|
76
|
-
node,
|
|
77
|
-
normalizeRetryExceptions,
|
|
78
|
-
prepareRetryConfig,
|
|
79
|
-
runNodeAsInvocation
|
|
80
|
-
};
|
|
@@ -1,87 +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 __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
10
|
-
var __decorateClass = (decorators, target, key, kind) => {
|
|
11
|
-
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
12
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
13
|
-
if (decorator = decorators[i])
|
|
14
|
-
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
15
|
-
if (kind && result) __defProp(target, key, result);
|
|
16
|
-
return result;
|
|
17
|
-
};
|
|
18
|
-
var __await = function(promise, isYieldStar) {
|
|
19
|
-
this[0] = promise;
|
|
20
|
-
this[1] = isYieldStar;
|
|
21
|
-
};
|
|
22
|
-
var __asyncGenerator = (__this, __arguments, generator) => {
|
|
23
|
-
var resume = (k, v, yes, no) => {
|
|
24
|
-
try {
|
|
25
|
-
var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
|
|
26
|
-
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));
|
|
27
|
-
} catch (e) {
|
|
28
|
-
no(e);
|
|
29
|
-
}
|
|
30
|
-
}, method = (k) => it[k] = (x) => new Promise((yes, no) => resume(k, x, yes, no)), it = {};
|
|
31
|
-
return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
|
|
32
|
-
};
|
|
33
|
-
var __yieldStar = (value) => {
|
|
34
|
-
var obj = value[__knownSymbol("asyncIterator")], isAwait = false, method, it = {};
|
|
35
|
-
if (obj == null) {
|
|
36
|
-
obj = value[__knownSymbol("iterator")]();
|
|
37
|
-
method = (k) => it[k] = (x) => obj[k](x);
|
|
38
|
-
} else {
|
|
39
|
-
obj = obj.call(value);
|
|
40
|
-
method = (k) => it[k] = (v) => {
|
|
41
|
-
if (isAwait) {
|
|
42
|
-
isAwait = false;
|
|
43
|
-
if (k === "throw") throw v;
|
|
44
|
-
return v;
|
|
45
|
-
}
|
|
46
|
-
isAwait = true;
|
|
47
|
-
return {
|
|
48
|
-
done: false,
|
|
49
|
-
value: new __await(new Promise((resolve) => {
|
|
50
|
-
var x = obj[k](v);
|
|
51
|
-
if (!(x instanceof Object)) __typeError("Object expected");
|
|
52
|
-
resolve(x);
|
|
53
|
-
}), 1)
|
|
54
|
-
};
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
|
|
58
|
-
throw x;
|
|
59
|
-
}, "return" in obj && method("return"), it;
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* @license
|
|
63
|
-
* Copyright 2026 Google LLC
|
|
64
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
65
|
-
*/
|
|
66
|
-
import { experimental } from "../utils/experimental.js";
|
|
67
|
-
import { BaseNode } from "./base_node.js";
|
|
68
|
-
import { buildNode } from "./utils/workflow_graph_utils.js";
|
|
69
|
-
function node(nodeLike, options = {}) {
|
|
70
|
-
return buildNode(nodeLike, options);
|
|
71
|
-
}
|
|
72
|
-
__name(node, "node");
|
|
73
|
-
let WorkflowNode = class extends BaseNode {
|
|
74
|
-
runImpl(ctx, input) {
|
|
75
|
-
return __asyncGenerator(this, null, function* () {
|
|
76
|
-
yield* __yieldStar(this.runNodeImpl(ctx, input));
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
__name(WorkflowNode, "WorkflowNode");
|
|
81
|
-
WorkflowNode = __decorateClass([
|
|
82
|
-
experimental
|
|
83
|
-
], WorkflowNode);
|
|
84
|
-
export {
|
|
85
|
-
WorkflowNode,
|
|
86
|
-
node
|
|
87
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
5
|
-
/**
|
|
6
|
-
* @license
|
|
7
|
-
* Copyright 2026 Google LLC
|
|
8
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
import { isBaseTool } from "../tools/base_tool.js";
|
|
11
|
-
import { FunctionNode } from "./nodes/function_node.js";
|
|
12
|
-
import { ParallelWorker } from "./nodes/parallel_worker.js";
|
|
13
|
-
import { ToolNode } from "./nodes/tool_node.js";
|
|
14
|
-
const FUNCTION_BUILDER = {
|
|
15
|
-
match: /* @__PURE__ */ __name((value) => typeof value === "function", "match"),
|
|
16
|
-
build: /* @__PURE__ */ __name((value, options) => {
|
|
17
|
-
var _a;
|
|
18
|
-
const handler = value;
|
|
19
|
-
const name = (_a = options.name) != null ? _a : handler.name;
|
|
20
|
-
if (!name) {
|
|
21
|
-
throw new Error(
|
|
22
|
-
"node(): the wrapped function has no name; pass {name} explicitly."
|
|
23
|
-
);
|
|
24
|
-
}
|
|
25
|
-
return new FunctionNode(name, handler, options);
|
|
26
|
-
}, "build")
|
|
27
|
-
};
|
|
28
|
-
const TOOL_BUILDER = {
|
|
29
|
-
match: /* @__PURE__ */ __name((value) => isBaseTool(value), "match"),
|
|
30
|
-
build: /* @__PURE__ */ __name((value, options) => new ToolNode(value, options), "build")
|
|
31
|
-
};
|
|
32
|
-
const NODE_BUILDERS = [
|
|
33
|
-
FUNCTION_BUILDER,
|
|
34
|
-
TOOL_BUILDER
|
|
35
|
-
];
|
|
36
|
-
const PARALLEL_WORKER_FACTORY = /* @__PURE__ */ __name((inner, options) => new ParallelWorker(inner, options), "PARALLEL_WORKER_FACTORY");
|
|
37
|
-
export {
|
|
38
|
-
NODE_BUILDERS,
|
|
39
|
-
PARALLEL_WORKER_FACTORY
|
|
40
|
-
};
|
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __defProps = Object.defineProperties;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
-
var __spreadValues = (a, b) => {
|
|
11
|
-
for (var prop in b || (b = {}))
|
|
12
|
-
if (__hasOwnProp.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
if (__getOwnPropSymbols)
|
|
15
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
-
if (__propIsEnum.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
}
|
|
19
|
-
return a;
|
|
20
|
-
};
|
|
21
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
23
|
-
/**
|
|
24
|
-
* @license
|
|
25
|
-
* Copyright 2026 Google LLC
|
|
26
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
27
|
-
*/
|
|
28
|
-
import { createEventActions } from "../events/event_actions.js";
|
|
29
|
-
import { State } from "../sessions/state.js";
|
|
30
|
-
import { NodeInterruptedError } from "./errors.js";
|
|
31
|
-
import { executeChildNode } from "./node_runner.js";
|
|
32
|
-
import { buildNode } from "./utils/workflow_graph_utils.js";
|
|
33
|
-
const _NodeContext = class _NodeContext {
|
|
34
|
-
constructor(opts) {
|
|
35
|
-
/**
|
|
36
|
-
* Node paths whose output this node's output also becomes: its parent's if
|
|
37
|
-
* the parent ran it with `useAsOutput`, plus whatever the parent was standing
|
|
38
|
-
* in for. Stamped onto every output event as `nodeInfo.outputFor`, so a
|
|
39
|
-
* resumed run can tell that an ancestor already has a result.
|
|
40
|
-
*/
|
|
41
|
-
this.outputForAncestors = [];
|
|
42
|
-
/**
|
|
43
|
-
* Whether this node handed its output to a child run with `useAsOutput`.
|
|
44
|
-
*
|
|
45
|
-
* The child already emitted that value as its own result, so an event from
|
|
46
|
-
* this node repeating it would put the same text in the stream twice. The
|
|
47
|
-
* node still reports the output — only the duplicate event is suppressed.
|
|
48
|
-
*/
|
|
49
|
-
this.outputDelegated = false;
|
|
50
|
-
/** The structured output produced by the node during its run. */
|
|
51
|
-
this.output = void 0;
|
|
52
|
-
/** Interrupt ids the node is currently blocked on (HITL). */
|
|
53
|
-
this.interruptIds = [];
|
|
54
|
-
/** The current attempt number (1-based) for the running node (see retry). */
|
|
55
|
-
this.attemptCount = 1;
|
|
56
|
-
this.dynamicRunCounters = /* @__PURE__ */ new Map();
|
|
57
|
-
/** Run ids this context handed out automatically, per node name. */
|
|
58
|
-
this.autoRunIds = /* @__PURE__ */ new Map();
|
|
59
|
-
/**
|
|
60
|
-
* Caller-supplied run ids shaped like an automatic one (all digits), per node
|
|
61
|
-
* name — the set {@link assertNoNumericCustomRunIds} refuses to auto-number
|
|
62
|
-
* around.
|
|
63
|
-
*/
|
|
64
|
-
this.numericCustomRunIds = /* @__PURE__ */ new Map();
|
|
65
|
-
var _a, _b;
|
|
66
|
-
this.invocationContext = opts.invocationContext;
|
|
67
|
-
this.channel = opts.channel;
|
|
68
|
-
this.nodePath = opts.nodePath;
|
|
69
|
-
this.runId = opts.runId;
|
|
70
|
-
this.resumeInputs = (_a = opts.resumeInputs) != null ? _a : {};
|
|
71
|
-
this.isolationScope = opts.isolationScope;
|
|
72
|
-
this.actions = (_b = opts.actions) != null ? _b : createEventActions();
|
|
73
|
-
this.stateSchema = opts.stateSchema;
|
|
74
|
-
this._state = new State(
|
|
75
|
-
opts.invocationContext.session.state,
|
|
76
|
-
this.actions.stateDelta,
|
|
77
|
-
opts.stateSchema
|
|
78
|
-
);
|
|
79
|
-
}
|
|
80
|
-
/** Delta-aware session state; writes accumulate in `actions.stateDelta`. */
|
|
81
|
-
get state() {
|
|
82
|
-
return this._state;
|
|
83
|
-
}
|
|
84
|
-
/** The branch of the owning invocation context. */
|
|
85
|
-
get branch() {
|
|
86
|
-
return this.invocationContext.branch;
|
|
87
|
-
}
|
|
88
|
-
/** The current invocation id. */
|
|
89
|
-
get invocationId() {
|
|
90
|
-
return this.invocationContext.invocationId;
|
|
91
|
-
}
|
|
92
|
-
/** The current session. */
|
|
93
|
-
get session() {
|
|
94
|
-
return this.invocationContext.session;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* The invocation context to run a nested agent against.
|
|
98
|
-
*
|
|
99
|
-
* The single place where "what a node sees" is translated into "what an
|
|
100
|
-
* agent sees", so an agent run as a node (`BaseAgent.runImpl`) and one run
|
|
101
|
-
* directly go through the same seam.
|
|
102
|
-
*
|
|
103
|
-
* It hands back the node's own invocation context unchanged, and that is the
|
|
104
|
-
* intended behaviour rather than a placeholder.
|
|
105
|
-
*
|
|
106
|
-
* adk-python's counterpart (`agents/context.py` `get_invocation_context`) is
|
|
107
|
-
* documented as returning "a copy with the proxy session", which reads as
|
|
108
|
-
* though the agent is handed a different view of state. It is not: that
|
|
109
|
-
* `Context.session` returns `self._invocation_context.session`, so the copy
|
|
110
|
-
* substitutes the same object, and `Context._state` is built directly over
|
|
111
|
-
* `session.state`. A Python agent run as a node reads session state exactly
|
|
112
|
-
* as a TypeScript one does.
|
|
113
|
-
*
|
|
114
|
-
* The other thing that copy carries — the isolation scope — is already
|
|
115
|
-
* applied by the time this runs: the node runner builds the child invocation
|
|
116
|
-
* context with the node's scope, so it is present on the object returned.
|
|
117
|
-
*
|
|
118
|
-
* That leaves the node's own `state`, which is this node's pending delta over
|
|
119
|
-
* `session.state` — the same thing an agent reads, so the two cannot
|
|
120
|
-
* disagree. The agent-node cases in
|
|
121
|
-
* `core/test/workflow/state_consistency_test.ts` pin that.
|
|
122
|
-
*/
|
|
123
|
-
getInvocationContext() {
|
|
124
|
-
return this.invocationContext;
|
|
125
|
-
}
|
|
126
|
-
/** Streams a single event out through the workflow's event channel. */
|
|
127
|
-
emit(event) {
|
|
128
|
-
this.channel.push(event);
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Runs a child node programmatically, streaming its events through the same
|
|
132
|
-
* channel and resolving to the child's result — a full {@link NodeContext}
|
|
133
|
-
* for a node that actually ran, or a bare {@link NodeResult} for one that was
|
|
134
|
-
* fast-forwarded from cached output on resume. Either way the caller can read
|
|
135
|
-
* `output`, `route`, `branch`, and `interruptIds`; only a `NodeContext`
|
|
136
|
-
* offers live behaviour (`emit`, `state`, nested `runNode`).
|
|
137
|
-
*
|
|
138
|
-
* When a dynamic-node {@link scheduler} is set (inside a Workflow subtree),
|
|
139
|
-
* the call routes through it for dedup/resume; otherwise the child runs
|
|
140
|
-
* directly.
|
|
141
|
-
*
|
|
142
|
-
* Takes anything an edge takes — an agent, a tool, a plain function, or an
|
|
143
|
-
* already-built node — and wraps it the same way the graph does, so
|
|
144
|
-
* `ctx.runNode(myAgent, input)` works without `node(myAgent)`. Wrap it
|
|
145
|
-
* yourself when you need the options `node()` carries, such as a schema or a
|
|
146
|
-
* name that differs from the value's own.
|
|
147
|
-
*/
|
|
148
|
-
runNode(nodeLike, input, options) {
|
|
149
|
-
var _a, _b;
|
|
150
|
-
const node = buildNode(nodeLike);
|
|
151
|
-
if (this.scheduler) {
|
|
152
|
-
const nodeName = (_a = options == null ? void 0 : options.nodeName) != null ? _a : node.name;
|
|
153
|
-
let runId = options == null ? void 0 : options.runId;
|
|
154
|
-
if (runId !== void 0) {
|
|
155
|
-
assertCustomRunId(runId, nodeName, mapSet(this.autoRunIds, nodeName));
|
|
156
|
-
if (isAutoNumberShaped(runId)) {
|
|
157
|
-
mapSet(this.numericCustomRunIds, nodeName).add(runId);
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
if (!runId) {
|
|
161
|
-
assertNoNumericCustomRunIds(
|
|
162
|
-
nodeName,
|
|
163
|
-
mapSet(this.numericCustomRunIds, nodeName)
|
|
164
|
-
);
|
|
165
|
-
const next = ((_b = this.dynamicRunCounters.get(nodeName)) != null ? _b : 0) + 1;
|
|
166
|
-
this.dynamicRunCounters.set(nodeName, next);
|
|
167
|
-
runId = String(next);
|
|
168
|
-
mapSet(this.autoRunIds, nodeName).add(runId);
|
|
169
|
-
}
|
|
170
|
-
return this.scheduleAndUnwind(node, input, __spreadProps(__spreadValues({}, options), {
|
|
171
|
-
nodeName,
|
|
172
|
-
runId
|
|
173
|
-
}));
|
|
174
|
-
}
|
|
175
|
-
return executeChildNode({ parent: this, node, input, options });
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Runs a child through the scheduler, raising {@link NodeInterruptedError}
|
|
179
|
-
* when it comes back waiting on an unanswered interrupt.
|
|
180
|
-
*
|
|
181
|
-
* The caller's body must not continue past a child that stopped to ask the
|
|
182
|
-
* user: everything after the call would run on a missing answer, and would
|
|
183
|
-
* run again when the turn resumes. The scheduler has already copied the
|
|
184
|
-
* child's interrupt ids onto this context by the time it returns, so the
|
|
185
|
-
* runner that catches the throw records this node as waiting.
|
|
186
|
-
*/
|
|
187
|
-
async scheduleAndUnwind(node, input, options) {
|
|
188
|
-
const child = await this.scheduler.schedule(this, node, input, options);
|
|
189
|
-
if (child.interruptIds.length > 0) {
|
|
190
|
-
throw new NodeInterruptedError();
|
|
191
|
-
}
|
|
192
|
-
return child;
|
|
193
|
-
}
|
|
194
|
-
};
|
|
195
|
-
__name(_NodeContext, "NodeContext");
|
|
196
|
-
let NodeContext = _NodeContext;
|
|
197
|
-
function mapSet(map, key) {
|
|
198
|
-
let set = map.get(key);
|
|
199
|
-
if (!set) {
|
|
200
|
-
set = /* @__PURE__ */ new Set();
|
|
201
|
-
map.set(key, set);
|
|
202
|
-
}
|
|
203
|
-
return set;
|
|
204
|
-
}
|
|
205
|
-
__name(mapSet, "mapSet");
|
|
206
|
-
function isAutoNumberShaped(runId) {
|
|
207
|
-
return /^\d+$/.test(runId);
|
|
208
|
-
}
|
|
209
|
-
__name(isAutoNumberShaped, "isAutoNumberShaped");
|
|
210
|
-
function numericRunIdMixError(nodeName, runId) {
|
|
211
|
-
return new Error(
|
|
212
|
-
"Invalid runId '".concat(runId, "' for node '").concat(nodeName, "': ADK numbers automatic ") + 'runs of a node "1", "2", "3", \u2026 per context, so an all-digit custom id draws from that same namespace. A later turn that issues a different set of custom ids shifts the automatic sequence onto a checkpoint path an earlier call already wrote, and the call is fast-forwarded to that run\'s cached output with its own input silently discarded. Give the custom id a non-numeric part, e.g. ' + "'".concat(nodeName, "-").concat(runId, "', or supply an explicit id for every run of ") + "this node so ADK never numbers one."
|
|
213
|
-
);
|
|
214
|
-
}
|
|
215
|
-
__name(numericRunIdMixError, "numericRunIdMixError");
|
|
216
|
-
function assertCustomRunId(runId, nodeName, autoRunIds) {
|
|
217
|
-
if (runId.trim() === "") {
|
|
218
|
-
throw new Error(
|
|
219
|
-
"Invalid runId for node '".concat(nodeName, "': a custom run id cannot be empty. ") + "Omit runId to let ADK number the run automatically."
|
|
220
|
-
);
|
|
221
|
-
}
|
|
222
|
-
if (autoRunIds.size > 0 && isAutoNumberShaped(runId)) {
|
|
223
|
-
throw numericRunIdMixError(nodeName, runId);
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
__name(assertCustomRunId, "assertCustomRunId");
|
|
227
|
-
function assertNoNumericCustomRunIds(nodeName, numericCustomRunIds) {
|
|
228
|
-
const first = numericCustomRunIds.values().next();
|
|
229
|
-
if (!first.done) {
|
|
230
|
-
throw numericRunIdMixError(nodeName, first.value);
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
__name(assertNoNumericCustomRunIds, "assertNoNumericCustomRunIds");
|
|
234
|
-
export {
|
|
235
|
-
NodeContext
|
|
236
|
-
};
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
-
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __defProps = Object.defineProperties;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
-
var __spreadValues = (a, b) => {
|
|
11
|
-
for (var prop in b || (b = {}))
|
|
12
|
-
if (__hasOwnProp.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
if (__getOwnPropSymbols)
|
|
15
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
-
if (__propIsEnum.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
}
|
|
19
|
-
return a;
|
|
20
|
-
};
|
|
21
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
23
|
-
var __objRest = (source, exclude) => {
|
|
24
|
-
var target = {};
|
|
25
|
-
for (var prop in source)
|
|
26
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
27
|
-
target[prop] = source[prop];
|
|
28
|
-
if (source != null && __getOwnPropSymbols)
|
|
29
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
30
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
31
|
-
target[prop] = source[prop];
|
|
32
|
-
}
|
|
33
|
-
return target;
|
|
34
|
-
};
|
|
35
|
-
/**
|
|
36
|
-
* @license
|
|
37
|
-
* Copyright 2026 Google LLC
|
|
38
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
39
|
-
*/
|
|
40
|
-
import { createEvent } from "../events/event.js";
|
|
41
|
-
import { errorName } from "./utils/retry_utils.js";
|
|
42
|
-
function isNodeErrorEvent(event) {
|
|
43
|
-
return "isNodeError" in event && event.isNodeError === true;
|
|
44
|
-
}
|
|
45
|
-
__name(isNodeErrorEvent, "isNodeErrorEvent");
|
|
46
|
-
const reportedInvocationIds = /* @__PURE__ */ new WeakMap();
|
|
47
|
-
function claimNodeErrorReport(error, invocationId) {
|
|
48
|
-
if (typeof error !== "object" || error === null) {
|
|
49
|
-
return true;
|
|
50
|
-
}
|
|
51
|
-
if (reportedInvocationIds.get(error) === invocationId) {
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
|
-
reportedInvocationIds.set(error, invocationId);
|
|
55
|
-
return true;
|
|
56
|
-
}
|
|
57
|
-
__name(claimNodeErrorReport, "claimNodeErrorReport");
|
|
58
|
-
function createNodeErrorEvent(params) {
|
|
59
|
-
var _b, _c;
|
|
60
|
-
const _a = params, { error, attemptCount } = _a, eventParams = __objRest(_a, ["error", "attemptCount"]);
|
|
61
|
-
return __spreadProps(__spreadValues({}, createEvent(eventParams)), {
|
|
62
|
-
isNodeError: true,
|
|
63
|
-
errorType: errorName(error),
|
|
64
|
-
errorCode: (_b = eventParams.errorCode) != null ? _b : errorCodeOf(error),
|
|
65
|
-
errorMessage: (_c = eventParams.errorMessage) != null ? _c : errorMessageOf(error),
|
|
66
|
-
attemptCount: attemptCount != null ? attemptCount : 1
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
__name(createNodeErrorEvent, "createNodeErrorEvent");
|
|
70
|
-
function errorCodeOf(error) {
|
|
71
|
-
const code = error == null ? void 0 : error.code;
|
|
72
|
-
if (typeof code === "string" || typeof code === "number") {
|
|
73
|
-
return String(code);
|
|
74
|
-
}
|
|
75
|
-
return "UNKNOWN_ERROR";
|
|
76
|
-
}
|
|
77
|
-
__name(errorCodeOf, "errorCodeOf");
|
|
78
|
-
function errorMessageOf(error) {
|
|
79
|
-
return error instanceof Error ? error.message : String(error);
|
|
80
|
-
}
|
|
81
|
-
__name(errorMessageOf, "errorMessageOf");
|
|
82
|
-
export {
|
|
83
|
-
claimNodeErrorReport,
|
|
84
|
-
createNodeErrorEvent,
|
|
85
|
-
isNodeErrorEvent
|
|
86
|
-
};
|