@vybestack/llxprt-code-core 0.4.8 → 0.5.0-nightly.251102.e5b51aa3

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.
Files changed (213) hide show
  1. package/dist/prompt-config/defaults/default-prompts.json +4 -17
  2. package/dist/src/auth/precedence.d.ts +69 -9
  3. package/dist/src/auth/precedence.js +467 -69
  4. package/dist/src/auth/precedence.js.map +1 -1
  5. package/dist/src/auth/types.d.ts +2 -2
  6. package/dist/src/config/config.d.ts +15 -1
  7. package/dist/src/config/config.js +118 -6
  8. package/dist/src/config/config.js.map +1 -1
  9. package/dist/src/config/index.d.ts +6 -0
  10. package/dist/src/config/index.js +5 -0
  11. package/dist/src/config/index.js.map +1 -1
  12. package/dist/src/config/profileManager.d.ts +23 -3
  13. package/dist/src/config/profileManager.js +54 -7
  14. package/dist/src/config/profileManager.js.map +1 -1
  15. package/dist/src/config/subagentManager.d.ts +96 -0
  16. package/dist/src/config/subagentManager.js +371 -0
  17. package/dist/src/config/subagentManager.js.map +1 -0
  18. package/dist/src/config/types.d.ts +18 -0
  19. package/dist/src/config/types.js +3 -0
  20. package/dist/src/config/types.js.map +1 -0
  21. package/dist/src/core/client.d.ts +27 -7
  22. package/dist/src/core/client.js +231 -55
  23. package/dist/src/core/client.js.map +1 -1
  24. package/dist/src/core/contentGenerator.d.ts +3 -1
  25. package/dist/src/core/contentGenerator.js +3 -0
  26. package/dist/src/core/contentGenerator.js.map +1 -1
  27. package/dist/src/core/coreToolScheduler.d.ts +1 -5
  28. package/dist/src/core/coreToolScheduler.js +95 -23
  29. package/dist/src/core/coreToolScheduler.js.map +1 -1
  30. package/dist/src/core/geminiChat.d.ts +42 -12
  31. package/dist/src/core/geminiChat.js +405 -205
  32. package/dist/src/core/geminiChat.js.map +1 -1
  33. package/dist/src/core/nonInteractiveToolExecutor.d.ts +3 -2
  34. package/dist/src/core/nonInteractiveToolExecutor.js +94 -10
  35. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  36. package/dist/src/core/subagent.d.ts +86 -7
  37. package/dist/src/core/subagent.js +809 -79
  38. package/dist/src/core/subagent.js.map +1 -1
  39. package/dist/src/core/subagentOrchestrator.d.ts +73 -0
  40. package/dist/src/core/subagentOrchestrator.js +387 -0
  41. package/dist/src/core/subagentOrchestrator.js.map +1 -0
  42. package/dist/src/core/subagentScheduler.d.ts +16 -0
  43. package/dist/src/core/subagentScheduler.js +7 -0
  44. package/dist/src/core/subagentScheduler.js.map +1 -0
  45. package/dist/src/core/turn.d.ts +5 -1
  46. package/dist/src/core/turn.js +5 -1
  47. package/dist/src/core/turn.js.map +1 -1
  48. package/dist/src/hooks/tool-render-suppression-hook.js +6 -1
  49. package/dist/src/hooks/tool-render-suppression-hook.js.map +1 -1
  50. package/dist/src/ide/ideContext.d.ts +32 -32
  51. package/dist/src/index.d.ts +19 -1
  52. package/dist/src/index.js +15 -2
  53. package/dist/src/index.js.map +1 -1
  54. package/dist/src/interfaces/index.d.ts +1 -0
  55. package/dist/src/interfaces/index.js +4 -0
  56. package/dist/src/interfaces/index.js.map +1 -0
  57. package/dist/src/interfaces/nodejs-error.interface.d.ts +4 -0
  58. package/dist/src/interfaces/nodejs-error.interface.js +2 -0
  59. package/dist/src/interfaces/nodejs-error.interface.js.map +1 -0
  60. package/dist/src/parsers/TextToolCallParser.d.ts +17 -1
  61. package/dist/src/parsers/TextToolCallParser.js +542 -148
  62. package/dist/src/parsers/TextToolCallParser.js.map +1 -1
  63. package/dist/src/prompt-config/defaults/core.md +15 -0
  64. package/dist/src/prompt-config/defaults/providers/gemini/core.md +203 -119
  65. package/dist/src/prompt-config/defaults/tool-defaults.js +2 -0
  66. package/dist/src/prompt-config/defaults/tool-defaults.js.map +1 -1
  67. package/dist/src/prompt-config/defaults/tools/list-subagents.md +7 -0
  68. package/dist/src/prompt-config/defaults/tools/task.md +8 -0
  69. package/dist/src/providers/BaseProvider.d.ts +115 -30
  70. package/dist/src/providers/BaseProvider.js +445 -109
  71. package/dist/src/providers/BaseProvider.js.map +1 -1
  72. package/dist/src/providers/IProvider.d.ts +50 -18
  73. package/dist/src/providers/LoggingProviderWrapper.d.ts +60 -16
  74. package/dist/src/providers/LoggingProviderWrapper.js +213 -60
  75. package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
  76. package/dist/src/providers/ProviderManager.d.ts +73 -2
  77. package/dist/src/providers/ProviderManager.js +492 -40
  78. package/dist/src/providers/ProviderManager.js.map +1 -1
  79. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +35 -38
  80. package/dist/src/providers/anthropic/AnthropicProvider.js +222 -227
  81. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  82. package/dist/src/providers/errors.d.ts +86 -0
  83. package/dist/src/providers/errors.js +89 -0
  84. package/dist/src/providers/errors.js.map +1 -1
  85. package/dist/src/providers/gemini/GeminiProvider.d.ts +101 -41
  86. package/dist/src/providers/gemini/GeminiProvider.js +386 -311
  87. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  88. package/dist/src/providers/openai/ConversationCache.d.ts +5 -3
  89. package/dist/src/providers/openai/ConversationCache.js +93 -32
  90. package/dist/src/providers/openai/ConversationCache.js.map +1 -1
  91. package/dist/src/providers/openai/OpenAIProvider.d.ts +82 -42
  92. package/dist/src/providers/openai/OpenAIProvider.js +391 -536
  93. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  94. package/dist/src/providers/openai/getOpenAIProviderInfo.d.ts +1 -1
  95. package/dist/src/providers/openai/getOpenAIProviderInfo.js +52 -22
  96. package/dist/src/providers/openai/getOpenAIProviderInfo.js.map +1 -1
  97. package/dist/src/providers/openai/openaiRequestParams.d.ts +7 -0
  98. package/dist/src/providers/openai/openaiRequestParams.js +66 -0
  99. package/dist/src/providers/openai/openaiRequestParams.js.map +1 -0
  100. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.d.ts +6 -33
  101. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js +84 -183
  102. package/dist/src/providers/openai-responses/OpenAIResponsesProvider.js.map +1 -1
  103. package/dist/src/providers/types/providerRuntime.d.ts +17 -0
  104. package/dist/src/providers/types/providerRuntime.js +7 -0
  105. package/dist/src/providers/types/providerRuntime.js.map +1 -0
  106. package/dist/src/providers/utils/authToken.d.ts +12 -0
  107. package/dist/src/providers/utils/authToken.js +17 -0
  108. package/dist/src/providers/utils/authToken.js.map +1 -0
  109. package/dist/src/providers/utils/userMemory.d.ts +8 -0
  110. package/dist/src/providers/utils/userMemory.js +34 -0
  111. package/dist/src/providers/utils/userMemory.js.map +1 -0
  112. package/dist/src/runtime/AgentRuntimeContext.d.ts +213 -0
  113. package/dist/src/runtime/AgentRuntimeContext.js +17 -0
  114. package/dist/src/runtime/AgentRuntimeContext.js.map +1 -0
  115. package/dist/src/runtime/AgentRuntimeLoader.d.ts +47 -0
  116. package/dist/src/runtime/AgentRuntimeLoader.js +122 -0
  117. package/dist/src/runtime/AgentRuntimeLoader.js.map +1 -0
  118. package/dist/src/runtime/AgentRuntimeState.d.ts +232 -0
  119. package/dist/src/runtime/AgentRuntimeState.js +439 -0
  120. package/dist/src/runtime/AgentRuntimeState.js.map +1 -0
  121. package/dist/src/runtime/RuntimeInvocationContext.d.ts +51 -0
  122. package/dist/src/runtime/RuntimeInvocationContext.js +52 -0
  123. package/dist/src/runtime/RuntimeInvocationContext.js.map +1 -0
  124. package/dist/src/runtime/createAgentRuntimeContext.d.ts +7 -0
  125. package/dist/src/runtime/createAgentRuntimeContext.js +65 -0
  126. package/dist/src/runtime/createAgentRuntimeContext.js.map +1 -0
  127. package/dist/src/runtime/index.d.ts +13 -0
  128. package/dist/src/runtime/index.js +14 -0
  129. package/dist/src/runtime/index.js.map +1 -0
  130. package/dist/src/runtime/providerRuntimeContext.d.ts +30 -0
  131. package/dist/src/runtime/providerRuntimeContext.js +70 -0
  132. package/dist/src/runtime/providerRuntimeContext.js.map +1 -0
  133. package/dist/src/runtime/runtimeAdapters.d.ts +22 -0
  134. package/dist/src/runtime/runtimeAdapters.js +81 -0
  135. package/dist/src/runtime/runtimeAdapters.js.map +1 -0
  136. package/dist/src/runtime/runtimeStateFactory.d.ts +21 -0
  137. package/dist/src/runtime/runtimeStateFactory.js +104 -0
  138. package/dist/src/runtime/runtimeStateFactory.js.map +1 -0
  139. package/dist/src/services/todo-context-tracker.d.ts +10 -8
  140. package/dist/src/services/todo-context-tracker.js +26 -10
  141. package/dist/src/services/todo-context-tracker.js.map +1 -1
  142. package/dist/src/services/tool-call-tracker-service.d.ts +11 -7
  143. package/dist/src/services/tool-call-tracker-service.js +89 -29
  144. package/dist/src/services/tool-call-tracker-service.js.map +1 -1
  145. package/dist/src/settings/SettingsService.d.ts +4 -0
  146. package/dist/src/settings/SettingsService.js +65 -2
  147. package/dist/src/settings/SettingsService.js.map +1 -1
  148. package/dist/src/settings/settingsServiceInstance.d.ts +6 -1
  149. package/dist/src/settings/settingsServiceInstance.js +28 -8
  150. package/dist/src/settings/settingsServiceInstance.js.map +1 -1
  151. package/dist/src/telemetry/loggers.d.ts +5 -1
  152. package/dist/src/telemetry/loggers.js.map +1 -1
  153. package/dist/src/telemetry/loggers.test.circular.js +4 -0
  154. package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
  155. package/dist/src/telemetry/metrics.d.ts +3 -1
  156. package/dist/src/telemetry/metrics.js.map +1 -1
  157. package/dist/src/telemetry/types.d.ts +1 -0
  158. package/dist/src/telemetry/types.js +3 -0
  159. package/dist/src/telemetry/types.js.map +1 -1
  160. package/dist/src/test-utils/index.d.ts +2 -0
  161. package/dist/src/test-utils/index.js +2 -0
  162. package/dist/src/test-utils/index.js.map +1 -1
  163. package/dist/src/test-utils/mockWorkspaceContext.d.ts +0 -3
  164. package/dist/src/test-utils/mockWorkspaceContext.js +3 -4
  165. package/dist/src/test-utils/mockWorkspaceContext.js.map +1 -1
  166. package/dist/src/test-utils/providerCallOptions.d.ts +43 -0
  167. package/dist/src/test-utils/providerCallOptions.js +137 -0
  168. package/dist/src/test-utils/providerCallOptions.js.map +1 -0
  169. package/dist/src/test-utils/runtime.d.ts +92 -0
  170. package/dist/src/test-utils/runtime.js +226 -0
  171. package/dist/src/test-utils/runtime.js.map +1 -0
  172. package/dist/src/test-utils/tools.d.ts +4 -4
  173. package/dist/src/test-utils/tools.js +20 -10
  174. package/dist/src/test-utils/tools.js.map +1 -1
  175. package/dist/src/tools/list-subagents.d.ts +31 -0
  176. package/dist/src/tools/list-subagents.js +109 -0
  177. package/dist/src/tools/list-subagents.js.map +1 -0
  178. package/dist/src/tools/task.d.ts +87 -0
  179. package/dist/src/tools/task.js +427 -0
  180. package/dist/src/tools/task.js.map +1 -0
  181. package/dist/src/tools/todo-read.js +1 -1
  182. package/dist/src/tools/todo-read.js.map +1 -1
  183. package/dist/src/tools/todo-store.js +4 -2
  184. package/dist/src/tools/todo-store.js.map +1 -1
  185. package/dist/src/tools/todo-write.js +4 -2
  186. package/dist/src/tools/todo-write.js.map +1 -1
  187. package/dist/src/tools/tool-error.d.ts +1 -0
  188. package/dist/src/tools/tool-error.js +1 -0
  189. package/dist/src/tools/tool-error.js.map +1 -1
  190. package/dist/src/tools/tool-registry.d.ts +2 -0
  191. package/dist/src/tools/tool-registry.js +46 -21
  192. package/dist/src/tools/tool-registry.js.map +1 -1
  193. package/dist/src/types/modelParams.d.ts +4 -0
  194. package/dist/src/utils/editor.js +10 -8
  195. package/dist/src/utils/editor.js.map +1 -1
  196. package/dist/src/utils/gitIgnoreParser.js +15 -3
  197. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  198. package/package.json +1 -1
  199. package/dist/src/prompt-config/defaults/providers/anthropic/core.md +0 -97
  200. package/dist/src/prompt-config/defaults/providers/anthropic/tools/glob.md +0 -34
  201. package/dist/src/prompt-config/defaults/providers/anthropic/tools/list-directory.md +0 -11
  202. package/dist/src/prompt-config/defaults/providers/anthropic/tools/read-file.md +0 -14
  203. package/dist/src/prompt-config/defaults/providers/anthropic/tools/read-many-files.md +0 -31
  204. package/dist/src/prompt-config/defaults/providers/anthropic/tools/replace.md +0 -41
  205. package/dist/src/prompt-config/defaults/providers/anthropic/tools/run-shell-command.md +0 -32
  206. package/dist/src/prompt-config/defaults/providers/anthropic/tools/save-memory.md +0 -35
  207. package/dist/src/prompt-config/defaults/providers/anthropic/tools/search-file-content.md +0 -44
  208. package/dist/src/prompt-config/defaults/providers/anthropic/tools/todo-write.md +0 -45
  209. package/dist/src/prompt-config/defaults/providers/anthropic/tools/write-file.md +0 -11
  210. package/dist/src/prompt-config/defaults/providers/openai/core.md +0 -97
  211. package/dist/src/prompt-config/defaults/providers/openai/tools/todo-pause.md +0 -28
  212. package/dist/src/prompt-config/defaults/providers/openai/tools/todo-read.md +0 -5
  213. package/dist/src/prompt-config/defaults/providers/openai/tools/todo-write.md +0 -45
