@google/adk 0.6.0 → 1.0.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_remote_agent.js +18 -13
- package/dist/cjs/a2a/a2a_remote_agent_run_processor.js +7 -0
- 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 +61 -0
- package/dist/cjs/features/feature_registry.js +141 -0
- package/dist/cjs/index.js +32 -20
- package/dist/cjs/index.js.map +4 -4
- 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 +10 -3
- package/dist/cjs/tools/mcp/mcp_tool.js +4 -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/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/gemini_schema_util.js +54 -12
- 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 +20 -13
- package/dist/esm/a2a/a2a_remote_agent_run_processor.js +9 -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 +47 -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 +34 -21
- package/dist/esm/index.js.map +4 -4
- 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 +12 -3
- 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 +6 -1
- package/dist/esm/tools/mcp/mcp_toolset.js +2 -0
- 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/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 +56 -12
- package/dist/esm/utils/logger.js +2 -0
- package/dist/esm/utils/model_name.js +2 -0
- 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/a2a/a2a_remote_agent.d.ts +7 -3
- 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 +26 -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/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/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/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 +17 -24
- package/dist/web/a2a/a2a_remote_agent_run_processor.js +9 -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 +47 -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 +3 -2
- package/dist/web/index.js.map +4 -4
- 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 +12 -3
- 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 +6 -1
- package/dist/web/tools/mcp/mcp_toolset.js +2 -0
- 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/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 +87 -12
- package/dist/web/utils/logger.js +2 -0
- package/dist/web/utils/model_name.js +2 -0
- 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/web/index_web.js
CHANGED
|
@@ -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;
|
|
@@ -131,12 +133,12 @@ class ApigeeLlm extends Gemini {
|
|
|
131
133
|
}
|
|
132
134
|
return this._apigeeLiveApiVersion;
|
|
133
135
|
}
|
|
134
|
-
generateContentAsync(llmRequest, stream = false) {
|
|
136
|
+
generateContentAsync(llmRequest, stream = false, abortSignal) {
|
|
135
137
|
return __asyncGenerator(this, null, function* () {
|
|
136
138
|
var _a;
|
|
137
139
|
const modelToUse = (_a = llmRequest.model) != null ? _a : this.model;
|
|
138
140
|
llmRequest.model = getModelId(modelToUse);
|
|
139
|
-
yield* __yieldStar(super.generateContentAsync(llmRequest, stream));
|
|
141
|
+
yield* __yieldStar(super.generateContentAsync(llmRequest, stream, abortSignal));
|
|
140
142
|
});
|
|
141
143
|
}
|
|
142
144
|
async connect(llmRequest) {
|
|
@@ -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 __defProp = Object.defineProperty;
|
|
2
4
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
@@ -38,12 +40,12 @@ var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")])
|
|
|
38
40
|
*/
|
|
39
41
|
import {
|
|
40
42
|
createPartFromText,
|
|
41
|
-
FinishReason,
|
|
42
43
|
GoogleGenAI
|
|
43
44
|
} from "@google/genai";
|
|
44
45
|
import { getBooleanEnvVar, isBrowser } from "../utils/env_aware_utils.js";
|
|
45
46
|
import { logger } from "../utils/logger.js";
|
|
46
47
|
import { GoogleLLMVariant } from "../utils/variant_utils.js";
|
|
48
|
+
import { StreamingResponseAggregator } from "../utils/streaming_utils.js";
|
|
47
49
|
import { BaseLlm } from "./base_llm.js";
|
|
48
50
|
import { GeminiLlmConnection } from "./gemini_llm_connection.js";
|
|
49
51
|
import { createLlmResponse } from "./llm_response.js";
|
|
@@ -88,90 +90,66 @@ class Gemini extends BaseLlm {
|
|
|
88
90
|
* @param stream bool = false, whether to do streaming call.
|
|
89
91
|
* @yields LlmResponse: The model response.
|
|
90
92
|
*/
|
|
91
|
-
generateContentAsync(llmRequest, stream = false) {
|
|
93
|
+
generateContentAsync(llmRequest, stream = false, abortSignal) {
|
|
92
94
|
return __asyncGenerator(this, null, function* () {
|
|
93
|
-
var _a, _b, _c
|
|
95
|
+
var _a, _b, _c;
|
|
94
96
|
this.preprocessRequest(llmRequest);
|
|
95
97
|
this.maybeAppendUserContent(llmRequest);
|
|
96
98
|
logger.info(
|
|
97
|
-
"Sending out request, model: ".concat(llmRequest.model, ", backend: ").concat(this.apiBackend, ", stream: ").concat(stream)
|
|
99
|
+
"Sending out request, model: ".concat((_a = llmRequest.model) != null ? _a : this.model, ", backend: ").concat(this.apiBackend, ", stream: ").concat(stream)
|
|
98
100
|
);
|
|
99
|
-
if (
|
|
101
|
+
if (!llmRequest.config) {
|
|
102
|
+
llmRequest.config = {};
|
|
103
|
+
}
|
|
104
|
+
if (llmRequest.config.httpOptions) {
|
|
100
105
|
llmRequest.config.httpOptions.headers = __spreadValues(__spreadValues({}, llmRequest.config.httpOptions.headers), this.trackingHeaders);
|
|
101
106
|
}
|
|
107
|
+
if (abortSignal) {
|
|
108
|
+
llmRequest.config.abortSignal = abortSignal;
|
|
109
|
+
}
|
|
102
110
|
if (stream) {
|
|
103
111
|
const streamResult = yield new __await(this.apiClient.models.generateContentStream({
|
|
104
112
|
model: (_b = llmRequest.model) != null ? _b : this.model,
|
|
105
113
|
contents: llmRequest.contents,
|
|
106
114
|
config: llmRequest.config
|
|
107
115
|
}));
|
|
108
|
-
|
|
109
|
-
let text = "";
|
|
110
|
-
let usageMetadata;
|
|
111
|
-
let lastResponse;
|
|
116
|
+
const aggregator = new StreamingResponseAggregator();
|
|
112
117
|
try {
|
|
113
|
-
for (var
|
|
114
|
-
const response =
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
if (firstPart == null ? void 0 : firstPart.text) {
|
|
120
|
-
if ("thought" in firstPart && firstPart.thought) {
|
|
121
|
-
thoughtText += firstPart.text;
|
|
122
|
-
} else {
|
|
123
|
-
text += firstPart.text;
|
|
124
|
-
}
|
|
125
|
-
llmResponse.partial = true;
|
|
126
|
-
} else if ((thoughtText || text) && (!firstPart || !firstPart.inlineData)) {
|
|
127
|
-
const parts = [];
|
|
128
|
-
if (thoughtText) {
|
|
129
|
-
parts.push({ text: thoughtText, thought: true });
|
|
118
|
+
for (var iter2 = __forAwait(streamResult), more2, temp2, error2; more2 = !(temp2 = yield new __await(iter2.next())).done; more2 = false) {
|
|
119
|
+
const response = temp2.value;
|
|
120
|
+
try {
|
|
121
|
+
for (var iter = __forAwait(aggregator.processResponse(response)), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
|
|
122
|
+
const llmResponse = temp.value;
|
|
123
|
+
yield llmResponse;
|
|
130
124
|
}
|
|
131
|
-
|
|
132
|
-
|
|
125
|
+
} catch (temp) {
|
|
126
|
+
error = [temp];
|
|
127
|
+
} finally {
|
|
128
|
+
try {
|
|
129
|
+
more && (temp = iter.return) && (yield new __await(temp.call(iter)));
|
|
130
|
+
} finally {
|
|
131
|
+
if (error)
|
|
132
|
+
throw error[0];
|
|
133
133
|
}
|
|
134
|
-
yield {
|
|
135
|
-
content: {
|
|
136
|
-
role: "model",
|
|
137
|
-
parts
|
|
138
|
-
},
|
|
139
|
-
usageMetadata: llmResponse.usageMetadata
|
|
140
|
-
};
|
|
141
|
-
thoughtText = "";
|
|
142
|
-
text = "";
|
|
143
134
|
}
|
|
144
|
-
yield llmResponse;
|
|
145
135
|
}
|
|
146
|
-
} catch (
|
|
147
|
-
|
|
136
|
+
} catch (temp2) {
|
|
137
|
+
error2 = [temp2];
|
|
148
138
|
} finally {
|
|
149
139
|
try {
|
|
150
|
-
|
|
140
|
+
more2 && (temp2 = iter2.return) && (yield new __await(temp2.call(iter2)));
|
|
151
141
|
} finally {
|
|
152
|
-
if (
|
|
153
|
-
throw
|
|
142
|
+
if (error2)
|
|
143
|
+
throw error2[0];
|
|
154
144
|
}
|
|
155
145
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
parts.push({ text: thoughtText, thought: true });
|
|
160
|
-
}
|
|
161
|
-
if (text) {
|
|
162
|
-
parts.push({ text });
|
|
163
|
-
}
|
|
164
|
-
yield {
|
|
165
|
-
content: {
|
|
166
|
-
role: "model",
|
|
167
|
-
parts
|
|
168
|
-
},
|
|
169
|
-
usageMetadata
|
|
170
|
-
};
|
|
146
|
+
const finalResponse = aggregator.close();
|
|
147
|
+
if (finalResponse) {
|
|
148
|
+
yield finalResponse;
|
|
171
149
|
}
|
|
172
150
|
} else {
|
|
173
151
|
const response = yield new __await(this.apiClient.models.generateContent({
|
|
174
|
-
model: (
|
|
152
|
+
model: (_c = llmRequest.model) != null ? _c : this.model,
|
|
175
153
|
contents: llmRequest.contents,
|
|
176
154
|
config: llmRequest.config
|
|
177
155
|
}));
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
6
|
+
var __typeError = (msg) => {
|
|
7
|
+
throw TypeError(msg);
|
|
8
|
+
};
|
|
9
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
10
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
11
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
12
|
+
if (decorator = decorators[i])
|
|
13
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
14
|
+
if (kind && result) __defProp(target, key, result);
|
|
15
|
+
return result;
|
|
16
|
+
};
|
|
17
|
+
var __await = function(promise, isYieldStar) {
|
|
18
|
+
this[0] = promise;
|
|
19
|
+
this[1] = isYieldStar;
|
|
20
|
+
};
|
|
21
|
+
var __asyncGenerator = (__this, __arguments, generator) => {
|
|
22
|
+
var resume = (k, v, yes, no) => {
|
|
23
|
+
try {
|
|
24
|
+
var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
|
|
25
|
+
Promise.resolve(isAwait ? v[0] : v).then((y) => isAwait ? resume(k === "return" ? k : "next", v[1] ? { done: y.done, value: y.value } : y, yes, no) : yes({ value: y, done })).catch((e) => resume("throw", e, yes, no));
|
|
26
|
+
} catch (e) {
|
|
27
|
+
no(e);
|
|
28
|
+
}
|
|
29
|
+
}, method = (k) => it[k] = (x) => new Promise((yes, no) => resume(k, x, yes, no)), it = {};
|
|
30
|
+
return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
|
|
31
|
+
};
|
|
32
|
+
var __yieldStar = (value) => {
|
|
33
|
+
var obj = value[__knownSymbol("asyncIterator")], isAwait = false, method, it = {};
|
|
34
|
+
if (obj == null) {
|
|
35
|
+
obj = value[__knownSymbol("iterator")]();
|
|
36
|
+
method = (k) => it[k] = (x) => obj[k](x);
|
|
37
|
+
} else {
|
|
38
|
+
obj = obj.call(value);
|
|
39
|
+
method = (k) => it[k] = (v) => {
|
|
40
|
+
if (isAwait) {
|
|
41
|
+
isAwait = false;
|
|
42
|
+
if (k === "throw") throw v;
|
|
43
|
+
return v;
|
|
44
|
+
}
|
|
45
|
+
isAwait = true;
|
|
46
|
+
return {
|
|
47
|
+
done: false,
|
|
48
|
+
value: new __await(new Promise((resolve) => {
|
|
49
|
+
var x = obj[k](v);
|
|
50
|
+
if (!(x instanceof Object)) __typeError("Object expected");
|
|
51
|
+
resolve(x);
|
|
52
|
+
}), 1)
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
return it[__knownSymbol("iterator")] = () => it, method("next"), "throw" in obj ? method("throw") : it.throw = (x) => {
|
|
57
|
+
throw x;
|
|
58
|
+
}, "return" in obj && method("return"), it;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* @license
|
|
62
|
+
* Copyright 2026 Google LLC
|
|
63
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
64
|
+
*/
|
|
65
|
+
import { BaseLlm } from "./base_llm.js";
|
|
66
|
+
import { experimental } from "../utils/experimental.js";
|
|
67
|
+
import { runWithRouting } from "../utils/failover_utils.js";
|
|
68
|
+
import { logger } from "../utils/logger.js";
|
|
69
|
+
let RoutedLlm = class extends BaseLlm {
|
|
70
|
+
constructor({
|
|
71
|
+
models,
|
|
72
|
+
router,
|
|
73
|
+
modelName = "routed-llm"
|
|
74
|
+
}) {
|
|
75
|
+
const modelsMap = Array.isArray(models) ? Object.fromEntries(models.map((m) => [m.model, m])) : models;
|
|
76
|
+
const modelNames = Object.entries(modelsMap).map(
|
|
77
|
+
([name, model]) => "".concat(name, " (").concat(model.model, ")")
|
|
78
|
+
);
|
|
79
|
+
const computedName = "RoutedLlm[".concat(modelNames.join(", "), "]");
|
|
80
|
+
super({ model: modelName === "routed-llm" ? computedName : modelName });
|
|
81
|
+
this.models = modelsMap;
|
|
82
|
+
this.router = router;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Generates content by delegating to the selected model.
|
|
86
|
+
*/
|
|
87
|
+
generateContentAsync(llmRequest, stream) {
|
|
88
|
+
return __asyncGenerator(this, null, function* () {
|
|
89
|
+
logger.info("Routing request via ".concat(this.model));
|
|
90
|
+
yield* __yieldStar(runWithRouting(
|
|
91
|
+
this.models,
|
|
92
|
+
llmRequest,
|
|
93
|
+
this.router,
|
|
94
|
+
(model) => model.generateContentAsync(llmRequest, stream)
|
|
95
|
+
));
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Creates a live connection to the LLM by delegating to the selected model.
|
|
100
|
+
* This live connection cannot be switched mid-stream, it is tied to the model
|
|
101
|
+
* selected at the time of connection.
|
|
102
|
+
*/
|
|
103
|
+
async connect(llmRequest) {
|
|
104
|
+
const generator = runWithRouting(
|
|
105
|
+
this.models,
|
|
106
|
+
llmRequest,
|
|
107
|
+
this.router,
|
|
108
|
+
(model) => model.connect(llmRequest)
|
|
109
|
+
);
|
|
110
|
+
const result = await generator.next();
|
|
111
|
+
if (result.done || result.value === void 0) {
|
|
112
|
+
throw new Error("Failed to establish connection: No connection yielded.");
|
|
113
|
+
}
|
|
114
|
+
return result.value;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
RoutedLlm = __decorateClass([
|
|
118
|
+
experimental
|
|
119
|
+
], RoutedLlm);
|
|
120
|
+
export {
|
|
121
|
+
RoutedLlm
|
|
122
|
+
};
|
|
@@ -1,8 +1,26 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
6
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
7
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
8
|
+
if (decorator = decorators[i])
|
|
9
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
10
|
+
if (kind && result) __defProp(target, key, result);
|
|
11
|
+
return result;
|
|
12
|
+
};
|
|
1
13
|
/**
|
|
2
14
|
* @license
|
|
3
15
|
* Copyright 2025 Google LLC
|
|
4
16
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
17
|
*/
|
|
18
|
+
import { experimental } from "../utils/experimental.js";
|
|
19
|
+
var ContextCompactionTrigger = /* @__PURE__ */ ((ContextCompactionTrigger2) => {
|
|
20
|
+
ContextCompactionTrigger2["Manual"] = "Manual";
|
|
21
|
+
ContextCompactionTrigger2["Auto"] = "Auto";
|
|
22
|
+
return ContextCompactionTrigger2;
|
|
23
|
+
})(ContextCompactionTrigger || {});
|
|
6
24
|
class BasePlugin {
|
|
7
25
|
/**
|
|
8
26
|
* Initializes the plugin.
|
|
@@ -157,6 +175,18 @@ class BasePlugin {
|
|
|
157
175
|
async onModelErrorCallback(params) {
|
|
158
176
|
return;
|
|
159
177
|
}
|
|
178
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
179
|
+
async beforeToolSelection(params) {
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
183
|
+
async beforeContextCompaction(params) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
187
|
+
async afterContextCompaction(params) {
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
160
190
|
/**
|
|
161
191
|
* Callback executed before a tool is called.
|
|
162
192
|
*
|
|
@@ -223,6 +253,16 @@ class BasePlugin {
|
|
|
223
253
|
return;
|
|
224
254
|
}
|
|
225
255
|
}
|
|
256
|
+
__decorateClass([
|
|
257
|
+
experimental
|
|
258
|
+
], BasePlugin.prototype, "beforeToolSelection", 1);
|
|
259
|
+
__decorateClass([
|
|
260
|
+
experimental
|
|
261
|
+
], BasePlugin.prototype, "beforeContextCompaction", 1);
|
|
262
|
+
__decorateClass([
|
|
263
|
+
experimental
|
|
264
|
+
], BasePlugin.prototype, "afterContextCompaction", 1);
|
|
226
265
|
export {
|
|
227
|
-
BasePlugin
|
|
266
|
+
BasePlugin,
|
|
267
|
+
ContextCompactionTrigger
|
|
228
268
|
};
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
1
3
|
/**
|
|
2
4
|
* @license
|
|
3
5
|
* Copyright 2025 Google LLC
|
|
@@ -151,6 +153,45 @@ class PluginManager {
|
|
|
151
153
|
"afterAgentCallback"
|
|
152
154
|
);
|
|
153
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Runs the `beforeToolSelection` for all plugins.
|
|
158
|
+
*/
|
|
159
|
+
async runBeforeToolSelection({
|
|
160
|
+
callbackContext,
|
|
161
|
+
tools
|
|
162
|
+
}) {
|
|
163
|
+
return await this.runCallbacks(
|
|
164
|
+
this.plugins,
|
|
165
|
+
(plugin) => plugin.beforeToolSelection({ callbackContext, tools }),
|
|
166
|
+
"beforeToolSelection"
|
|
167
|
+
);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Runs the `beforeContextCompaction` for all plugins.
|
|
171
|
+
*/
|
|
172
|
+
async runBeforeContextCompaction({
|
|
173
|
+
invocationContext,
|
|
174
|
+
trigger
|
|
175
|
+
}) {
|
|
176
|
+
await this.runCallbacks(
|
|
177
|
+
this.plugins,
|
|
178
|
+
(plugin) => plugin.beforeContextCompaction({ invocationContext, trigger }),
|
|
179
|
+
"beforeContextCompaction"
|
|
180
|
+
);
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Runs the `afterContextCompaction` for all plugins.
|
|
184
|
+
*/
|
|
185
|
+
async runAfterContextCompaction({
|
|
186
|
+
invocationContext,
|
|
187
|
+
trigger
|
|
188
|
+
}) {
|
|
189
|
+
await this.runCallbacks(
|
|
190
|
+
this.plugins,
|
|
191
|
+
(plugin) => plugin.afterContextCompaction({ invocationContext, trigger }),
|
|
192
|
+
"afterContextCompaction"
|
|
193
|
+
);
|
|
194
|
+
}
|
|
154
195
|
/**
|
|
155
196
|
* Runs the `beforeToolCallback` for all plugins.
|
|
156
197
|
*/
|
|
@@ -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 __typeError = (msg) => {
|
|
3
5
|
throw TypeError(msg);
|
|
@@ -148,12 +150,15 @@ class Runner {
|
|
|
148
150
|
this,
|
|
149
151
|
function() {
|
|
150
152
|
return __asyncGenerator(this, null, function* () {
|
|
151
|
-
var _a2;
|
|
153
|
+
var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
152
154
|
const session = yield new __await(this.sessionService.getSession({
|
|
153
155
|
appName: this.appName,
|
|
154
156
|
userId,
|
|
155
157
|
sessionId
|
|
156
158
|
}));
|
|
159
|
+
if ((_a2 = params.abortSignal) == null ? void 0 : _a2.aborted) {
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
157
162
|
if (!session) {
|
|
158
163
|
if (!this.appName) {
|
|
159
164
|
throw new Error(
|
|
@@ -183,17 +188,21 @@ class Runner {
|
|
|
183
188
|
session,
|
|
184
189
|
userContent: newMessage,
|
|
185
190
|
runConfig,
|
|
186
|
-
pluginManager: this.pluginManager
|
|
191
|
+
pluginManager: this.pluginManager,
|
|
192
|
+
abortSignal: params.abortSignal
|
|
187
193
|
});
|
|
188
194
|
const pluginUserMessage = yield new __await(this.pluginManager.runOnUserMessageCallback({
|
|
189
195
|
userMessage: newMessage,
|
|
190
196
|
invocationContext
|
|
191
197
|
}));
|
|
198
|
+
if ((_b = params.abortSignal) == null ? void 0 : _b.aborted) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
192
201
|
if (pluginUserMessage) {
|
|
193
202
|
newMessage = pluginUserMessage;
|
|
194
203
|
}
|
|
195
204
|
if (newMessage) {
|
|
196
|
-
if (!((
|
|
205
|
+
if (!((_c = newMessage.parts) == null ? void 0 : _c.length)) {
|
|
197
206
|
throw new Error("No parts in the newMessage.");
|
|
198
207
|
}
|
|
199
208
|
if (runConfig.saveInputBlobsAsArtifacts) {
|
|
@@ -203,6 +212,9 @@ class Runner {
|
|
|
203
212
|
session.id,
|
|
204
213
|
newMessage
|
|
205
214
|
));
|
|
215
|
+
if ((_d = params.abortSignal) == null ? void 0 : _d.aborted) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
206
218
|
}
|
|
207
219
|
yield new __await(this.sessionService.appendEvent({
|
|
208
220
|
session,
|
|
@@ -213,6 +225,9 @@ class Runner {
|
|
|
213
225
|
content: newMessage
|
|
214
226
|
})
|
|
215
227
|
}));
|
|
228
|
+
if ((_e = params.abortSignal) == null ? void 0 : _e.aborted) {
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
216
231
|
}
|
|
217
232
|
invocationContext.agent = this.determineAgentForResumption(
|
|
218
233
|
session,
|
|
@@ -222,6 +237,9 @@ class Runner {
|
|
|
222
237
|
const beforeRunCallbackResponse = yield new __await(this.pluginManager.runBeforeRunCallback({
|
|
223
238
|
invocationContext
|
|
224
239
|
}));
|
|
240
|
+
if ((_f = params.abortSignal) == null ? void 0 : _f.aborted) {
|
|
241
|
+
return;
|
|
242
|
+
}
|
|
225
243
|
if (beforeRunCallbackResponse) {
|
|
226
244
|
const earlyExitEvent = createEvent({
|
|
227
245
|
invocationId: invocationContext.invocationId,
|
|
@@ -232,6 +250,9 @@ class Runner {
|
|
|
232
250
|
session,
|
|
233
251
|
event: earlyExitEvent
|
|
234
252
|
}));
|
|
253
|
+
if ((_g = params.abortSignal) == null ? void 0 : _g.aborted) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
235
256
|
yield earlyExitEvent;
|
|
236
257
|
} else {
|
|
237
258
|
try {
|
|
@@ -239,6 +260,9 @@ class Runner {
|
|
|
239
260
|
invocationContext
|
|
240
261
|
)), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
|
|
241
262
|
const event = temp.value;
|
|
263
|
+
if ((_h = params.abortSignal) == null ? void 0 : _h.aborted) {
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
242
266
|
if (!event.partial) {
|
|
243
267
|
yield new __await(this.sessionService.appendEvent({ session, event }));
|
|
244
268
|
}
|
|
@@ -246,6 +270,9 @@ class Runner {
|
|
|
246
270
|
invocationContext,
|
|
247
271
|
event
|
|
248
272
|
}));
|
|
273
|
+
if ((_i = params.abortSignal) == null ? void 0 : _i.aborted) {
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
249
276
|
if (modifiedEvent) {
|
|
250
277
|
yield modifiedEvent;
|
|
251
278
|
} else {
|
|
@@ -263,6 +290,9 @@ class Runner {
|
|
|
263
290
|
}
|
|
264
291
|
}
|
|
265
292
|
yield new __await(this.pluginManager.runAfterRunCallback({ invocationContext }));
|
|
293
|
+
if ((_j = params.abortSignal) == null ? void 0 : _j.aborted) {
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
266
296
|
}
|
|
267
297
|
}
|
|
268
298
|
});
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import {createRequire as topLevelCreateRequire} from 'module';
|
|
2
|
+
const require = topLevelCreateRequire(import.meta.url);
|
|
1
3
|
var __create = Object.create;
|
|
2
4
|
var __defProp = Object.defineProperty;
|
|
3
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -51,23 +53,16 @@ async function getConnectionOptionsFromUri(uri) {
|
|
|
51
53
|
} else {
|
|
52
54
|
throw new Error("Unsupported database URI: ".concat(uri));
|
|
53
55
|
}
|
|
54
|
-
if (uri
|
|
56
|
+
if (uri.startsWith("sqlite://")) {
|
|
55
57
|
return {
|
|
56
58
|
entities: ENTITIES,
|
|
57
|
-
dbName: ":memory:",
|
|
59
|
+
dbName: uri === "sqlite://:memory:" ? ":memory:" : uri.substring("sqlite://".length),
|
|
58
60
|
driver
|
|
59
61
|
};
|
|
60
62
|
}
|
|
61
|
-
const { host, port, username, password, pathname } = new URL(uri);
|
|
62
|
-
const hostName = host.split(":")[0];
|
|
63
|
-
const dbName = uri.startsWith("sqlite://") ? uri.substring("sqlite://".length) : pathname.slice(1);
|
|
64
63
|
return {
|
|
65
64
|
entities: ENTITIES,
|
|
66
|
-
|
|
67
|
-
host: hostName,
|
|
68
|
-
port: port ? parseInt(port) : void 0,
|
|
69
|
-
user: username,
|
|
70
|
-
password,
|
|
65
|
+
clientUrl: uri,
|
|
71
66
|
driver
|
|
72
67
|
};
|
|
73
68
|
}
|
|
@@ -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 __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
5
|
var __decorateClass = (decorators, target, key, kind) => {
|