@google/adk 0.6.1 → 1.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/agents/base_agent.js +11 -2
- package/dist/cjs/agents/context.js +1 -0
- package/dist/cjs/agents/functions.js +1 -0
- package/dist/cjs/agents/invocation_context.js +1 -0
- package/dist/cjs/agents/llm_agent.js +70 -13
- package/dist/cjs/agents/loop_agent.js +4 -0
- package/dist/cjs/agents/parallel_agent.js +4 -0
- package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -0
- package/dist/cjs/agents/processors/context_compactor_request_processor.js +9 -0
- package/dist/cjs/agents/processors/tool_filter_request_processor.js +73 -0
- package/dist/cjs/agents/routed_agent.js +97 -0
- package/dist/cjs/auth/auth_handler.js +66 -1
- package/dist/cjs/auth/auth_preprocessor.js +178 -0
- package/dist/cjs/auth/auth_provider_registry.js +61 -0
- package/dist/cjs/auth/base_auth_provider.js +27 -0
- package/dist/cjs/auth/credential_service/session_state_credential_service.js +51 -0
- package/dist/cjs/auth/oauth2/oauth2_credential_exchanger.js +198 -0
- package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +109 -0
- package/dist/cjs/auth/oauth2/oauth2_discovery.js +186 -0
- package/dist/cjs/auth/oauth2/oauth2_utils.js +119 -0
- package/dist/cjs/auth/refresher/base_credential_refresher.js +44 -0
- package/dist/cjs/auth/refresher/credential_refresher_registry.js +68 -0
- package/dist/cjs/code_executors/base_code_executor.js +9 -5
- package/dist/cjs/code_executors/code_execution_utils.js +19 -0
- package/dist/cjs/code_executors/unsafe_local_code_executor.js +241 -0
- package/dist/cjs/common.js +69 -0
- package/dist/cjs/features/feature_registry.js +141 -0
- package/dist/cjs/index.js +83 -113
- package/dist/cjs/models/apigee_llm.js +2 -2
- package/dist/cjs/models/google_llm.js +18 -53
- package/dist/cjs/models/routed_llm.js +99 -0
- package/dist/cjs/plugins/base_plugin.js +39 -2
- package/dist/cjs/plugins/plugin_manager.js +39 -0
- package/dist/cjs/runner/runner.js +31 -3
- package/dist/cjs/sessions/db/operations.js +3 -10
- package/dist/cjs/skills/loader.js +283 -0
- package/dist/cjs/skills/prompt.js +58 -0
- package/dist/cjs/skills/skill.js +78 -0
- package/dist/cjs/tools/agent_tool.js +11 -4
- package/dist/cjs/tools/mcp/mcp_tool.js +7 -3
- package/dist/cjs/tools/mcp/mcp_toolset.js +1 -1
- package/dist/cjs/tools/skill/list_skills_tool.js +76 -0
- package/dist/cjs/tools/skill/load_skill_resource_tool.js +225 -0
- package/dist/cjs/tools/skill/load_skill_tool.js +108 -0
- package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +146 -0
- package/dist/cjs/tools/skill/run_skill_script_tool.js +224 -0
- package/dist/cjs/tools/skill/skill_toolset.js +163 -0
- package/dist/cjs/tools/url_context_tool.js +73 -0
- package/dist/cjs/tools/vertex_ai_search_tool.js +127 -0
- package/dist/cjs/utils/experimental.js +74 -0
- package/dist/cjs/utils/failover_utils.js +93 -0
- package/dist/cjs/utils/file_extension_utils.js +77 -0
- package/dist/cjs/utils/file_utils.js +94 -0
- package/dist/cjs/utils/model_name.js +8 -2
- package/dist/cjs/utils/streaming_utils.js +333 -0
- package/dist/cjs/version.js +1 -1
- package/dist/esm/a2a/a2a_event.js +2 -0
- package/dist/esm/a2a/a2a_remote_agent.js +2 -0
- package/dist/esm/a2a/a2a_remote_agent_run_processor.js +2 -0
- package/dist/esm/a2a/a2a_remote_agent_utils.js +2 -0
- package/dist/esm/a2a/agent_card.js +2 -0
- package/dist/esm/a2a/agent_executor.js +2 -0
- package/dist/esm/a2a/agent_to_a2a.js +2 -0
- package/dist/esm/a2a/event_converter_utils.js +2 -0
- package/dist/esm/a2a/event_processor_utils.js +2 -0
- package/dist/esm/a2a/executor_context.js +2 -0
- package/dist/esm/a2a/metadata_converter_utils.js +2 -0
- package/dist/esm/a2a/part_converter_utils.js +2 -0
- package/dist/esm/agents/active_streaming_tool.js +2 -0
- package/dist/esm/agents/base_agent.js +13 -2
- package/dist/esm/agents/context.js +3 -0
- package/dist/esm/agents/functions.js +3 -0
- package/dist/esm/agents/instructions.js +2 -0
- package/dist/esm/agents/invocation_context.js +3 -0
- package/dist/esm/agents/live_request_queue.js +2 -0
- package/dist/esm/agents/llm_agent.js +72 -13
- package/dist/esm/agents/loop_agent.js +6 -0
- package/dist/esm/agents/parallel_agent.js +6 -0
- package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +2 -0
- package/dist/esm/agents/processors/base_llm_processor.js +2 -0
- package/dist/esm/agents/processors/basic_llm_request_processor.js +2 -0
- package/dist/esm/agents/processors/code_execution_request_processor.js +5 -0
- package/dist/esm/agents/processors/content_processor_utils.js +2 -0
- package/dist/esm/agents/processors/content_request_processor.js +2 -0
- package/dist/esm/agents/processors/context_compactor_request_processor.js +11 -0
- package/dist/esm/agents/processors/identity_llm_request_processor.js +2 -0
- package/dist/esm/agents/processors/instructions_llm_request_processor.js +2 -0
- package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +2 -0
- package/dist/esm/agents/processors/tool_filter_request_processor.js +44 -0
- package/dist/esm/agents/readonly_context.js +2 -0
- package/dist/esm/agents/routed_agent.js +70 -0
- package/dist/esm/agents/run_config.js +2 -0
- package/dist/esm/agents/sequential_agent.js +2 -0
- package/dist/esm/agents/transcription_entry.js +2 -0
- package/dist/esm/artifacts/base_artifact_service.js +2 -0
- package/dist/esm/artifacts/file_artifact_service.js +2 -0
- package/dist/esm/artifacts/gcs_artifact_service.js +2 -0
- package/dist/esm/artifacts/in_memory_artifact_service.js +2 -0
- package/dist/esm/artifacts/registry.js +2 -0
- package/dist/esm/auth/auth_credential.js +2 -0
- package/dist/esm/auth/auth_handler.js +68 -1
- package/dist/esm/auth/auth_preprocessor.js +155 -0
- package/dist/esm/auth/auth_provider_registry.js +33 -0
- package/dist/esm/auth/auth_schemes.js +2 -0
- package/dist/esm/auth/auth_tool.js +2 -0
- package/dist/esm/auth/base_auth_provider.js +7 -0
- package/dist/esm/auth/credential_service/base_credential_service.js +2 -0
- package/dist/esm/auth/credential_service/in_memory_credential_service.js +2 -0
- package/dist/esm/auth/credential_service/session_state_credential_service.js +23 -0
- package/dist/esm/auth/exchanger/base_credential_exchanger.js +2 -0
- package/dist/esm/auth/exchanger/credential_exchanger_registry.js +2 -0
- package/dist/esm/auth/oauth2/oauth2_credential_exchanger.js +177 -0
- package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +85 -0
- package/dist/esm/auth/oauth2/oauth2_discovery.js +156 -0
- package/dist/esm/auth/oauth2/oauth2_utils.js +87 -0
- package/dist/esm/auth/refresher/base_credential_refresher.js +16 -0
- package/dist/esm/auth/refresher/credential_refresher_registry.js +40 -0
- package/dist/esm/code_executors/base_code_executor.js +11 -5
- package/dist/esm/code_executors/built_in_code_executor.js +2 -0
- package/dist/esm/code_executors/code_execution_utils.js +19 -0
- package/dist/esm/code_executors/code_executor_context.js +2 -0
- package/dist/esm/code_executors/unsafe_local_code_executor.js +205 -0
- package/dist/esm/common.js +52 -3
- package/dist/esm/context/base_context_compactor.js +2 -0
- package/dist/esm/context/summarizers/base_summarizer.js +2 -0
- package/dist/esm/context/summarizers/llm_summarizer.js +2 -0
- package/dist/esm/context/token_based_context_compactor.js +2 -0
- package/dist/esm/context/truncating_context_compactor.js +2 -0
- package/dist/esm/events/compacted_event.js +2 -0
- package/dist/esm/events/event.js +2 -0
- package/dist/esm/events/event_actions.js +2 -0
- package/dist/esm/events/structured_events.js +2 -0
- package/dist/esm/examples/base_example_provider.js +2 -0
- package/dist/esm/examples/example.js +2 -0
- package/dist/esm/examples/example_util.js +2 -0
- package/dist/esm/features/feature_registry.js +107 -0
- package/dist/esm/index.js +45 -119
- package/dist/esm/index_web.js +2 -0
- package/dist/esm/memory/base_memory_service.js +2 -0
- package/dist/esm/memory/in_memory_memory_service.js +2 -0
- package/dist/esm/memory/memory_entry.js +2 -0
- package/dist/esm/models/apigee_llm.js +4 -2
- package/dist/esm/models/base_llm.js +2 -0
- package/dist/esm/models/base_llm_connection.js +2 -0
- package/dist/esm/models/gemini_llm_connection.js +2 -0
- package/dist/esm/models/google_llm.js +20 -54
- package/dist/esm/models/llm_request.js +2 -0
- package/dist/esm/models/llm_response.js +2 -0
- package/dist/esm/models/registry.js +2 -0
- package/dist/esm/models/routed_llm.js +73 -0
- package/dist/esm/plugins/base_plugin.js +41 -1
- package/dist/esm/plugins/logging_plugin.js +2 -0
- package/dist/esm/plugins/plugin_manager.js +41 -0
- package/dist/esm/plugins/security_plugin.js +2 -0
- package/dist/esm/runner/in_memory_runner.js +2 -0
- package/dist/esm/runner/runner.js +33 -3
- package/dist/esm/sessions/base_session_service.js +2 -0
- package/dist/esm/sessions/database_session_service.js +2 -0
- package/dist/esm/sessions/db/operations.js +5 -10
- package/dist/esm/sessions/db/schema.js +2 -0
- package/dist/esm/sessions/in_memory_session_service.js +2 -0
- package/dist/esm/sessions/registry.js +2 -0
- package/dist/esm/sessions/session.js +2 -0
- package/dist/esm/sessions/state.js +2 -0
- package/dist/esm/skills/loader.js +244 -0
- package/dist/esm/skills/prompt.js +30 -0
- package/dist/esm/skills/skill.js +49 -0
- package/dist/esm/telemetry/google_cloud.js +2 -0
- package/dist/esm/telemetry/setup.js +2 -0
- package/dist/esm/telemetry/tracing.js +2 -0
- package/dist/esm/tools/agent_tool.js +13 -4
- package/dist/esm/tools/base_tool.js +2 -0
- package/dist/esm/tools/base_toolset.js +2 -0
- package/dist/esm/tools/exit_loop_tool.js +2 -0
- package/dist/esm/tools/forwarding_artifact_service.js +2 -0
- package/dist/esm/tools/function_tool.js +2 -0
- package/dist/esm/tools/google_search_tool.js +2 -0
- package/dist/esm/tools/load_artifacts_tool.js +2 -0
- package/dist/esm/tools/load_memory_tool.js +2 -0
- package/dist/esm/tools/long_running_tool.js +2 -0
- package/dist/esm/tools/mcp/mcp_session_manager.js +2 -0
- package/dist/esm/tools/mcp/mcp_tool.js +9 -3
- package/dist/esm/tools/mcp/mcp_toolset.js +3 -1
- package/dist/esm/tools/preload_memory_tool.js +2 -0
- package/dist/esm/tools/skill/list_skills_tool.js +50 -0
- package/dist/esm/tools/skill/load_skill_resource_tool.js +191 -0
- package/dist/esm/tools/skill/load_skill_tool.js +82 -0
- package/dist/esm/tools/skill/run_skill_inline_script_tool.js +120 -0
- package/dist/esm/tools/skill/run_skill_script_tool.js +192 -0
- package/dist/esm/tools/skill/skill_toolset.js +137 -0
- package/dist/esm/tools/tool_confirmation.js +2 -0
- package/dist/esm/tools/url_context_tool.js +44 -0
- package/dist/esm/tools/vertex_ai_search_tool.js +103 -0
- package/dist/esm/utils/client_labels.js +2 -0
- package/dist/esm/utils/env_aware_utils.js +2 -0
- package/dist/esm/utils/experimental.js +46 -0
- package/dist/esm/utils/failover_utils.js +65 -0
- package/dist/esm/utils/file_extension_utils.js +51 -0
- package/dist/esm/utils/file_utils.js +56 -0
- package/dist/esm/utils/gemini_schema_util.js +2 -0
- package/dist/esm/utils/logger.js +2 -0
- package/dist/esm/utils/model_name.js +8 -1
- package/dist/esm/utils/object_notation_utils.js +2 -0
- package/dist/esm/utils/simple_zod_to_json.js +2 -0
- package/dist/esm/utils/streaming_utils.js +307 -0
- package/dist/esm/utils/variant_utils.js +2 -0
- package/dist/esm/version.js +3 -1
- package/dist/types/agents/context.d.ts +1 -0
- package/dist/types/agents/invocation_context.d.ts +5 -0
- package/dist/types/agents/processors/tool_filter_request_processor.d.ts +14 -0
- package/dist/types/agents/routed_agent.d.ts +59 -0
- package/dist/types/auth/auth_credential.d.ts +17 -0
- package/dist/types/auth/auth_handler.d.ts +1 -0
- package/dist/types/auth/auth_preprocessor.d.ts +12 -0
- package/dist/types/auth/auth_provider_registry.d.ts +27 -0
- package/dist/types/auth/base_auth_provider.d.ts +20 -0
- package/dist/types/auth/credential_service/session_state_credential_service.d.ts +20 -0
- package/dist/types/auth/exchanger/base_credential_exchanger.d.ts +12 -5
- package/dist/types/auth/oauth2/oauth2_credential_exchanger.d.ts +26 -0
- package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +29 -0
- package/dist/types/auth/oauth2/oauth2_discovery.d.ts +38 -0
- package/dist/types/auth/oauth2/oauth2_utils.d.ts +56 -0
- package/dist/types/auth/refresher/base_credential_refresher.d.ts +38 -0
- package/dist/types/auth/refresher/credential_refresher_registry.d.ts +27 -0
- package/dist/types/code_executors/base_code_executor.d.ts +4 -4
- package/dist/types/code_executors/code_execution_utils.d.ts +29 -1
- package/dist/types/code_executors/unsafe_local_code_executor.d.ts +48 -0
- package/dist/types/common.d.ts +29 -3
- package/dist/types/features/feature_registry.d.ts +66 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/memory/base_memory_service.d.ts +6 -0
- package/dist/types/memory/memory_entry.d.ts +11 -5
- package/dist/types/models/apigee_llm.d.ts +1 -1
- package/dist/types/models/base_llm.d.ts +1 -1
- package/dist/types/models/google_llm.d.ts +1 -1
- package/dist/types/models/llm_request.d.ts +4 -0
- package/dist/types/models/routed_llm.d.ts +38 -0
- package/dist/types/plugins/base_plugin.d.ts +49 -0
- package/dist/types/plugins/plugin_manager.d.ts +22 -1
- package/dist/types/runner/runner.d.ts +1 -0
- package/dist/types/skills/loader.d.ts +38 -0
- package/dist/types/skills/prompt.d.ts +13 -0
- package/dist/types/skills/skill.d.ts +48 -0
- package/dist/types/tools/mcp/mcp_tool.d.ts +7 -1
- package/dist/types/tools/mcp/mcp_toolset.d.ts +5 -0
- package/dist/types/tools/skill/list_skills_tool.d.ts +14 -0
- package/dist/types/tools/skill/load_skill_resource_tool.d.ts +15 -0
- package/dist/types/tools/skill/load_skill_tool.d.ts +14 -0
- package/dist/types/tools/skill/run_skill_inline_script_tool.d.ts +14 -0
- package/dist/types/tools/skill/run_skill_script_tool.d.ts +17 -0
- package/dist/types/tools/skill/skill_toolset.d.ts +28 -0
- package/dist/types/tools/url_context_tool.d.ts +17 -0
- package/dist/types/tools/vertex_ai_search_tool.d.ts +55 -0
- package/dist/types/utils/experimental.d.ts +11 -0
- package/dist/types/utils/failover_utils.d.ts +17 -0
- package/dist/types/utils/file_extension_utils.d.ts +21 -0
- package/dist/types/utils/file_utils.d.ts +11 -0
- package/dist/types/utils/model_name.d.ts +4 -0
- package/dist/types/utils/streaming_utils.d.ts +40 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/web/a2a/a2a_event.js +2 -0
- package/dist/web/a2a/a2a_remote_agent.js +2 -0
- package/dist/web/a2a/a2a_remote_agent_run_processor.js +2 -0
- package/dist/web/a2a/a2a_remote_agent_utils.js +2 -0
- package/dist/web/a2a/agent_card.js +2 -0
- package/dist/web/a2a/agent_executor.js +2 -0
- package/dist/web/a2a/agent_to_a2a.js +2 -0
- package/dist/web/a2a/event_converter_utils.js +2 -0
- package/dist/web/a2a/event_processor_utils.js +2 -0
- package/dist/web/a2a/executor_context.js +2 -0
- package/dist/web/a2a/metadata_converter_utils.js +2 -0
- package/dist/web/a2a/part_converter_utils.js +2 -0
- package/dist/web/agents/active_streaming_tool.js +2 -0
- package/dist/web/agents/base_agent.js +13 -2
- package/dist/web/agents/context.js +3 -0
- package/dist/web/agents/functions.js +3 -0
- package/dist/web/agents/instructions.js +2 -0
- package/dist/web/agents/invocation_context.js +3 -0
- package/dist/web/agents/live_request_queue.js +2 -0
- package/dist/web/agents/llm_agent.js +72 -13
- package/dist/web/agents/loop_agent.js +6 -0
- package/dist/web/agents/parallel_agent.js +6 -0
- package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +2 -0
- package/dist/web/agents/processors/base_llm_processor.js +2 -0
- package/dist/web/agents/processors/basic_llm_request_processor.js +2 -0
- package/dist/web/agents/processors/code_execution_request_processor.js +5 -0
- package/dist/web/agents/processors/content_processor_utils.js +2 -0
- package/dist/web/agents/processors/content_request_processor.js +2 -0
- package/dist/web/agents/processors/context_compactor_request_processor.js +11 -0
- package/dist/web/agents/processors/identity_llm_request_processor.js +2 -0
- package/dist/web/agents/processors/instructions_llm_request_processor.js +2 -0
- package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +2 -0
- package/dist/web/agents/processors/tool_filter_request_processor.js +62 -0
- package/dist/web/agents/readonly_context.js +2 -0
- package/dist/web/agents/routed_agent.js +138 -0
- package/dist/web/agents/run_config.js +2 -0
- package/dist/web/agents/sequential_agent.js +2 -0
- package/dist/web/agents/transcription_entry.js +2 -0
- package/dist/web/artifacts/base_artifact_service.js +2 -0
- package/dist/web/artifacts/file_artifact_service.js +2 -0
- package/dist/web/artifacts/gcs_artifact_service.js +2 -0
- package/dist/web/artifacts/in_memory_artifact_service.js +2 -0
- package/dist/web/artifacts/registry.js +2 -0
- package/dist/web/auth/auth_credential.js +2 -0
- package/dist/web/auth/auth_handler.js +85 -1
- package/dist/web/auth/auth_preprocessor.js +173 -0
- package/dist/web/auth/auth_provider_registry.js +33 -0
- package/dist/web/auth/auth_schemes.js +2 -0
- package/dist/web/auth/auth_tool.js +2 -0
- package/dist/web/auth/base_auth_provider.js +7 -0
- package/dist/web/auth/credential_service/base_credential_service.js +2 -0
- package/dist/web/auth/credential_service/in_memory_credential_service.js +2 -0
- package/dist/web/auth/credential_service/session_state_credential_service.js +23 -0
- package/dist/web/auth/exchanger/base_credential_exchanger.js +2 -0
- package/dist/web/auth/exchanger/credential_exchanger_registry.js +2 -0
- package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +188 -0
- package/dist/web/auth/oauth2/oauth2_credential_refresher.js +102 -0
- package/dist/web/auth/oauth2/oauth2_discovery.js +156 -0
- package/dist/web/auth/oauth2/oauth2_utils.js +87 -0
- package/dist/web/auth/refresher/base_credential_refresher.js +16 -0
- package/dist/web/auth/refresher/credential_refresher_registry.js +40 -0
- package/dist/web/code_executors/base_code_executor.js +11 -5
- package/dist/web/code_executors/built_in_code_executor.js +2 -0
- package/dist/web/code_executors/code_execution_utils.js +19 -0
- package/dist/web/code_executors/code_executor_context.js +2 -0
- package/dist/web/code_executors/unsafe_local_code_executor.js +203 -0
- package/dist/web/common.js +52 -3
- package/dist/web/context/base_context_compactor.js +2 -0
- package/dist/web/context/summarizers/base_summarizer.js +2 -0
- package/dist/web/context/summarizers/llm_summarizer.js +2 -0
- package/dist/web/context/token_based_context_compactor.js +2 -0
- package/dist/web/context/truncating_context_compactor.js +2 -0
- package/dist/web/events/compacted_event.js +2 -0
- package/dist/web/events/event.js +2 -0
- package/dist/web/events/event_actions.js +2 -0
- package/dist/web/events/structured_events.js +2 -0
- package/dist/web/examples/base_example_provider.js +2 -0
- package/dist/web/examples/example.js +2 -0
- package/dist/web/examples/example_util.js +2 -0
- package/dist/web/features/feature_registry.js +107 -0
- package/dist/web/index.js +45 -13
- package/dist/web/index_web.js +2 -0
- package/dist/web/memory/base_memory_service.js +2 -0
- package/dist/web/memory/in_memory_memory_service.js +2 -0
- package/dist/web/memory/memory_entry.js +2 -0
- package/dist/web/models/apigee_llm.js +4 -2
- package/dist/web/models/base_llm.js +2 -0
- package/dist/web/models/base_llm_connection.js +2 -0
- package/dist/web/models/gemini_llm_connection.js +2 -0
- package/dist/web/models/google_llm.js +37 -59
- package/dist/web/models/llm_request.js +2 -0
- package/dist/web/models/llm_response.js +2 -0
- package/dist/web/models/registry.js +2 -0
- package/dist/web/models/routed_llm.js +122 -0
- package/dist/web/plugins/base_plugin.js +41 -1
- package/dist/web/plugins/logging_plugin.js +2 -0
- package/dist/web/plugins/plugin_manager.js +41 -0
- package/dist/web/plugins/security_plugin.js +2 -0
- package/dist/web/runner/in_memory_runner.js +2 -0
- package/dist/web/runner/runner.js +33 -3
- package/dist/web/sessions/base_session_service.js +2 -0
- package/dist/web/sessions/database_session_service.js +2 -0
- package/dist/web/sessions/db/operations.js +5 -10
- package/dist/web/sessions/db/schema.js +2 -0
- package/dist/web/sessions/in_memory_session_service.js +2 -0
- package/dist/web/sessions/registry.js +2 -0
- package/dist/web/sessions/session.js +2 -0
- package/dist/web/sessions/state.js +2 -0
- package/dist/web/skills/loader.js +262 -0
- package/dist/web/skills/prompt.js +30 -0
- package/dist/web/skills/skill.js +67 -0
- package/dist/web/telemetry/google_cloud.js +2 -0
- package/dist/web/telemetry/setup.js +2 -0
- package/dist/web/telemetry/tracing.js +2 -0
- package/dist/web/tools/agent_tool.js +13 -4
- package/dist/web/tools/base_tool.js +2 -0
- package/dist/web/tools/base_toolset.js +2 -0
- package/dist/web/tools/exit_loop_tool.js +2 -0
- package/dist/web/tools/forwarding_artifact_service.js +2 -0
- package/dist/web/tools/function_tool.js +2 -0
- package/dist/web/tools/google_search_tool.js +2 -0
- package/dist/web/tools/load_artifacts_tool.js +2 -0
- package/dist/web/tools/load_memory_tool.js +2 -0
- package/dist/web/tools/long_running_tool.js +2 -0
- package/dist/web/tools/mcp/mcp_session_manager.js +2 -0
- package/dist/web/tools/mcp/mcp_tool.js +9 -3
- package/dist/web/tools/mcp/mcp_toolset.js +3 -1
- package/dist/web/tools/preload_memory_tool.js +2 -0
- package/dist/web/tools/skill/list_skills_tool.js +50 -0
- package/dist/web/tools/skill/load_skill_resource_tool.js +191 -0
- package/dist/web/tools/skill/load_skill_tool.js +82 -0
- package/dist/web/tools/skill/run_skill_inline_script_tool.js +120 -0
- package/dist/web/tools/skill/run_skill_script_tool.js +190 -0
- package/dist/web/tools/skill/skill_toolset.js +123 -0
- package/dist/web/tools/tool_confirmation.js +2 -0
- package/dist/web/tools/url_context_tool.js +44 -0
- package/dist/web/tools/vertex_ai_search_tool.js +103 -0
- package/dist/web/utils/client_labels.js +2 -0
- package/dist/web/utils/env_aware_utils.js +2 -0
- package/dist/web/utils/experimental.js +46 -0
- package/dist/web/utils/failover_utils.js +96 -0
- package/dist/web/utils/file_extension_utils.js +51 -0
- package/dist/web/utils/file_utils.js +74 -0
- package/dist/web/utils/gemini_schema_util.js +2 -0
- package/dist/web/utils/logger.js +2 -0
- package/dist/web/utils/model_name.js +8 -1
- package/dist/web/utils/object_notation_utils.js +2 -0
- package/dist/web/utils/simple_zod_to_json.js +2 -0
- package/dist/web/utils/streaming_utils.js +325 -0
- package/dist/web/utils/variant_utils.js +2 -0
- package/dist/web/version.js +3 -1
- package/package.json +20 -18
- package/dist/cjs/index.js.map +0 -7
- package/dist/esm/index.js.map +0 -7
- package/dist/web/index.js.map +0 -7
|
@@ -11,7 +11,7 @@ import { Event } from '../events/event.js';
|
|
|
11
11
|
import { LlmRequest } from '../models/llm_request.js';
|
|
12
12
|
import { LlmResponse } from '../models/llm_response.js';
|
|
13
13
|
import { BaseTool } from '../tools/base_tool.js';
|
|
14
|
-
import { BasePlugin } from './base_plugin.js';
|
|
14
|
+
import { BasePlugin, ContextCompactionTrigger } from './base_plugin.js';
|
|
15
15
|
/**
|
|
16
16
|
* Manages the registration and execution of plugins.
|
|
17
17
|
*
|
|
@@ -103,6 +103,27 @@ export declare class PluginManager {
|
|
|
103
103
|
agent: BaseAgent;
|
|
104
104
|
callbackContext: Context;
|
|
105
105
|
}): Promise<Content | undefined>;
|
|
106
|
+
/**
|
|
107
|
+
* Runs the `beforeToolSelection` for all plugins.
|
|
108
|
+
*/
|
|
109
|
+
runBeforeToolSelection({ callbackContext, tools, }: {
|
|
110
|
+
callbackContext: Context;
|
|
111
|
+
tools: Readonly<Record<string, BaseTool>>;
|
|
112
|
+
}): Promise<Readonly<Record<string, BaseTool>> | undefined>;
|
|
113
|
+
/**
|
|
114
|
+
* Runs the `beforeContextCompaction` for all plugins.
|
|
115
|
+
*/
|
|
116
|
+
runBeforeContextCompaction({ invocationContext, trigger, }: {
|
|
117
|
+
invocationContext: InvocationContext;
|
|
118
|
+
trigger: ContextCompactionTrigger;
|
|
119
|
+
}): Promise<void>;
|
|
120
|
+
/**
|
|
121
|
+
* Runs the `afterContextCompaction` for all plugins.
|
|
122
|
+
*/
|
|
123
|
+
runAfterContextCompaction({ invocationContext, trigger, }: {
|
|
124
|
+
invocationContext: InvocationContext;
|
|
125
|
+
trigger: ContextCompactionTrigger;
|
|
126
|
+
}): Promise<void>;
|
|
106
127
|
/**
|
|
107
128
|
* Runs the `beforeToolCallback` for all plugins.
|
|
108
129
|
*/
|
|
@@ -84,6 +84,7 @@ export declare class Runner {
|
|
|
84
84
|
newMessage: Content;
|
|
85
85
|
stateDelta?: Record<string, unknown>;
|
|
86
86
|
runConfig?: RunConfig;
|
|
87
|
+
abortSignal?: AbortSignal;
|
|
87
88
|
}): AsyncGenerator<Event, void, undefined>;
|
|
88
89
|
/**
|
|
89
90
|
* Saves artifacts from the message parts and replaces the inline data with
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Frontmatter, Skill } from './skill.js';
|
|
7
|
+
/**
|
|
8
|
+
* Parses SKILL.md from a raw content string, extracting the YAML frontmatter and the body.
|
|
9
|
+
*
|
|
10
|
+
* @param content - The raw content of the SKILL.md file.
|
|
11
|
+
* @returns An object containing the parsed frontmatter and the remaining markdown body.
|
|
12
|
+
* @throws {Error} If the content is not properly formatted with YAML frontmatter.
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseSkillMdContent(content: string): {
|
|
15
|
+
frontmatter: Frontmatter;
|
|
16
|
+
body: string;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Load a complete skill, including its instructions and resources, from a directory.
|
|
20
|
+
*
|
|
21
|
+
* @param skillDir - The path to the directory containing the skill definition.
|
|
22
|
+
* @returns A promise that resolves to the fully loaded Skill object.
|
|
23
|
+
*/
|
|
24
|
+
export declare function loadSkillFromDir(skillDir: string): Promise<Skill>;
|
|
25
|
+
/**
|
|
26
|
+
* Validates a skill directory structure and frontmatter without fully loading all resources.
|
|
27
|
+
*
|
|
28
|
+
* @param skillDir - The path to the skill directory to validate.
|
|
29
|
+
* @returns A promise that resolves to an array of validation error messages, or an empty array if valid.
|
|
30
|
+
*/
|
|
31
|
+
export declare function validateSkillDir(skillDir: string): Promise<string[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Loads all skills located within subdirectories of a given base path.
|
|
34
|
+
*
|
|
35
|
+
* @param skillsBasePath - The base directory containing individual skill subdirectories.
|
|
36
|
+
* @returns A promise that resolves to a map of skill names to their corresponding Skill objects.
|
|
37
|
+
*/
|
|
38
|
+
export declare function loadAllSkillsInDir(skillsBasePath: string): Promise<Record<string, Skill>>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Frontmatter, Skill } from './skill.js';
|
|
7
|
+
/**
|
|
8
|
+
* Formats available skills into a standard XML string.
|
|
9
|
+
*
|
|
10
|
+
* @param skills A list of skill frontmatter or full skill objects.
|
|
11
|
+
* @returns XML string with <available_skills> block.
|
|
12
|
+
*/
|
|
13
|
+
export declare function formatSkillsAsXml(skills: Array<Skill | Frontmatter>): string;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
export declare const SNAKE_OR_KEBAB_NAME_PATTERN: RegExp;
|
|
8
|
+
/**
|
|
9
|
+
* Schema and Type for Skill Frontmatter metadata.
|
|
10
|
+
*/
|
|
11
|
+
export declare const FrontmatterSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
|
|
12
|
+
name: z.ZodString;
|
|
13
|
+
description: z.ZodString;
|
|
14
|
+
license: z.ZodOptional<z.ZodString>;
|
|
15
|
+
compatibility: z.ZodOptional<z.ZodString>;
|
|
16
|
+
'allowed-tools': z.ZodOptional<z.ZodString>;
|
|
17
|
+
metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
18
|
+
}, z.core.$loose>>;
|
|
19
|
+
export interface Frontmatter {
|
|
20
|
+
name: string;
|
|
21
|
+
description: string;
|
|
22
|
+
license?: string;
|
|
23
|
+
compatibility?: string;
|
|
24
|
+
allowedTools?: string;
|
|
25
|
+
metadata?: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Wrapper for script content.
|
|
29
|
+
*/
|
|
30
|
+
export interface Script {
|
|
31
|
+
src: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* L3 skill content: additional instructions, assets, and scripts.
|
|
35
|
+
*/
|
|
36
|
+
export interface Resources {
|
|
37
|
+
references?: Record<string, string | Buffer>;
|
|
38
|
+
assets?: Record<string, string | Buffer>;
|
|
39
|
+
scripts?: Record<string, Script>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Complete skill representation including frontmatter, instructions, and resources.
|
|
43
|
+
*/
|
|
44
|
+
export interface Skill {
|
|
45
|
+
frontmatter: Frontmatter;
|
|
46
|
+
instructions: string;
|
|
47
|
+
resources?: Resources;
|
|
48
|
+
}
|
|
@@ -20,11 +20,17 @@ import { MCPSessionManager } from './mcp_session_manager.js';
|
|
|
20
20
|
* invoked, which in turn establishes an MCP session, sends a `callTool`
|
|
21
21
|
* request with the provided arguments, and returns the result from the
|
|
22
22
|
* remote tool.
|
|
23
|
+
*
|
|
24
|
+
* The originalName parameter allows the tool to track the native tool name
|
|
25
|
+
* exposed by the MCP server. This is critical when the toolset applies a
|
|
26
|
+
* prefix to tool names (e.g., for LLM namespace disambiguation), ensuring
|
|
27
|
+
* the correct original name is used when executing on the server.
|
|
23
28
|
*/
|
|
24
29
|
export declare class MCPTool extends BaseTool {
|
|
25
30
|
private readonly mcpTool;
|
|
26
31
|
private readonly mcpSessionManager;
|
|
27
|
-
|
|
32
|
+
private readonly originalName;
|
|
33
|
+
constructor(mcpTool: Tool, mcpSessionManager: MCPSessionManager, originalName?: string);
|
|
28
34
|
_getDeclaration(): FunctionDeclaration;
|
|
29
35
|
runAsync(request: RunAsyncToolRequest): Promise<unknown>;
|
|
30
36
|
}
|
|
@@ -17,6 +17,11 @@ import { MCPConnectionParams } from './mcp_session_manager.js';
|
|
|
17
17
|
* The toolset can be configured with a filter to selectively expose a subset
|
|
18
18
|
* of the tools provided by the MCP server.
|
|
19
19
|
*
|
|
20
|
+
* It can also be configured with a prefix. If provided, all tools discovered
|
|
21
|
+
* from the MCP server will have their names prefixed with `${prefix}_`. When the
|
|
22
|
+
* LLM invokes the prefixed tool, this toolset transparently strips the prefix
|
|
23
|
+
* before sending the request to the underlying MCP server.
|
|
24
|
+
*
|
|
20
25
|
* Usage:
|
|
21
26
|
* import { MCPToolset } from '@google/adk';
|
|
22
27
|
* import { StreamableHTTPConnectionParamsSchema } from '@google/adk';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FunctionDeclaration } from '@google/genai';
|
|
7
|
+
import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
|
|
8
|
+
import { SkillToolset } from './skill_toolset.js';
|
|
9
|
+
export declare class ListSkillsTool extends BaseTool {
|
|
10
|
+
private toolset;
|
|
11
|
+
constructor(toolset: SkillToolset);
|
|
12
|
+
_getDeclaration(): FunctionDeclaration;
|
|
13
|
+
runAsync(_request: RunAsyncToolRequest): Promise<unknown>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FunctionDeclaration } from '@google/genai';
|
|
7
|
+
import { BaseTool, RunAsyncToolRequest, ToolProcessLlmRequest } from '../base_tool.js';
|
|
8
|
+
import { SkillToolset } from './skill_toolset.js';
|
|
9
|
+
export declare class LoadSkillResourceTool extends BaseTool {
|
|
10
|
+
private toolset;
|
|
11
|
+
constructor(toolset: SkillToolset);
|
|
12
|
+
_getDeclaration(): FunctionDeclaration;
|
|
13
|
+
runAsync({ args }: RunAsyncToolRequest): Promise<unknown>;
|
|
14
|
+
processLlmRequest(request: ToolProcessLlmRequest): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FunctionDeclaration } from '@google/genai';
|
|
7
|
+
import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
|
|
8
|
+
import { SkillToolset } from './skill_toolset.js';
|
|
9
|
+
export declare class LoadSkillTool extends BaseTool {
|
|
10
|
+
private toolset;
|
|
11
|
+
constructor(toolset: SkillToolset);
|
|
12
|
+
_getDeclaration(): FunctionDeclaration;
|
|
13
|
+
runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FunctionDeclaration } from '@google/genai';
|
|
7
|
+
import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
|
|
8
|
+
import { SkillToolset } from './skill_toolset.js';
|
|
9
|
+
export declare class RunSkillInlineScriptTool extends BaseTool {
|
|
10
|
+
private toolset;
|
|
11
|
+
constructor(toolset: SkillToolset);
|
|
12
|
+
_getDeclaration(): FunctionDeclaration;
|
|
13
|
+
runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FunctionDeclaration } from '@google/genai';
|
|
7
|
+
import { File } from '../../code_executors/code_execution_utils.js';
|
|
8
|
+
import { Skill } from '../../skills/skill.js';
|
|
9
|
+
import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
|
|
10
|
+
import { SkillToolset } from './skill_toolset.js';
|
|
11
|
+
export declare class RunSkillScriptTool extends BaseTool {
|
|
12
|
+
private toolset;
|
|
13
|
+
constructor(toolset: SkillToolset);
|
|
14
|
+
_getDeclaration(): FunctionDeclaration;
|
|
15
|
+
runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
|
|
16
|
+
}
|
|
17
|
+
export declare function getSkillResourceFiles(skill: Skill): File[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Context } from '../../agents/context.js';
|
|
7
|
+
import { ReadonlyContext } from '../../agents/readonly_context.js';
|
|
8
|
+
import { BaseCodeExecutor } from '../../code_executors/base_code_executor.js';
|
|
9
|
+
import { LlmRequest } from '../../models/llm_request.js';
|
|
10
|
+
import { Skill } from '../../skills/skill.js';
|
|
11
|
+
import { BaseTool } from '../base_tool.js';
|
|
12
|
+
import { BaseToolset } from '../base_toolset.js';
|
|
13
|
+
export declare class SkillToolset extends BaseToolset {
|
|
14
|
+
skills: Record<string, Skill>;
|
|
15
|
+
private tools;
|
|
16
|
+
additionalTools: Array<BaseTool | BaseToolset>;
|
|
17
|
+
codeExecutor?: BaseCodeExecutor;
|
|
18
|
+
private toolCache;
|
|
19
|
+
constructor(skills: Record<string, Skill> | Skill[], options?: {
|
|
20
|
+
codeExecutor?: BaseCodeExecutor;
|
|
21
|
+
additionalTools?: Array<BaseTool | BaseToolset>;
|
|
22
|
+
});
|
|
23
|
+
getTools(context?: ReadonlyContext): Promise<BaseTool[]>;
|
|
24
|
+
close(): Promise<void>;
|
|
25
|
+
getSkill(name: string): Skill | undefined;
|
|
26
|
+
processLlmRequest(toolContext: Context, llmRequest: LlmRequest): Promise<void>;
|
|
27
|
+
private resolveAdditionalTools;
|
|
28
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseTool, ToolProcessLlmRequest } from './base_tool.js';
|
|
2
|
+
/**
|
|
3
|
+
* A built-in tool that allows Gemini 2+ models to retrieve content from URLs
|
|
4
|
+
* provided in the conversation.
|
|
5
|
+
*
|
|
6
|
+
* This tool operates internally within the model and does not require or
|
|
7
|
+
* perform local code execution.
|
|
8
|
+
*/
|
|
9
|
+
export declare class UrlContextTool extends BaseTool {
|
|
10
|
+
constructor();
|
|
11
|
+
runAsync(): Promise<unknown>;
|
|
12
|
+
processLlmRequest({ llmRequest, }: ToolProcessLlmRequest): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* A global instance of {@link UrlContextTool}.
|
|
16
|
+
*/
|
|
17
|
+
export declare const URL_CONTEXT: UrlContextTool;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ReadonlyContext } from '../agents/readonly_context.js';
|
|
7
|
+
import { BaseTool, ToolProcessLlmRequest } from './base_tool.js';
|
|
8
|
+
export interface VertexAISearchDataStoreSpec {
|
|
9
|
+
dataStore?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface VertexAISearchConfig {
|
|
12
|
+
datastore?: string;
|
|
13
|
+
dataStoreSpecs?: VertexAISearchDataStoreSpec[];
|
|
14
|
+
engine?: string;
|
|
15
|
+
filter?: string;
|
|
16
|
+
maxResults?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface BaseVertexAiSearchToolParams {
|
|
19
|
+
filter?: string;
|
|
20
|
+
maxResults?: number;
|
|
21
|
+
bypassMultiToolsLimit?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface DataStoreParams extends BaseVertexAiSearchToolParams {
|
|
24
|
+
dataStoreId: string;
|
|
25
|
+
searchEngineId?: never;
|
|
26
|
+
dataStoreSpecs?: never;
|
|
27
|
+
}
|
|
28
|
+
export interface SearchEngineParams extends BaseVertexAiSearchToolParams {
|
|
29
|
+
searchEngineId: string;
|
|
30
|
+
dataStoreId?: never;
|
|
31
|
+
dataStoreSpecs?: VertexAISearchDataStoreSpec[];
|
|
32
|
+
}
|
|
33
|
+
export type VertexAiSearchToolParams = DataStoreParams | SearchEngineParams;
|
|
34
|
+
/**
|
|
35
|
+
* A built-in tool using Vertex AI Search.
|
|
36
|
+
*/
|
|
37
|
+
export declare class VertexAiSearchTool extends BaseTool {
|
|
38
|
+
readonly dataStoreId?: string;
|
|
39
|
+
readonly dataStoreSpecs?: VertexAISearchDataStoreSpec[];
|
|
40
|
+
readonly searchEngineId?: string;
|
|
41
|
+
readonly filter?: string;
|
|
42
|
+
readonly maxResults?: number;
|
|
43
|
+
readonly bypassMultiToolsLimit: boolean;
|
|
44
|
+
constructor(params: VertexAiSearchToolParams);
|
|
45
|
+
runAsync(): Promise<unknown>;
|
|
46
|
+
/**
|
|
47
|
+
* Builds the VertexAISearch configuration.
|
|
48
|
+
*
|
|
49
|
+
* Override this method in a subclass to dynamically customize the search
|
|
50
|
+
* configuration based on the context (e.g., set filter based on session
|
|
51
|
+
* state).
|
|
52
|
+
*/
|
|
53
|
+
protected buildVertexAiSearchConfig(_readonlyContext: ReadonlyContext): VertexAISearchConfig;
|
|
54
|
+
processLlmRequest({ toolContext, llmRequest, }: ToolProcessLlmRequest): Promise<void>;
|
|
55
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Decorator to mark classes and methods as experimental.
|
|
8
|
+
* Logs a warning once per item when the class is instantiated or the method is called.
|
|
9
|
+
*/
|
|
10
|
+
export type Constructor = new (...args: unknown[]) => any;
|
|
11
|
+
export declare function experimental<T extends Constructor | object, P extends string | symbol | undefined = undefined>(target: T, propertyKey?: P, descriptor?: PropertyDescriptor): P extends undefined ? T : PropertyDescriptor;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Type definition for a function that selects an item based on the context.
|
|
8
|
+
*/
|
|
9
|
+
export type Router<T, C> = (items: Readonly<Record<string, T>>, context: C, errorContext?: {
|
|
10
|
+
failedKeys: ReadonlySet<string>;
|
|
11
|
+
lastError: unknown;
|
|
12
|
+
}) => Promise<string | undefined> | string | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Runs a core operation with selection and failover support.
|
|
15
|
+
* Internal helper to unify Promise and Generator logic.
|
|
16
|
+
*/
|
|
17
|
+
export declare function runWithRouting<T, C, TYield>(items: Readonly<Record<string, T>>, context: C, router: Router<T, C>, runFn: (item: T) => AsyncGenerator<TYield, void, void> | Promise<TYield>): AsyncGenerator<TYield, void, void>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { CodeExecutionLanguage, FileContentEncoding } from '../code_executors/code_execution_utils.js';
|
|
7
|
+
/**
|
|
8
|
+
* Gets the MIME type and file content encoding for a given file extension.
|
|
9
|
+
* @param ext The file extension (e.g., '.js', '.png').
|
|
10
|
+
* @returns An object containing the mimeType and encoding.
|
|
11
|
+
*/
|
|
12
|
+
export declare function getMimeTypeAndEncoding(ext: string): {
|
|
13
|
+
mimeType: string;
|
|
14
|
+
encoding: FileContentEncoding;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Gets the code execution language for a given file extension.
|
|
18
|
+
* @param ext The file extension (e.g., '.js', '.py').
|
|
19
|
+
* @returns The code execution language.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getScriptLanguageByExtension(ext: string): CodeExecutionLanguage;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { File } from '../code_executors/code_execution_utils.js';
|
|
7
|
+
/**
|
|
8
|
+
* Creates files with the given paths in the current working directory.
|
|
9
|
+
* @param files The files to materialize.
|
|
10
|
+
*/
|
|
11
|
+
export declare function materializeFiles(files: File[], dir?: string): Promise<File[]>;
|
|
@@ -32,3 +32,7 @@ export declare function isGemini1Model(modelString: string): boolean;
|
|
|
32
32
|
* @return true if it's a Gemini 2.x model, false otherwise.
|
|
33
33
|
*/
|
|
34
34
|
export declare function isGemini2OrAbove(modelString: string): boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Returns True when Gemini model-id validation should be bypassed.
|
|
37
|
+
*/
|
|
38
|
+
export declare function isGeminiModelIdCheckDisabled(): boolean;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { GenerateContentResponse } from '@google/genai';
|
|
7
|
+
import { LlmResponse } from '../models/llm_response.js';
|
|
8
|
+
/**
|
|
9
|
+
* Aggregates partial streaming responses.
|
|
10
|
+
*
|
|
11
|
+
* It aggregates content from partial responses, and generates LlmResponses for
|
|
12
|
+
* individual (partial) model responses, as well as for aggregated content.
|
|
13
|
+
*/
|
|
14
|
+
export declare class StreamingResponseAggregator {
|
|
15
|
+
private readonly isProgressiveMode;
|
|
16
|
+
private usageMetadata?;
|
|
17
|
+
private groundingMetadata?;
|
|
18
|
+
private citationMetadata?;
|
|
19
|
+
private response?;
|
|
20
|
+
private text;
|
|
21
|
+
private thoughtText;
|
|
22
|
+
private partsSequence;
|
|
23
|
+
private currentTextBuffer;
|
|
24
|
+
private currentTextIsThought?;
|
|
25
|
+
private finishReason?;
|
|
26
|
+
private currentFcName?;
|
|
27
|
+
private currentFcArgs;
|
|
28
|
+
private currentFcId?;
|
|
29
|
+
private currentThoughtSignature?;
|
|
30
|
+
private lastThoughtSignature?;
|
|
31
|
+
constructor(isProgressiveMode?: boolean);
|
|
32
|
+
private flushTextBufferToSequence;
|
|
33
|
+
private getValueFromPartialArg;
|
|
34
|
+
private setValueByJsonPath;
|
|
35
|
+
private flushFunctionCallToSequence;
|
|
36
|
+
private processStreamingFunctionCall;
|
|
37
|
+
private processFunctionCallPart;
|
|
38
|
+
processResponse(response: GenerateContentResponse): AsyncGenerator<LlmResponse, void, void>;
|
|
39
|
+
close(): LlmResponse | undefined;
|
|
40
|
+
}
|
package/dist/types/version.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
1
3
|
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
2
4
|
var __await = function(promise, isYieldStar) {
|
|
3
5
|
this[0] = promise;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
1
3
|
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
2
4
|
var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")]) ? it.call(obj) : (obj = obj[__knownSymbol("iterator")](), it = {}, method = (key, fn) => (fn = obj[key]) && (it[key] = (arg) => new Promise((yes, no, done) => (arg = fn.call(obj, arg), done = arg.done, Promise.resolve(arg.value).then((value) => yes({ value, done }), no)))), method("next"), method("return"), it);
|
|
3
5
|
/**
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
1
3
|
var __defProp = Object.defineProperty;
|
|
2
4
|
var __defProps = Object.defineProperties;
|
|
3
5
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
@@ -125,12 +127,13 @@ class BaseAgent {
|
|
|
125
127
|
this,
|
|
126
128
|
function() {
|
|
127
129
|
return __asyncGenerator(this, null, function* () {
|
|
130
|
+
var _a2, _b;
|
|
128
131
|
const context2 = this.createInvocationContext(parentContext);
|
|
129
132
|
const beforeAgentCallbackEvent = yield new __await(this.handleBeforeAgentCallback(context2));
|
|
130
133
|
if (beforeAgentCallbackEvent) {
|
|
131
134
|
yield beforeAgentCallbackEvent;
|
|
132
135
|
}
|
|
133
|
-
if (context2.endInvocation) {
|
|
136
|
+
if (context2.endInvocation || ((_a2 = parentContext.abortSignal) == null ? void 0 : _a2.aborted)) {
|
|
134
137
|
return;
|
|
135
138
|
}
|
|
136
139
|
traceAgentInvocation({ agent: this, invocationContext: context2 });
|
|
@@ -149,7 +152,7 @@ class BaseAgent {
|
|
|
149
152
|
throw error[0];
|
|
150
153
|
}
|
|
151
154
|
}
|
|
152
|
-
if (context2.endInvocation) {
|
|
155
|
+
if (context2.endInvocation || ((_b = parentContext.abortSignal) == null ? void 0 : _b.aborted)) {
|
|
153
156
|
return;
|
|
154
157
|
}
|
|
155
158
|
const afterAgentCallbackEvent = yield new __await(this.handleAfterAgentCallback(context2));
|
|
@@ -236,12 +239,16 @@ class BaseAgent {
|
|
|
236
239
|
* generated.
|
|
237
240
|
*/
|
|
238
241
|
async handleBeforeAgentCallback(invocationContext) {
|
|
242
|
+
var _a2;
|
|
239
243
|
if (this.beforeAgentCallback.length === 0) {
|
|
240
244
|
return void 0;
|
|
241
245
|
}
|
|
242
246
|
const callbackContext = new Context({ invocationContext });
|
|
243
247
|
for (const callback of this.beforeAgentCallback) {
|
|
244
248
|
const content = await callback(callbackContext);
|
|
249
|
+
if ((_a2 = invocationContext.abortSignal) == null ? void 0 : _a2.aborted) {
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
245
252
|
if (content) {
|
|
246
253
|
invocationContext.endInvocation = true;
|
|
247
254
|
return createEvent({
|
|
@@ -271,12 +278,16 @@ class BaseAgent {
|
|
|
271
278
|
* generated.
|
|
272
279
|
*/
|
|
273
280
|
async handleAfterAgentCallback(invocationContext) {
|
|
281
|
+
var _a2;
|
|
274
282
|
if (this.afterAgentCallback.length === 0) {
|
|
275
283
|
return void 0;
|
|
276
284
|
}
|
|
277
285
|
const callbackContext = new Context({ invocationContext });
|
|
278
286
|
for (const callback of this.afterAgentCallback) {
|
|
279
287
|
const content = await callback(callbackContext);
|
|
288
|
+
if ((_a2 = invocationContext.abortSignal) == null ? void 0 : _a2.aborted) {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
280
291
|
if (content) {
|
|
281
292
|
return createEvent({
|
|
282
293
|
invocationId: invocationContext.invocationId,
|