@promptbook/openai 0.114.0-2 → 0.114.0-4

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 (186) hide show
  1. package/README.md +1 -9
  2. package/esm/index.es.js +68 -13
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  5. package/esm/src/book-components/Chat/utils/$provideServerDomWindow.d.ts +11 -0
  6. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +7 -0
  7. package/esm/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  8. package/esm/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  9. package/esm/src/cli/cli-commands/coder/ping.d.ts +2 -5
  10. package/esm/src/cli/cli-commands/coder.d.ts +1 -1
  11. package/esm/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +34 -0
  12. package/esm/src/cli/common/loadPromptsModule.d.ts +16 -0
  13. package/esm/src/commitments/{COMPONENT/COMPONENT.d.ts → META_FULLNAME/META_FULLNAME.d.ts} +8 -5
  14. package/esm/src/commitments/META_ID/META_ID.d.ts +32 -0
  15. package/esm/src/commitments/index.d.ts +4 -12
  16. package/esm/src/llm-providers/agent/Agent.d.ts +1 -1
  17. package/esm/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  18. package/esm/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  19. package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +1 -1
  20. package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +2 -2
  21. package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +1 -1
  22. package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +1 -1
  23. package/esm/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +1 -1
  24. package/esm/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +1 -1
  25. package/esm/src/llm-providers/openai/utils/callOpenAiCompatibleChatModel.d.ts +1 -1
  26. package/esm/src/llm-providers/openai/utils/loadOpenAiAgentsModule.d.ts +203 -0
  27. package/esm/src/llm-providers/openai/utils/uploadFilesToOpenAi.d.ts +1 -1
  28. package/esm/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  29. package/esm/src/utils/misc/createLazyModuleLoader.d.ts +14 -0
  30. package/esm/src/version.d.ts +1 -1
  31. package/package.json +6 -2
  32. package/umd/index.umd.js +79 -22
  33. package/umd/index.umd.js.map +1 -1
  34. package/umd/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  35. package/umd/src/book-components/Chat/utils/$provideServerDomWindow.d.ts +11 -0
  36. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +7 -0
  37. package/umd/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  38. package/umd/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  39. package/umd/src/cli/cli-commands/coder/ping.d.ts +2 -5
  40. package/umd/src/cli/cli-commands/coder.d.ts +1 -1
  41. package/umd/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +34 -0
  42. package/umd/src/cli/common/loadPromptsModule.d.ts +16 -0
  43. package/umd/src/commitments/{COMPONENT/COMPONENT.d.ts → META_FULLNAME/META_FULLNAME.d.ts} +8 -5
  44. package/umd/src/commitments/META_ID/META_ID.d.ts +32 -0
  45. package/umd/src/commitments/index.d.ts +4 -12
  46. package/umd/src/llm-providers/agent/Agent.d.ts +1 -1
  47. package/umd/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  48. package/umd/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  49. package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +1 -1
  50. package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +2 -2
  51. package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +1 -1
  52. package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +1 -1
  53. package/umd/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +1 -1
  54. package/umd/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +1 -1
  55. package/umd/src/llm-providers/openai/utils/callOpenAiCompatibleChatModel.d.ts +1 -1
  56. package/umd/src/llm-providers/openai/utils/loadOpenAiAgentsModule.d.ts +203 -0
  57. package/umd/src/llm-providers/openai/utils/uploadFilesToOpenAi.d.ts +1 -1
  58. package/umd/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  59. package/umd/src/utils/misc/createLazyModuleLoader.d.ts +14 -0
  60. package/umd/src/version.d.ts +1 -1
  61. package/esm/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  62. package/esm/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  63. package/esm/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  64. package/esm/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  65. package/esm/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  66. package/esm/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  67. package/esm/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  68. package/esm/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  69. package/esm/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  70. package/esm/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  71. package/esm/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  72. package/esm/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  73. package/esm/src/commitments/META/META.d.ts +0 -65
  74. package/esm/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  75. package/esm/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  76. package/esm/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  77. package/esm/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  78. package/esm/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  79. package/esm/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  80. package/esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  81. package/esm/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  82. package/esm/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  83. package/esm/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  84. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  85. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  86. package/esm/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  87. package/esm/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  88. package/esm/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  89. package/esm/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  90. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  91. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  92. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  93. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  94. package/esm/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  95. package/esm/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  96. package/esm/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  97. package/esm/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  98. package/esm/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  99. package/esm/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  100. package/esm/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  101. package/esm/src/commitments/WALLET/WALLET.d.ts +0 -21
  102. package/esm/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  103. package/esm/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  104. package/esm/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  105. package/esm/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  106. package/esm/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  107. package/esm/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  108. package/esm/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  109. package/esm/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  110. package/esm/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  111. package/esm/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  112. package/esm/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  113. package/esm/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  114. package/esm/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  115. package/umd/src/book-2.0/agent-source/createAgentModelRequirements.useCommitmentAggregation.test.d.ts +0 -1
  116. package/umd/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  117. package/umd/src/commitments/MEMORY/MEMORY.test.d.ts +0 -1
  118. package/umd/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  119. package/umd/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  120. package/umd/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  121. package/umd/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  122. package/umd/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  123. package/umd/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  124. package/umd/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  125. package/umd/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  126. package/umd/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  127. package/umd/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  128. package/umd/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  129. package/umd/src/commitments/META/META.d.ts +0 -65
  130. package/umd/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  131. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  132. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +0 -1
  133. package/umd/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  134. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  135. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts +0 -1
  136. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  137. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.test.d.ts +0 -1
  138. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  139. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts +0 -1
  140. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  141. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts +0 -1
  142. package/umd/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  143. package/umd/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  144. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  145. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.test.d.ts +0 -1
  146. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  147. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  148. package/umd/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  149. package/umd/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  150. package/umd/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  151. package/umd/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  152. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  153. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  154. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  155. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  156. package/umd/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  157. package/umd/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  158. package/umd/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  159. package/umd/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  160. package/umd/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  161. package/umd/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  162. package/umd/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  163. package/umd/src/commitments/WALLET/WALLET.d.ts +0 -21
  164. package/umd/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  165. package/umd/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  166. package/umd/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  167. package/umd/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  168. package/umd/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  169. package/umd/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  170. package/umd/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  171. package/umd/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  172. package/umd/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  173. package/umd/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  174. package/umd/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  175. package/umd/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  176. package/umd/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  177. /package/esm/src/book-2.0/agent-source/{createAgentModelRequirements.useCommitmentAggregation.test.d.ts → createAgentModelRequirements.commitmentAggregation.test.d.ts} +0 -0
  178. /package/esm/src/{commitments/MEMORY/MEMORY.test.d.ts → cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  179. /package/esm/src/{commitments/USE_BROWSER/USE_BROWSER.test.d.ts → cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  180. /package/esm/src/{commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts → cli/cli-commands/common/coderGitSyncCliOptions.test.d.ts} +0 -0
  181. /package/esm/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
  182. /package/{esm/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.test.d.ts → umd/src/book-2.0/agent-source/createAgentModelRequirements.commitmentAggregation.test.d.ts} +0 -0
  183. /package/{esm/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts → umd/src/cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  184. /package/{esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts → umd/src/cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  185. /package/{esm/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.test.d.ts → umd/src/cli/cli-commands/common/coderGitSyncCliOptions.test.d.ts} +0 -0
  186. /package/umd/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
package/README.md CHANGED
@@ -410,8 +410,6 @@ Respond to incoming legal inquiries via email and keep the company website updat
410
410
  **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
411
411
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
412
412
  <br/>
413
- USE EMAIL<br/>
414
- USE BROWSER<br/>
415
413
  <br/>
416
414
  TEAM You are part of the legal team of Paul Smith & Associés, you discuss with {Emily White}, the head of the compliance department. {George Brown} is expert in corporate law and {Sophia Black} is expert in labor law.<br/>
417
415
 
@@ -500,7 +498,7 @@ GOAL Keep the company website updated with the latest legal policies and complia
500
498
 
501
499
  #### `Use` commitments
502
500
 
503
- Use commitments grant the agent real capabilities - tools it can use to interact with the outside world. `USE EMAIL` lets the agent send emails, `USE BROWSER` lets it access and read web content, `USE SEARCH ENGINE` lets it search the web, and many more.
501
+ Use commitments grant the agent real capabilities - tools it can use to interact with the outside world. `USE CALENDAR` lets the agent work with a calendar, `USE PROJECT` gives it access to a code repository, `USE MCP` connects any external Model Context Protocol server, and many more.
504
502
 
505
503
  These are what turn a chatbot into a persistent agent that actually does work.
506
504
 
@@ -517,9 +515,6 @@ GOAL Keep the company website updated with the latest legal policies and complia
517
515
  **RULE** Never provide legal advice about criminal law.<br/>
518
516
  **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
519
517
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
520
- USE EMAIL<br/>
521
- USE BROWSER<br/>
522
- USE SEARCH ENGINE<br/>
523
518
 
524
519
  </td></tr></table>
525
520
 
@@ -540,9 +535,6 @@ GOAL Keep the company website updated with the latest legal policies and complia
540
535
  **RULE** Never provide legal advice about criminal law.<br/>
541
536
  **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
542
537
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
543
- USE EMAIL<br/>
544
- USE BROWSER<br/>
545
- USE SEARCH ENGINE<br/>
546
538
  TEAM You are part of the legal team of Paul Smith & Associés, you discuss with {Emily White}, the head of the compliance department. {George Brown} is expert in corporate law and {Sophia Black} is expert in labor law.<br/>
547
539
 
548
540
  </td></tr></table>
package/esm/index.es.js CHANGED
@@ -2,9 +2,6 @@ import { spaceTrim as spaceTrim$1 } from 'spacetrim';
2
2
  import CryptoJS from 'crypto-js';
3
3
  import colors from 'colors';
4
4
  import Bottleneck from 'bottleneck';
5
- import OpenAI from 'openai';
6
- import { io } from 'socket.io-client';
7
- import { fileSearchTool, tool, Agent, webSearchTool, run, setDefaultOpenAIClient, setDefaultOpenAIKey } from '@openai/agents';
8
5
 
9
6
  // ⚠️ WARNING: This code has been generated so that any manual changes will be overwritten
10
7
  /**
@@ -20,7 +17,7 @@ const BOOK_LANGUAGE_VERSION = '2.0.0';
20
17
  * @generated
21
18
  * @see https://github.com/webgptorg/promptbook
22
19
  */
23
- const PROMPTBOOK_ENGINE_VERSION = '0.114.0-2';
20
+ const PROMPTBOOK_ENGINE_VERSION = '0.114.0-4';
24
21
  /**
25
22
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
26
23
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -4820,6 +4817,39 @@ class OpenAiCompatibleNonChatPromptCaller {
4820
4817
  }
4821
4818
  }
4822
4819
 
4820
+ /**
4821
+ * Creates a loader which imports one module on the first call and reuses the very same module afterwards
4822
+ *
4823
+ * Note: [🐌] Heavy third-party dependencies are imported lazily to keep the startup of the Promptbook CLI fast.
4824
+ * A statically imported dependency is loaded every single time the bundle is loaded, even when the running
4825
+ * command never touches it. A lazily imported dependency is loaded only when the feature is really used.
4826
+ *
4827
+ * @example
4828
+ * const loadJsdomModule = createLazyModuleLoader(() => import('jsdom'));
4829
+ * const { JSDOM } = await loadJsdomModule();
4830
+ *
4831
+ * @private internal utility of Promptbook
4832
+ */
4833
+ function createLazyModuleLoader(importModule) {
4834
+ let importedModulePromise = null;
4835
+ return function loadModule() {
4836
+ if (importedModulePromise === null) {
4837
+ importedModulePromise = importModule();
4838
+ }
4839
+ return importedModulePromise;
4840
+ };
4841
+ }
4842
+ // Note: [🐌] Do not convert the lazy `import(...)` calls back to static `import` statements, it would bring back the
4843
+ // slow startup of the `ptbk` CLI utility
4844
+
4845
+ /**
4846
+ * Loads the OpenAI SDK (`openai`) on demand
4847
+ *
4848
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
4849
+ *
4850
+ * @private internal utility of `OpenAiCompatibleRequestManager`
4851
+ */
4852
+ const loadOpenAiModule = createLazyModuleLoader(() => import('openai'));
4823
4853
  /**
4824
4854
  * Manages OpenAI-compatible client creation plus shared retry and rate-limit behavior.
4825
4855
  *
@@ -4846,6 +4876,7 @@ class OpenAiCompatibleRequestManager {
4846
4876
  timeout: API_REQUEST_TIMEOUT,
4847
4877
  maxRetries: CONNECTION_RETRIES_LIMIT,
4848
4878
  };
4879
+ const { default: OpenAI } = await loadOpenAiModule();
4849
4880
  this.client = new OpenAI(enhancedOptions);
4850
4881
  }
4851
4882
  return this.client;
@@ -7445,6 +7476,14 @@ function isValidUrl(url) {
7445
7476
  }
7446
7477
  }
7447
7478
 
7479
+ /**
7480
+ * Loads the Socket.io client (`socket.io-client`) on demand
7481
+ *
7482
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
7483
+ *
7484
+ * @private internal utility of `createRemoteClient`
7485
+ */
7486
+ const loadSocketIoClientModule = createLazyModuleLoader(() => import('socket.io-client'));
7448
7487
  /**
7449
7488
  * Creates a connection to the remote proxy server.
7450
7489
  *
@@ -7473,6 +7512,7 @@ async function createRemoteClient(options) {
7473
7512
 
7474
7513
  `));
7475
7514
  }
7515
+ const { io } = await loadSocketIoClientModule();
7476
7516
  return new Promise((resolve, reject) => {
7477
7517
  const socket = io(remoteServerUrl, {
7478
7518
  retries: CONNECTION_RETRIES_LIMIT,
@@ -8126,12 +8166,22 @@ class OpenAiAgentKitExecutionToolsOutputTypeMapper {
8126
8166
  }
8127
8167
  }
8128
8168
 
8169
+ /**
8170
+ * Loads the OpenAI AgentKit SDK (`@openai/agents`) on demand
8171
+ *
8172
+ * Note: [🐌] The AgentKit SDK is one of the heaviest dependencies of Promptbook, loading it eagerly would slow down
8173
+ * every single run of the `ptbk` CLI utility even when no AgentKit agent is used
8174
+ *
8175
+ * @private internal utility of `@promptbook/openai`
8176
+ */
8177
+ const loadOpenAiAgentsModule = createLazyModuleLoader(() => import('@openai/agents'));
8178
+
8129
8179
  /**
8130
8180
  * Constant for default model used for nested DeepSearch tool invocations.
8131
8181
  */
8132
8182
  const DEFAULT_DEEP_SEARCH_MODEL_NAME = 'o4-mini-deep-research';
8133
8183
  /**
8134
- * Tool name used by the Book commitment-backed DeepSearch capability.
8184
+ * Tool name used by the DeepSearch capability.
8135
8185
  */
8136
8186
  const DEEP_SEARCH_TOOL_NAME = 'deep_search';
8137
8187
  /**
@@ -8179,8 +8229,9 @@ class OpenAiAgentKitExecutionToolsToolBuilder {
8179
8229
  /**
8180
8230
  * Builds the tool list for AgentKit, including hosted file search when applicable.
8181
8231
  */
8182
- buildAgentKitTools(options) {
8232
+ async buildAgentKitTools(options) {
8183
8233
  const { tools, vectorStoreId } = options;
8234
+ const { fileSearchTool, tool: agentKitTool } = await loadOpenAiAgentsModule();
8184
8235
  const agentKitTools = [];
8185
8236
  if (vectorStoreId) {
8186
8237
  agentKitTools.push(fileSearchTool(vectorStoreId));
@@ -8191,11 +8242,11 @@ class OpenAiAgentKitExecutionToolsToolBuilder {
8191
8242
  let scriptTools = null;
8192
8243
  for (const toolDefinition of tools) {
8193
8244
  if (this.isDeepSearchToolDefinition(toolDefinition)) {
8194
- agentKitTools.push(this.createDeepSearchAgentKitTool(toolDefinition));
8245
+ agentKitTools.push(await this.createDeepSearchAgentKitTool(toolDefinition));
8195
8246
  continue;
8196
8247
  }
8197
8248
  scriptTools !== null && scriptTools !== void 0 ? scriptTools : (scriptTools = this.resolveScriptTools());
8198
- agentKitTools.push(tool({
8249
+ agentKitTools.push(agentKitTool({
8199
8250
  name: toolDefinition.name,
8200
8251
  description: toolDefinition.description,
8201
8252
  parameters: this.normalizeAgentKitToolParameters(toolDefinition.parameters),
@@ -8400,10 +8451,11 @@ class OpenAiAgentKitExecutionToolsToolBuilder {
8400
8451
  };
8401
8452
  }
8402
8453
  /**
8403
- * Creates the native Agent SDK tool used for `USE DEEPSEARCH`.
8454
+ * Creates the native Agent SDK tool used for the DeepSearch capability.
8404
8455
  */
8405
- createDeepSearchAgentKitTool(toolDefinition) {
8406
- const deepSearchAgent = new Agent({
8456
+ async createDeepSearchAgentKitTool(toolDefinition) {
8457
+ const { Agent: AgentFromKit, webSearchTool } = await loadOpenAiAgentsModule();
8458
+ const deepSearchAgent = new AgentFromKit({
8407
8459
  name: 'DeepSearch',
8408
8460
  model: DEFAULT_DEEP_SEARCH_MODEL_NAME,
8409
8461
  instructions: this.createDeepSearchAgentInstructions(toolDefinition.description),
@@ -8616,8 +8668,9 @@ class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler {
8616
8668
  vectorStoreId,
8617
8669
  });
8618
8670
  }
8619
- const agentKitTools = this.buildAgentKitTools({ tools, vectorStoreId });
8620
- const openAiAgentKitAgent = new Agent({
8671
+ const { Agent: AgentFromKit } = await loadOpenAiAgentsModule();
8672
+ const agentKitTools = await this.buildAgentKitTools({ tools, vectorStoreId });
8673
+ const openAiAgentKitAgent = new AgentFromKit({
8621
8674
  name,
8622
8675
  model: this.agentKitModelName,
8623
8676
  instructions: instructions || 'You are a helpful assistant.',
@@ -8662,6 +8715,7 @@ class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler {
8662
8715
  agentName: agentForRun.name,
8663
8716
  input: inputItems,
8664
8717
  };
8718
+ const { run } = await loadOpenAiAgentsModule();
8665
8719
  const streamResult = await run(agentForRun, inputItems, {
8666
8720
  stream: true,
8667
8721
  maxTurns: 200,
@@ -8804,6 +8858,7 @@ class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler {
8804
8858
  * Ensures the AgentKit SDK is wired to the OpenAI client and API key.
8805
8859
  */
8806
8860
  async ensureAgentKitDefaults() {
8861
+ const { setDefaultOpenAIClient, setDefaultOpenAIKey } = await loadOpenAiAgentsModule();
8807
8862
  const client = await this.getClient();
8808
8863
  setDefaultOpenAIClient(client);
8809
8864
  const apiKey = this.agentKitOptions.apiKey;