@google/adk 0.2.5 → 0.4.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/part_converter_utils.js +210 -0
- package/dist/cjs/agents/active_streaming_tool.js +1 -1
- package/dist/cjs/agents/base_agent.js +46 -24
- package/dist/cjs/agents/base_llm_processor.js +1 -1
- package/dist/cjs/agents/callback_context.js +5 -2
- package/dist/cjs/agents/content_processor_utils.js +16 -8
- package/dist/cjs/agents/functions.js +81 -30
- package/dist/cjs/agents/instructions.js +1 -1
- package/dist/cjs/agents/invocation_context.js +1 -1
- package/dist/cjs/agents/live_request_queue.js +1 -1
- package/dist/cjs/agents/llm_agent.js +106 -62
- package/dist/cjs/agents/loop_agent.js +3 -2
- package/dist/cjs/agents/parallel_agent.js +4 -5
- package/dist/cjs/agents/readonly_context.js +13 -1
- package/dist/cjs/agents/run_config.js +2 -1
- package/dist/cjs/agents/sequential_agent.js +1 -1
- package/dist/cjs/agents/transcription_entry.js +1 -1
- package/dist/cjs/artifacts/base_artifact_service.js +1 -1
- package/dist/cjs/artifacts/file_artifact_service.js +491 -0
- package/dist/cjs/artifacts/gcs_artifact_service.js +145 -58
- package/dist/cjs/artifacts/in_memory_artifact_service.js +72 -10
- package/dist/cjs/artifacts/registry.js +55 -0
- package/dist/cjs/auth/auth_credential.js +1 -1
- package/dist/cjs/auth/auth_handler.js +4 -2
- package/dist/cjs/auth/auth_schemes.js +1 -1
- package/dist/cjs/auth/auth_tool.js +1 -1
- package/dist/cjs/auth/credential_service/base_credential_service.js +1 -1
- package/dist/cjs/auth/credential_service/in_memory_credential_service.js +1 -1
- package/dist/cjs/auth/exchanger/base_credential_exchanger.js +1 -1
- package/dist/cjs/auth/exchanger/credential_exchanger_registry.js +1 -1
- package/dist/cjs/code_executors/base_code_executor.js +4 -2
- package/dist/cjs/code_executors/built_in_code_executor.js +8 -4
- package/dist/cjs/code_executors/code_execution_utils.js +1 -1
- package/dist/cjs/code_executors/code_executor_context.js +6 -6
- package/dist/cjs/common.js +18 -1
- package/dist/cjs/events/event.js +34 -7
- package/dist/cjs/events/event_actions.js +2 -2
- package/dist/cjs/events/structured_events.js +105 -0
- package/dist/cjs/examples/base_example_provider.js +1 -1
- package/dist/cjs/examples/example.js +1 -1
- package/dist/cjs/examples/example_util.js +1 -1
- package/dist/cjs/index.js +54 -83
- package/dist/cjs/index_web.js +1 -1
- package/dist/cjs/memory/base_memory_service.js +1 -1
- package/dist/cjs/memory/in_memory_memory_service.js +4 -2
- package/dist/cjs/memory/memory_entry.js +1 -1
- package/dist/cjs/models/apigee_llm.js +182 -0
- package/dist/cjs/models/base_llm.js +9 -5
- package/dist/cjs/models/base_llm_connection.js +1 -1
- package/dist/cjs/models/gemini_llm_connection.js +2 -1
- package/dist/cjs/models/google_llm.js +73 -54
- package/dist/cjs/models/llm_request.js +1 -1
- package/dist/cjs/models/llm_response.js +1 -1
- package/dist/cjs/models/registry.js +3 -1
- package/dist/cjs/plugins/base_plugin.js +13 -1
- package/dist/cjs/plugins/logging_plugin.js +51 -14
- package/dist/cjs/plugins/plugin_manager.js +57 -25
- package/dist/cjs/plugins/security_plugin.js +2 -2
- package/dist/cjs/runner/in_memory_runner.js +1 -1
- package/dist/cjs/runner/runner.js +142 -96
- package/dist/cjs/sessions/base_session_service.js +53 -3
- package/dist/cjs/sessions/database_session_service.js +364 -0
- package/dist/cjs/sessions/db/operations.js +114 -0
- package/dist/cjs/sessions/db/schema.js +204 -0
- package/dist/cjs/sessions/in_memory_session_service.js +60 -34
- package/dist/cjs/sessions/registry.js +49 -0
- package/dist/cjs/sessions/session.js +1 -1
- package/dist/cjs/sessions/state.js +1 -1
- package/dist/cjs/telemetry/google_cloud.js +8 -10
- package/dist/cjs/telemetry/setup.js +16 -8
- package/dist/cjs/telemetry/tracing.js +38 -16
- package/dist/cjs/tools/agent_tool.js +9 -5
- package/dist/cjs/tools/base_tool.js +5 -3
- package/dist/cjs/tools/base_toolset.js +1 -1
- package/dist/cjs/tools/forwarding_artifact_service.js +18 -2
- package/dist/cjs/tools/function_tool.js +2 -3
- package/dist/cjs/tools/google_search_tool.js +2 -3
- package/dist/cjs/tools/long_running_tool.js +1 -1
- package/dist/cjs/tools/mcp/mcp_session_manager.js +17 -11
- package/dist/cjs/tools/mcp/mcp_tool.js +2 -4
- package/dist/cjs/tools/mcp/mcp_toolset.js +2 -2
- package/dist/cjs/tools/tool_confirmation.js +1 -1
- package/dist/cjs/tools/tool_context.js +1 -1
- package/dist/cjs/utils/client_labels.js +1 -1
- package/dist/cjs/utils/env_aware_utils.js +11 -2
- package/dist/cjs/utils/gemini_schema_util.js +10 -5
- package/dist/cjs/utils/logger.js +48 -4
- package/dist/cjs/utils/model_name.js +1 -1
- package/dist/cjs/utils/object_notation_utils.js +78 -0
- package/dist/cjs/utils/simple_zod_to_json.js +101 -142
- package/dist/cjs/utils/variant_utils.js +3 -9
- package/dist/cjs/version.js +2 -2
- package/dist/esm/a2a/part_converter_utils.js +171 -0
- package/dist/esm/agents/base_agent.js +50 -24
- package/dist/esm/agents/callback_context.js +4 -1
- package/dist/esm/agents/content_processor_utils.js +25 -9
- package/dist/esm/agents/functions.js +84 -29
- package/dist/esm/agents/llm_agent.js +110 -62
- package/dist/esm/agents/loop_agent.js +2 -1
- package/dist/esm/agents/parallel_agent.js +3 -4
- package/dist/esm/agents/readonly_context.js +12 -0
- package/dist/esm/agents/run_config.js +1 -0
- package/dist/esm/artifacts/file_artifact_service.js +451 -0
- package/dist/esm/artifacts/gcs_artifact_service.js +144 -57
- package/dist/esm/artifacts/in_memory_artifact_service.js +69 -8
- package/dist/esm/artifacts/registry.js +28 -0
- package/dist/esm/auth/auth_handler.js +3 -1
- package/dist/esm/code_executors/base_code_executor.js +3 -1
- package/dist/esm/code_executors/built_in_code_executor.js +7 -3
- package/dist/esm/code_executors/code_executor_context.js +5 -5
- package/dist/esm/common.js +12 -2
- package/dist/esm/events/event.js +30 -5
- package/dist/esm/events/event_actions.js +1 -1
- package/dist/esm/events/structured_events.js +74 -0
- package/dist/esm/index.js +18 -88
- package/dist/esm/memory/in_memory_memory_service.js +3 -1
- package/dist/esm/models/apigee_llm.js +152 -0
- package/dist/esm/models/base_llm.js +8 -4
- package/dist/esm/models/gemini_llm_connection.js +1 -0
- package/dist/esm/models/google_llm.js +75 -53
- package/dist/esm/models/registry.js +2 -0
- package/dist/esm/plugins/base_plugin.js +12 -0
- package/dist/esm/plugins/logging_plugin.js +55 -14
- package/dist/esm/plugins/plugin_manager.js +56 -24
- package/dist/esm/plugins/security_plugin.js +1 -1
- package/dist/esm/runner/runner.js +145 -96
- package/dist/esm/sessions/base_session_service.js +49 -1
- package/dist/esm/sessions/database_session_service.js +350 -0
- package/dist/esm/sessions/db/operations.js +87 -0
- package/dist/esm/sessions/db/schema.js +172 -0
- package/dist/esm/sessions/in_memory_session_service.js +61 -33
- package/dist/esm/sessions/registry.js +25 -0
- package/dist/esm/telemetry/google_cloud.js +7 -9
- package/dist/esm/telemetry/setup.js +23 -9
- package/dist/esm/telemetry/tracing.js +37 -15
- package/dist/esm/tools/agent_tool.js +8 -4
- package/dist/esm/tools/base_tool.js +4 -2
- package/dist/esm/tools/forwarding_artifact_service.js +17 -1
- package/dist/esm/tools/function_tool.js +1 -2
- package/dist/esm/tools/google_search_tool.js +2 -5
- package/dist/esm/tools/long_running_tool.js +3 -1
- package/dist/esm/tools/mcp/mcp_session_manager.js +22 -12
- package/dist/esm/tools/mcp/mcp_tool.js +1 -3
- package/dist/esm/tools/mcp/mcp_toolset.js +1 -1
- package/dist/esm/utils/env_aware_utils.js +9 -1
- package/dist/esm/utils/gemini_schema_util.js +9 -4
- package/dist/esm/utils/logger.js +43 -2
- package/dist/esm/utils/object_notation_utils.js +47 -0
- package/dist/esm/utils/simple_zod_to_json.js +102 -141
- package/dist/esm/utils/variant_utils.js +1 -7
- package/dist/esm/version.js +1 -1
- package/dist/types/a2a/part_converter_utils.d.ts +47 -0
- package/dist/types/agents/base_agent.d.ts +2 -1
- package/dist/types/agents/callback_context.d.ts +1 -1
- package/dist/types/agents/llm_agent.d.ts +12 -12
- package/dist/types/agents/loop_agent.d.ts +1 -1
- package/dist/types/agents/parallel_agent.d.ts +1 -1
- package/dist/types/agents/readonly_context.d.ts +8 -0
- package/dist/types/agents/run_config.d.ts +6 -0
- package/dist/types/artifacts/base_artifact_service.d.ts +31 -0
- package/dist/types/artifacts/file_artifact_service.d.ts +43 -0
- package/dist/types/artifacts/gcs_artifact_service.d.ts +3 -1
- package/dist/types/artifacts/in_memory_artifact_service.d.ts +8 -5
- package/dist/types/artifacts/registry.d.ts +7 -0
- package/dist/types/code_executors/built_in_code_executor.d.ts +1 -1
- package/dist/types/code_executors/code_executor_context.d.ts +2 -4
- package/dist/types/common.d.ts +13 -3
- package/dist/types/events/event.d.ts +15 -1
- package/dist/types/events/event_actions.d.ts +1 -1
- package/dist/types/events/structured_events.d.ts +106 -0
- package/dist/types/index.d.ts +7 -3
- package/dist/types/models/apigee_llm.d.ts +59 -0
- package/dist/types/models/base_llm_connection.d.ts +1 -1
- package/dist/types/models/google_llm.d.ts +5 -2
- package/dist/types/models/llm_response.d.ts +1 -1
- package/dist/types/plugins/logging_plugin.d.ts +12 -12
- package/dist/types/plugins/plugin_manager.d.ts +12 -12
- package/dist/types/plugins/security_plugin.d.ts +1 -1
- package/dist/types/runner/runner.d.ts +16 -1
- package/dist/types/sessions/base_session_service.d.ts +20 -0
- package/dist/types/sessions/database_session_service.d.ts +31 -0
- package/dist/types/sessions/db/operations.d.ts +29 -0
- package/dist/types/sessions/db/schema.d.ts +45 -0
- package/dist/types/sessions/in_memory_session_service.d.ts +9 -6
- package/dist/types/sessions/registry.d.ts +7 -0
- package/dist/types/telemetry/setup.d.ts +1 -1
- package/dist/types/telemetry/tracing.d.ts +7 -6
- package/dist/types/tools/agent_tool.d.ts +1 -1
- package/dist/types/tools/base_tool.d.ts +1 -1
- package/dist/types/tools/base_toolset.d.ts +2 -1
- package/dist/types/tools/forwarding_artifact_service.d.ts +4 -2
- package/dist/types/tools/function_tool.d.ts +4 -3
- package/dist/types/tools/google_search_tool.d.ts +3 -3
- package/dist/types/tools/mcp/mcp_session_manager.d.ts +10 -3
- package/dist/types/tools/mcp/mcp_toolset.d.ts +1 -2
- package/dist/types/utils/env_aware_utils.d.ts +7 -0
- package/dist/types/utils/gemini_schema_util.d.ts +4 -12
- package/dist/types/utils/logger.d.ts +11 -10
- package/dist/types/utils/object_notation_utils.d.ts +21 -0
- package/dist/types/utils/simple_zod_to_json.d.ts +5 -4
- package/dist/types/version.d.ts +1 -1
- package/dist/web/a2a/part_converter_utils.js +171 -0
- package/dist/web/agents/base_agent.js +96 -35
- package/dist/web/agents/callback_context.js +4 -1
- package/dist/web/agents/content_processor_utils.js +25 -9
- package/dist/web/agents/functions.js +84 -29
- package/dist/web/agents/llm_agent.js +166 -83
- package/dist/web/agents/loop_agent.js +2 -1
- package/dist/web/agents/parallel_agent.js +3 -4
- package/dist/web/agents/readonly_context.js +12 -0
- package/dist/web/agents/run_config.js +2 -1
- package/dist/web/artifacts/file_artifact_service.js +506 -0
- package/dist/web/artifacts/gcs_artifact_service.js +139 -54
- package/dist/web/artifacts/in_memory_artifact_service.js +69 -8
- package/dist/web/artifacts/registry.js +28 -0
- package/dist/web/auth/auth_handler.js +3 -1
- package/dist/web/code_executors/base_code_executor.js +3 -1
- package/dist/web/code_executors/built_in_code_executor.js +7 -3
- package/dist/web/code_executors/code_executor_context.js +5 -5
- package/dist/web/common.js +12 -2
- package/dist/web/events/event.js +30 -5
- package/dist/web/events/event_actions.js +1 -1
- package/dist/web/events/structured_events.js +74 -0
- package/dist/web/index.js +18 -8
- package/dist/web/memory/in_memory_memory_service.js +3 -1
- package/dist/web/models/apigee_llm.js +219 -0
- package/dist/web/models/base_llm.js +8 -4
- package/dist/web/models/gemini_llm_connection.js +1 -0
- package/dist/web/models/google_llm.js +75 -50
- package/dist/web/models/registry.js +2 -0
- package/dist/web/plugins/base_plugin.js +12 -0
- package/dist/web/plugins/logging_plugin.js +55 -14
- package/dist/web/plugins/plugin_manager.js +56 -24
- package/dist/web/plugins/security_plugin.js +1 -1
- package/dist/web/runner/runner.js +192 -108
- package/dist/web/sessions/base_session_service.js +49 -1
- package/dist/web/sessions/database_session_service.js +368 -0
- package/dist/web/sessions/db/operations.js +87 -0
- package/dist/web/sessions/db/schema.js +172 -0
- package/dist/web/sessions/in_memory_session_service.js +61 -33
- package/dist/web/sessions/registry.js +25 -0
- package/dist/web/telemetry/google_cloud.js +7 -9
- package/dist/web/telemetry/setup.js +23 -9
- package/dist/web/telemetry/tracing.js +37 -15
- package/dist/web/tools/agent_tool.js +8 -4
- package/dist/web/tools/base_tool.js +4 -2
- package/dist/web/tools/forwarding_artifact_service.js +17 -1
- package/dist/web/tools/function_tool.js +1 -2
- package/dist/web/tools/google_search_tool.js +2 -5
- package/dist/web/tools/long_running_tool.js +3 -1
- package/dist/web/tools/mcp/mcp_session_manager.js +22 -12
- package/dist/web/tools/mcp/mcp_tool.js +1 -3
- package/dist/web/tools/mcp/mcp_toolset.js +1 -1
- package/dist/web/utils/env_aware_utils.js +9 -1
- package/dist/web/utils/gemini_schema_util.js +9 -4
- package/dist/web/utils/logger.js +43 -2
- package/dist/web/utils/object_notation_utils.js +47 -0
- package/dist/web/utils/simple_zod_to_json.js +102 -155
- package/dist/web/utils/variant_utils.js +1 -7
- package/dist/web/version.js +1 -1
- package/package.json +16 -5
- package/dist/cjs/index.js.map +0 -7
- package/dist/esm/index.js.map +0 -7
- package/dist/web/index.js.map +0 -7
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -24,7 +24,8 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
25
|
var in_memory_session_service_exports = {};
|
|
26
26
|
__export(in_memory_session_service_exports, {
|
|
27
|
-
InMemorySessionService: () => InMemorySessionService
|
|
27
|
+
InMemorySessionService: () => InMemorySessionService,
|
|
28
|
+
isInMemoryConnectionString: () => isInMemoryConnectionString
|
|
28
29
|
});
|
|
29
30
|
module.exports = __toCommonJS(in_memory_session_service_exports);
|
|
30
31
|
var import_lodash_es = require("lodash-es");
|
|
@@ -38,6 +39,9 @@ var import_state = require("./state.js");
|
|
|
38
39
|
* Copyright 2025 Google LLC
|
|
39
40
|
* SPDX-License-Identifier: Apache-2.0
|
|
40
41
|
*/
|
|
42
|
+
function isInMemoryConnectionString(uri) {
|
|
43
|
+
return uri === "memory://";
|
|
44
|
+
}
|
|
41
45
|
class InMemorySessionService extends import_base_session_service.BaseSessionService {
|
|
42
46
|
constructor() {
|
|
43
47
|
super(...arguments);
|
|
@@ -55,7 +59,13 @@ class InMemorySessionService extends import_base_session_service.BaseSessionServ
|
|
|
55
59
|
*/
|
|
56
60
|
this.appState = {};
|
|
57
61
|
}
|
|
58
|
-
createSession({
|
|
62
|
+
async createSession({
|
|
63
|
+
appName,
|
|
64
|
+
userId,
|
|
65
|
+
state,
|
|
66
|
+
sessionId
|
|
67
|
+
}) {
|
|
68
|
+
var _a;
|
|
59
69
|
const session = (0, import_session.createSession)({
|
|
60
70
|
id: sessionId || (0, import_env_aware_utils.randomUUID)(),
|
|
61
71
|
appName,
|
|
@@ -71,11 +81,21 @@ class InMemorySessionService extends import_base_session_service.BaseSessionServ
|
|
|
71
81
|
this.sessions[appName][userId] = {};
|
|
72
82
|
}
|
|
73
83
|
this.sessions[appName][userId][session.id] = session;
|
|
74
|
-
|
|
75
|
-
|
|
84
|
+
const copiedSession = (0, import_lodash_es.cloneDeep)(session);
|
|
85
|
+
copiedSession.state = (0, import_base_session_service.mergeStates)(
|
|
86
|
+
this.appState[appName],
|
|
87
|
+
(_a = this.userState[appName]) == null ? void 0 : _a[userId],
|
|
88
|
+
copiedSession.state
|
|
76
89
|
);
|
|
90
|
+
return copiedSession;
|
|
77
91
|
}
|
|
78
|
-
getSession({
|
|
92
|
+
async getSession({
|
|
93
|
+
appName,
|
|
94
|
+
userId,
|
|
95
|
+
sessionId,
|
|
96
|
+
config
|
|
97
|
+
}) {
|
|
98
|
+
var _a;
|
|
79
99
|
if (!this.sessions[appName] || !this.sessions[appName][userId] || !this.sessions[appName][userId][sessionId]) {
|
|
80
100
|
return Promise.resolve(void 0);
|
|
81
101
|
}
|
|
@@ -83,7 +103,9 @@ class InMemorySessionService extends import_base_session_service.BaseSessionServ
|
|
|
83
103
|
const copiedSession = (0, import_lodash_es.cloneDeep)(session);
|
|
84
104
|
if (config) {
|
|
85
105
|
if (config.numRecentEvents) {
|
|
86
|
-
copiedSession.events = copiedSession.events.slice(
|
|
106
|
+
copiedSession.events = copiedSession.events.slice(
|
|
107
|
+
-config.numRecentEvents
|
|
108
|
+
);
|
|
87
109
|
}
|
|
88
110
|
if (config.afterTimestamp) {
|
|
89
111
|
let i = copiedSession.events.length - 1;
|
|
@@ -98,33 +120,50 @@ class InMemorySessionService extends import_base_session_service.BaseSessionServ
|
|
|
98
120
|
}
|
|
99
121
|
}
|
|
100
122
|
}
|
|
101
|
-
|
|
123
|
+
copiedSession.state = (0, import_base_session_service.mergeStates)(
|
|
124
|
+
this.appState[appName],
|
|
125
|
+
(_a = this.userState[appName]) == null ? void 0 : _a[userId],
|
|
126
|
+
copiedSession.state
|
|
127
|
+
);
|
|
128
|
+
return copiedSession;
|
|
102
129
|
}
|
|
103
|
-
listSessions({
|
|
130
|
+
listSessions({
|
|
131
|
+
appName,
|
|
132
|
+
userId
|
|
133
|
+
}) {
|
|
104
134
|
if (!this.sessions[appName] || !this.sessions[appName][userId]) {
|
|
105
135
|
return Promise.resolve({ sessions: [] });
|
|
106
136
|
}
|
|
107
137
|
const sessionsWithoutEvents = [];
|
|
108
138
|
for (const session of Object.values(this.sessions[appName][userId])) {
|
|
109
|
-
sessionsWithoutEvents.push(
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
139
|
+
sessionsWithoutEvents.push(
|
|
140
|
+
(0, import_session.createSession)({
|
|
141
|
+
id: session.id,
|
|
142
|
+
appName: session.appName,
|
|
143
|
+
userId: session.userId,
|
|
144
|
+
state: {},
|
|
145
|
+
events: [],
|
|
146
|
+
lastUpdateTime: session.lastUpdateTime
|
|
147
|
+
})
|
|
148
|
+
);
|
|
117
149
|
}
|
|
118
150
|
return Promise.resolve({ sessions: sessionsWithoutEvents });
|
|
119
151
|
}
|
|
120
|
-
async deleteSession({
|
|
152
|
+
async deleteSession({
|
|
153
|
+
appName,
|
|
154
|
+
userId,
|
|
155
|
+
sessionId
|
|
156
|
+
}) {
|
|
121
157
|
const session = await this.getSession({ appName, userId, sessionId });
|
|
122
158
|
if (!session) {
|
|
123
159
|
return;
|
|
124
160
|
}
|
|
125
161
|
delete this.sessions[appName][userId][sessionId];
|
|
126
162
|
}
|
|
127
|
-
async appendEvent({
|
|
163
|
+
async appendEvent({
|
|
164
|
+
session,
|
|
165
|
+
event
|
|
166
|
+
}) {
|
|
128
167
|
await super.appendEvent({ session, event });
|
|
129
168
|
session.lastUpdateTime = event.timestamp;
|
|
130
169
|
const appName = session.appName;
|
|
@@ -163,22 +202,9 @@ class InMemorySessionService extends import_base_session_service.BaseSessionServ
|
|
|
163
202
|
storageSession.lastUpdateTime = event.timestamp;
|
|
164
203
|
return event;
|
|
165
204
|
}
|
|
166
|
-
mergeState(appName, userId, copiedSession) {
|
|
167
|
-
if (this.appState[appName]) {
|
|
168
|
-
for (const key of Object.keys(this.appState[appName])) {
|
|
169
|
-
copiedSession.state[import_state.State.APP_PREFIX + key] = this.appState[appName][key];
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
if (!this.userState[appName] || !this.userState[appName][userId]) {
|
|
173
|
-
return copiedSession;
|
|
174
|
-
}
|
|
175
|
-
for (const key of Object.keys(this.userState[appName][userId])) {
|
|
176
|
-
copiedSession.state[import_state.State.USER_PREFIX + key] = this.userState[appName][userId][key];
|
|
177
|
-
}
|
|
178
|
-
return copiedSession;
|
|
179
|
-
}
|
|
180
205
|
}
|
|
181
206
|
// Annotate the CommonJS export names for ESM import in node:
|
|
182
207
|
0 && (module.exports = {
|
|
183
|
-
InMemorySessionService
|
|
208
|
+
InMemorySessionService,
|
|
209
|
+
isInMemoryConnectionString
|
|
184
210
|
});
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
10
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __export = (target, all) => {
|
|
13
|
+
for (var name in all)
|
|
14
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
15
|
+
};
|
|
16
|
+
var __copyProps = (to, from, except, desc) => {
|
|
17
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
+
for (let key of __getOwnPropNames(from))
|
|
19
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
+
var registry_exports = {};
|
|
26
|
+
__export(registry_exports, {
|
|
27
|
+
getSessionServiceFromUri: () => getSessionServiceFromUri
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(registry_exports);
|
|
30
|
+
var import_database_session_service = require("./database_session_service.js");
|
|
31
|
+
var import_in_memory_session_service = require("./in_memory_session_service.js");
|
|
32
|
+
/**
|
|
33
|
+
* @license
|
|
34
|
+
* Copyright 2026 Google LLC
|
|
35
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
36
|
+
*/
|
|
37
|
+
function getSessionServiceFromUri(uri) {
|
|
38
|
+
if ((0, import_in_memory_session_service.isInMemoryConnectionString)(uri)) {
|
|
39
|
+
return new import_in_memory_session_service.InMemorySessionService();
|
|
40
|
+
}
|
|
41
|
+
if ((0, import_database_session_service.isDatabaseConnectionString)(uri)) {
|
|
42
|
+
return new import_database_session_service.DatabaseSessionService(uri);
|
|
43
|
+
}
|
|
44
|
+
throw new Error(`Unsupported session service URI: ${uri}`);
|
|
45
|
+
}
|
|
46
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
47
|
+
0 && (module.exports = {
|
|
48
|
+
getSessionServiceFromUri
|
|
49
|
+
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -28,13 +28,13 @@ __export(google_cloud_exports, {
|
|
|
28
28
|
getGcpResource: () => getGcpResource
|
|
29
29
|
});
|
|
30
30
|
module.exports = __toCommonJS(google_cloud_exports);
|
|
31
|
-
var
|
|
32
|
-
var import_sdk_metrics = require("@opentelemetry/sdk-metrics");
|
|
33
|
-
var import_resources = require("@opentelemetry/resources");
|
|
34
|
-
var import_resource_detector_gcp = require("@opentelemetry/resource-detector-gcp");
|
|
31
|
+
var import_opentelemetry_cloud_monitoring_exporter = require("@google-cloud/opentelemetry-cloud-monitoring-exporter");
|
|
35
32
|
var import_opentelemetry_cloud_trace_exporter = require("@google-cloud/opentelemetry-cloud-trace-exporter");
|
|
33
|
+
var import_resource_detector_gcp = require("@opentelemetry/resource-detector-gcp");
|
|
34
|
+
var import_resources = require("@opentelemetry/resources");
|
|
35
|
+
var import_sdk_metrics = require("@opentelemetry/sdk-metrics");
|
|
36
36
|
var import_sdk_trace_base = require("@opentelemetry/sdk-trace-base");
|
|
37
|
-
var
|
|
37
|
+
var import_google_auth_library = require("google-auth-library");
|
|
38
38
|
var import_logger = require("../utils/logger.js");
|
|
39
39
|
/**
|
|
40
40
|
* @license
|
|
@@ -47,7 +47,7 @@ async function getGcpProjectId() {
|
|
|
47
47
|
const auth = new import_google_auth_library.GoogleAuth();
|
|
48
48
|
const projectId = await auth.getProjectId();
|
|
49
49
|
return projectId || void 0;
|
|
50
|
-
} catch (
|
|
50
|
+
} catch (_e) {
|
|
51
51
|
return void 0;
|
|
52
52
|
}
|
|
53
53
|
}
|
|
@@ -63,9 +63,7 @@ async function getGcpExporters(config = {}) {
|
|
|
63
63
|
return {};
|
|
64
64
|
}
|
|
65
65
|
return {
|
|
66
|
-
spanProcessors: enableTracing ? [
|
|
67
|
-
new import_sdk_trace_base.BatchSpanProcessor(new import_opentelemetry_cloud_trace_exporter.TraceExporter({ projectId }))
|
|
68
|
-
] : [],
|
|
66
|
+
spanProcessors: enableTracing ? [new import_sdk_trace_base.BatchSpanProcessor(new import_opentelemetry_cloud_trace_exporter.TraceExporter({ projectId }))] : [],
|
|
69
67
|
metricReaders: enableMetrics ? [
|
|
70
68
|
new import_sdk_metrics.PeriodicExportingMetricReader({
|
|
71
69
|
exporter: new import_opentelemetry_cloud_monitoring_exporter.MetricExporter({ projectId }),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -29,14 +29,14 @@ __export(setup_exports, {
|
|
|
29
29
|
module.exports = __toCommonJS(setup_exports);
|
|
30
30
|
var import_api = require("@opentelemetry/api");
|
|
31
31
|
var import_api_logs = require("@opentelemetry/api-logs");
|
|
32
|
+
var import_exporter_logs_otlp_http = require("@opentelemetry/exporter-logs-otlp-http");
|
|
33
|
+
var import_exporter_metrics_otlp_http = require("@opentelemetry/exporter-metrics-otlp-http");
|
|
34
|
+
var import_exporter_trace_otlp_http = require("@opentelemetry/exporter-trace-otlp-http");
|
|
35
|
+
var import_resources = require("@opentelemetry/resources");
|
|
32
36
|
var import_sdk_logs = require("@opentelemetry/sdk-logs");
|
|
33
37
|
var import_sdk_metrics = require("@opentelemetry/sdk-metrics");
|
|
34
|
-
var import_resources = require("@opentelemetry/resources");
|
|
35
38
|
var import_sdk_trace_base = require("@opentelemetry/sdk-trace-base");
|
|
36
39
|
var import_sdk_trace_node = require("@opentelemetry/sdk-trace-node");
|
|
37
|
-
var import_exporter_trace_otlp_http = require("@opentelemetry/exporter-trace-otlp-http");
|
|
38
|
-
var import_exporter_metrics_otlp_http = require("@opentelemetry/exporter-metrics-otlp-http");
|
|
39
|
-
var import_exporter_logs_otlp_http = require("@opentelemetry/exporter-logs-otlp-http");
|
|
40
40
|
/**
|
|
41
41
|
* @license
|
|
42
42
|
* Copyright 2025 Google LLC
|
|
@@ -45,9 +45,13 @@ var import_exporter_logs_otlp_http = require("@opentelemetry/exporter-logs-otlp-
|
|
|
45
45
|
function maybeSetOtelProviders(otelHooksToSetup = [], otelResource) {
|
|
46
46
|
const resource = otelResource || getOtelResource();
|
|
47
47
|
const allHooks = [...otelHooksToSetup, getOtelExporters()];
|
|
48
|
-
const spanProcessors = allHooks.flatMap(
|
|
48
|
+
const spanProcessors = allHooks.flatMap(
|
|
49
|
+
(hooks) => hooks.spanProcessors || []
|
|
50
|
+
);
|
|
49
51
|
const metricReaders = allHooks.flatMap((hooks) => hooks.metricReaders || []);
|
|
50
|
-
const logRecordProcessors = allHooks.flatMap(
|
|
52
|
+
const logRecordProcessors = allHooks.flatMap(
|
|
53
|
+
(hooks) => hooks.logRecordProcessors || []
|
|
54
|
+
);
|
|
51
55
|
if (spanProcessors.length > 0) {
|
|
52
56
|
const tracerProvider = new import_sdk_trace_node.NodeTracerProvider({
|
|
53
57
|
resource,
|
|
@@ -87,7 +91,11 @@ function getOtelExporters(config = getOtelExportersConfig()) {
|
|
|
87
91
|
const { enableTracing, enableMetrics, enableLogging } = config;
|
|
88
92
|
return {
|
|
89
93
|
spanProcessors: enableTracing ? [new import_sdk_trace_base.BatchSpanProcessor(new import_exporter_trace_otlp_http.OTLPTraceExporter())] : [],
|
|
90
|
-
metricReaders: enableMetrics ? [
|
|
94
|
+
metricReaders: enableMetrics ? [
|
|
95
|
+
new import_sdk_metrics.PeriodicExportingMetricReader({
|
|
96
|
+
exporter: new import_exporter_metrics_otlp_http.OTLPMetricExporter()
|
|
97
|
+
})
|
|
98
|
+
] : [],
|
|
91
99
|
logRecordProcessors: enableLogging ? [new import_sdk_logs.BatchLogRecordProcessor(new import_exporter_logs_otlp_http.OTLPLogExporter())] : []
|
|
92
100
|
};
|
|
93
101
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -24,7 +24,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
25
|
var tracing_exports = {};
|
|
26
26
|
__export(tracing_exports, {
|
|
27
|
-
|
|
27
|
+
runAsyncGeneratorWithOtelContext: () => runAsyncGeneratorWithOtelContext,
|
|
28
28
|
traceAgentInvocation: () => traceAgentInvocation,
|
|
29
29
|
traceCallLlm: () => traceCallLlm,
|
|
30
30
|
traceMergedToolCalls: () => traceMergedToolCalls,
|
|
@@ -48,14 +48,11 @@ const GEN_AI_TOOL_CALL_ID = "gen_ai.tool.call.id";
|
|
|
48
48
|
const GEN_AI_TOOL_DESCRIPTION = "gen_ai.tool.description";
|
|
49
49
|
const GEN_AI_TOOL_NAME = "gen_ai.tool.name";
|
|
50
50
|
const GEN_AI_TOOL_TYPE = "gen_ai.tool.type";
|
|
51
|
-
const tracer = import_api.trace.getTracer(
|
|
52
|
-
"gcp.vertex.agent",
|
|
53
|
-
import_version.version
|
|
54
|
-
);
|
|
51
|
+
const tracer = import_api.trace.getTracer("gcp.vertex.agent", import_version.version);
|
|
55
52
|
function safeJsonSerialize(obj) {
|
|
56
53
|
try {
|
|
57
54
|
return JSON.stringify(obj);
|
|
58
|
-
} catch (
|
|
55
|
+
} catch (_e) {
|
|
59
56
|
return "<not serializable>";
|
|
60
57
|
}
|
|
61
58
|
}
|
|
@@ -132,7 +129,10 @@ function traceMergedToolCalls({
|
|
|
132
129
|
"gcp.vertex.agent.llm_request": "{}",
|
|
133
130
|
"gcp.vertex.agent.llm_response": "{}"
|
|
134
131
|
});
|
|
135
|
-
span.setAttribute(
|
|
132
|
+
span.setAttribute(
|
|
133
|
+
"gcp.vertex.agent.tool_response",
|
|
134
|
+
shouldAddRequestResponseToSpans() ? safeJsonSerialize(functionResponseEvent) : "{}"
|
|
135
|
+
);
|
|
136
136
|
}
|
|
137
137
|
function traceCallLlm({
|
|
138
138
|
invocationContext,
|
|
@@ -156,14 +156,26 @@ function traceCallLlm({
|
|
|
156
156
|
span.setAttribute("gen_ai.request.top_p", llmRequest.config.topP);
|
|
157
157
|
}
|
|
158
158
|
if (((_b = llmRequest.config) == null ? void 0 : _b.maxOutputTokens) !== void 0) {
|
|
159
|
-
span.setAttribute(
|
|
159
|
+
span.setAttribute(
|
|
160
|
+
"gen_ai.request.max_tokens",
|
|
161
|
+
llmRequest.config.maxOutputTokens
|
|
162
|
+
);
|
|
160
163
|
}
|
|
161
|
-
span.setAttribute(
|
|
164
|
+
span.setAttribute(
|
|
165
|
+
"gcp.vertex.agent.llm_response",
|
|
166
|
+
shouldAddRequestResponseToSpans() ? safeJsonSerialize(llmResponse) : "{}"
|
|
167
|
+
);
|
|
162
168
|
if (llmResponse.usageMetadata) {
|
|
163
|
-
span.setAttribute(
|
|
169
|
+
span.setAttribute(
|
|
170
|
+
"gen_ai.usage.input_tokens",
|
|
171
|
+
llmResponse.usageMetadata.promptTokenCount || 0
|
|
172
|
+
);
|
|
164
173
|
}
|
|
165
174
|
if ((_c = llmResponse.usageMetadata) == null ? void 0 : _c.candidatesTokenCount) {
|
|
166
|
-
span.setAttribute(
|
|
175
|
+
span.setAttribute(
|
|
176
|
+
"gen_ai.usage.output_tokens",
|
|
177
|
+
llmResponse.usageMetadata.candidatesTokenCount
|
|
178
|
+
);
|
|
167
179
|
}
|
|
168
180
|
if (llmResponse.finishReason) {
|
|
169
181
|
const finishReasonValue = typeof llmResponse.finishReason === "string" ? llmResponse.finishReason.toLowerCase() : String(llmResponse.finishReason).toLowerCase();
|
|
@@ -181,7 +193,10 @@ function traceSendData({
|
|
|
181
193
|
"gcp.vertex.agent.invocation_id": invocationContext.invocationId,
|
|
182
194
|
"gcp.vertex.agent.event_id": eventId
|
|
183
195
|
});
|
|
184
|
-
span.setAttribute(
|
|
196
|
+
span.setAttribute(
|
|
197
|
+
"gcp.vertex.agent.data",
|
|
198
|
+
shouldAddRequestResponseToSpans() ? safeJsonSerialize(data) : "{}"
|
|
199
|
+
);
|
|
185
200
|
}
|
|
186
201
|
function buildLlmRequestForTrace(llmRequest) {
|
|
187
202
|
const result = {
|
|
@@ -201,7 +216,7 @@ function buildLlmRequestForTrace(llmRequest) {
|
|
|
201
216
|
});
|
|
202
217
|
return result;
|
|
203
218
|
}
|
|
204
|
-
function
|
|
219
|
+
function bindOtelContextToAsyncGenerator(ctx, generator) {
|
|
205
220
|
return {
|
|
206
221
|
// Bind the next() method to execute within the provided context
|
|
207
222
|
next: import_api.context.bind(ctx, generator.next.bind(generator)),
|
|
@@ -211,17 +226,24 @@ function bindAsyncGenerator(ctx, generator) {
|
|
|
211
226
|
throw: import_api.context.bind(ctx, generator.throw.bind(generator)),
|
|
212
227
|
// Ensure the async iterator symbol also returns a context-bound generator
|
|
213
228
|
[Symbol.asyncIterator]() {
|
|
214
|
-
return
|
|
229
|
+
return bindOtelContextToAsyncGenerator(
|
|
230
|
+
ctx,
|
|
231
|
+
generator[Symbol.asyncIterator]()
|
|
232
|
+
);
|
|
215
233
|
}
|
|
216
234
|
};
|
|
217
235
|
}
|
|
236
|
+
function runAsyncGeneratorWithOtelContext(otelContext, generatorFnContext, generatorFn) {
|
|
237
|
+
const generator = generatorFn.call(generatorFnContext);
|
|
238
|
+
return bindOtelContextToAsyncGenerator(otelContext, generator);
|
|
239
|
+
}
|
|
218
240
|
function shouldAddRequestResponseToSpans() {
|
|
219
241
|
const envValue = process.env.ADK_CAPTURE_MESSAGE_CONTENT_IN_SPANS || "true";
|
|
220
242
|
return envValue === "true" || envValue === "1";
|
|
221
243
|
}
|
|
222
244
|
// Annotate the CommonJS export names for ESM import in node:
|
|
223
245
|
0 && (module.exports = {
|
|
224
|
-
|
|
246
|
+
runAsyncGeneratorWithOtelContext,
|
|
225
247
|
traceAgentInvocation,
|
|
226
248
|
traceCallLlm,
|
|
227
249
|
traceMergedToolCalls,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -48,9 +48,10 @@ function isAgentTool(obj) {
|
|
|
48
48
|
}
|
|
49
49
|
class AgentTool extends (_b = import_base_tool.BaseTool, _a = AGENT_TOOL_SIGNATURE_SYMBOL, _b) {
|
|
50
50
|
constructor(config) {
|
|
51
|
-
super(
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
super({
|
|
52
|
+
name: config.agent.name,
|
|
53
|
+
description: config.agent.description || ""
|
|
54
|
+
});
|
|
54
55
|
/** A unique symbol to identify ADK agent tool class. */
|
|
55
56
|
this[_a] = true;
|
|
56
57
|
this.agent = config.agent;
|
|
@@ -88,7 +89,10 @@ class AgentTool extends (_b = import_base_tool.BaseTool, _a = AGENT_TOOL_SIGNATU
|
|
|
88
89
|
}
|
|
89
90
|
return declaration;
|
|
90
91
|
}
|
|
91
|
-
async runAsync({
|
|
92
|
+
async runAsync({
|
|
93
|
+
args,
|
|
94
|
+
toolContext
|
|
95
|
+
}) {
|
|
92
96
|
var _a2, _b2;
|
|
93
97
|
if (this.skipSummarization) {
|
|
94
98
|
toolContext.actions.skipSummarization = true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -79,7 +79,7 @@ class BaseTool {
|
|
|
79
79
|
*
|
|
80
80
|
* @param request The request to process the LLM request.
|
|
81
81
|
*/
|
|
82
|
-
async processLlmRequest({
|
|
82
|
+
async processLlmRequest({ llmRequest }) {
|
|
83
83
|
const functionDeclaration = this._getDeclaration();
|
|
84
84
|
if (!functionDeclaration) {
|
|
85
85
|
return;
|
|
@@ -108,7 +108,9 @@ class BaseTool {
|
|
|
108
108
|
}
|
|
109
109
|
function findToolWithFunctionDeclarations(llmRequest) {
|
|
110
110
|
var _a2;
|
|
111
|
-
return (((_a2 = llmRequest.config) == null ? void 0 : _a2.tools) || []).find(
|
|
111
|
+
return (((_a2 = llmRequest.config) == null ? void 0 : _a2.tools) || []).find(
|
|
112
|
+
(tool) => "functionDeclarations" in tool
|
|
113
|
+
);
|
|
112
114
|
}
|
|
113
115
|
// Annotate the CommonJS export names for ESM import in node:
|
|
114
116
|
0 && (module.exports = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -45,7 +45,7 @@ class ForwardingArtifactService {
|
|
|
45
45
|
async loadArtifact(request) {
|
|
46
46
|
return this.toolContext.loadArtifact(request.filename, request.version);
|
|
47
47
|
}
|
|
48
|
-
async listArtifactKeys(
|
|
48
|
+
async listArtifactKeys() {
|
|
49
49
|
return this.toolContext.listArtifacts();
|
|
50
50
|
}
|
|
51
51
|
async deleteArtifact(request) {
|
|
@@ -64,6 +64,22 @@ class ForwardingArtifactService {
|
|
|
64
64
|
request
|
|
65
65
|
);
|
|
66
66
|
}
|
|
67
|
+
listArtifactVersions(request) {
|
|
68
|
+
if (!this.toolContext.invocationContext.artifactService) {
|
|
69
|
+
throw new Error("Artifact service is not initialized.");
|
|
70
|
+
}
|
|
71
|
+
return this.toolContext.invocationContext.artifactService.listArtifactVersions(
|
|
72
|
+
request
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
getArtifactVersion(request) {
|
|
76
|
+
if (!this.toolContext.invocationContext.artifactService) {
|
|
77
|
+
throw new Error("Artifact service is not initialized.");
|
|
78
|
+
}
|
|
79
|
+
return this.toolContext.invocationContext.artifactService.getArtifactVersion(
|
|
80
|
+
request
|
|
81
|
+
);
|
|
82
|
+
}
|
|
67
83
|
}
|
|
68
84
|
// Annotate the CommonJS export names for ESM import in node:
|
|
69
85
|
0 && (module.exports = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -29,7 +29,6 @@ __export(function_tool_exports, {
|
|
|
29
29
|
});
|
|
30
30
|
module.exports = __toCommonJS(function_tool_exports);
|
|
31
31
|
var import_genai = require("@google/genai");
|
|
32
|
-
var import_zod = require("zod");
|
|
33
32
|
var import_simple_zod_to_json = require("../utils/simple_zod_to_json.js");
|
|
34
33
|
var import_base_tool = require("./base_tool.js");
|
|
35
34
|
/**
|
|
@@ -90,7 +89,7 @@ class FunctionTool extends (_b = import_base_tool.BaseTool, _a = FUNCTION_TOOL_S
|
|
|
90
89
|
async runAsync(req) {
|
|
91
90
|
try {
|
|
92
91
|
let validatedArgs = req.args;
|
|
93
|
-
if (this.parameters
|
|
92
|
+
if ((0, import_simple_zod_to_json.isZodObject)(this.parameters)) {
|
|
94
93
|
validatedArgs = this.parameters.parse(req.args);
|
|
95
94
|
}
|
|
96
95
|
return await this.execute(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -39,11 +39,10 @@ class GoogleSearchTool extends import_base_tool.BaseTool {
|
|
|
39
39
|
constructor() {
|
|
40
40
|
super({ name: "google_search", description: "Google Search Tool" });
|
|
41
41
|
}
|
|
42
|
-
runAsync(
|
|
42
|
+
runAsync() {
|
|
43
43
|
return Promise.resolve();
|
|
44
44
|
}
|
|
45
45
|
async processLlmRequest({
|
|
46
|
-
toolContext,
|
|
47
46
|
llmRequest
|
|
48
47
|
}) {
|
|
49
48
|
if (!llmRequest.model) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* Copyright
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -40,6 +40,7 @@ class MCPSessionManager {
|
|
|
40
40
|
this.connectionParams = connectionParams;
|
|
41
41
|
}
|
|
42
42
|
async createSession() {
|
|
43
|
+
var _a;
|
|
43
44
|
const client = new import_client.Client({ name: "MCPClient", version: "1.0.0" });
|
|
44
45
|
switch (this.connectionParams.type) {
|
|
45
46
|
case "StdioConnectionParams":
|
|
@@ -47,20 +48,25 @@ class MCPSessionManager {
|
|
|
47
48
|
new import_stdio.StdioClientTransport(this.connectionParams.serverParams)
|
|
48
49
|
);
|
|
49
50
|
break;
|
|
50
|
-
case "StreamableHTTPConnectionParams":
|
|
51
|
-
const
|
|
52
|
-
|
|
51
|
+
case "StreamableHTTPConnectionParams": {
|
|
52
|
+
const options = (_a = this.connectionParams.transportOptions) != null ? _a : {};
|
|
53
|
+
if (!options.requestInit && this.connectionParams.header !== void 0) {
|
|
54
|
+
options.requestInit = {
|
|
53
55
|
headers: this.connectionParams.header
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
await client.connect(
|
|
57
|
-
new
|
|
58
|
-
|
|
59
|
-
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
await client.connect(
|
|
59
|
+
new import_streamableHttp.StreamableHTTPClientTransport(
|
|
60
|
+
new URL(this.connectionParams.url),
|
|
61
|
+
options
|
|
62
|
+
)
|
|
63
|
+
);
|
|
60
64
|
break;
|
|
61
|
-
|
|
65
|
+
}
|
|
66
|
+
default: {
|
|
62
67
|
const _exhaustiveCheck = this.connectionParams;
|
|
63
68
|
break;
|
|
69
|
+
}
|
|
64
70
|
}
|
|
65
71
|
return client;
|
|
66
72
|
}
|