@@ -4,7 +4,11 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Config } from '../config/config.js';
7
- import { Content, FunctionDeclaration } from '@google/genai';
7
+ import { Content, Part, FunctionDeclaration } from '@google/genai';
8
+ import type { AgentRuntimeContext, ReadonlySettingsSnapshot } from '../runtime/AgentRuntimeContext.js';
9
+ import type { AgentRuntimeLoaderResult } from '../runtime/AgentRuntimeLoader.js';
10
+ import type { ToolRegistry } from '../tools/tool-registry.js';
11
+ import type { SubagentSchedulerFactory } from './subagentScheduler.js';
8
12
  /**
9
13
  * @fileoverview Defines the configuration interfaces for a subagent.
10
14
  *
@@ -44,6 +48,10 @@ export interface OutputObject {
44
48
  * during its execution. These variables can be used by the calling agent.
45
49
  */
46
50
  emitted_vars: Record<string, string>;
51
+ /**
52
+ * The final natural language response produced by the subagent (if any).
53
+ */
54
+ final_message?: string;
47
55
  /**
48
56
  * The reason for the subagent's termination, indicating whether it completed
49
57
  * successfully, timed out, or encountered an error.
@@ -85,6 +93,12 @@ export interface OutputConfig {
85
93
  */
86
94
  outputs: Record<string, string>;
