( context: ToolUseContext, forkContextMessages: Message[], )
| 249 | } |
| 250 | |
| 251 | async function getCacheSharingParams( |
| 252 | context: ToolUseContext, |
| 253 | forkContextMessages: Message[], |
| 254 | ): Promise<{ |
| 255 | systemPrompt: SystemPrompt |
| 256 | userContext: { [k: string]: string } |
| 257 | systemContext: { [k: string]: string } |
| 258 | toolUseContext: ToolUseContext |
| 259 | forkContextMessages: Message[] |
| 260 | }> { |
| 261 | const appState = context.getAppState() |
| 262 | const defaultSysPrompt = await getSystemPrompt( |
| 263 | context.options.tools, |
| 264 | context.options.mainLoopModel, |
| 265 | Array.from( |
| 266 | appState.toolPermissionContext.additionalWorkingDirectories.keys(), |
| 267 | ), |
| 268 | context.options.mcpClients, |
| 269 | ) |
| 270 | const systemPrompt = buildEffectiveSystemPrompt({ |
| 271 | mainThreadAgentDefinition: undefined, |
| 272 | toolUseContext: context, |
| 273 | customSystemPrompt: context.options.customSystemPrompt, |
| 274 | defaultSystemPrompt: defaultSysPrompt, |
| 275 | appendSystemPrompt: context.options.appendSystemPrompt, |
| 276 | }) |
| 277 | const [userContext, systemContext] = await Promise.all([ |
| 278 | getUserContext(), |
| 279 | getSystemContext(), |
| 280 | ]) |
| 281 | return { |
| 282 | systemPrompt, |
| 283 | userContext, |
| 284 | systemContext, |
| 285 | toolUseContext: context, |
| 286 | forkContextMessages, |
| 287 | } |
| 288 | } |
no test coverage detected