@promptbook/cli 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 (360) hide show
  1. package/README.md +1 -9
  2. package/apps/agents-server/{USE_TIMEOUT_CHIP_QA.md → TIMEOUT_CHIP_QA.md} +1 -1
  3. package/apps/agents-server/next.config.ts +11 -0
  4. package/apps/agents-server/src/app/agents/[agentName]/api/chat/resolveAgentChatRouteContext.ts +5 -12
  5. package/apps/agents-server/src/app/agents/[agentName]/api/voice/route.ts +4 -9
  6. package/apps/agents-server/src/app/api/scrape/route.ts +1 -1
  7. package/apps/agents-server/src/app/layout.tsx +31 -0
  8. package/apps/agents-server/src/app/system/user-wallet/UserWalletDraft.ts +2 -2
  9. package/apps/agents-server/src/components/AgentProfile/AgentCapabilityChips.tsx +1 -24
  10. package/apps/agents-server/src/components/Header/Header.tsx +8 -0
  11. package/apps/agents-server/src/components/Header/HeaderTypes.ts +5 -0
  12. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +118 -30
  13. package/apps/agents-server/src/components/Header/resolveHeaderSystemActivities.ts +86 -0
  14. package/apps/agents-server/src/components/Homepage/AgentCard.tsx +0 -3
  15. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +8 -0
  16. package/apps/agents-server/src/components/NewAgentDialog/NewAgentWizardState.ts +0 -12
  17. package/apps/agents-server/src/components/NewAgentDialog/NewAgentWizardUseSetupStep.tsx +0 -58
  18. package/apps/agents-server/src/components/NewAgentDialog/newAgentWizardPresets.ts +0 -56
  19. package/apps/agents-server/src/components/WalletRecordDialog/useWalletRecordDialogState.ts +1 -1
  20. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +0 -10
  21. package/apps/agents-server/src/languages/translations/czech.yaml +0 -10
  22. package/apps/agents-server/src/languages/translations/english.yaml +0 -10
  23. package/apps/agents-server/src/message-providers/email/smtp/SmtpMessageProvider.ts +1 -1
  24. package/apps/agents-server/src/tools/$provideOpenAiAgentKitExecutionToolsForServer.ts +0 -191
  25. package/apps/agents-server/src/tools/$provideOpenAiAssistantExecutionToolsForServer.ts +0 -3
  26. package/apps/agents-server/src/tools/run_browser.ts +1 -1
  27. package/apps/agents-server/src/tools/send_email.ts +3 -3
  28. package/apps/agents-server/src/utils/handleChatCompletion/createHandleChatCompletionPromptContext.ts +0 -1
  29. package/apps/agents-server/src/utils/handleChatCompletion/resolveHandleChatCompletionRuntime.ts +4 -12
  30. package/apps/agents-server/src/utils/manGoOnboarding/manGoOnboardingAgentBooks.ts +0 -1
  31. package/apps/agents-server/src/utils/messages/parseUseEmailSmtpCredential.ts +1 -1
  32. package/apps/agents-server/src/utils/resolveUseEmailSmtpCredential.ts +1 -1
  33. package/apps/agents-server/src/utils/useEmailSmtpWalletConstants.ts +5 -5
  34. package/apps/agents-server/src/utils/userChat/createRunUserChatJobExecutionContext.ts +5 -12
  35. package/apps/agents-server/src/utils/userWallet/UserWalletRecord.ts +1 -1
  36. package/apps/agents-server/src/utils/userWallet/resolveUseEmailSmtpCredentialFromWallet.ts +1 -1
  37. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +2 -1
  38. package/apps/agents-server/src/utils/vpsSelfUpdate/isVpsSelfUpdateJobRunning.ts +16 -0
  39. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +2 -1
  40. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +1 -0
  41. package/esm/index.es.js +1974 -5149
  42. package/esm/index.es.js.map +1 -1
  43. package/esm/scripts/run-codex-prompts/common/runGoScript/scriptExecutionLog.d.ts +7 -0
  44. package/esm/scripts/run-codex-prompts/git/coderGitSync.d.ts +43 -0
  45. package/esm/scripts/run-codex-prompts/git/commitChanges.d.ts +3 -0
  46. package/esm/scripts/run-codex-prompts/main/resolvePromptRunner.d.ts +8 -1
  47. package/esm/scripts/run-codex-prompts/ping/buildCoderPingPrompt.d.ts +20 -0
  48. package/esm/scripts/run-codex-prompts/ping/extractCoderPingAnswer.d.ts +9 -0
  49. package/esm/scripts/run-codex-prompts/ping/pingCoderHarness.d.ts +23 -0
  50. package/esm/scripts/run-codex-prompts/ping/printCoderPingResult.d.ts +5 -0
  51. package/esm/scripts/verify-prompts/verify-prompts.d.ts +5 -0
  52. package/esm/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  53. package/esm/src/book-components/Chat/utils/$provideServerDomWindow.d.ts +11 -0
  54. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +7 -0
  55. package/esm/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  56. package/esm/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  57. package/esm/src/cli/cli-commands/coder/ping.d.ts +2 -5
  58. package/esm/src/cli/cli-commands/coder.d.ts +1 -1
  59. package/esm/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +34 -0
  60. package/esm/src/cli/common/loadPromptsModule.d.ts +16 -0
  61. package/esm/src/commitments/{COMPONENT/COMPONENT.d.ts → META_FULLNAME/META_FULLNAME.d.ts} +8 -5
  62. package/esm/src/commitments/META_ID/META_ID.d.ts +32 -0
  63. package/esm/src/commitments/index.d.ts +4 -12
  64. package/esm/src/llm-providers/agent/Agent.d.ts +1 -1
  65. package/esm/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  66. package/esm/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  67. package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +1 -1
  68. package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +2 -2
  69. package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +1 -1
  70. package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +1 -1
  71. package/esm/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +1 -1
  72. package/esm/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +1 -1
  73. package/esm/src/llm-providers/openai/utils/callOpenAiCompatibleChatModel.d.ts +1 -1
  74. package/esm/src/llm-providers/openai/utils/loadOpenAiAgentsModule.d.ts +203 -0
  75. package/esm/src/llm-providers/openai/utils/uploadFilesToOpenAi.d.ts +1 -1
  76. package/esm/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  77. package/esm/src/utils/misc/createLazyModuleLoader.d.ts +14 -0
  78. package/esm/src/version.d.ts +1 -1
  79. package/package.json +1 -1
  80. package/src/_packages/components.readme.md +1 -1
  81. package/src/book-2.0/agent-source/AgentBasicInformation.ts +3 -9
  82. package/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments/filterCommitmentsForAgentModelRequirements.ts +0 -23
  83. package/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments.ts +0 -2
  84. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +16 -31
  85. package/src/book-2.0/agent-source/parseAgentSource/createCapabilitiesFromCommitment.ts +0 -35
  86. package/src/book-2.0/book-language-documentation/bookLanguageDocumentationExamples.ts +0 -25
  87. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +2 -10
  88. package/src/book-2.0/book-language-documentation/czechBookLanguageManualDictionary.ts +7 -32
  89. package/src/book-2.0/book-language-documentation/englishBookLanguageManualDictionary.ts +6 -31
  90. package/src/book-3.0/LiteAgent.ts +11 -9
  91. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  92. package/src/book-components/Chat/utils/$provideServerDomWindow.ts +77 -0
  93. package/src/book-components/Chat/utils/renderMarkdown.ts +2 -23
  94. package/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.ts +14 -0
  95. package/src/cli/cli-commands/agents-server/buildAgentsServer/ensureAgentsServerBuild.ts +1 -0
  96. package/src/cli/cli-commands/coder/add.ts +40 -12
  97. package/src/cli/cli-commands/coder/boilerplateCount.ts +139 -0
  98. package/src/cli/cli-commands/coder/generate-boilerplates.ts +82 -48
  99. package/src/cli/cli-commands/coder/getDefaultCoderPackageJsonScripts.ts +3 -1
  100. package/src/cli/cli-commands/coder/init.ts +29 -2
  101. package/src/cli/cli-commands/coder/ping.ts +23 -45
  102. package/src/cli/cli-commands/coder/verify.ts +27 -12
  103. package/src/cli/cli-commands/coder.ts +3 -3
  104. package/src/cli/cli-commands/common/coderGitSyncCliOptions.ts +78 -0
  105. package/src/cli/cli-commands/run/prepareRunCommandResources.ts +2 -1
  106. package/src/cli/cli-commands/run/resolveRunInputParameters.ts +2 -1
  107. package/src/cli/cli-commands/runInteractiveChatbot.ts +2 -1
  108. package/src/cli/common/$provideLlmToolsForCli.ts +2 -1
  109. package/src/cli/common/loadPromptsModule.ts +13 -0
  110. package/src/commitments/ACTION/ACTION.ts +3 -3
  111. package/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.ts +1 -1
  112. package/src/commitments/META_FULLNAME/META_FULLNAME.ts +70 -0
  113. package/src/commitments/META_ID/META_ID.ts +78 -0
  114. package/src/commitments/_common/getAllCommitmentsToolFunctionsForNode.ts +1 -49
  115. package/src/commitments/index.ts +6 -24
  116. package/src/conversion/archive/loadArchive.ts +2 -1
  117. package/src/conversion/archive/loadJsZipModule.ts +10 -0
  118. package/src/conversion/archive/saveArchive.ts +2 -1
  119. package/src/llm-providers/agent/Agent.ts +1 -1
  120. package/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.ts +13 -1
  121. package/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.ts +13 -1
  122. package/src/llm-providers/openai/OpenAiAgentKitExecutionTools.ts +6 -2
  123. package/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.ts +9 -7
  124. package/src/llm-providers/openai/OpenAiAssistantExecutionTools.ts +1 -1
  125. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.ts +1 -1
  126. package/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.ts +1 -1
  127. package/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.ts +1 -1
  128. package/src/llm-providers/openai/OpenAiCompatibleRequestManager.ts +12 -1
  129. package/src/llm-providers/openai/utils/callOpenAiCompatibleChatModel.ts +1 -1
  130. package/src/llm-providers/openai/utils/loadOpenAiAgentsModule.ts +11 -0
  131. package/src/llm-providers/openai/utils/uploadFilesToOpenAi.ts +1 -1
  132. package/src/other/templates/getTemplatesPipelineCollection.ts +715 -823
  133. package/src/remote-server/createRemoteClient.ts +12 -1
  134. package/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.ts +8 -9
  135. package/src/scrapers/website/WebsiteScraper.ts +22 -2
  136. package/src/utils/misc/createLazyModuleLoader.ts +27 -0
  137. package/src/version.ts +2 -2
  138. package/src/versions.txt +2 -0
  139. package/umd/index.umd.js +2047 -5216
  140. package/umd/index.umd.js.map +1 -1
  141. package/umd/scripts/run-codex-prompts/common/runGoScript/scriptExecutionLog.d.ts +7 -0
  142. package/umd/scripts/run-codex-prompts/git/coderGitSync.d.ts +43 -0
  143. package/umd/scripts/run-codex-prompts/git/commitChanges.d.ts +3 -0
  144. package/umd/scripts/run-codex-prompts/main/resolvePromptRunner.d.ts +8 -1
  145. package/umd/scripts/run-codex-prompts/ping/buildCoderPingPrompt.d.ts +20 -0
  146. package/umd/scripts/run-codex-prompts/ping/extractCoderPingAnswer.d.ts +9 -0
  147. package/umd/scripts/run-codex-prompts/ping/pingCoderHarness.d.ts +23 -0
  148. package/umd/scripts/run-codex-prompts/ping/printCoderPingResult.d.ts +5 -0
  149. package/umd/scripts/verify-prompts/verify-prompts.d.ts +5 -0
  150. package/umd/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  151. package/umd/src/book-components/Chat/utils/$provideServerDomWindow.d.ts +11 -0
  152. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer/createAgentsServerRuntimeEnvironment.d.ts +7 -0
  153. package/umd/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  154. package/umd/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  155. package/umd/src/cli/cli-commands/coder/ping.d.ts +2 -5
  156. package/umd/src/cli/cli-commands/coder.d.ts +1 -1
  157. package/umd/src/cli/cli-commands/common/coderGitSyncCliOptions.d.ts +34 -0
  158. package/umd/src/cli/common/loadPromptsModule.d.ts +16 -0
  159. package/umd/src/commitments/{COMPONENT/COMPONENT.d.ts → META_FULLNAME/META_FULLNAME.d.ts} +8 -5
  160. package/umd/src/commitments/META_ID/META_ID.d.ts +32 -0
  161. package/umd/src/commitments/index.d.ts +4 -12
  162. package/umd/src/llm-providers/agent/Agent.d.ts +1 -1
  163. package/umd/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  164. package/umd/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  165. package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +1 -1
  166. package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +2 -2
  167. package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +1 -1
  168. package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +1 -1
  169. package/umd/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +1 -1
  170. package/umd/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +1 -1
  171. package/umd/src/llm-providers/openai/utils/callOpenAiCompatibleChatModel.d.ts +1 -1
  172. package/umd/src/llm-providers/openai/utils/loadOpenAiAgentsModule.d.ts +203 -0
  173. package/umd/src/llm-providers/openai/utils/uploadFilesToOpenAi.d.ts +1 -1
  174. package/umd/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  175. package/umd/src/utils/misc/createLazyModuleLoader.d.ts +14 -0
  176. package/umd/src/version.d.ts +1 -1
  177. package/apps/agents-server/src/tools/configureTimeoutToolRuntimeAdapterForServer.ts +0 -381
  178. package/apps/agents-server/src/utils/emails/extractUseEmailConfigurationFromAgentSource.ts +0 -42
  179. package/esm/scripts/run-agent-chat/runCoderPing.d.ts +0 -48
  180. package/esm/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  181. package/esm/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  182. package/esm/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  183. package/esm/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  184. package/esm/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  185. package/esm/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  186. package/esm/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  187. package/esm/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  188. package/esm/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  189. package/esm/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  190. package/esm/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  191. package/esm/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  192. package/esm/src/commitments/META/META.d.ts +0 -65
  193. package/esm/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  194. package/esm/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  195. package/esm/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  196. package/esm/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  197. package/esm/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  198. package/esm/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  199. package/esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  200. package/esm/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  201. package/esm/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  202. package/esm/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  203. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  204. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  205. package/esm/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  206. package/esm/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  207. package/esm/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  208. package/esm/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  209. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  210. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  211. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  212. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  213. package/esm/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  214. package/esm/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  215. package/esm/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  216. package/esm/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  217. package/esm/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  218. package/esm/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  219. package/esm/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  220. package/esm/src/commitments/WALLET/WALLET.d.ts +0 -21
  221. package/esm/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  222. package/esm/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  223. package/esm/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  224. package/esm/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  225. package/esm/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  226. package/esm/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  227. package/esm/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  228. package/esm/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  229. package/esm/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  230. package/esm/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  231. package/esm/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  232. package/esm/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  233. package/esm/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  234. package/src/commitments/COMPONENT/COMPONENT.ts +0 -70
  235. package/src/commitments/MEMORY/MEMORY.ts +0 -94
  236. package/src/commitments/MEMORY/MemoryToolNames.ts +0 -13
  237. package/src/commitments/MEMORY/MemoryToolRuntimeAdapter.ts +0 -180
  238. package/src/commitments/MEMORY/createMemorySystemMessage.ts +0 -27
  239. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +0 -134
  240. package/src/commitments/MEMORY/createMemoryTools.ts +0 -115
  241. package/src/commitments/MEMORY/getMemoryCommitmentDocumentation.ts +0 -47
  242. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +0 -104
  243. package/src/commitments/MEMORY/getMemoryToolTitles.ts +0 -16
  244. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +0 -126
  245. package/src/commitments/MEMORY/resolveMemoryRuntimeContext.ts +0 -23
  246. package/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.ts +0 -26
  247. package/src/commitments/META/META.ts +0 -168
  248. package/src/commitments/USE/TODO.txt +0 -1
  249. package/src/commitments/USE/aggregateUseCommitmentSystemMessages.ts +0 -219
  250. package/src/commitments/USE_BROWSER/TODO.txt +0 -1
  251. package/src/commitments/USE_BROWSER/USE_BROWSER.ts +0 -257
  252. package/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.ts +0 -45
  253. package/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.ts +0 -83
  254. package/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.ts +0 -146
  255. package/src/commitments/USE_EMAIL/USE_EMAIL.ts +0 -201
  256. package/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.ts +0 -75
  257. package/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.ts +0 -44
  258. package/src/commitments/USE_EMAIL/sendEmailViaBrowser.ts +0 -47
  259. package/src/commitments/USE_SEARCH_ENGINE/TODO.txt +0 -1
  260. package/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.ts +0 -171
  261. package/src/commitments/USE_SPAWN/USE_SPAWN.ts +0 -150
  262. package/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.ts +0 -42
  263. package/src/commitments/USE_SPAWN/spawnAgentViaBrowser.ts +0 -50
  264. package/src/commitments/USE_TIME/USE_TIME.ts +0 -177
  265. package/src/commitments/USE_TIMEOUT/TimeoutToolNames.ts +0 -13
  266. package/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.ts +0 -255
  267. package/src/commitments/USE_TIMEOUT/USE_TIMEOUT.ts +0 -117
  268. package/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.ts +0 -22
  269. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +0 -361
  270. package/src/commitments/USE_TIMEOUT/createTimeoutTools.ts +0 -127
  271. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +0 -67
  272. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +0 -460
  273. package/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.ts +0 -36
  274. package/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.ts +0 -26
  275. package/src/commitments/WALLET/WALLET.ts +0 -71
  276. package/src/commitments/WALLET/WalletToolNames.ts +0 -14
  277. package/src/commitments/WALLET/WalletToolRuntimeAdapter.ts +0 -180
  278. package/src/commitments/WALLET/createWalletSystemMessage.ts +0 -22
  279. package/src/commitments/WALLET/createWalletToolFunctions.ts +0 -145
  280. package/src/commitments/WALLET/createWalletTools.ts +0 -129
  281. package/src/commitments/WALLET/getWalletCommitmentDocumentation.ts +0 -14
  282. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +0 -64
  283. package/src/commitments/WALLET/getWalletToolTitles.ts +0 -17
  284. package/src/commitments/WALLET/parseWalletToolArgs.ts +0 -231
  285. package/src/commitments/WALLET/resolveWalletRuntimeContext.ts +0 -23
  286. package/src/commitments/WALLET/setWalletToolRuntimeAdapter.ts +0 -26
  287. package/src/commitments/_common/createSerpSearchToolFunction.ts +0 -46
  288. package/umd/scripts/run-agent-chat/runCoderPing.d.ts +0 -48
  289. package/umd/src/book-2.0/agent-source/createAgentModelRequirements.useCommitmentAggregation.test.d.ts +0 -1
  290. package/umd/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  291. package/umd/src/commitments/MEMORY/MEMORY.test.d.ts +0 -1
  292. package/umd/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  293. package/umd/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  294. package/umd/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  295. package/umd/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  296. package/umd/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  297. package/umd/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  298. package/umd/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  299. package/umd/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  300. package/umd/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  301. package/umd/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  302. package/umd/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  303. package/umd/src/commitments/META/META.d.ts +0 -65
  304. package/umd/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  305. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  306. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +0 -1
  307. package/umd/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  308. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  309. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts +0 -1
  310. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  311. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.test.d.ts +0 -1
  312. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  313. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts +0 -1
  314. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  315. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts +0 -1
  316. package/umd/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  317. package/umd/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  318. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  319. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.test.d.ts +0 -1
  320. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  321. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  322. package/umd/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  323. package/umd/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  324. package/umd/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  325. package/umd/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  326. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  327. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  328. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  329. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  330. package/umd/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  331. package/umd/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  332. package/umd/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  333. package/umd/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  334. package/umd/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  335. package/umd/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  336. package/umd/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  337. package/umd/src/commitments/WALLET/WALLET.d.ts +0 -21
  338. package/umd/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  339. package/umd/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  340. package/umd/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  341. package/umd/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  342. package/umd/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  343. package/umd/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  344. package/umd/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  345. package/umd/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  346. package/umd/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  347. package/umd/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  348. package/umd/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  349. package/umd/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  350. package/umd/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  351. /package/esm/src/book-2.0/agent-source/{createAgentModelRequirements.useCommitmentAggregation.test.d.ts → createAgentModelRequirements.commitmentAggregation.test.d.ts} +0 -0
  352. /package/esm/src/{commitments/MEMORY/MEMORY.test.d.ts → cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  353. /package/esm/src/{commitments/USE_BROWSER/USE_BROWSER.test.d.ts → cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  354. /package/esm/src/{commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts → cli/cli-commands/common/coderGitSyncCliOptions.test.d.ts} +0 -0
  355. /package/esm/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
  356. /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
  357. /package/{esm/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts → umd/src/cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  358. /package/{esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts → umd/src/cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  359. /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
  360. /package/umd/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
@@ -1,5 +1,4 @@
1
1
  import colors from 'colors';
2
- import prompts from 'prompts';
3
2
  import { spaceTrim } from 'spacetrim';
4
3
  import { CLI_APP_ID } from '../../config';
5
4
  import { UnexpectedError } from '../../errors/UnexpectedError';
@@ -14,6 +13,7 @@ import type { really_unknown } from '../../utils/organization/really_unknown';
14
13
  import { TODO_USE } from '../../utils/organization/TODO_USE';
15
14
  import { isValidEmail } from '../../utils/validators/email/isValidEmail';
16
15
  import { isValidUrl } from '../../utils/validators/url/isValidUrl';
16
+ import { loadPromptsModule } from './loadPromptsModule';
17
17
 
18
18
  /**
19
19
  * Options for provide Llm tools for Cli.
@@ -110,6 +110,7 @@ export async function $provideLlmToolsForCli(options: ProvideLlmToolsForCliOptio
110
110
  ),
111
111
  );
112
112
 
113
+ const { default: prompts } = await loadPromptsModule();
113
114
  const { username, password } = await prompts([
114
115
  {
115
116
  type: 'text',
@@ -0,0 +1,13 @@
1
+ import { createLazyModuleLoader } from '../../utils/misc/createLazyModuleLoader';
2
+
3
+ /**
4
+ * Loads the interactive terminal prompt library (`prompts`) on demand
5
+ *
6
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast - most commands never ask the user
7
+ * anything interactively
8
+ *
9
+ * @private internal utility of Promptbook CLI
10
+ */
11
+ export const loadPromptsModule = createLazyModuleLoader(() => import('prompts'));
12
+
13
+ // Note: [🟡] Code for CLI prompt loading [loadPromptsModule](src/cli/common/loadPromptsModule.ts) should never be published outside of `@promptbook/cli`
@@ -66,7 +66,7 @@ export class ActionCommitmentDefinition extends BaseCommitmentDefinition<'ACTION
66
66
  Research Assistant
67
67
 
68
68
  PERSONA You are a helpful research assistant
69
- USE SEARCH ENGINE
69
+ USE MCP https://mcp.example.com/server
70
70
  RULE Always cite your sources when providing information from the web
71
71
  \`\`\`
72
72
 
@@ -86,8 +86,8 @@ export class ActionCommitmentDefinition extends BaseCommitmentDefinition<'ACTION
86
86
  Code Assistant
87
87
 
88
88
  PERSONA You are a programming assistant
89
- USE BROWSER
90
- USE SEARCH ENGINE
89
+ USE PROJECT https://github.com/example/project
90
+ USE MCP https://mcp.example.com/server
91
91
  RULE Prefer the narrowest useful capability for the task.
92
92
  \`\`\`
93
93
  `);
@@ -20,7 +20,7 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
20
20
  */
21
21
  export class MetaDescriptionCommitmentDefinition extends BaseCommitmentDefinition<'META DESCRIPTION'> {
22
22
  public constructor() {
23
- super('META DESCRIPTION', ['DESCRIPTION']);
23
+ super('META DESCRIPTION');
24
24
  }
25
25
 
26
26
  /**
@@ -0,0 +1,70 @@
1
+ import { spaceTrim } from 'spacetrim';
2
+ import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
3
+ import { TODO_USE } from '../../utils/organization/TODO_USE';
4
+ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
5
+
6
+ /**
7
+ * META FULLNAME commitment definition
8
+ *
9
+ * The `META FULLNAME` commitment sets the full display name of the agent, which can differ
10
+ * from the agent name on the first line of the agent source, for example when the agent
11
+ * should be presented with academic titles.
12
+ * This commitment is metadata-only and does not modify model requirements.
13
+ *
14
+ * @private [🪔] Maybe export the commitments through some package
15
+ */
16
+ export class MetaFullnameCommitmentDefinition extends BaseCommitmentDefinition<'META FULLNAME'> {
17
+ public constructor() {
18
+ super('META FULLNAME');
19
+ }
20
+
21
+ /**
22
+ * Short one-line description of META FULLNAME.
23
+ */
24
+ get description(): string {
25
+ return "Set the agent's full display name.";
26
+ }
27
+
28
+ /**
29
+ * Icon for this commitment.
30
+ */
31
+ get icon(): string {
32
+ return '🪪';
33
+ }
34
+
35
+ /**
36
+ * Markdown documentation for META FULLNAME commitment.
37
+ */
38
+ get documentation(): string {
39
+ return spaceTrim(`
40
+ # META FULLNAME
41
+
42
+ Sets the full display name of the agent shown in profiles, chats, and exports.
43
+
44
+ ## Key aspects
45
+
46
+ - Does not modify the agent's behavior or responses.
47
+ - If not present, the agent name from the first line of the agent source is used.
48
+ - If multiple \`META FULLNAME\` commitments are specified, the last one takes precedence.
49
+
50
+ ## Examples
51
+
52
+ \`\`\`book
53
+ Pavol Hejný
54
+
55
+ META FULLNAME Dr. Ing. Pavol Hejný, PhD.
56
+ PERSONA Developer with 10 years of experience in building AI applications.
57
+ \`\`\`
58
+ `);
59
+ }
60
+
61
+ applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements {
62
+ TODO_USE(content);
63
+
64
+ // META FULLNAME does not modify the model requirements.
65
+ // It is consumed by profile parsing.
66
+ return requirements;
67
+ }
68
+ }
69
+
70
+ // Note: [💞] Ignore a discrepancy between file name and entity name
@@ -0,0 +1,78 @@
1
+ import { spaceTrim } from 'spacetrim';
2
+ import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
3
+ import { TODO_USE } from '../../utils/organization/TODO_USE';
4
+ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
5
+
6
+ /**
7
+ * META ID commitment definition
8
+ *
9
+ * The `META ID` commitment carries the permanent id of the agent when an agent source is moved
10
+ * between systems. It is a low-level commitment which is normally written and stripped by the
11
+ * persistence layer instead of being written by hand.
12
+ * This commitment is metadata-only and does not modify model requirements.
13
+ *
14
+ * @private [🪔] Maybe export the commitments through some package
15
+ */
16
+ export class MetaIdCommitmentDefinition extends BaseCommitmentDefinition<'META ID'> {
17
+ public constructor() {
18
+ super('META ID');
19
+ }
20
+
21
+ /**
22
+ * Short one-line description of META ID.
23
+ */
24
+ get description(): string {
25
+ return "Set the agent's permanent id.";
26
+ }
27
+
28
+ /**
29
+ * Icon for this commitment.
30
+ */
31
+ get icon(): string {
32
+ return '🔖';
33
+ }
34
+
35
+ /**
36
+ * `META ID` is written by the persistence layer, not by agent authors.
37
+ */
38
+ override get isLowLevel(): boolean {
39
+ return true;
40
+ }
41
+
42
+ /**
43
+ * Markdown documentation for META ID commitment.
44
+ */
45
+ get documentation(): string {
46
+ return spaceTrim(`
47
+ # META ID
48
+
49
+ Carries the permanent id of the agent inside the agent source.
50
+
51
+ ## Key aspects
52
+
53
+ - Does not modify the agent's behavior or responses.
54
+ - Written and stripped by the persistence layer, it should not be written by hand.
55
+ - When an agent source without \`META ID\` is stored, a fresh permanent id is assigned.
56
+ - If multiple \`META ID\` commitments are specified, the last one takes precedence.
57
+
58
+ ## Examples
59
+
60
+ \`\`\`book
61
+ My agent
62
+
63
+ META ID doQMRg82izNfJa
64
+ PERSONA My agent is an expert in something.
65
+ \`\`\`
66
+ `);
67
+ }
68
+
69
+ applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements {
70
+ TODO_USE(content);
71
+
72
+ // META ID does not modify the model requirements.
73
+ // It is consumed by profile parsing and agent persistence.
74
+ return requirements;
75
+ }
76
+ }
77
+
78
+ // Note: [💞] Ignore a discrepancy between file name and entity name
@@ -1,61 +1,13 @@
1
1
  import { EnvironmentMismatchError } from '../../errors/EnvironmentMismatchError';
2
2
  import { $isRunningInNode } from '../../utils/environment/$isRunningInNode';
3
3
  import { spaceTrim } from '../../utils/organization/spaceTrim';
4
- import { fetchUrlContent } from '../USE_BROWSER/fetchUrlContent';
5
- import { resolveRunBrowserToolForNode } from '../USE_BROWSER/resolveRunBrowserToolForNode';
6
- import { resolveSendEmailToolForNode } from '../USE_EMAIL/resolveSendEmailToolForNode';
7
- import { resolveSpawnAgentToolForNode } from '../USE_SPAWN/resolveSpawnAgentToolForNode';
8
4
  import type { CommitmentToolFunctions } from './commitmentToolFunctions';
9
5
  import { collectCommitmentToolFunctions, createToolFunctionsProxy } from './commitmentToolFunctions';
10
6
 
11
- /**
12
- * Map of node tool functions.
13
- */
14
- const nodeToolFunctions: CommitmentToolFunctions = {
15
- /**
16
- * @@@
17
- *
18
- * Note: [??] This function has implementation both for browser and node, this is the full one for node
19
- */
20
- async fetch_url_content(args: { url: string }): Promise<string> {
21
- console.log('!!!! [Tool] fetch_url_content called', { args });
22
-
23
- const { url } = args;
24
-
25
- return await fetchUrlContent(url);
26
- },
27
-
28
- /**
29
- * @@@
30
- *
31
- * Note: [??] This function has implementation both for browser and node, this is the server one for node
32
- */
33
- run_browser: resolveRunBrowserToolForNode(),
34
-
35
- /**
36
- * @@@
37
- *
38
- * Note: [??] This function has implementation both for browser and node, this is the server one for node
39
- */
40
- send_email: resolveSendEmailToolForNode(),
41
-
42
- /**
43
- * @@@
44
- *
45
- * Note: [??] This function has implementation both for browser and node, this is the server one for node
46
- */
47
- spawn_agent: resolveSpawnAgentToolForNode(),
48
-
49
- // TODO: !!!! Unhardcode, make proper server function register from definitions
50
- };
51
-
52
7
  /**
53
8
  * Constant for node tool functions proxy.
54
9
  */
55
- const nodeToolFunctionsProxy = createToolFunctionsProxy(() => ({
56
- ...collectCommitmentToolFunctions(),
57
- ...nodeToolFunctions,
58
- }));
10
+ const nodeToolFunctionsProxy = createToolFunctionsProxy(collectCommitmentToolFunctions);
59
11
 
60
12
  /**
61
13
  * Gets all function implementations provided by all commitments
@@ -3,7 +3,6 @@ import type { CommitmentDefinition } from './_base/CommitmentDefinition';
3
3
  // Import all commitment definition classes
4
4
  import { ActionCommitmentDefinition } from './ACTION/ACTION';
5
5
  import { ClosedCommitmentDefinition } from './CLOSED/CLOSED';
6
- import { ComponentCommitmentDefinition } from './COMPONENT/COMPONENT';
7
6
  import { DeleteCommitmentDefinition } from './DELETE/DELETE';
8
7
  import { DictionaryCommitmentDefinition } from './DICTIONARY/DICTIONARY';
9
8
  import { FormatCommitmentDefinition } from './FORMAT/FORMAT';
@@ -12,19 +11,20 @@ import { GoalCommitmentDefinition } from './GOAL/GOAL';
12
11
  import { ImportCommitmentDefinition } from './IMPORT/IMPORT';
13
12
  import { KnowledgeCommitmentDefinition } from './KNOWLEDGE/KNOWLEDGE';
14
13
  import { LanguageCommitmentDefinition } from './LANGUAGE/LANGUAGE';
15
- import { MemoryCommitmentDefinition } from './MEMORY/MEMORY';
16
14
  import { AgentMessageCommitmentDefinition } from './MESSAGE/AgentMessageCommitmentDefinition';
17
15
  import { InitialMessageCommitmentDefinition } from './MESSAGE/InitialMessageCommitmentDefinition';
18
16
  import { InternalMessageCommitmentDefinition } from './MESSAGE/InternalMessageCommitmentDefinition';
19
17
  import { MessageCommitmentDefinition } from './MESSAGE/MESSAGE';
20
18
  import { UserMessageCommitmentDefinition } from './MESSAGE/UserMessageCommitmentDefinition';
21
19
  import { MessageSuffixCommitmentDefinition } from './MESSAGE_SUFFIX/MESSAGE_SUFFIX';
22
- import { MetaCommitmentDefinition } from './META/META';
23
20
  import { MetaAvatarCommitmentDefinition } from './META_AVATAR/META_AVATAR';
24
21
  import { MetaColorCommitmentDefinition } from './META_COLOR/META_COLOR';
22
+ import { MetaDescriptionCommitmentDefinition } from './META_DESCRIPTION/META_DESCRIPTION';
25
23
  import { MetaDomainCommitmentDefinition } from './META_DOMAIN/META_DOMAIN';
26
24
  import { MetaDisclaimerCommitmentDefinition } from './META_DISCLAIMER/META_DISCLAIMER';
27
25
  import { MetaFontCommitmentDefinition } from './META_FONT/META_FONT';
26
+ import { MetaFullnameCommitmentDefinition } from './META_FULLNAME/META_FULLNAME';
27
+ import { MetaIdCommitmentDefinition } from './META_ID/META_ID';
28
28
  import { MetaImageCommitmentDefinition } from './META_IMAGE/META_IMAGE';
29
29
  import { MetaInputPlaceholderCommitmentDefinition } from './META_INPUT_PLACEHOLDER/META_INPUT_PLACEHOLDER';
30
30
  import { MetaLinkCommitmentDefinition } from './META_LINK/META_LINK';
@@ -41,21 +41,13 @@ import { ScenarioCommitmentDefinition } from './SCENARIO/SCENARIO';
41
41
  import { StyleCommitmentDefinition } from './STYLE/STYLE';
42
42
  import { TeamCommitmentDefinition } from './TEAM/TEAM';
43
43
  import { TemplateCommitmentDefinition } from './TEMPLATE/TEMPLATE';
44
- import { UseBrowserCommitmentDefinition } from './USE_BROWSER/USE_BROWSER';
45
44
  import { UseCalendarCommitmentDefinition } from './USE_CALENDAR/USE_CALENDAR';
46
- import { UseDeepSearchCommitmentDefinition } from './USE_DEEPSEARCH/USE_DEEPSEARCH';
47
- import { UseEmailCommitmentDefinition } from './USE_EMAIL/USE_EMAIL';
48
45
  import { UseImageGeneratorCommitmentDefinition } from './USE_IMAGE_GENERATOR/USE_IMAGE_GENERATOR';
49
46
  import { UseMcpCommitmentDefinition } from './USE_MCP/USE_MCP';
50
47
  import { UsePopupCommitmentDefinition } from './USE_POPUP/USE_POPUP';
51
48
  import { UsePrivacyCommitmentDefinition } from './USE_PRIVACY/USE_PRIVACY';
52
49
  import { UseProjectCommitmentDefinition } from './USE_PROJECT/USE_PROJECT';
53
- import { UseSearchEngineCommitmentDefinition } from './USE_SEARCH_ENGINE/USE_SEARCH_ENGINE';
54
- import { UseSpawnCommitmentDefinition } from './USE_SPAWN/USE_SPAWN';
55
- import { UseTimeoutCommitmentDefinition } from './USE_TIMEOUT/USE_TIMEOUT';
56
- import { UseTimeCommitmentDefinition } from './USE_TIME/USE_TIME';
57
50
  import { UseUserLocationCommitmentDefinition } from './USE_USER_LOCATION/USE_USER_LOCATION';
58
- import { WalletCommitmentDefinition } from './WALLET/WALLET';
59
51
  import { WritingRulesCommitmentDefinition } from './WRITING_RULES/WRITING_RULES';
60
52
  import { WritingSampleCommitmentDefinition } from './WRITING_SAMPLE/WRITING_SAMPLE';
61
53
  import { NotYetImplementedCommitmentDefinition } from './_base/NotYetImplementedCommitmentDefinition';
@@ -72,8 +64,6 @@ export const COMMITMENT_REGISTRY = [
72
64
  new PersonaCommitmentDefinition('PERSONA'),
73
65
  new PersonaCommitmentDefinition('PERSONAE'),
74
66
  new KnowledgeCommitmentDefinition(),
75
- new MemoryCommitmentDefinition('MEMORY'),
76
- new MemoryCommitmentDefinition('MEMORIES'),
77
67
  new StyleCommitmentDefinition('STYLE'),
78
68
  new StyleCommitmentDefinition('STYLES'),
79
69
  new RuleCommitmentDefinition('RULE'),
@@ -95,7 +85,6 @@ export const COMMITMENT_REGISTRY = [
95
85
  new ModelCommitmentDefinition('MODELS'),
96
86
  new ActionCommitmentDefinition('ACTION'),
97
87
  new ActionCommitmentDefinition('ACTIONS'),
98
- new ComponentCommitmentDefinition(),
99
88
  new MetaAvatarCommitmentDefinition(),
100
89
  new MetaAvatarCommitmentDefinition('META VISUAL'),
101
90
  new MetaImageCommitmentDefinition(),
@@ -103,11 +92,13 @@ export const COMMITMENT_REGISTRY = [
103
92
  new MetaFontCommitmentDefinition(),
104
93
  new MetaLinkCommitmentDefinition(),
105
94
  new MetaDomainCommitmentDefinition(),
95
+ new MetaDescriptionCommitmentDefinition(),
106
96
  new MetaDisclaimerCommitmentDefinition(),
97
+ new MetaFullnameCommitmentDefinition(),
98
+ new MetaIdCommitmentDefinition(),
107
99
  new MetaInputPlaceholderCommitmentDefinition(),
108
100
  new MetaThinkingMessageCommitmentDefinition(),
109
101
  new MetaVisibilityCommitmentDefinition(),
110
- new MetaCommitmentDefinition(),
111
102
  new MetaVoiceCommitmentDefinition(),
112
103
  new NoteCommitmentDefinition('NOTE'),
113
104
  new NoteCommitmentDefinition('NOTES'),
@@ -123,8 +114,6 @@ export const COMMITMENT_REGISTRY = [
123
114
  new MessageSuffixCommitmentDefinition(),
124
115
  new MessageCommitmentDefinition('MESSAGE'),
125
116
  new MessageCommitmentDefinition('MESSAGES'),
126
- new WalletCommitmentDefinition('WALLET'),
127
- new WalletCommitmentDefinition('WALLETS'),
128
117
  new ScenarioCommitmentDefinition('SCENARIO'),
129
118
  new ScenarioCommitmentDefinition('SCENARIOS'),
130
119
  new DeleteCommitmentDefinition('DELETE'),
@@ -135,15 +124,8 @@ export const COMMITMENT_REGISTRY = [
135
124
  new OpenCommitmentDefinition(),
136
125
  new ClosedCommitmentDefinition(),
137
126
  new TeamCommitmentDefinition(),
138
- new UseBrowserCommitmentDefinition(),
139
- new UseDeepSearchCommitmentDefinition(),
140
- new UseSearchEngineCommitmentDefinition(),
141
- new UseSpawnCommitmentDefinition(),
142
- new UseTimeoutCommitmentDefinition(),
143
- new UseTimeCommitmentDefinition(),
144
127
  new UseUserLocationCommitmentDefinition(),
145
128
  new UseCalendarCommitmentDefinition(),
146
- new UseEmailCommitmentDefinition(),
147
129
  new UsePopupCommitmentDefinition(),
148
130
  new UseImageGeneratorCommitmentDefinition('USE IMAGE GENERATOR'),
149
131
  new UseMcpCommitmentDefinition(),
@@ -1,10 +1,10 @@
1
- import JSZip from 'jszip';
2
1
  import { UnexpectedError } from '../../errors/UnexpectedError';
3
2
  import type { FilesystemTools } from '../../execution/FilesystemTools';
4
3
  import { jsonParse } from '../../formats/json/utils/jsonParse';
5
4
  import type { PipelineJson } from '../../pipeline/PipelineJson/PipelineJson';
6
5
  import type { string_filename } from '../../types/string_filename';
7
6
  import { validatePipeline } from '../validation/validatePipeline';
7
+ import { loadJsZipModule } from './loadJsZipModule';
8
8
 
9
9
  /**
10
10
  * Loads the books from the archive file with `.bookc` extension
@@ -24,6 +24,7 @@ export async function loadArchive(
24
24
  }
25
25
 
26
26
  const data = await fs.readFile(filePath);
27
+ const { default: JSZip } = await loadJsZipModule();
27
28
  const archive = await JSZip.loadAsync(data);
28
29
 
29
30
  const indexFile = archive.file('index.book.json');
@@ -0,0 +1,10 @@
1
+ import { createLazyModuleLoader } from '../../utils/misc/createLazyModuleLoader';
2
+
3
+ /**
4
+ * Loads the ZIP archive library (`jszip`) on demand
5
+ *
6
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
7
+ *
8
+ * @private internal utility of `loadArchive` and `saveArchive`
9
+ */
10
+ export const loadJsZipModule = createLazyModuleLoader(() => import('jszip'));
@@ -1,10 +1,10 @@
1
- import JSZip from 'jszip';
2
1
  import { UnexpectedError } from '../../errors/UnexpectedError';
3
2
  import type { FilesystemTools } from '../../execution/FilesystemTools';
4
3
  import type { PipelineJson } from '../../pipeline/PipelineJson/PipelineJson';
5
4
  import type { string_filename } from '../../types/string_filename';
6
5
  import { stringifyPipelineJson } from '../../utils/editable/utils/stringifyPipelineJson';
7
6
  import { validatePipeline } from '../validation/validatePipeline';
7
+ import { loadJsZipModule } from './loadJsZipModule';
8
8
 
9
9
  /**
10
10
  * Saves the given books into an archive file with `.bookc` extension
@@ -29,6 +29,7 @@ export async function saveArchive(
29
29
  validatePipeline(pipelineJson);
30
30
  }
31
31
 
32
+ const { default: JSZip } = await loadJsZipModule();
32
33
  const archive = new JSZip();
33
34
 
34
35
  const collectionJsonString = stringifyPipelineJson(collectionJson);
@@ -101,7 +101,7 @@ export class Agent extends AgentLlmExecutionTools implements LlmExecutionTools,
101
101
 
102
102
  /**
103
103
  * Capabilities of the agent
104
- * This is parsed from commitments like USE BROWSER, USE SEARCH ENGINE, KNOWLEDGE, etc.
104
+ * This is parsed from commitments like USE CALENDAR, USE PROJECT, KNOWLEDGE, etc.
105
105
  */
106
106
  public capabilities: Array<AgentCapability> = [];
107
107
 
@@ -1,5 +1,5 @@
1
1
  import type { ClientOptions } from '@anthropic-ai/sdk';
2
- import Anthropic from '@anthropic-ai/sdk';
2
+ import type Anthropic from '@anthropic-ai/sdk';
3
3
  import type { MessageCreateParamsNonStreaming } from '@anthropic-ai/sdk/resources';
4
4
  import Bottleneck from 'bottleneck';
5
5
  import colors from 'colors'; // <- TODO: [🔶] Make system to put color and style to both node and browser
@@ -19,6 +19,7 @@ import type { string_name } from '../../types/string_name';
19
19
  import type { string_title } from '../../types/string_title';
20
20
  import type { string_date_iso8601 } from '../../types/string_token';
21
21
  import { $getCurrentDate } from '../../utils/misc/$getCurrentDate';
22
+ import { createLazyModuleLoader } from '../../utils/misc/createLazyModuleLoader';
22
23
  import type { chococake } from '../../utils/organization/really_any';
23
24
  import type { TODO_any } from '../../utils/organization/TODO_any';
24
25
  import { templateParameters } from '../../utils/parameters/templateParameters';
@@ -36,6 +37,15 @@ const ANTHROPIC_PROVIDER_PROFILE: ChatParticipant = {
36
37
  color: '#d97706',
37
38
  } as const;
38
39
 
40
+ /**
41
+ * Loads the Anthropic Claude SDK (`@anthropic-ai/sdk`) on demand
42
+ *
43
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
44
+ *
45
+ * @private internal utility of `AnthropicClaudeExecutionTools`
46
+ */
47
+ const loadAnthropicClaudeModule = createLazyModuleLoader(() => import('@anthropic-ai/sdk'));
48
+
39
49
  /**
40
50
  * Execution Tools for calling Anthropic Claude API.
41
51
  *
@@ -80,6 +90,8 @@ export class AnthropicClaudeExecutionTools implements LlmExecutionTools /* <- TO
80
90
  const anthropicOptions: ClientOptions = { ...this.options };
81
91
  delete (anthropicOptions as chococake).isVerbose;
82
92
  delete (anthropicOptions as chococake).isProxied;
93
+
94
+ const { Anthropic } = await loadAnthropicClaudeModule();
83
95
  this.client = new Anthropic(anthropicOptions);
84
96
  }
85
97
 
@@ -1,4 +1,4 @@
1
- import { AzureKeyCredential, OpenAIClient } from '@azure/openai';
1
+ import type { OpenAIClient } from '@azure/openai';
2
2
  import Bottleneck from 'bottleneck';
3
3
  import colors from 'colors'; // <- TODO: [🔶] Make system to put color and style to both node and browser
4
4
  import type { ChatParticipant } from '../../book-components/Chat/types/ChatParticipant';
@@ -18,6 +18,7 @@ import type { string_completion_prompt } from '../../types/string_prompt';
18
18
  import type { string_title } from '../../types/string_title';
19
19
  import type { string_date_iso8601 } from '../../types/string_token';
20
20
  import { $getCurrentDate } from '../../utils/misc/$getCurrentDate';
21
+ import { createLazyModuleLoader } from '../../utils/misc/createLazyModuleLoader';
21
22
  import { keepTypeImported } from '../../utils/organization/keepTypeImported';
22
23
  import { templateParameters } from '../../utils/parameters/templateParameters';
23
24
  import { exportJson } from '../../utils/serialization/exportJson';
@@ -35,6 +36,15 @@ const AZURE_OPENAI_PROVIDER_PROFILE: ChatParticipant = {
35
36
 
36
37
  keepTypeImported<Usage>();
37
38
 
39
+ /**
40
+ * Loads the Azure OpenAI SDK (`@azure/openai`) on demand
41
+ *
42
+ * Note: [🐌] Loaded lazily to keep the startup of the `ptbk` CLI utility fast
43
+ *
44
+ * @private internal utility of `AzureOpenAiExecutionTools`
45
+ */
46
+ const loadAzureOpenAiModule = createLazyModuleLoader(() => import('@azure/openai'));
47
+
38
48
  /**
39
49
  * Execution Tools for calling Azure OpenAI API.
40
50
  *
@@ -77,6 +87,8 @@ export class AzureOpenAiExecutionTools implements LlmExecutionTools /* <- TODO:
77
87
 
78
88
  public async getClient(): Promise<OpenAIClient> {
79
89
  if (this.client === null) {
90
+ const { AzureKeyCredential, OpenAIClient } = await loadAzureOpenAiModule();
91
+
80
92
  this.client = new OpenAIClient(
81
93
  `https://${this.options.resourceName}.openai.azure.com/`,
82
94
  new AzureKeyCredential(this.options.apiKey),
@@ -1,4 +1,4 @@
1
- import { Agent as AgentFromKit, run, setDefaultOpenAIClient, setDefaultOpenAIKey } from '@openai/agents';
1
+ import type { Agent as AgentFromKit } from '@openai/agents';
2
2
  import { NotYetImplementedError } from '../../errors/NotYetImplementedError';
3
3
  import { PipelineExecutionError } from '../../errors/PipelineExecutionError';
4
4
  import type { CallChatModelStreamOptions, LlmExecutionTools } from '../../execution/LlmExecutionTools';
@@ -23,6 +23,7 @@ import { OpenAiAgentKitExecutionToolsOutputTypeMapper } from './OpenAiAgentKitEx
23
23
  import { OpenAiAgentKitExecutionToolsToolBuilder } from './OpenAiAgentKitExecutionToolsToolBuilder';
24
24
  import type { OpenAiCompatibleExecutionToolsNonProxiedOptions } from './OpenAiCompatibleExecutionToolsOptions';
25
25
  import { OpenAiVectorStoreHandler } from './OpenAiVectorStoreHandler';
26
+ import { loadOpenAiAgentsModule } from './utils/loadOpenAiAgentsModule';
26
27
 
27
28
  /**
28
29
  * Constant for default agent kit model name.
@@ -211,7 +212,8 @@ export class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler imple
211
212
  });
212
213
  }
213
214
 
214
- const agentKitTools = this.buildAgentKitTools({ tools, vectorStoreId });
215
+ const { Agent: AgentFromKit } = await loadOpenAiAgentsModule();
216
+ const agentKitTools = await this.buildAgentKitTools({ tools, vectorStoreId });
215
217
  const openAiAgentKitAgent = new AgentFromKit({
216
218
  name,
217
219
  model: this.agentKitModelName,
@@ -275,6 +277,7 @@ export class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler imple
275
277
  agentName: agentForRun.name,
276
278
  input: inputItems,
277
279
  };
280
+ const { run } = await loadOpenAiAgentsModule();
278
281
  const streamResult = await run(agentForRun, inputItems, {
279
282
  stream: true,
280
283
  maxTurns: 200,
@@ -433,6 +436,7 @@ export class OpenAiAgentKitExecutionTools extends OpenAiVectorStoreHandler imple
433
436
  * Ensures the AgentKit SDK is wired to the OpenAI client and API key.
434
437
  */
435
438
  private async ensureAgentKitDefaults(): Promise<void> {
439
+ const { setDefaultOpenAIClient, setDefaultOpenAIKey } = await loadOpenAiAgentsModule();
436
440
  const client = await this.getClient();
437
441
  setDefaultOpenAIClient(client as TODO_any);
438
442
 
@@ -1,5 +1,4 @@
1
1
  import type { Tool as AgentKitTool } from '@openai/agents';
2
- import { Agent as AgentFromKit, fileSearchTool, tool as agentKitTool, webSearchTool } from '@openai/agents';
3
2
  import { spaceTrim } from 'spacetrim';
4
3
  import { parseToolExecutionEnvelope } from '../../commitments/_common/toolExecutionEnvelope';
5
4
  import type { ToolCallProgressUpdate } from '../../commitments/_common/toolRuntimeContext';
@@ -26,6 +25,7 @@ import type { TODO_any } from '../../utils/organization/TODO_any';
26
25
  import type { OpenAiAgentKitExecutionToolsOptions } from './OpenAiAgentKitExecutionToolsOptions';
27
26
  import type { OpenAiCompatibleExecutionToolsNonProxiedOptions } from './OpenAiCompatibleExecutionToolsOptions';
28
27
  import { buildToolInvocationScript } from './utils/buildToolInvocationScript';
28
+ import { loadOpenAiAgentsModule } from './utils/loadOpenAiAgentsModule';
29
29
 
30
30
  /**
31
31
  * Constant for default model used for nested DeepSearch tool invocations.
@@ -33,7 +33,7 @@ import { buildToolInvocationScript } from './utils/buildToolInvocationScript';
33
33
  const DEFAULT_DEEP_SEARCH_MODEL_NAME = 'o4-mini-deep-research';
34
34
 
35
35
  /**
36
- * Tool name used by the Book commitment-backed DeepSearch capability.
36
+ * Tool name used by the DeepSearch capability.
37
37
  */
38
38
  const DEEP_SEARCH_TOOL_NAME = 'deep_search' as string_javascript_name;
39
39
 
@@ -98,11 +98,12 @@ export class OpenAiAgentKitExecutionToolsToolBuilder {
98
98
  /**
99
99
  * Builds the tool list for AgentKit, including hosted file search when applicable.
100
100
  */
101
- public buildAgentKitTools(options: {
101
+ public async buildAgentKitTools(options: {
102
102
  readonly tools?: ModelRequirements['tools'];
103
103
  readonly vectorStoreId?: string;
104
- }): Array<AgentKitTool> {
104
+ }): Promise<Array<AgentKitTool>> {
105
105
  const { tools, vectorStoreId } = options;
106
+ const { fileSearchTool, tool: agentKitTool } = await loadOpenAiAgentsModule();
106
107
  const agentKitTools: Array<AgentKitTool> = [];
107
108
 
108
109
  if (vectorStoreId) {
@@ -117,7 +118,7 @@ export class OpenAiAgentKitExecutionToolsToolBuilder {
117
118
 
118
119
  for (const toolDefinition of tools) {
119
120
  if (this.isDeepSearchToolDefinition(toolDefinition)) {
120
- agentKitTools.push(this.createDeepSearchAgentKitTool(toolDefinition));
121
+ agentKitTools.push(await this.createDeepSearchAgentKitTool(toolDefinition));
121
122
  continue;
122
123
  }
123
124
 
@@ -374,9 +375,10 @@ export class OpenAiAgentKitExecutionToolsToolBuilder {
374
375
  }
375
376
 
376
377
  /**
377
- * Creates the native Agent SDK tool used for `USE DEEPSEARCH`.
378
+ * Creates the native Agent SDK tool used for the DeepSearch capability.
378
379
  */
379
- private createDeepSearchAgentKitTool(toolDefinition: AgentKitToolDefinition): AgentKitTool {
380
+ private async createDeepSearchAgentKitTool(toolDefinition: AgentKitToolDefinition): Promise<AgentKitTool> {
381
+ const { Agent: AgentFromKit, webSearchTool } = await loadOpenAiAgentsModule();
380
382
  const deepSearchAgent = new AgentFromKit({
381
383
  name: 'DeepSearch',
382
384
  model: DEFAULT_DEEP_SEARCH_MODEL_NAME,
@@ -1,4 +1,4 @@
1
- import OpenAI from 'openai';
1
+ import type OpenAI from 'openai';
2
2
  import { NotAllowed } from '../../errors/NotAllowed';
3
3
  import { NotYetImplementedError } from '../../errors/NotYetImplementedError';
4
4
  import { PipelineExecutionError } from '../../errors/PipelineExecutionError';
@@ -1,5 +1,5 @@
1
1
  import colors from 'colors'; // <- TODO: [🔶] Make system to put color and style to both node and browser
2
- import OpenAI from 'openai';
2
+ import type OpenAI from 'openai';
3
3
  import { PipelineExecutionError } from '../../errors/PipelineExecutionError';
4
4
  import type { ChatPromptResult } from '../../execution/PromptResult';
5
5
  import type { Prompt } from '../../types/Prompt';
@@ -1,5 +1,5 @@
1
1
  import colors from 'colors'; // <- TODO: [🔶] Make system to put color and style to both node and browser
2
- import OpenAI from 'openai';
2
+ import type OpenAI from 'openai';
3
3
  import { spaceTrim } from 'spacetrim';
4
4
  import { parseToolExecutionEnvelope } from '../../commitments/_common/toolExecutionEnvelope';
5
5
  import type { ToolCallProgressUpdate } from '../../commitments/_common/toolRuntimeContext';