87
95
  }
96
+ export interface SubAgentRuntimeOverrides {
97
+ settingsSnapshot?: ReadonlySettingsSnapshot;
98
+ toolRegistry?: ToolRegistry;
99
+ environmentContextLoader?: (runtime: AgentRuntimeContext) => Promise<Part[]>;
100
+ runtimeBundle?: AgentRuntimeLoaderResult;
101
+ }
88
102
  /**
89
103
  * Configures the generative model parameters for the subagent.
90
104
  * This interface specifies the model to be used and its associated generation settings,
@@ -155,53 +169,97 @@ export declare class ContextState {
155
169
  * Represents the scope and execution environment for a subagent.
156
170
  * This class orchestrates the subagent's lifecycle, managing its chat interactions,
157
171
  * runtime context, and the collection of its outputs.
172
+ *
173
+ * @plan PLAN-20251028-STATELESS6.P08
174
+ * @requirement REQ-STAT6-001.1, REQ-STAT6-001.2, REQ-STAT6-003.1, REQ-STAT6-003.2
175
+ * @pseudocode agent-runtime-context.md line 93 (step 007.1)
158
176
  */
159
177
  export declare class SubAgentScope {
160
178
  readonly name: string;
161
- readonly runtimeContext: Config;
162
- private readonly promptConfig;
179
+ readonly runtimeContext: AgentRuntimeContext;
163
180
  private readonly modelConfig;
164
181
  private readonly runConfig;
182
+ private readonly promptConfig;
183
+ private readonly contentGenerator;
184
+ private readonly toolExecutorContext;
185
+ private readonly environmentContextLoader;
186
+ private readonly config;
165
187
  private readonly toolConfig?;
166
188
  private readonly outputConfig?;
167
189
  output: OutputObject;
168
190
  private readonly subagentId;
191
+ private readonly logger;
192
+ private readonly textToolParser;
193
+ private activeAbortController;
169
194
  /** Optional callback for streaming text messages during execution */
170
195
  onMessage?: (message: string) => void;
171
196
  /**
172
197
  * Constructs a new SubAgentScope instance.
198
+ *
199
+ * @plan PLAN-20251028-STATELESS6.P08
200
+ * @requirement REQ-STAT6-001.1
201
+ * @pseudocode agent-runtime-context.md line 93 (step 007.1)
202
+ *
173
203
  * @param name - The name for the subagent, used for logging and identification.
174
- * @param runtimeContext - The shared runtime configuration and services.
175
- * @param promptConfig - Configuration for the subagent's prompt and behavior.
204
+ * @param runtimeContext - Immutable runtime context (replaces Config parameter).
176
205
  * @param modelConfig - Configuration for the generative model parameters.
177
206
  * @param runConfig - Configuration for the subagent's execution environment.
207
+ * @param promptConfig - Configuration for the subagent's prompt and behavior.
208
+ * @param contentGenerator - Pre-initialized content generator for this subagent.
209
+ * @param toolRegistry - Active tool registry for execution and validation.
210
+ * @param toolExecutorContext - Stateless execution context used for tool invocations.
211
+ * @param environmentContextLoader - Function that resolves environment context for prompts.
178
212
  * @param toolConfig - Optional configuration for tools available to the subagent.
179
213
  * @param outputConfig - Optional configuration for the subagent's expected outputs.
180
214
  */
181
215
  private constructor();
216
+ /**
217
+ * Returns the unique agent identifier assigned to this subagent scope.
218
+ */
219
+ getAgentId(): string;
182
220
  /**
183
221
  * Creates and validates a new SubAgentScope instance.
184
222
  * This factory method ensures that all tools provided in the prompt configuration
185
223
  * are valid for non-interactive use before creating the subagent instance.
224
+ *
225
+ * @plan PLAN-20251028-STATELESS6.P08
226
+ * @requirement REQ-STAT6-001.1, REQ-STAT6-003.1, REQ-STAT6-003.2
227
+ * @pseudocode agent-runtime-context.md lines 94-98 (steps 007.2-007.6)
228
+ *
186
229
  * @param {string} name - The name of the subagent.
187
- * @param {Config} runtimeContext - The shared runtime configuration and services.
230
+ * @param {Config} foregroundConfig - Foreground configuration used for shared scheduler plumbing.
188
231
  * @param {PromptConfig} promptConfig - Configuration for the subagent's prompt and behavior.
189
232
  * @param {ModelConfig} modelConfig - Configuration for the generative model parameters.
190
233
  * @param {RunConfig} runConfig - Configuration for the subagent's execution environment.
191
234
  * @param {ToolConfig} [toolConfig] - Optional configuration for tools.
192
235
  * @param {OutputConfig} [outputConfig] - Optional configuration for expected outputs.
236
+ * @param {SubAgentRuntimeOverrides} [overrides] - Optional stateless runtime inputs (provider runtime, adapters, settings) to bypass Config usage.
193
237
  * @returns {Promise<SubAgentScope>} A promise that resolves to a valid SubAgentScope instance.
194
238
  * @throws {Error} If any tool requires user confirmation.
195
239
  */
196
- static create(name: string, runtimeContext: Config, promptConfig: PromptConfig, modelConfig: ModelConfig, runConfig: RunConfig, toolConfig?: ToolConfig, outputConfig?: OutputConfig): Promise<SubAgentScope>;
240
+ static create(name: string, foregroundConfig: Config, promptConfig: PromptConfig, modelConfig: ModelConfig, runConfig: RunConfig, toolConfig?: ToolConfig, outputConfig?: OutputConfig, overrides?: SubAgentRuntimeOverrides): Promise<SubAgentScope>;
241
+ private buildInitialMessages;
242
+ /**
243
+ * Executes the subagent in interactive mode by routing tool calls through the
244
+ * shared CoreToolScheduler. Tests may supply a custom schedulerFactory to
245
+ * observe scheduling behaviour without touching the real scheduler.
246
+ */
247
+ runInteractive(context: ContextState, options?: {
248
+ schedulerFactory?: SubagentSchedulerFactory;
249
+ }): Promise<void>;
197
250
  /**
198
251
  * Runs the subagent in a non-interactive mode.
199
252
  * This method orchestrates the subagent's execution loop, including prompt templating,
200
253
  * tool execution, and termination conditions.
254
+ *
255
+ * @plan PLAN-20251028-STATELESS6.P08
256
+ * @requirement REQ-STAT6-001.1
257
+ *
201
258
  * @param {ContextState} context - The current context state containing variables for prompt templating.
202
259
  * @returns {Promise<void>} A promise that resolves when the subagent has completed its execution.
203
260
  */
204
261
  runNonInteractive(context: ContextState): Promise<void>;
262
+ cancel(reason?: string): void;
205
263
  /**
206
264
  * Processes a list of function calls, executing each one and collecting their responses.
207
265
  * This method iterates through the provided function calls, executes them using the
@@ -214,13 +272,34 @@ export declare class SubAgentScope {
214
272
  * which are then used to update the chat history.
215
273
  */
216
274
  private processFunctionCalls;
275
+ private createSchedulerConfig;
276
+ private finalizeOutput;
277
+ private isFatalToolError;
278
+ private buildToolUnavailableMessage;
279
+ private extractToolDetail;
280
+ private handleEmitValueCall;
281
+ private buildPartsFromCompletedCalls;
282
+ private buildTodoCompletionPrompt;
283
+ /**
284
+ * Creates a GeminiChat instance for this subagent.
285
+ *
286
+ * @plan PLAN-20251028-STATELESS6.P08
287
+ * @requirement REQ-STAT6-001.1, REQ-STAT6-003.1
288
+ * @pseudocode agent-runtime-context.md line 99 (step 007.7)
289
+ *
290
+ * Step 007.7: Update GeminiChat instantiation to use AgentRuntimeContext
291
+ * Step 007.8: REMOVE Config mutation (no setModel call)
292
+ */
217
293
  private createChatObject;
294
+ private buildRuntimeFunctionDeclarations;
218
295
  /**
219
296
  * Returns an array of FunctionDeclaration objects for tools that are local to the subagent's scope.
220
297
  * Currently, this includes the `self.emitvalue` tool for emitting variables.
221
298
  * @returns An array of `FunctionDeclaration` objects.
222
299
  */
223
300
  private getScopeLocalFuncDefs;
301
+ private normalizeToolName;
302
+ private toSnakeCase;
224
303
  /**
225
304
  * Builds the system prompt for the chat based on the provided configurations.
226
305
  * It templates the base system prompt and appends instructions for emitting