@promptbook/cli 0.114.0-3 → 0.114.0-5

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 (308) hide show
  1. package/README.md +4 -12
  2. package/apps/agents-server/{USE_TIMEOUT_CHIP_QA.md → TIMEOUT_CHIP_QA.md} +1 -1
  3. package/apps/agents-server/src/app/agents/[agentName]/api/chat/resolveAgentChatRouteContext.ts +5 -12
  4. package/apps/agents-server/src/app/agents/[agentName]/api/voice/route.ts +4 -9
  5. package/apps/agents-server/src/app/api/scrape/route.ts +1 -1
  6. package/apps/agents-server/src/app/layout.tsx +25 -0
  7. package/apps/agents-server/src/app/system/user-wallet/UserWalletDraft.ts +2 -2
  8. package/apps/agents-server/src/components/AgentProfile/AgentCapabilityChips.tsx +1 -24
  9. package/apps/agents-server/src/components/Header/Header.tsx +8 -0
  10. package/apps/agents-server/src/components/Header/HeaderTypes.ts +5 -0
  11. package/apps/agents-server/src/components/Header/buildHeaderSystemMenuItems.ts +118 -30
  12. package/apps/agents-server/src/components/Header/resolveHeaderSystemActivities.ts +86 -0
  13. package/apps/agents-server/src/components/Homepage/AgentCard.tsx +0 -3
  14. package/apps/agents-server/src/components/LayoutWrapper/LayoutWrapper.tsx +8 -0
  15. package/apps/agents-server/src/components/NewAgentDialog/NewAgentWizardState.ts +0 -12
  16. package/apps/agents-server/src/components/NewAgentDialog/NewAgentWizardUseSetupStep.tsx +0 -58
  17. package/apps/agents-server/src/components/NewAgentDialog/newAgentWizardPresets.ts +0 -56
  18. package/apps/agents-server/src/components/WalletRecordDialog/useWalletRecordDialogState.ts +1 -1
  19. package/apps/agents-server/src/languages/ServerTranslationKeys.ts +0 -10
  20. package/apps/agents-server/src/languages/translations/czech.yaml +0 -10
  21. package/apps/agents-server/src/languages/translations/english.yaml +0 -10
  22. package/apps/agents-server/src/message-providers/email/smtp/SmtpMessageProvider.ts +1 -1
  23. package/apps/agents-server/src/tools/$provideOpenAiAgentKitExecutionToolsForServer.ts +0 -191
  24. package/apps/agents-server/src/tools/$provideOpenAiAssistantExecutionToolsForServer.ts +0 -3
  25. package/apps/agents-server/src/tools/run_browser.ts +1 -1
  26. package/apps/agents-server/src/tools/send_email.ts +3 -3
  27. package/apps/agents-server/src/utils/handleChatCompletion/createHandleChatCompletionPromptContext.ts +0 -1
  28. package/apps/agents-server/src/utils/handleChatCompletion/resolveHandleChatCompletionRuntime.ts +4 -12
  29. package/apps/agents-server/src/utils/manGoOnboarding/manGoOnboardingAgentBooks.ts +0 -1
  30. package/apps/agents-server/src/utils/messages/parseUseEmailSmtpCredential.ts +1 -1
  31. package/apps/agents-server/src/utils/resolveUseEmailSmtpCredential.ts +1 -1
  32. package/apps/agents-server/src/utils/useEmailSmtpWalletConstants.ts +5 -5
  33. package/apps/agents-server/src/utils/userChat/createRunUserChatJobExecutionContext.ts +5 -12
  34. package/apps/agents-server/src/utils/userWallet/UserWalletRecord.ts +1 -1
  35. package/apps/agents-server/src/utils/userWallet/resolveUseEmailSmtpCredentialFromWallet.ts +1 -1
  36. package/apps/agents-server/src/utils/vpsSelfUpdate/deleteVpsSelfUpdateInstalledVersion.ts +2 -1
  37. package/apps/agents-server/src/utils/vpsSelfUpdate/isVpsSelfUpdateJobRunning.ts +16 -0
  38. package/apps/agents-server/src/utils/vpsSelfUpdate/startVpsSelfUpdate.ts +2 -1
  39. package/apps/agents-server/src/utils/vpsSelfUpdate.ts +1 -0
  40. package/esm/index.es.js +2885 -6344
  41. package/esm/index.es.js.map +1 -1
  42. package/esm/scripts/run-codex-prompts/common/createCoderRunStepTracker.d.ts +48 -0
  43. package/esm/scripts/run-codex-prompts/prompts/buildPromptStatusDetails.d.ts +43 -0
  44. package/esm/scripts/run-codex-prompts/prompts/formatCoderRunSteps.d.ts +6 -3
  45. package/esm/scripts/run-codex-prompts/prompts/isPromptSectionUnfinished.d.ts +8 -0
  46. package/esm/scripts/run-codex-prompts/prompts/markPromptDone.d.ts +1 -1
  47. package/esm/scripts/run-codex-prompts/prompts/markPromptInProgress.d.ts +27 -0
  48. package/esm/scripts/run-codex-prompts/prompts/resolvePromptStatusLine.d.ts +19 -0
  49. package/esm/scripts/run-codex-prompts/prompts/writePromptStatusLine.d.ts +9 -0
  50. package/esm/scripts/run-codex-prompts/server/buildCoderServerPromptResponse.d.ts +1 -1
  51. package/esm/scripts/run-codex-prompts/server/coderServerHtml.d.ts +1 -1
  52. package/esm/scripts/run-codex-prompts/server/updatePromptSection.d.ts +1 -1
  53. package/esm/scripts/run-codex-prompts/testing/runPromptWithTestFeedback.d.ts +6 -0
  54. package/esm/scripts/verify-prompts/$orderPromptFiles.d.ts +9 -0
  55. package/esm/scripts/verify-prompts/VerifyPromptsOrder.d.ts +26 -0
  56. package/esm/scripts/verify-prompts/verify-prompts.d.ts +3 -2
  57. package/esm/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  58. package/esm/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  59. package/esm/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  60. package/esm/src/cli/cli-commands/coder/verify.d.ts +1 -1
  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/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +1 -1
  66. package/esm/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  67. package/esm/src/version.d.ts +1 -1
  68. package/package.json +1 -1
  69. package/src/_packages/components.readme.md +1 -1
  70. package/src/book-2.0/agent-source/AgentBasicInformation.ts +3 -9
  71. package/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments/filterCommitmentsForAgentModelRequirements.ts +0 -23
  72. package/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments.ts +0 -2
  73. package/src/book-2.0/agent-source/parseAgentSource/applyMetaCommitment.ts +16 -31
  74. package/src/book-2.0/agent-source/parseAgentSource/createCapabilitiesFromCommitment.ts +0 -35
  75. package/src/book-2.0/book-language-documentation/bookLanguageDocumentationExamples.ts +0 -25
  76. package/src/book-2.0/book-language-documentation/createStandaloneBookLanguageMarkdown.ts +2 -10
  77. package/src/book-2.0/book-language-documentation/czechBookLanguageManualDictionary.ts +7 -32
  78. package/src/book-2.0/book-language-documentation/englishBookLanguageManualDictionary.ts +6 -31
  79. package/src/book-components/BookEditor/useBookEditorMonacoLanguage.ts +1 -1
  80. package/src/cli/cli-commands/coder/boilerplateCount.ts +139 -0
  81. package/src/cli/cli-commands/coder/generate-boilerplates.ts +52 -44
  82. package/src/cli/cli-commands/coder/getDefaultCoderPackageJsonScripts.ts +3 -1
  83. package/src/cli/cli-commands/coder/init.ts +2 -1
  84. package/src/cli/cli-commands/coder/verify.ts +29 -5
  85. package/src/commitments/ACTION/ACTION.ts +3 -3
  86. package/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.ts +1 -1
  87. package/src/commitments/META_FULLNAME/META_FULLNAME.ts +70 -0
  88. package/src/commitments/META_ID/META_ID.ts +78 -0
  89. package/src/commitments/_common/getAllCommitmentsToolFunctionsForNode.ts +1 -49
  90. package/src/commitments/index.ts +6 -24
  91. package/src/llm-providers/agent/Agent.ts +1 -1
  92. package/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.ts +2 -2
  93. package/src/other/templates/getTemplatesPipelineCollection.ts +735 -693
  94. package/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.ts +8 -9
  95. package/src/version.ts +2 -2
  96. package/src/versions.txt +2 -0
  97. package/umd/index.umd.js +2888 -6347
  98. package/umd/index.umd.js.map +1 -1
  99. package/umd/scripts/run-codex-prompts/common/createCoderRunStepTracker.d.ts +48 -0
  100. package/umd/scripts/run-codex-prompts/prompts/buildPromptStatusDetails.d.ts +43 -0
  101. package/umd/scripts/run-codex-prompts/prompts/formatCoderRunSteps.d.ts +6 -3
  102. package/umd/scripts/run-codex-prompts/prompts/isPromptSectionUnfinished.d.ts +8 -0
  103. package/umd/scripts/run-codex-prompts/prompts/markPromptDone.d.ts +1 -1
  104. package/umd/scripts/run-codex-prompts/prompts/markPromptInProgress.d.ts +27 -0
  105. package/umd/scripts/run-codex-prompts/prompts/resolvePromptStatusLine.d.ts +19 -0
  106. package/umd/scripts/run-codex-prompts/prompts/writePromptStatusLine.d.ts +9 -0
  107. package/umd/scripts/run-codex-prompts/server/buildCoderServerPromptResponse.d.ts +1 -1
  108. package/umd/scripts/run-codex-prompts/server/coderServerHtml.d.ts +1 -1
  109. package/umd/scripts/run-codex-prompts/server/updatePromptSection.d.ts +1 -1
  110. package/umd/scripts/run-codex-prompts/testing/runPromptWithTestFeedback.d.ts +6 -0
  111. package/umd/scripts/verify-prompts/$orderPromptFiles.d.ts +9 -0
  112. package/umd/scripts/verify-prompts/VerifyPromptsOrder.d.ts +26 -0
  113. package/umd/scripts/verify-prompts/verify-prompts.d.ts +3 -2
  114. package/umd/src/book-2.0/agent-source/AgentBasicInformation.d.ts +3 -3
  115. package/umd/src/cli/cli-commands/coder/boilerplateCount.d.ts +52 -0
  116. package/umd/src/cli/cli-commands/coder/generate-boilerplates.d.ts +3 -2
  117. package/umd/src/cli/cli-commands/coder/verify.d.ts +1 -1
  118. package/umd/src/commitments/{COMPONENT/COMPONENT.d.ts → META_FULLNAME/META_FULLNAME.d.ts} +8 -5
  119. package/umd/src/commitments/META_ID/META_ID.d.ts +32 -0
  120. package/umd/src/commitments/index.d.ts +4 -12
  121. package/umd/src/llm-providers/agent/Agent.d.ts +1 -1
  122. package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +1 -1
  123. package/umd/src/{commitments/USE_BROWSER → scrapers/_common/utils}/fetchUrlContent.d.ts +2 -3
  124. package/umd/src/version.d.ts +1 -1
  125. package/apps/agents-server/src/tools/configureTimeoutToolRuntimeAdapterForServer.ts +0 -381
  126. package/apps/agents-server/src/utils/emails/extractUseEmailConfigurationFromAgentSource.ts +0 -42
  127. package/esm/scripts/run-codex-prompts/prompts/replacePromptTodoStatusLine.d.ts +0 -7
  128. package/esm/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  129. package/esm/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  130. package/esm/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  131. package/esm/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  132. package/esm/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  133. package/esm/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  134. package/esm/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  135. package/esm/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  136. package/esm/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  137. package/esm/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  138. package/esm/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  139. package/esm/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  140. package/esm/src/commitments/META/META.d.ts +0 -65
  141. package/esm/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  142. package/esm/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  143. package/esm/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  144. package/esm/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  145. package/esm/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  146. package/esm/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  147. package/esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  148. package/esm/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts +0 -1
  149. package/esm/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  150. package/esm/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  151. package/esm/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  152. package/esm/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.test.d.ts +0 -1
  153. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  154. package/esm/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  155. package/esm/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  156. package/esm/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  157. package/esm/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  158. package/esm/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  159. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  160. package/esm/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  161. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  162. package/esm/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  163. package/esm/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  164. package/esm/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  165. package/esm/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  166. package/esm/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  167. package/esm/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  168. package/esm/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  169. package/esm/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  170. package/esm/src/commitments/WALLET/WALLET.d.ts +0 -21
  171. package/esm/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  172. package/esm/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  173. package/esm/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  174. package/esm/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  175. package/esm/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  176. package/esm/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  177. package/esm/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  178. package/esm/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  179. package/esm/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  180. package/esm/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  181. package/esm/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  182. package/esm/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  183. package/esm/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  184. package/src/commitments/COMPONENT/COMPONENT.ts +0 -70
  185. package/src/commitments/MEMORY/MEMORY.ts +0 -94
  186. package/src/commitments/MEMORY/MemoryToolNames.ts +0 -13
  187. package/src/commitments/MEMORY/MemoryToolRuntimeAdapter.ts +0 -180
  188. package/src/commitments/MEMORY/createMemorySystemMessage.ts +0 -27
  189. package/src/commitments/MEMORY/createMemoryToolFunctions.ts +0 -134
  190. package/src/commitments/MEMORY/createMemoryTools.ts +0 -115
  191. package/src/commitments/MEMORY/getMemoryCommitmentDocumentation.ts +0 -47
  192. package/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.ts +0 -104
  193. package/src/commitments/MEMORY/getMemoryToolTitles.ts +0 -16
  194. package/src/commitments/MEMORY/parseMemoryToolArgs.ts +0 -126
  195. package/src/commitments/MEMORY/resolveMemoryRuntimeContext.ts +0 -23
  196. package/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.ts +0 -26
  197. package/src/commitments/META/META.ts +0 -168
  198. package/src/commitments/USE/TODO.txt +0 -1
  199. package/src/commitments/USE/aggregateUseCommitmentSystemMessages.ts +0 -219
  200. package/src/commitments/USE_BROWSER/TODO.txt +0 -1
  201. package/src/commitments/USE_BROWSER/USE_BROWSER.ts +0 -257
  202. package/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.ts +0 -45
  203. package/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.ts +0 -83
  204. package/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.ts +0 -146
  205. package/src/commitments/USE_EMAIL/USE_EMAIL.ts +0 -201
  206. package/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.ts +0 -75
  207. package/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.ts +0 -44
  208. package/src/commitments/USE_EMAIL/sendEmailViaBrowser.ts +0 -47
  209. package/src/commitments/USE_SEARCH_ENGINE/TODO.txt +0 -1
  210. package/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.ts +0 -171
  211. package/src/commitments/USE_SPAWN/USE_SPAWN.ts +0 -150
  212. package/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.ts +0 -42
  213. package/src/commitments/USE_SPAWN/spawnAgentViaBrowser.ts +0 -50
  214. package/src/commitments/USE_TIME/USE_TIME.ts +0 -177
  215. package/src/commitments/USE_TIMEOUT/TimeoutToolNames.ts +0 -13
  216. package/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.ts +0 -255
  217. package/src/commitments/USE_TIMEOUT/USE_TIMEOUT.ts +0 -117
  218. package/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.ts +0 -22
  219. package/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.ts +0 -361
  220. package/src/commitments/USE_TIMEOUT/createTimeoutTools.ts +0 -127
  221. package/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.ts +0 -67
  222. package/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.ts +0 -460
  223. package/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.ts +0 -36
  224. package/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.ts +0 -26
  225. package/src/commitments/WALLET/WALLET.ts +0 -71
  226. package/src/commitments/WALLET/WalletToolNames.ts +0 -14
  227. package/src/commitments/WALLET/WalletToolRuntimeAdapter.ts +0 -180
  228. package/src/commitments/WALLET/createWalletSystemMessage.ts +0 -22
  229. package/src/commitments/WALLET/createWalletToolFunctions.ts +0 -145
  230. package/src/commitments/WALLET/createWalletTools.ts +0 -129
  231. package/src/commitments/WALLET/getWalletCommitmentDocumentation.ts +0 -14
  232. package/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.ts +0 -64
  233. package/src/commitments/WALLET/getWalletToolTitles.ts +0 -17
  234. package/src/commitments/WALLET/parseWalletToolArgs.ts +0 -231
  235. package/src/commitments/WALLET/resolveWalletRuntimeContext.ts +0 -23
  236. package/src/commitments/WALLET/setWalletToolRuntimeAdapter.ts +0 -26
  237. package/src/commitments/_common/createSerpSearchToolFunction.ts +0 -46
  238. package/umd/scripts/run-codex-prompts/prompts/replacePromptTodoStatusLine.d.ts +0 -7
  239. package/umd/src/book-2.0/agent-source/createAgentModelRequirements.useCommitmentAggregation.test.d.ts +0 -1
  240. package/umd/src/commitments/MEMORY/MEMORY.d.ts +0 -48
  241. package/umd/src/commitments/MEMORY/MEMORY.test.d.ts +0 -1
  242. package/umd/src/commitments/MEMORY/MemoryToolNames.d.ts +0 -11
  243. package/umd/src/commitments/MEMORY/MemoryToolRuntimeAdapter.d.ts +0 -149
  244. package/umd/src/commitments/MEMORY/createMemorySystemMessage.d.ts +0 -6
  245. package/umd/src/commitments/MEMORY/createMemoryToolFunctions.d.ts +0 -8
  246. package/umd/src/commitments/MEMORY/createMemoryTools.d.ts +0 -14
  247. package/umd/src/commitments/MEMORY/getMemoryCommitmentDocumentation.d.ts +0 -6
  248. package/umd/src/commitments/MEMORY/getMemoryToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  249. package/umd/src/commitments/MEMORY/getMemoryToolTitles.d.ts +0 -7
  250. package/umd/src/commitments/MEMORY/parseMemoryToolArgs.d.ts +0 -61
  251. package/umd/src/commitments/MEMORY/resolveMemoryRuntimeContext.d.ts +0 -8
  252. package/umd/src/commitments/MEMORY/setMemoryToolRuntimeAdapter.d.ts +0 -13
  253. package/umd/src/commitments/META/META.d.ts +0 -65
  254. package/umd/src/commitments/USE/aggregateUseCommitmentSystemMessages.d.ts +0 -32
  255. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +0 -58
  256. package/umd/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +0 -1
  257. package/umd/src/commitments/USE_BROWSER/fetchUrlContentViaBrowser.d.ts +0 -13
  258. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.d.ts +0 -10
  259. package/umd/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts +0 -1
  260. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.d.ts +0 -47
  261. package/umd/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.test.d.ts +0 -1
  262. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.d.ts +0 -38
  263. package/umd/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts +0 -1
  264. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.d.ts +0 -21
  265. package/umd/src/commitments/USE_EMAIL/parseUseEmailCommitmentContent.test.d.ts +0 -1
  266. package/umd/src/commitments/USE_EMAIL/resolveSendEmailToolForNode.d.ts +0 -11
  267. package/umd/src/commitments/USE_EMAIL/sendEmailViaBrowser.d.ts +0 -13
  268. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +0 -46
  269. package/umd/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.test.d.ts +0 -1
  270. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.d.ts +0 -38
  271. package/umd/src/commitments/USE_SPAWN/USE_SPAWN.test.d.ts +0 -1
  272. package/umd/src/commitments/USE_SPAWN/resolveSpawnAgentToolForNode.d.ts +0 -9
  273. package/umd/src/commitments/USE_SPAWN/spawnAgentViaBrowser.d.ts +0 -12
  274. package/umd/src/commitments/USE_TIME/USE_TIME.d.ts +0 -43
  275. package/umd/src/commitments/USE_TIME/USE_TIME.test.d.ts +0 -1
  276. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolNames.d.ts +0 -11
  277. package/umd/src/commitments/USE_TIMEOUT/TimeoutToolRuntimeAdapter.d.ts +0 -212
  278. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.d.ts +0 -38
  279. package/umd/src/commitments/USE_TIMEOUT/USE_TIMEOUT.test.d.ts +0 -1
  280. package/umd/src/commitments/USE_TIMEOUT/createTimeoutSystemMessage.d.ts +0 -6
  281. package/umd/src/commitments/USE_TIMEOUT/createTimeoutToolFunctions.d.ts +0 -8
  282. package/umd/src/commitments/USE_TIMEOUT/createTimeoutTools.d.ts +0 -7
  283. package/umd/src/commitments/USE_TIMEOUT/getTimeoutToolRuntimeAdapterOrDisabledResult.d.ts +0 -17
  284. package/umd/src/commitments/USE_TIMEOUT/parseTimeoutToolArgs.d.ts +0 -78
  285. package/umd/src/commitments/USE_TIMEOUT/resolveTimeoutRuntimeContext.d.ts +0 -8
  286. package/umd/src/commitments/USE_TIMEOUT/setTimeoutToolRuntimeAdapter.d.ts +0 -13
  287. package/umd/src/commitments/WALLET/WALLET.d.ts +0 -21
  288. package/umd/src/commitments/WALLET/WALLET.test.d.ts +0 -1
  289. package/umd/src/commitments/WALLET/WalletToolNames.d.ts +0 -12
  290. package/umd/src/commitments/WALLET/WalletToolRuntimeAdapter.d.ts +0 -163
  291. package/umd/src/commitments/WALLET/createWalletSystemMessage.d.ts +0 -6
  292. package/umd/src/commitments/WALLET/createWalletToolFunctions.d.ts +0 -8
  293. package/umd/src/commitments/WALLET/createWalletTools.d.ts +0 -7
  294. package/umd/src/commitments/WALLET/getWalletCommitmentDocumentation.d.ts +0 -6
  295. package/umd/src/commitments/WALLET/getWalletToolRuntimeAdapterOrDisabledResult.d.ts +0 -16
  296. package/umd/src/commitments/WALLET/getWalletToolTitles.d.ts +0 -7
  297. package/umd/src/commitments/WALLET/parseWalletToolArgs.d.ts +0 -51
  298. package/umd/src/commitments/WALLET/resolveWalletRuntimeContext.d.ts +0 -8
  299. package/umd/src/commitments/WALLET/setWalletToolRuntimeAdapter.d.ts +0 -13
  300. package/umd/src/commitments/_common/createSerpSearchToolFunction.d.ts +0 -12
  301. /package/esm/src/book-2.0/agent-source/{createAgentModelRequirements.useCommitmentAggregation.test.d.ts → createAgentModelRequirements.commitmentAggregation.test.d.ts} +0 -0
  302. /package/esm/src/{commitments/MEMORY/MEMORY.test.d.ts → cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  303. /package/esm/src/{commitments/USE_BROWSER/USE_BROWSER.test.d.ts → cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  304. /package/esm/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
  305. /package/{esm/src/commitments/USE_BROWSER/resolveRunBrowserToolForNode.test.d.ts → umd/src/book-2.0/agent-source/createAgentModelRequirements.commitmentAggregation.test.d.ts} +0 -0
  306. /package/{esm/src/commitments/USE_DEEPSEARCH/USE_DEEPSEARCH.test.d.ts → umd/src/cli/cli-commands/coder/boilerplateCount.test.d.ts} +0 -0
  307. /package/{esm/src/commitments/USE_EMAIL/USE_EMAIL.test.d.ts → umd/src/cli/cli-commands/coder/generate-boilerplates.test.d.ts} +0 -0
  308. /package/umd/src/commitments/{META → META_DESCRIPTION}/META_DESCRIPTION.d.ts +0 -0
@@ -1,171 +0,0 @@
1
- import { spaceTrim } from 'spacetrim';
2
- import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
3
- import type { ToolFunction } from '../../scripting/javascript/JavascriptExecutionToolsOptions';
4
- import type { string_javascript_name } from '../../types/string_person_fullname';
5
- import type { TODO_any } from '../../utils/organization/TODO_any';
6
- import { appendAggregatedUseCommitmentPlaceholder } from '../USE/aggregateUseCommitmentSystemMessages';
7
- import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
8
- import { createSerpSearchToolFunction } from '../_common/createSerpSearchToolFunction';
9
-
10
- /**
11
- * USE SEARCH ENGINE commitment definition
12
- *
13
- * The `USE SEARCH ENGINE` commitment indicates that the agent should utilize a search engine tool
14
- * to access and retrieve up-to-date information from the internet when necessary.
15
- *
16
- * The content following `USE SEARCH ENGINE` is an arbitrary text that the agent should know (e.g. search scope or instructions).
17
- *
18
- * Example usage in agent source:
19
- *
20
- * ```book
21
- * USE SEARCH ENGINE
22
- * USE SEARCH ENGINE Hledej informace o Přemyslovcích
23
- * ```
24
- *
25
- * @private [🪔] Maybe export the commitments through some package
26
- */
27
- export class UseSearchEngineCommitmentDefinition extends BaseCommitmentDefinition<'USE SEARCH ENGINE'> {
28
- public constructor() {
29
- super('USE SEARCH ENGINE', ['USE SEARCH']);
30
- }
31
-
32
- override get requiresContent(): boolean {
33
- return false;
34
- }
35
-
36
- /**
37
- * Short one-line description of USE SEARCH ENGINE.
38
- */
39
- get description(): string {
40
- return 'Enable the agent to use a search engine tool for accessing internet information.';
41
- }
42
-
43
- /**
44
- * Icon for this commitment.
45
- */
46
- get icon(): string {
47
- return '🔍';
48
- }
49
-
50
- /**
51
- * Markdown documentation for USE SEARCH ENGINE commitment.
52
- */
53
- get documentation(): string {
54
- return spaceTrim(`
55
- # USE SEARCH ENGINE
56
-
57
- Enables the agent to use a search engine tool to access and retrieve up-to-date information from the internet.
58
-
59
- ## Key aspects
60
-
61
- - The content following \`USE SEARCH ENGINE\` is an arbitrary text that the agent should know (e.g. search scope or instructions).
62
- - The actual search engine tool usage is handled by the agent runtime
63
- - Allows the agent to search for current information from the web
64
- - Useful for research tasks, finding facts, and accessing dynamic content
65
-
66
- ## Examples
67
-
68
- \`\`\`book
69
- Research Assistant
70
-
71
- PERSONA You are a helpful research assistant specialized in finding current information
72
- USE SEARCH ENGINE
73
- RULE Always cite your sources when providing information from the web
74
- \`\`\`
75
-
76
- \`\`\`book
77
- Fact Checker
78
-
79
- PERSONA You are a fact checker
80
- USE SEARCH ENGINE
81
- ACTION Search for claims and verify them against reliable sources
82
- \`\`\`
83
- `);
84
- }
85
-
86
- applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements {
87
- // Get existing tools array or create new one
88
- const existingTools = requirements.tools || [];
89
-
90
- // Add 'web_search' to tools if not already present
91
- const updatedTools = existingTools.some((tool) => tool.name === 'web_search')
92
- ? existingTools
93
- : [
94
- ...existingTools,
95
- {
96
- name: 'web_search',
97
- description: spaceTrim(`
98
- Search the internet for information.
99
- Use this tool when you need to find up-to-date information or facts that you don't know.
100
- `),
101
- parameters: {
102
- type: 'object',
103
- properties: {
104
- query: {
105
- type: 'string',
106
- description: 'The search query',
107
- },
108
- location: {
109
- type: 'string',
110
- description:
111
- 'The location for the search (e.g., "Austin, Texas, United States" or "Prague, Czechia")',
112
- },
113
- gl: {
114
- type: 'string',
115
- description: 'The country code (e.g., "us" for United States, "cz" for Czechia)',
116
- },
117
- hl: {
118
- type: 'string',
119
- description: 'The language code (e.g., "en" for English, "cs" for Czech)',
120
- },
121
- num: {
122
- type: 'integer',
123
- description: 'Number of results to return',
124
- },
125
- engine: {
126
- type: 'string',
127
- description: 'The search engine to use (e.g., "google", "bing", "yahoo", "baidu")',
128
- },
129
- google_domain: {
130
- type: 'string',
131
- description: 'The Google domain to use (e.g., "google.com", "google.cz")',
132
- },
133
- },
134
- required: ['query'],
135
- },
136
- } as TODO_any,
137
- ];
138
-
139
- return appendAggregatedUseCommitmentPlaceholder(
140
- {
141
- ...requirements,
142
- tools: updatedTools,
143
- _metadata: {
144
- ...requirements._metadata,
145
- useSearchEngine: content || true,
146
- },
147
- },
148
- this.type,
149
- );
150
- }
151
-
152
- /**
153
- * Gets human-readable titles for tool functions provided by this commitment.
154
- */
155
- getToolTitles(): Record<string_javascript_name, string> {
156
- return {
157
- web_search: 'Web search',
158
- };
159
- }
160
-
161
- /**
162
- * Gets the `web_search` tool function implementation.
163
- */
164
- getToolFunctions(): Record<string_javascript_name, ToolFunction> {
165
- return {
166
- web_search: createSerpSearchToolFunction('web_search', 'Search'),
167
- };
168
- }
169
- }
170
-
171
- // Note: [💞] Ignore a discrepancy between file name and entity name
@@ -1,150 +0,0 @@
1
- import { spaceTrim } from 'spacetrim';
2
- import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
3
- import {
4
- createCreateAgentInputToolParametersSchema,
5
- CREATE_AGENT_INPUT_SOURCE_MAX_LENGTH,
6
- } from '../../collection/agent-collection/CreateAgentInput';
7
- import type { ToolFunction } from '../../scripting/javascript/JavascriptExecutionToolsOptions';
8
- import type { LlmToolDefinition } from '../../types/LlmToolDefinition';
9
- import type { string_javascript_name } from '../../types/string_person_fullname';
10
- import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
11
- import { formatOptionalInstructionBlock } from '../_base/formatOptionalInstructionBlock';
12
- import { spawnAgentViaBrowser } from './spawnAgentViaBrowser';
13
-
14
- /**
15
- * Tool name used by USE SPAWN.
16
- *
17
- * @private internal USE SPAWN constant
18
- */
19
- const SPAWN_AGENT_TOOL_NAME = 'spawn_agent' as string_javascript_name;
20
-
21
- /**
22
- * USE SPAWN commitment definition.
23
- *
24
- * The `USE SPAWN` commitment enables creating new persistent child agents through one tool call.
25
- *
26
- * @private [🪔] Maybe export the commitments through some package
27
- */
28
- export class UseSpawnCommitmentDefinition extends BaseCommitmentDefinition<'USE SPAWN'> {
29
- public constructor() {
30
- super('USE SPAWN', ['SPAWN']);
31
- }
32
-
33
- override get requiresContent(): boolean {
34
- return false;
35
- }
36
-
37
- /**
38
- * Short one-line description of USE SPAWN.
39
- */
40
- public get description(): string {
41
- return 'Enable the agent to create persistent child agents via Agents Server create-agent flow.';
42
- }
43
-
44
- /**
45
- * Icon for this commitment.
46
- */
47
- get icon(): string {
48
- return '🧬';
49
- }
50
-
51
- /**
52
- * Markdown documentation for USE SPAWN commitment.
53
- */
54
- get documentation(): string {
55
- return spaceTrim(`
56
- # USE SPAWN
57
-
58
- Enables the agent to create a new persistent child agent using the \`spawn_agent\` tool.
59
-
60
- ## Key aspects
61
-
62
- - The spawned agent is persisted exactly like manually created agents.
63
- - Tool input mirrors create-agent fields currently supported by Agents Server:
64
- - \`source\` (required)
65
- - \`folderId\` (optional)
66
- - \`sortOrder\` (optional)
67
- - \`visibility\` (optional)
68
- - Unknown fields are rejected to avoid silent misconfiguration.
69
- - \`source\` payload is size-limited.
70
- - Agents Server applies permission and abuse protections (auth checks, limits).
71
- - Optional text after \`USE SPAWN\` is treated as spawn-policy instructions.
72
-
73
- ## Examples
74
-
75
- \`\`\`book
76
- Team Builder
77
-
78
- PERSONA You can create specialized assistants for the user.
79
- USE SPAWN Spawn only when the user explicitly asks for a new persistent agent.
80
- \`\`\`
81
- `);
82
- }
83
-
84
- applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements {
85
- const extraInstructions = formatOptionalInstructionBlock('Spawn instructions', content);
86
- const existingTools = requirements.tools || [];
87
- const tools: ReadonlyArray<LlmToolDefinition> = existingTools.some(
88
- (tool) => tool.name === SPAWN_AGENT_TOOL_NAME,
89
- )
90
- ? existingTools
91
- : [
92
- ...existingTools,
93
- {
94
- name: SPAWN_AGENT_TOOL_NAME,
95
- description: spaceTrim(`
96
- Creates one new persistent child agent in Agents Server.
97
- Use this when the user asks to create a new dedicated agent profile.
98
- The tool returns JSON with \`status\`, \`agentId\`, and created \`agent\` or \`error\`.
99
- `),
100
- parameters: createCreateAgentInputToolParametersSchema(),
101
- },
102
- ];
103
-
104
- return this.appendToSystemMessage(
105
- {
106
- ...requirements,
107
- tools,
108
- _metadata: {
109
- ...requirements._metadata,
110
- useSpawn: content || true,
111
- },
112
- },
113
- spaceTrim(
114
- (block) => `
115
- ## Spawning agents
116
-
117
- - Use \`${SPAWN_AGENT_TOOL_NAME}\` only when user asks to create a persistent new agent.
118
- - Pass full agent source in \`source\`.
119
- - Keep \`source\` concise; the maximum accepted length is ${CREATE_AGENT_INPUT_SOURCE_MAX_LENGTH} characters.
120
- - Do not add unknown fields in tool arguments.
121
- ${block(extraInstructions)}
122
- `,
123
- ),
124
- );
125
- }
126
-
127
- /**
128
- * Gets human-readable titles for tool functions provided by this commitment.
129
- */
130
- getToolTitles(): Record<string_javascript_name, string> {
131
- return {
132
- [SPAWN_AGENT_TOOL_NAME]: 'Spawn agent',
133
- };
134
- }
135
-
136
- /**
137
- * Gets browser-safe `spawn_agent` implementation.
138
- *
139
- * Node.js runtime overrides this through `getAllCommitmentsToolFunctionsForNode`.
140
- */
141
- getToolFunctions(): Record<string_javascript_name, ToolFunction> {
142
- return {
143
- async [SPAWN_AGENT_TOOL_NAME](args: unknown): Promise<string> {
144
- return spawnAgentViaBrowser(args as Record<string, unknown>);
145
- },
146
- };
147
- }
148
- }
149
-
150
- // Note: [💞] Ignore a discrepancy between file name and entity name
@@ -1,42 +0,0 @@
1
- import { spaceTrim } from 'spacetrim';
2
- import { EnvironmentMismatchError } from '../../errors/EnvironmentMismatchError';
3
- import type { ToolFunction } from '../../scripting/javascript/JavascriptExecutionToolsOptions';
4
-
5
- /**
6
- * Resolves the server-side `spawn_agent` tool for Node.js runtimes.
7
- *
8
- * Uses lazy require so core package can load outside Agents Server.
9
- *
10
- * @private internal utility for USE SPAWN commitment
11
- */
12
- export function resolveSpawnAgentToolForNode(): ToolFunction {
13
- try {
14
- // eslint-disable-next-line @typescript-eslint/no-var-requires
15
- const { spawn_agent } = require('../../../apps/agents-server/src/tools/spawn_agent');
16
-
17
- if (typeof spawn_agent !== 'function') {
18
- throw new Error('spawn_agent value is not a function but ' + typeof spawn_agent);
19
- }
20
-
21
- return spawn_agent as ToolFunction;
22
- } catch (error) {
23
- const normalizedError =
24
- error instanceof Error
25
- ? error
26
- : new Error(typeof error === 'string' ? error : JSON.stringify(error ?? 'Unknown error'));
27
-
28
- return async () => {
29
- throw new EnvironmentMismatchError(
30
- spaceTrim(
31
- (block) => `
32
- \`spawn_agent\` tool is not available in this environment.
33
- This commitment requires Agents Server runtime with agent persistence enabled.
34
-
35
- ${normalizedError.name}:
36
- ${block(normalizedError.message)}
37
- `,
38
- ),
39
- );
40
- };
41
- }
42
- }
@@ -1,50 +0,0 @@
1
- /**
2
- * Browser-safe wrapper for spawning one persisted Agents Server agent.
3
- *
4
- * This function proxies requests to the Agents Server `/api/spawn-agent` endpoint.
5
- *
6
- * @param args Tool payload forwarded to server-side `spawn_agent` tool.
7
- * @param agentsServerUrl Optional explicit agents server base URL.
8
- * @returns JSON string with structured spawn result.
9
- *
10
- * @private internal utility for USE SPAWN commitment
11
- */
12
- export async function spawnAgentViaBrowser(args: Record<string, unknown>, agentsServerUrl?: string): Promise<string> {
13
- try {
14
- const baseUrl = agentsServerUrl || (typeof window !== 'undefined' ? window.location.origin : '');
15
-
16
- if (!baseUrl) {
17
- throw new Error('Agents server URL is required in non-browser environments');
18
- }
19
-
20
- const apiUrl = new URL('/api/spawn-agent', baseUrl);
21
-
22
- const response = await fetch(apiUrl.toString(), {
23
- method: 'POST',
24
- headers: {
25
- 'Content-Type': 'application/json',
26
- },
27
- body: JSON.stringify(args),
28
- });
29
-
30
- const payload = (await response.json().catch(() => ({}))) as {
31
- success?: boolean;
32
- result?: unknown;
33
- error?: unknown;
34
- };
35
-
36
- if (payload.result !== undefined) {
37
- return typeof payload.result === 'string' ? payload.result : JSON.stringify(payload.result);
38
- }
39
-
40
- if (!response.ok || payload.success === false) {
41
- throw new Error(
42
- `Failed to spawn agent: ${typeof payload.error === 'string' ? payload.error : response.statusText}`,
43
- );
44
- }
45
- return JSON.stringify(payload);
46
- } catch (error) {
47
- const errorMessage = error instanceof Error ? error.message : String(error);
48
- throw new Error(`Error spawning agent via browser: ${errorMessage}`);
49
- }
50
- }
@@ -1,177 +0,0 @@
1
- import { spaceTrim } from 'spacetrim';
2
- import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
3
- import type { ToolFunction } from '../../scripting/javascript/JavascriptExecutionToolsOptions';
4
- import type { string_javascript_name } from '../../types/string_person_fullname';
5
- import type { TODO_any } from '../../utils/organization/TODO_any';
6
- import { appendAggregatedUseCommitmentPlaceholder } from '../USE/aggregateUseCommitmentSystemMessages';
7
- import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
8
-
9
- /**
10
- * USE TIME commitment definition
11
- *
12
- * The `USE TIME` commitment indicates that the agent should be able to determine the current date and time.
13
- *
14
- * Example usage in agent source:
15
- *
16
- * ```book
17
- * USE TIME
18
- * USE TIME Prefer the user's local timezone.
19
- * ```
20
- *
21
- * @private [🪔] Maybe export the commitments through some package
22
- */
23
- export class UseTimeCommitmentDefinition extends BaseCommitmentDefinition<'USE TIME'> {
24
- public constructor() {
25
- super('USE TIME', ['CURRENT TIME', 'TIME', 'DATE']);
26
- }
27
-
28
- override get requiresContent(): boolean {
29
- return false;
30
- }
31
-
32
- /**
33
- * Short one-line description of USE TIME.
34
- */
35
- public get description(): string {
36
- return 'Enable the agent to determine the current date and time.';
37
- }
38
-
39
- /**
40
- * Icon for this commitment.
41
- */
42
- get icon(): string {
43
- return '🕒';
44
- }
45
-
46
- /**
47
- * Markdown documentation for USE TIME commitment.
48
- */
49
- get documentation(): string {
50
- return spaceTrim(`
51
- # USE TIME
52
-
53
- Enables the agent to determine the current date and time.
54
-
55
- ## Key aspects
56
-
57
- - This tool won't receive any input.
58
- - It outputs the current date and time as an ISO 8601 string.
59
- - Allows the agent to answer questions about the current time or date.
60
- - The content following \`USE TIME\` is an arbitrary text that the agent should know (e.g. timezone preference).
61
-
62
- ## Examples
63
-
64
- \`\`\`book
65
- Time-aware Assistant
66
-
67
- PERSONA You are a helpful assistant who knows the current time.
68
- USE TIME
69
- \`\`\`
70
-
71
- \`\`\`book
72
- Travel Assistant
73
-
74
- PERSONA You help travelers with planning.
75
- USE TIME Prefer the user's local timezone.
76
- \`\`\`
77
- `);
78
- }
79
-
80
- applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements {
81
- // Additional instructions are aggregated later in the final USE system-message pass.
82
- void content;
83
-
84
- // Get existing tools array or create new one
85
- const existingTools = requirements.tools || [];
86
-
87
- // Add 'get_current_time' to tools if not already present
88
- const updatedTools = existingTools.some((tool) => tool.name === 'get_current_time')
89
- ? existingTools
90
- : [
91
- ...existingTools,
92
- {
93
- name: 'get_current_time',
94
- description: 'Get the current date and time in ISO 8601 format.',
95
- parameters: {
96
- type: 'object',
97
- properties: {
98
- timezone: {
99
- type: 'string',
100
- description:
101
- 'Optional timezone name (e.g. "Europe/Prague", "UTC", "America/New_York").',
102
- },
103
- },
104
- required: [],
105
- },
106
- } as TODO_any, // <- TODO: !!!! Remove any
107
- // <- TODO: !!!! define the function in LLM tools
108
- ];
109
-
110
- return appendAggregatedUseCommitmentPlaceholder(
111
- {
112
- ...requirements,
113
- tools: updatedTools,
114
- _metadata: {
115
- ...requirements._metadata,
116
- },
117
- },
118
- this.type,
119
- );
120
- }
121
-
122
- /**
123
- * Gets human-readable titles for tool functions provided by this commitment.
124
- */
125
- getToolTitles(): Record<string_javascript_name, string> {
126
- return {
127
- get_current_time: 'Get current time',
128
- };
129
- }
130
-
131
- /**
132
- * Gets the `get_current_time` tool function implementation.
133
- */
134
- getToolFunctions(): Record<string_javascript_name, ToolFunction> {
135
- return {
136
- async get_current_time(args: { timezone?: string }): Promise<string> {
137
- console.log('!!!! [Tool] get_current_time called', { args });
138
-
139
- const { timezone } = args;
140
-
141
- if (!timezone) {
142
- return new Date().toISOString();
143
- }
144
-
145
- try {
146
- // Note: Returning ISO 8601 string but in the requested timezone
147
- const formatter = new Intl.DateTimeFormat('en-CA', {
148
- timeZone: timezone,
149
- year: 'numeric',
150
- month: '2-digit',
151
- day: '2-digit',
152
- hour: '2-digit',
153
- minute: '2-digit',
154
- second: '2-digit',
155
- hour12: false,
156
- timeZoneName: 'shortOffset',
157
- });
158
-
159
- const parts = formatter.formatToParts(new Date());
160
- const part = (type: string) => parts.find((p) => p.type === type)?.value;
161
-
162
- // en-CA format is YYYY-MM-DD
163
- const isoString = `${part('year')}-${part('month')}-${part('day')}T${part('hour')}:${part(
164
- 'minute',
165
- )}:${part('second')}${part('timeZoneName')?.replace('GMT', '')}`;
166
-
167
- return isoString;
168
- } catch (error) {
169
- // Fallback to UTC if timezone is invalid
170
- return new Date().toISOString();
171
- }
172
- },
173
- };
174
- }
175
- }
176
-
177
- // Note: [💞] Ignore a discrepancy between file name and entity name
@@ -1,13 +0,0 @@
1
- import type { string_javascript_name } from '../../types/string_person_fullname';
2
-
3
- /**
4
- * Tool names provided by the `USE TIMEOUT` commitment.
5
- *
6
- * @private internal USE TIMEOUT constant
7
- */
8
- export const TimeoutToolNames = {
9
- set: 'set_timeout' as string_javascript_name,
10
- cancel: 'cancel_timeout' as string_javascript_name,
11
- list: 'list_timeouts' as string_javascript_name,
12
- update: 'update_timeout' as string_javascript_name,
13
- } as const;