@promptbook/core 0.103.0-8 → 0.103.0

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 (273) hide show
  1. package/README.md +264 -221
  2. package/esm/index.es.js +10529 -5235
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/books/index.d.ts +0 -81
  5. package/esm/typings/servers.d.ts +9 -7
  6. package/esm/typings/src/_packages/browser.index.d.ts +6 -0
  7. package/esm/typings/src/_packages/cli.index.d.ts +4 -0
  8. package/esm/typings/src/_packages/components.index.d.ts +22 -8
  9. package/esm/typings/src/_packages/core.index.d.ts +58 -18
  10. package/esm/typings/src/_packages/node.index.d.ts +2 -2
  11. package/esm/typings/src/_packages/remote-server.index.d.ts +2 -0
  12. package/esm/typings/src/_packages/types.index.d.ts +70 -8
  13. package/esm/typings/src/_packages/utils.index.d.ts +6 -0
  14. package/esm/typings/src/_packages/wizard.index.d.ts +4 -0
  15. package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +20 -5
  16. package/esm/typings/src/book-2.0/agent-source/AgentModelRequirements.d.ts +17 -1
  17. package/esm/typings/src/book-2.0/agent-source/AgentSourceParseResult.d.ts +3 -2
  18. package/esm/typings/src/book-2.0/agent-source/computeAgentHash.d.ts +8 -0
  19. package/esm/typings/src/book-2.0/agent-source/createCommitmentRegex.d.ts +3 -3
  20. package/esm/typings/src/book-2.0/agent-source/createDefaultAgentName.d.ts +8 -0
  21. package/esm/typings/src/book-2.0/agent-source/normalizeAgentName.d.ts +9 -0
  22. package/esm/typings/src/book-2.0/agent-source/padBook.d.ts +18 -0
  23. package/esm/typings/src/book-2.0/agent-source/parseAgentSourceWithCommitments.d.ts +1 -1
  24. package/esm/typings/src/book-2.0/agent-source/string_book.d.ts +3 -0
  25. package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +6 -1
  26. package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +85 -14
  27. package/esm/typings/src/book-components/BookEditor/BookEditorActionbar.d.ts +18 -0
  28. package/esm/typings/src/book-components/BookEditor/BookEditorMonaco.d.ts +5 -0
  29. package/esm/typings/src/book-components/Chat/AgentChat/AgentChat.d.ts +17 -0
  30. package/esm/typings/src/book-components/Chat/AgentChat/AgentChatProps.d.ts +13 -0
  31. package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +16 -0
  32. package/esm/typings/src/book-components/Chat/LlmChat/LlmChatProps.d.ts +5 -0
  33. package/esm/typings/src/book-components/Chat/MarkdownContent/MarkdownContent.d.ts +15 -0
  34. package/esm/typings/src/book-components/Chat/MockedChat/MockedChat.d.ts +5 -0
  35. package/esm/typings/src/book-components/Chat/save/_common/ChatSaveFormatDefinition.d.ts +1 -1
  36. package/esm/typings/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +1 -0
  37. package/esm/typings/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +4 -0
  38. package/esm/typings/src/book-components/Chat/types/ChatParticipant.d.ts +1 -1
  39. package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentIntegration.d.ts +52 -0
  40. package/esm/typings/src/book-components/PromptbookAgent/PromptbookAgentSeamlessIntegration.d.ts +14 -0
  41. package/esm/typings/src/book-components/Qr/BrandedQrCode.d.ts +18 -0
  42. package/esm/typings/src/book-components/Qr/GenericQrCode.d.ts +10 -0
  43. package/esm/typings/src/book-components/Qr/PromptbookQrCode.d.ts +18 -0
  44. package/esm/typings/src/book-components/Qr/useQrCode.d.ts +15 -0
  45. package/esm/typings/src/book-components/_common/Dropdown/Dropdown.d.ts +15 -0
  46. package/esm/typings/src/book-components/_common/HamburgerMenu/HamburgerMenu.d.ts +12 -0
  47. package/esm/typings/src/book-components/_common/Modal/Modal.d.ts +2 -2
  48. package/esm/typings/src/book-components/_common/Tooltip/Tooltip.d.ts +47 -0
  49. package/esm/typings/src/book-components/icons/AboutIcon.d.ts +9 -0
  50. package/esm/typings/src/book-components/icons/CameraIcon.d.ts +11 -0
  51. package/esm/typings/src/book-components/icons/CloseIcon.d.ts +4 -8
  52. package/esm/typings/src/book-components/icons/DownloadIcon.d.ts +9 -0
  53. package/esm/typings/src/book-components/icons/ExitFullscreenIcon.d.ts +7 -0
  54. package/esm/typings/src/book-components/icons/FullscreenIcon.d.ts +7 -0
  55. package/esm/typings/src/book-components/icons/MenuIcon.d.ts +12 -0
  56. package/esm/typings/src/book-components/icons/MicIcon.d.ts +8 -0
  57. package/esm/typings/src/book-components/icons/SendIcon.d.ts +3 -0
  58. package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +2 -1
  59. package/esm/typings/src/cli/cli-commands/about.d.ts +3 -1
  60. package/esm/typings/src/cli/cli-commands/hello.d.ts +2 -1
  61. package/esm/typings/src/cli/cli-commands/list-models.d.ts +2 -1
  62. package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +2 -1
  63. package/esm/typings/src/cli/cli-commands/login.d.ts +2 -1
  64. package/esm/typings/src/cli/cli-commands/make.d.ts +2 -1
  65. package/esm/typings/src/cli/cli-commands/prettify.d.ts +2 -1
  66. package/esm/typings/src/cli/cli-commands/run.d.ts +2 -1
  67. package/esm/typings/src/cli/cli-commands/{start-server.d.ts → start-agents-server.d.ts} +3 -2
  68. package/esm/typings/src/cli/cli-commands/start-pipelines-server.d.ts +15 -0
  69. package/esm/typings/src/cli/cli-commands/test-command.d.ts +2 -1
  70. package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +2 -1
  71. package/esm/typings/src/collection/agent-collection/AgentCollection.d.ts +12 -0
  72. package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabase.d.ts +75 -0
  73. package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabaseOptions.d.ts +10 -0
  74. package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentsDatabaseSchema.d.ts +154 -0
  75. package/esm/typings/src/collection/{PipelineCollection.d.ts → pipeline-collection/PipelineCollection.d.ts} +7 -3
  76. package/esm/typings/src/collection/{SimplePipelineCollection.d.ts → pipeline-collection/SimplePipelineCollection.d.ts} +5 -5
  77. package/esm/typings/src/collection/{constructors/createCollectionFromDirectory.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.d.ts} +8 -11
  78. package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromJson.d.ts +13 -0
  79. package/esm/typings/src/collection/{constructors/createCollectionFromPromise.d.ts → pipeline-collection/constructors/createPipelineCollectionFromPromise.d.ts} +6 -5
  80. package/esm/typings/src/collection/pipeline-collection/constructors/createPipelineCollectionFromPromise.test.d.ts +1 -0
  81. package/esm/typings/src/collection/{constructors/createCollectionFromUrl.d.ts → pipeline-collection/constructors/createPipelineCollectionFromUrl.d.ts} +3 -3
  82. package/esm/typings/src/collection/{constructors/createSubcollection.d.ts → pipeline-collection/constructors/createPipelineSubcollection.d.ts} +3 -3
  83. package/esm/typings/src/collection/pipeline-collection/pipelineCollectionToJson.d.ts +13 -0
  84. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -5
  85. package/esm/typings/src/{book-2.0/commitments → commitments}/ACTION/ACTION.d.ts +5 -1
  86. package/esm/typings/src/commitments/CLOSED/CLOSED.d.ts +39 -0
  87. package/esm/typings/src/commitments/CLOSED/CLOSED.test.d.ts +4 -0
  88. package/esm/typings/src/commitments/COMPONENT/COMPONENT.d.ts +28 -0
  89. package/esm/typings/src/{book-2.0/commitments → commitments}/DELETE/DELETE.d.ts +5 -1
  90. package/esm/typings/src/{book-2.0/commitments → commitments}/FORMAT/FORMAT.d.ts +5 -1
  91. package/esm/typings/src/commitments/FROM/FROM.d.ts +34 -0
  92. package/esm/typings/src/{book-2.0/commitments → commitments}/GOAL/GOAL.d.ts +5 -1
  93. package/esm/typings/src/{book-2.0/commitments → commitments}/KNOWLEDGE/KNOWLEDGE.d.ts +5 -5
  94. package/esm/typings/src/commitments/LANGUAGE/LANGUAGE.d.ts +35 -0
  95. package/esm/typings/src/{book-2.0/commitments → commitments}/MEMORY/MEMORY.d.ts +5 -1
  96. package/esm/typings/src/commitments/MESSAGE/AgentMessageCommitmentDefinition.d.ts +32 -0
  97. package/esm/typings/src/commitments/MESSAGE/InitialMessageCommitmentDefinition.d.ts +32 -0
  98. package/esm/typings/src/{book-2.0/commitments → commitments}/MESSAGE/MESSAGE.d.ts +5 -1
  99. package/esm/typings/src/commitments/MESSAGE/UserMessageCommitmentDefinition.d.ts +32 -0
  100. package/esm/typings/src/{book-2.0/commitments → commitments}/META/META.d.ts +5 -1
  101. package/esm/typings/src/commitments/META_COLOR/META_COLOR.d.ts +48 -0
  102. package/esm/typings/src/commitments/META_FONT/META_FONT.d.ts +42 -0
  103. package/esm/typings/src/{book-2.0/commitments → commitments}/META_IMAGE/META_IMAGE.d.ts +5 -1
  104. package/esm/typings/src/{book-2.0/commitments → commitments}/META_LINK/META_LINK.d.ts +5 -1
  105. package/esm/typings/src/{book-2.0/commitments → commitments}/MODEL/MODEL.d.ts +5 -1
  106. package/esm/typings/src/{book-2.0/commitments → commitments}/NOTE/NOTE.d.ts +5 -1
  107. package/esm/typings/src/commitments/OPEN/OPEN.d.ts +35 -0
  108. package/esm/typings/src/{book-2.0/commitments → commitments}/PERSONA/PERSONA.d.ts +5 -1
  109. package/esm/typings/src/{book-2.0/commitments → commitments}/RULE/RULE.d.ts +5 -1
  110. package/esm/typings/src/{book-2.0/commitments → commitments}/SAMPLE/SAMPLE.d.ts +5 -1
  111. package/esm/typings/src/{book-2.0/commitments → commitments}/SCENARIO/SCENARIO.d.ts +5 -1
  112. package/esm/typings/src/{book-2.0/commitments → commitments}/STYLE/STYLE.d.ts +5 -1
  113. package/esm/typings/src/commitments/USE/USE.d.ts +53 -0
  114. package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.d.ts +42 -0
  115. package/esm/typings/src/commitments/USE_BROWSER/USE_BROWSER.test.d.ts +1 -0
  116. package/esm/typings/src/commitments/USE_MCP/USE_MCP.d.ts +37 -0
  117. package/esm/typings/src/commitments/USE_SEARCH_ENGINE/USE_SEARCH_ENGINE.d.ts +38 -0
  118. package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BaseCommitmentDefinition.d.ts +14 -2
  119. package/esm/typings/src/{book-2.0/commitments → commitments}/_base/CommitmentDefinition.d.ts +6 -1
  120. package/esm/typings/src/{book-2.0/commitments → commitments}/_base/NotYetImplementedCommitmentDefinition.d.ts +5 -1
  121. package/esm/typings/src/{book-2.0/commitments → commitments}/_base/createEmptyAgentModelRequirements.d.ts +1 -1
  122. package/esm/typings/src/commitments/index.d.ts +93 -0
  123. package/esm/typings/src/config.d.ts +24 -3
  124. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +2 -0
  125. package/esm/typings/src/errors/0-index.d.ts +6 -0
  126. package/esm/typings/src/errors/DatabaseError.d.ts +12 -0
  127. package/esm/typings/src/errors/NotAllowed.d.ts +9 -0
  128. package/esm/typings/src/errors/WrappedError.d.ts +2 -2
  129. package/esm/typings/src/execution/AvailableModel.d.ts +1 -0
  130. package/esm/typings/src/execution/Executables.d.ts +3 -0
  131. package/esm/typings/src/execution/ExecutionTask.d.ts +12 -3
  132. package/esm/typings/src/execution/ExecutionTools.d.ts +5 -0
  133. package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
  134. package/esm/typings/src/execution/LlmExecutionTools.d.ts +26 -2
  135. package/esm/typings/src/execution/PromptResult.d.ts +7 -1
  136. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +5 -0
  137. package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +5 -0
  138. package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +5 -0
  139. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +5 -0
  140. package/esm/typings/src/execution/utils/usage-constants.d.ts +4 -124
  141. package/esm/typings/src/execution/utils/validatePromptResult.d.ts +2 -0
  142. package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +2 -1
  143. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizardOrCli.d.ts +2 -2
  144. package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +2 -1
  145. package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +1 -1
  146. package/esm/typings/src/llm-providers/_common/utils/assertUniqueModels.d.ts +12 -0
  147. package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +1 -0
  148. package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +1 -0
  149. package/esm/typings/src/llm-providers/agent/Agent.d.ts +72 -0
  150. package/esm/typings/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +26 -4
  151. package/esm/typings/src/llm-providers/agent/AgentOptions.d.ts +19 -0
  152. package/esm/typings/src/llm-providers/agent/CreateAgentLlmExecutionToolsOptions.d.ts +17 -0
  153. package/esm/typings/src/llm-providers/agent/RemoteAgent.d.ts +50 -0
  154. package/esm/typings/src/llm-providers/agent/RemoteAgentOptions.d.ts +11 -0
  155. package/esm/typings/src/llm-providers/agent/createAgentLlmExecutionTools.d.ts +1 -19
  156. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  157. package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
  158. package/esm/typings/src/llm-providers/ollama/OllamaExecutionTools.d.ts +4 -0
  159. package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +60 -2
  160. package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionToolsOptions.d.ts +7 -1
  161. package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +13 -1
  162. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +4 -0
  163. package/esm/typings/src/llm-providers/openai/createOpenAiCompatibleExecutionTools.d.ts +6 -6
  164. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  165. package/esm/typings/src/llm-providers/openai/openai-models.test.d.ts +4 -0
  166. package/esm/typings/src/other/templates/getTemplatesPipelineCollection.d.ts +1 -1
  167. package/esm/typings/src/pipeline/validatePipelineString.d.ts +2 -0
  168. package/esm/typings/src/playground/permanent/_boilerplate.d.ts +5 -0
  169. package/esm/typings/src/playground/permanent/agent-with-browser-playground.d.ts +5 -0
  170. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +1 -0
  171. package/esm/typings/src/remote-server/startAgentServer.d.ts +26 -0
  172. package/esm/typings/src/remote-server/startRemoteServer.d.ts +4 -1
  173. package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +3 -8
  174. package/esm/typings/src/scrapers/_boilerplate/createBoilerplateScraper.d.ts +1 -12
  175. package/esm/typings/src/scrapers/_boilerplate/register-metadata.d.ts +1 -9
  176. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -12
  177. package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -9
  178. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -12
  179. package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -9
  180. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -12
  181. package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -9
  182. package/esm/typings/src/scrapers/markitdown/createMarkitdownScraper.d.ts +1 -12
  183. package/esm/typings/src/scrapers/markitdown/register-metadata.d.ts +1 -9
  184. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -12
  185. package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -9
  186. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -12
  187. package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -9
  188. package/esm/typings/src/storage/_common/PromptbookStorage.d.ts +1 -0
  189. package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +2 -1
  190. package/esm/typings/src/transpilers/_common/BookTranspiler.d.ts +33 -0
  191. package/esm/typings/src/transpilers/_common/BookTranspilerOptions.d.ts +18 -0
  192. package/esm/typings/src/transpilers/_common/register/$bookTranspilersRegister.d.ts +15 -0
  193. package/esm/typings/src/transpilers/formatted-book-in-markdown/FormattedBookInMarkdownTranspiler.d.ts +16 -0
  194. package/esm/typings/src/transpilers/formatted-book-in-markdown/register.d.ts +15 -0
  195. package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.d.ts +16 -0
  196. package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.test.d.ts +1 -0
  197. package/esm/typings/src/transpilers/openai-sdk/playground/playground.d.ts +5 -0
  198. package/esm/typings/src/transpilers/openai-sdk/register.d.ts +15 -0
  199. package/esm/typings/src/types/LlmCall.d.ts +20 -0
  200. package/esm/typings/src/types/ModelRequirements.d.ts +13 -1
  201. package/esm/typings/src/types/ModelVariant.d.ts +1 -1
  202. package/esm/typings/src/types/Prompt.d.ts +13 -1
  203. package/esm/typings/src/types/Updatable.d.ts +19 -0
  204. package/esm/typings/src/types/typeAliases.d.ts +38 -2
  205. package/esm/typings/src/utils/color/$randomColor.d.ts +1 -0
  206. package/esm/typings/src/utils/color/Color.d.ts +16 -1
  207. package/esm/typings/src/utils/color/Color.test.d.ts +1 -0
  208. package/esm/typings/src/utils/color/css-colors.d.ts +1 -0
  209. package/esm/typings/src/utils/color/internal-utils/checkChannelValue.d.ts +0 -3
  210. package/esm/typings/src/utils/color/operators/darken.d.ts +1 -1
  211. package/esm/typings/src/utils/color/operators/grayscale.d.ts +1 -1
  212. package/esm/typings/src/utils/color/operators/lighten.d.ts +1 -1
  213. package/esm/typings/src/utils/color/operators/mixWithColor.d.ts +1 -1
  214. package/esm/typings/src/utils/color/operators/saturate.d.ts +1 -1
  215. package/esm/typings/src/utils/environment/$detectRuntimeEnvironment.d.ts +16 -0
  216. package/esm/typings/src/utils/environment/$getGlobalScope.d.ts +2 -2
  217. package/esm/typings/src/utils/execCommand/$execCommand.d.ts +2 -1
  218. package/esm/typings/src/utils/execCommand/$execCommands.d.ts +2 -1
  219. package/esm/typings/src/utils/files/$induceBookDownload.d.ts +13 -0
  220. package/esm/typings/src/utils/files/$induceFileDownload.d.ts +13 -0
  221. package/esm/typings/src/utils/files/ObjectUrl.d.ts +46 -0
  222. package/esm/typings/src/utils/files/listAllFiles.d.ts +2 -3
  223. package/esm/typings/src/utils/misc/aboutPromptbookInformation.d.ts +27 -0
  224. package/esm/typings/src/utils/misc/computeHash.d.ts +11 -0
  225. package/esm/typings/src/utils/misc/computeHash.test.d.ts +1 -0
  226. package/esm/typings/src/utils/misc/injectCssModuleIntoShadowRoot.d.ts +1 -0
  227. package/esm/typings/src/utils/misc/xAboutPromptbookInformation.d.ts +13 -0
  228. package/esm/typings/src/utils/normalization/normalize-to-kebab-case.d.ts +2 -0
  229. package/esm/typings/src/utils/normalization/normalizeMessageText.d.ts +9 -0
  230. package/esm/typings/src/utils/normalization/normalizeMessageText.test.d.ts +1 -0
  231. package/esm/typings/src/utils/normalization/normalizeTo_PascalCase.d.ts +3 -0
  232. package/esm/typings/src/utils/normalization/normalizeTo_camelCase.d.ts +2 -0
  233. package/esm/typings/src/utils/normalization/titleToName.d.ts +2 -0
  234. package/esm/typings/src/utils/organization/$sideEffect.d.ts +2 -2
  235. package/esm/typings/src/utils/organization/$side_effect.d.ts +7 -0
  236. package/esm/typings/src/utils/organization/TODO_USE.d.ts +2 -2
  237. package/esm/typings/src/utils/organization/keepUnused.d.ts +2 -2
  238. package/esm/typings/src/utils/organization/preserve.d.ts +3 -3
  239. package/esm/typings/src/utils/organization/really_any.d.ts +7 -0
  240. package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +31 -0
  241. package/esm/typings/src/utils/random/$randomAgentPersona.d.ts +9 -0
  242. package/esm/typings/src/utils/random/$randomFullnameWithColor.d.ts +13 -0
  243. package/esm/typings/src/utils/random/$randomItem.d.ts +9 -0
  244. package/esm/typings/src/utils/random/$randomSeed.d.ts +3 -0
  245. package/esm/typings/src/utils/random/$randomToken.d.ts +2 -0
  246. package/esm/typings/src/utils/random/CzechNamePool.d.ts +7 -0
  247. package/esm/typings/src/utils/random/EnglishNamePool.d.ts +7 -0
  248. package/esm/typings/src/utils/random/NamePool.d.ts +17 -0
  249. package/esm/typings/src/utils/random/getNamePool.d.ts +10 -0
  250. package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +2 -1
  251. package/esm/typings/src/utils/serialization/asSerializable.d.ts +2 -2
  252. package/esm/typings/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -2
  253. package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +2 -0
  254. package/esm/typings/src/version.d.ts +1 -1
  255. package/esm/typings/src/wizard/$getCompiledBook.d.ts +1 -2
  256. package/package.json +9 -6
  257. package/umd/index.umd.js +8529 -3216
  258. package/umd/index.umd.js.map +1 -1
  259. package/esm/typings/src/book-2.0/commitments/index.d.ts +0 -60
  260. package/esm/typings/src/book-components/BookEditor/BookEditorInner.d.ts +0 -5
  261. package/esm/typings/src/book-components/BookEditor/BookEditorWrapper.d.ts +0 -9
  262. package/esm/typings/src/book-components/BookEditor/config.d.ts +0 -10
  263. package/esm/typings/src/book-components/Chat/utils/renderMarkdown.d.ts +0 -21
  264. package/esm/typings/src/collection/collectionToJson.d.ts +0 -13
  265. package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +0 -13
  266. /package/esm/typings/src/{book-components/Chat/utils/renderMarkdown.test.d.ts → book-2.0/agent-source/computeAgentHash.test.d.ts} +0 -0
  267. /package/esm/typings/src/{collection/constructors/createCollectionFromDirectory.test.d.ts → book-2.0/agent-source/normalizeAgentName.test.d.ts} +0 -0
  268. /package/esm/typings/src/{collection/constructors/createCollectionFromJson.test.d.ts → book-components/Chat/AgentChat/AgentChat.test.d.ts} +0 -0
  269. /package/esm/typings/src/collection/{constructors/createCollectionFromPromise.test.d.ts → pipeline-collection/constructors/createPipelineCollectionFromDirectory.test.d.ts} +0 -0
  270. /package/esm/typings/src/{commands/_common/parseCommand.test.d.ts → collection/pipeline-collection/constructors/createPipelineCollectionFromJson.test.d.ts} +0 -0
  271. /package/esm/typings/src/collection/{collectionToJson.test.d.ts → pipeline-collection/pipelineCollectionToJson.test.d.ts} +0 -0
  272. /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/BookCommitment.d.ts +0 -0
  273. /package/esm/typings/src/{book-2.0/commitments → commitments}/_base/ParsedCommitment.d.ts +0 -0
package/README.md CHANGED
@@ -9,8 +9,8 @@ Turn your company's scattered knowledge into AI ready Books
9
9
 
10
10
 
11
11
 
12
- [![NPM Version of ![Promptbook logo - cube with letters P and B](./design/logo-h1.png) Promptbook](https://badge.fury.io/js/promptbook.svg)](https://www.npmjs.com/package/promptbook)
13
- [![Quality of package ![Promptbook logo - cube with letters P and B](./design/logo-h1.png) Promptbook](https://packagequality.com/shield/promptbook.svg)](https://packagequality.com/#?package=promptbook)
12
+ [![NPM Version of ![Promptbook logo](./design/logo-h1.png) Promptbook](https://badge.fury.io/js/promptbook.svg)](https://www.npmjs.com/package/promptbook)
13
+ [![Quality of package ![Promptbook logo](./design/logo-h1.png) Promptbook](https://packagequality.com/shield/promptbook.svg)](https://packagequality.com/#?package=promptbook)
14
14
  [![Known Vulnerabilities](https://snyk.io/test/github/webgptorg/promptbook/badge.svg)](https://snyk.io/test/github/webgptorg/promptbook)
15
15
  [![🧪 Test Books](https://github.com/webgptorg/promptbook/actions/workflows/test-books.yml/badge.svg)](https://github.com/webgptorg/promptbook/actions/workflows/test-books.yml)
16
16
  [![🧪 Test build](https://github.com/webgptorg/promptbook/actions/workflows/test-build.yml/badge.svg)](https://github.com/webgptorg/promptbook/actions/workflows/test-build.yml)
@@ -23,18 +23,10 @@ Turn your company's scattered knowledge into AI ready Books
23
23
 
24
24
  ## 🌟 New Features
25
25
 
26
- - 🚀 **GPT-5 Support** - Now includes OpenAI's most advanced language model with unprecedented reasoning capabilities and 200K context window
27
- - 💡 VS Code support for `.book` files with syntax highlighting and IntelliSense
28
- - 🐳 Official Docker image (`hejny/promptbook`) for seamless containerized usage
29
- - 🔥 Native support for OpenAI `o3-mini`, GPT-4 and other leading LLMs
30
- - 🔍 DeepSeek integration for advanced knowledge search
26
+ - **Gemini 3 Support**
31
27
 
32
28
 
33
29
 
34
- <blockquote style="color: #ff8811">
35
- <b>⚠ Warning:</b> This is a pre-release version of the library. It is not yet ready for production use. Please look at <a href="https://www.npmjs.com/package/@promptbook/core?activeTab=versions">latest stable release</a>.
36
- </blockquote>
37
-
38
30
  ## 📦 Package `@promptbook/core`
39
31
 
40
32
  - Promptbooks are [divided into several](#-packages) packages, all are published from [single monorepo](https://github.com/webgptorg/promptbook).
@@ -59,237 +51,260 @@ The core package serves as the foundation of the Promptbook ecosystem. It abstra
59
51
  ## 🔧 High-Level Functionality
60
52
 
61
53
  This package orchestrates the entire promptbook execution lifecycle:
62
- - **Pipeline Management**: Parse, validate, and compile promptbook definitions
63
- - **Execution Engine**: Create and manage pipeline executors with comprehensive error handling
64
- - **LLM Integration**: Unified interface for multiple LLM providers (OpenAI, Anthropic, Google, etc.)
65
- - **Parameter Processing**: Template parameter substitution and validation
66
- - **Knowledge Management**: Handle knowledge sources and scraping
67
- - **Storage Abstraction**: Flexible storage backends for caching and persistence
68
- - **Format Support**: Parse and validate various data formats (JSON, CSV, XML)
54
+
55
+ - **Pipeline Management**: Parse, validate, and compile promptbook definitions
56
+ - **Execution Engine**: Create and manage pipeline executors with comprehensive error handling
57
+ - **LLM Integration**: Unified interface for multiple LLM providers (OpenAI, Anthropic, Google, etc.)
58
+ - **Parameter Processing**: Template parameter substitution and validation
59
+ - **Knowledge Management**: Handle knowledge sources and scraping
60
+ - **Storage Abstraction**: Flexible storage backends for caching and persistence
61
+ - **Format Support**: Parse and validate various data formats (JSON, CSV, XML)
69
62
 
70
63
  ## ✨ Key Features
71
64
 
72
- - 🚀 **Universal Pipeline Executor** - Execute promptbooks with any supported LLM provider
73
- - 🔄 **Multi-Provider Support** - Seamlessly switch between OpenAI, Anthropic, Google, and other providers
74
- - 📊 **Comprehensive Validation** - Validate promptbooks, parameters, and execution results
75
- - 🎯 **Expectation Checking** - Built-in validation for output format, length, and content expectations
76
- - 🧠 **Knowledge Integration** - Scrape and process knowledge from various sources
77
- - 💾 **Flexible Storage** - Memory, filesystem, and custom storage backends
78
- - 🔧 **Error Handling** - Detailed error types for debugging and monitoring
79
- - 📈 **Usage Tracking** - Monitor token usage, costs, and performance metrics
80
- - 🎨 **Format Parsers** - Support for JSON, CSV, XML, and text formats
81
- - 🔀 **Pipeline Migration** - Upgrade and migrate pipeline definitions
65
+ - 🚀 **Universal Pipeline Executor** - Execute promptbooks with any supported LLM provider
66
+ - 🔄 **Multi-Provider Support** - Seamlessly switch between OpenAI, Anthropic, Google, and other providers
67
+ - 📊 **Comprehensive Validation** - Validate promptbooks, parameters, and execution results
68
+ - 🎯 **Expectation Checking** - Built-in validation for output format, length, and content expectations
69
+ - 🧠 **Knowledge Integration** - Scrape and process knowledge from various sources
70
+ - 💾 **Flexible Storage** - Memory, filesystem, and custom storage backends
71
+ - 🔧 **Error Handling** - Detailed error types for debugging and monitoring
72
+ - 📈 **Usage Tracking** - Monitor token usage, costs, and performance metrics
73
+ - 🎨 **Format Parsers** - Support for JSON, CSV, XML, and text formats
74
+ - 🔀 **Pipeline Migration** - Upgrade and migrate pipeline definitions
82
75
 
83
76
  ## 📦 Exported Entities
84
77
 
85
78
  ### Version Information
86
- - `BOOK_LANGUAGE_VERSION` - Current book language version
87
- - `PROMPTBOOK_ENGINE_VERSION` - Current engine version
79
+
80
+ - `BOOK_LANGUAGE_VERSION` - Current book language version
81
+ - `PROMPTBOOK_ENGINE_VERSION` - Current engine version
88
82
 
89
83
  ### Agent and Book Management
90
- - `createAgentModelRequirements` - Create model requirements for agents
91
- - `parseAgentSource` - Parse agent source code
92
- - `isValidBook` - Validate book format
93
- - `validateBook` - Comprehensive book validation
94
- - `DEFAULT_BOOK` - Default book template
84
+
85
+ - `createAgentModelRequirements` - Create model requirements for agents
86
+ - `parseAgentSource` - Parse agent source code
87
+ - `isValidBook` - Validate book format
88
+ - `validateBook` - Comprehensive book validation
89
+ - `DEFAULT_BOOK` - Default book template
95
90
 
96
91
  ### Commitment System
97
- - `createEmptyAgentModelRequirements` - Create empty model requirements
98
- - `createBasicAgentModelRequirements` - Create basic model requirements
99
- - `NotYetImplementedCommitmentDefinition` - Placeholder for future commitments
100
- - `getCommitmentDefinition` - Get specific commitment definition
101
- - `getAllCommitmentDefinitions` - Get all available commitment definitions
102
- - `getAllCommitmentTypes` - Get all commitment types
103
- - `isCommitmentSupported` - Check if commitment is supported
92
+
93
+ - `createEmptyAgentModelRequirements` - Create empty model requirements
94
+ - `createBasicAgentModelRequirements` - Create basic model requirements
95
+ - `NotYetImplementedCommitmentDefinition` - Placeholder for future commitments
96
+ - `getCommitmentDefinition` - Get specific commitment definition
97
+ - `getAllCommitmentDefinitions` - Get all available commitment definitions
98
+ - `getAllCommitmentTypes` - Get all commitment types
99
+ - `isCommitmentSupported` - Check if commitment is supported
104
100
 
105
101
  ### Collection Management
106
- - `collectionToJson` - Convert collection to JSON
107
- - `createCollectionFromJson` - Create collection from JSON data
108
- - `createCollectionFromPromise` - Create collection from async source
109
- - `createCollectionFromUrl` - Create collection from URL
110
- - `createSubcollection` - Create filtered subcollection
102
+
103
+ - `pipelineCollectionToJson` - Convert collection to JSON
104
+ - `createPipelineCollectionFromJson` - Create collection from JSON data
105
+ - `createPipelineCollectionFromPromise` - Create collection from async source
106
+ - `createPipelineCollectionFromUrl` - Create collection from URL
107
+ - `createPipelineSubcollection` - Create filtered subcollection
111
108
 
112
109
  ### Configuration Constants
113
- - `NAME` - Project name
114
- - `ADMIN_EMAIL` - Administrator email
115
- - `ADMIN_GITHUB_NAME` - GitHub username
116
- - `CLAIM` - Project claim/tagline
117
- - `DEFAULT_BOOK_TITLE` - Default book title
118
- - `DEFAULT_TASK_TITLE` - Default task title
119
- - `DEFAULT_PROMPT_TASK_TITLE` - Default prompt task title
120
- - `DEFAULT_BOOK_OUTPUT_PARAMETER_NAME` - Default output parameter name
121
- - `DEFAULT_MAX_FILE_SIZE` - Maximum file size limit
122
- - `BIG_DATASET_TRESHOLD` - Threshold for large datasets
123
- - `FAILED_VALUE_PLACEHOLDER` - Placeholder for failed values
124
- - `PENDING_VALUE_PLACEHOLDER` - Placeholder for pending values
125
- - `MAX_FILENAME_LENGTH` - Maximum filename length
126
- - `DEFAULT_INTERMEDIATE_FILES_STRATEGY` - Strategy for intermediate files
127
- - `DEFAULT_MAX_PARALLEL_COUNT` - Maximum parallel executions
128
- - `DEFAULT_MAX_EXECUTION_ATTEMPTS` - Maximum execution attempts
129
- - `DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH` - Knowledge scraping depth limit
130
- - `DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL` - Knowledge scraping total limit
131
- - `DEFAULT_BOOKS_DIRNAME` - Default books directory name
132
- - `DEFAULT_DOWNLOAD_CACHE_DIRNAME` - Default download cache directory
133
- - `DEFAULT_EXECUTION_CACHE_DIRNAME` - Default execution cache directory
134
- - `DEFAULT_SCRAPE_CACHE_DIRNAME` - Default scrape cache directory
135
- - `CLI_APP_ID` - CLI application identifier
136
- - `PLAYGROUND_APP_ID` - Playground application identifier
137
- - `DEFAULT_PIPELINE_COLLECTION_BASE_FILENAME` - Default collection filename
138
- - `DEFAULT_REMOTE_SERVER_URL` - Default remote server URL
139
- - `DEFAULT_CSV_SETTINGS` - Default CSV parsing settings
140
- - `DEFAULT_IS_VERBOSE` - Default verbosity setting
141
- - `SET_IS_VERBOSE` - Verbosity setter
142
- - `DEFAULT_IS_AUTO_INSTALLED` - Default auto-install setting
143
- - `DEFAULT_TASK_SIMULATED_DURATION_MS` - Default task simulation duration
144
- - `DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME` - Default collection function name
145
- - `DEFAULT_MAX_REQUESTS_PER_MINUTE` - Rate limiting configuration
146
- - `API_REQUEST_TIMEOUT` - API request timeout
147
- - `PROMPTBOOK_LOGO_URL` - Official logo URL
110
+
111
+ - `NAME` - Project name
112
+ - `ADMIN_EMAIL` - Administrator email
113
+ - `ADMIN_GITHUB_NAME` - GitHub username
114
+ - `CLAIM` - Project claim/tagline
115
+ - `DEFAULT_BOOK_TITLE` - Default book title
116
+ - `DEFAULT_TASK_TITLE` - Default task title
117
+ - `DEFAULT_PROMPT_TASK_TITLE` - Default prompt task title
118
+ - `DEFAULT_BOOK_OUTPUT_PARAMETER_NAME` - Default output parameter name
119
+ - `DEFAULT_MAX_FILE_SIZE` - Maximum file size limit
120
+ - `BIG_DATASET_TRESHOLD` - Threshold for large datasets
121
+ - `FAILED_VALUE_PLACEHOLDER` - Placeholder for failed values
122
+ - `PENDING_VALUE_PLACEHOLDER` - Placeholder for pending values
123
+ - `MAX_FILENAME_LENGTH` - Maximum filename length
124
+ - `DEFAULT_INTERMEDIATE_FILES_STRATEGY` - Strategy for intermediate files
125
+ - `DEFAULT_MAX_PARALLEL_COUNT` - Maximum parallel executions
126
+ - `DEFAULT_MAX_EXECUTION_ATTEMPTS` - Maximum execution attempts
127
+ - `DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH` - Knowledge scraping depth limit
128
+ - `DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL` - Knowledge scraping total limit
129
+ - `DEFAULT_BOOKS_DIRNAME` - Default books directory name
130
+ - `DEFAULT_DOWNLOAD_CACHE_DIRNAME` - Default download cache directory
131
+ - `DEFAULT_EXECUTION_CACHE_DIRNAME` - Default execution cache directory
132
+ - `DEFAULT_SCRAPE_CACHE_DIRNAME` - Default scrape cache directory
133
+ - `CLI_APP_ID` - CLI application identifier
134
+ - `PLAYGROUND_APP_ID` - Playground application identifier
135
+ - `DEFAULT_PIPELINE_COLLECTION_BASE_FILENAME` - Default collection filename
136
+ - `DEFAULT_REMOTE_SERVER_URL` - Default remote server URL
137
+ - `DEFAULT_CSV_SETTINGS` - Default CSV parsing settings
138
+ - `DEFAULT_IS_VERBOSE` - Default verbosity setting
139
+ - `SET_IS_VERBOSE` - Verbosity setter
140
+ - `DEFAULT_IS_AUTO_INSTALLED` - Default auto-install setting
141
+ - `DEFAULT_TASK_SIMULATED_DURATION_MS` - Default task simulation duration
142
+ - `DEFAULT_GET_PIPELINE_COLLECTION_FUNCTION_NAME` - Default collection function name
143
+ - `DEFAULT_MAX_REQUESTS_PER_MINUTE` - Rate limiting configuration
144
+ - `API_REQUEST_TIMEOUT` - API request timeout
145
+ - `PROMPTBOOK_LOGO_URL` - Official logo URL
148
146
 
149
147
  ### Model and Provider Constants
150
- - `MODEL_TRUST_LEVELS` - Trust levels for different models
151
- - `MODEL_ORDERS` - Ordering preferences for models
152
- - `ORDER_OF_PIPELINE_JSON` - JSON property ordering
153
- - `RESERVED_PARAMETER_NAMES` - Reserved parameter names
148
+
149
+ - `MODEL_TRUST_LEVELS` - Trust levels for different models
150
+ - `MODEL_ORDERS` - Ordering preferences for models
151
+ - `ORDER_OF_PIPELINE_JSON` - JSON property ordering
152
+ - `RESERVED_PARAMETER_NAMES` - Reserved parameter names
154
153
 
155
154
  ### Pipeline Processing
156
- - `compilePipeline` - Compile pipeline from source
157
- - `parsePipeline` - Parse pipeline definition
158
- - `pipelineJsonToString` - Convert pipeline JSON to string
159
- - `prettifyPipelineString` - Format pipeline string
160
- - `extractParameterNamesFromTask` - Extract parameter names
161
- - `validatePipeline` - Validate pipeline structure
155
+
156
+ - `compilePipeline` - Compile pipeline from source
157
+ - `parsePipeline` - Parse pipeline definition
158
+ - `pipelineJsonToString` - Convert pipeline JSON to string
159
+ - `prettifyPipelineString` - Format pipeline string
160
+ - `extractParameterNamesFromTask` - Extract parameter names
161
+ - `validatePipeline` - Validate pipeline structure
162
162
 
163
163
  ### Dialog and Interface Tools
164
- - `CallbackInterfaceTools` - Callback-based interface tools
165
- - `CallbackInterfaceToolsOptions` - Options for callback tools (type)
164
+
165
+ - `CallbackInterfaceTools` - Callback-based interface tools
166
+ - `CallbackInterfaceToolsOptions` - Options for callback tools (type)
166
167
 
167
168
  ### Error Handling
168
- - `BoilerplateError` - Base error class
169
- - `PROMPTBOOK_ERRORS` - All error types registry
170
- - `AbstractFormatError` - Abstract format validation error
171
- - `AuthenticationError` - Authentication failure error
172
- - `CollectionError` - Collection-related error
173
- - `EnvironmentMismatchError` - Environment compatibility error
174
- - `ExpectError` - Expectation validation error
175
- - `KnowledgeScrapeError` - Knowledge scraping error
176
- - `LimitReachedError` - Resource limit error
177
- - `MissingToolsError` - Missing tools error
178
- - `NotFoundError` - Resource not found error
179
- - `NotYetImplementedError` - Feature not implemented error
180
- - `ParseError` - Parsing error
181
- - `PipelineExecutionError` - Pipeline execution error
182
- - `PipelineLogicError` - Pipeline logic error
183
- - `PipelineUrlError` - Pipeline URL error
184
- - `PromptbookFetchError` - Fetch operation error
185
- - `UnexpectedError` - Unexpected error
186
- - `WrappedError` - Wrapped error container
169
+
170
+ - `BoilerplateError` - Base error class
171
+ - `PROMPTBOOK_ERRORS` - All error types registry
172
+ - `AbstractFormatError` - Abstract format validation error
173
+ - `AuthenticationError` - Authentication failure error
174
+ - `CollectionError` - Collection-related error
175
+ - `EnvironmentMismatchError` - Environment compatibility error
176
+ - `ExpectError` - Expectation validation error
177
+ - `KnowledgeScrapeError` - Knowledge scraping error
178
+ - `LimitReachedError` - Resource limit error
179
+ - `MissingToolsError` - Missing tools error
180
+ - `NotFoundError` - Resource not found error
181
+ - `NotYetImplementedError` - Feature not implemented error
182
+ - `ParseError` - Parsing error
183
+ - `PipelineExecutionError` - Pipeline execution error
184
+ - `PipelineLogicError` - Pipeline logic error
185
+ - `PipelineUrlError` - Pipeline URL error
186
+ - `PromptbookFetchError` - Fetch operation error
187
+ - `UnexpectedError` - Unexpected error
188
+ - `WrappedError` - Wrapped error container
187
189
 
188
190
  ### Execution Engine
189
- - `createPipelineExecutor` - Create pipeline executor
190
- - `computeCosineSimilarity` - Compute cosine similarity for embeddings
191
- - `embeddingVectorToString` - Convert embedding vector to string
192
- - `executionReportJsonToString` - Convert execution report to string
193
- - `ExecutionReportStringOptions` - Report formatting options (type)
194
- - `ExecutionReportStringOptionsDefaults` - Default report options
191
+
192
+ - `createPipelineExecutor` - Create pipeline executor
193
+ - `computeCosineSimilarity` - Compute cosine similarity for embeddings
194
+ - `embeddingVectorToString` - Convert embedding vector to string
195
+ - `executionReportJsonToString` - Convert execution report to string
196
+ - `ExecutionReportStringOptions` - Report formatting options (type)
197
+ - `ExecutionReportStringOptionsDefaults` - Default report options
195
198
 
196
199
  ### Usage and Metrics
197
- - `addUsage` - Add usage metrics
198
- - `isPassingExpectations` - Check if expectations are met
199
- - `ZERO_VALUE` - Zero usage value constant
200
- - `UNCERTAIN_ZERO_VALUE` - Uncertain zero value constant
201
- - `ZERO_USAGE` - Zero usage object
202
- - `UNCERTAIN_USAGE` - Uncertain usage object
203
- - `usageToHuman` - Convert usage to human-readable format
204
- - `usageToWorktime` - Convert usage to work time estimate
200
+
201
+ - `addUsage` - Add usage metrics
202
+ - `isPassingExpectations` - Check if expectations are met
203
+ - `ZERO_VALUE` - Zero usage value constant
204
+ - `UNCERTAIN_ZERO_VALUE` - Uncertain zero value constant
205
+ - `ZERO_USAGE` - Zero usage object
206
+ - `UNCERTAIN_USAGE` - Uncertain usage object
207
+ - `usageToHuman` - Convert usage to human-readable format
208
+ - `usageToWorktime` - Convert usage to work time estimate
205
209
 
206
210
  ### Format Parsers
207
- - `CsvFormatError` - CSV format error
208
- - `CsvFormatParser` - CSV format parser
209
- - `MANDATORY_CSV_SETTINGS` - Required CSV settings
210
- - `TextFormatParser` - Text format parser
211
+
212
+ - `CsvFormatError` - CSV format error
213
+ - `CsvFormatParser` - CSV format parser
214
+ - `MANDATORY_CSV_SETTINGS` - Required CSV settings
215
+ - `TextFormatParser` - Text format parser
211
216
 
212
217
  ### Form Factor Definitions
213
- - `BoilerplateFormfactorDefinition` - Boilerplate form factor
214
- - `ChatbotFormfactorDefinition` - Chatbot form factor
215
- - `CompletionFormfactorDefinition` - Completion form factor
216
- - `GeneratorFormfactorDefinition` - Generator form factor
217
- - `GenericFormfactorDefinition` - Generic form factor
218
- - `ImageGeneratorFormfactorDefinition` - Image generator form factor
219
- - `FORMFACTOR_DEFINITIONS` - All form factor definitions
220
- - `MatcherFormfactorDefinition` - Matcher form factor
221
- - `SheetsFormfactorDefinition` - Sheets form factor
222
- - `TranslatorFormfactorDefinition` - Translator form factor
218
+
219
+ - `BoilerplateFormfactorDefinition` - Boilerplate form factor
220
+ - `ChatbotFormfactorDefinition` - Chatbot form factor
221
+ - `CompletionFormfactorDefinition` - Completion form factor
222
+ - `GeneratorFormfactorDefinition` - Generator form factor
223
+ - `GenericFormfactorDefinition` - Generic form factor
224
+ - `ImageGeneratorFormfactorDefinition` - Image generator form factor
225
+ - `FORMFACTOR_DEFINITIONS` - All form factor definitions
226
+ - `MatcherFormfactorDefinition` - Matcher form factor
227
+ - `SheetsFormfactorDefinition` - Sheets form factor
228
+ - `TranslatorFormfactorDefinition` - Translator form factor
223
229
 
224
230
  ### LLM Provider Integration
225
- - `filterModels` - Filter available models
226
- - `$llmToolsMetadataRegister` - LLM tools metadata registry
227
- - `$llmToolsRegister` - LLM tools registry
228
- - `createLlmToolsFromConfiguration` - Create tools from config
229
- - `cacheLlmTools` - Cache LLM tools
230
- - `countUsage` - Count total usage
231
- - `limitTotalUsage` - Limit total usage
232
- - `joinLlmExecutionTools` - Join multiple LLM tools
233
- - `MultipleLlmExecutionTools` - Multiple LLM tools container
231
+
232
+ - `filterModels` - Filter available models
233
+ - `$llmToolsMetadataRegister` - LLM tools metadata registry
234
+ - `$llmToolsRegister` - LLM tools registry
235
+ - `createLlmToolsFromConfiguration` - Create tools from config
236
+ - `cacheLlmTools` - Cache LLM tools
237
+ - `countUsage` - Count total usage
238
+ - `limitTotalUsage` - Limit total usage
239
+ - `joinLlmExecutionTools` - Join multiple LLM tools
240
+ - `MultipleLlmExecutionTools` - Multiple LLM tools container
234
241
 
235
242
  ### Provider Registrations
236
- - `_AnthropicClaudeMetadataRegistration` - Anthropic Claude registration
237
- - `_AzureOpenAiMetadataRegistration` - Azure OpenAI registration
238
- - `_DeepseekMetadataRegistration` - Deepseek registration
239
- - `_GoogleMetadataRegistration` - Google registration
240
- - `_OllamaMetadataRegistration` - Ollama registration
241
- - `_OpenAiMetadataRegistration` - OpenAI registration
242
- - `_OpenAiAssistantMetadataRegistration` - OpenAI Assistant registration
243
- - `_OpenAiCompatibleMetadataRegistration` - OpenAI Compatible registration
243
+
244
+ - `_AnthropicClaudeMetadataRegistration` - Anthropic Claude registration
245
+ - `_AzureOpenAiMetadataRegistration` - Azure OpenAI registration
246
+ - `_DeepseekMetadataRegistration` - Deepseek registration
247
+ - `_GoogleMetadataRegistration` - Google registration
248
+ - `_OllamaMetadataRegistration` - Ollama registration
249
+ - `_OpenAiMetadataRegistration` - OpenAI registration
250
+ - `_OpenAiAssistantMetadataRegistration` - OpenAI Assistant registration
251
+ - `_OpenAiCompatibleMetadataRegistration` - OpenAI Compatible registration
244
252
 
245
253
  ### Pipeline Management
246
- - `migratePipeline` - Migrate pipeline to newer version
247
- - `preparePersona` - Prepare persona for execution
248
- - `book` - Book notation utilities
249
- - `isValidPipelineString` - Validate pipeline string
250
- - `GENERIC_PIPELINE_INTERFACE` - Generic pipeline interface
251
- - `getPipelineInterface` - Get pipeline interface
252
- - `isPipelineImplementingInterface` - Check interface implementation
253
- - `isPipelineInterfacesEqual` - Compare pipeline interfaces
254
- - `EXPECTATION_UNITS` - Units for expectations
255
- - `validatePipelineString` - Validate pipeline string format
254
+
255
+ - `migratePipeline` - Migrate pipeline to newer version
256
+ - `preparePersona` - Prepare persona for execution
257
+ - `book` - Book notation utilities
258
+ - `isValidPipelineString` - Validate pipeline string
259
+ - `GENERIC_PIPELINE_INTERFACE` - Generic pipeline interface
260
+ - `getPipelineInterface` - Get pipeline interface
261
+ - `isPipelineImplementingInterface` - Check interface implementation
262
+ - `isPipelineInterfacesEqual` - Compare pipeline interfaces
263
+ - `EXPECTATION_UNITS` - Units for expectations
264
+ - `validatePipelineString` - Validate pipeline string format
256
265
 
257
266
  ### Pipeline Preparation
258
- - `isPipelinePrepared` - Check if pipeline is prepared
259
- - `preparePipeline` - Prepare pipeline for execution
260
- - `unpreparePipeline` - Unprepare pipeline
267
+
268
+ - `isPipelinePrepared` - Check if pipeline is prepared
269
+ - `preparePipeline` - Prepare pipeline for execution
270
+ - `unpreparePipeline` - Unprepare pipeline
261
271
 
262
272
  ### Remote Server Integration
263
- - `identificationToPromptbookToken` - Convert ID to token
264
- - `promptbookTokenToIdentification` - Convert token to ID
273
+
274
+ - `identificationToPromptbookToken` - Convert ID to token
275
+ - `promptbookTokenToIdentification` - Convert token to ID
265
276
 
266
277
  ### Knowledge Scraping
267
- - `_BoilerplateScraperMetadataRegistration` - Boilerplate scraper registration
268
- - `prepareKnowledgePieces` - Prepare knowledge pieces
269
- - `$scrapersMetadataRegister` - Scrapers metadata registry
270
- - `$scrapersRegister` - Scrapers registry
271
- - `makeKnowledgeSourceHandler` - Create knowledge source handler
272
- - `promptbookFetch` - Fetch with promptbook context
273
- - `_LegacyDocumentScraperMetadataRegistration` - Legacy document scraper
274
- - `_DocumentScraperMetadataRegistration` - Document scraper registration
275
- - `_MarkdownScraperMetadataRegistration` - Markdown scraper registration
276
- - `_MarkitdownScraperMetadataRegistration` - Markitdown scraper registration
277
- - `_PdfScraperMetadataRegistration` - PDF scraper registration
278
- - `_WebsiteScraperMetadataRegistration` - Website scraper registration
278
+
279
+ - `_BoilerplateScraperMetadataRegistration` - Boilerplate scraper registration
280
+ - `prepareKnowledgePieces` - Prepare knowledge pieces
281
+ - `$scrapersMetadataRegister` - Scrapers metadata registry
282
+ - `$scrapersRegister` - Scrapers registry
283
+ - `makeKnowledgeSourceHandler` - Create knowledge source handler
284
+ - `promptbookFetch` - Fetch with promptbook context
285
+ - `_LegacyDocumentScraperMetadataRegistration` - Legacy document scraper
286
+ - `_DocumentScraperMetadataRegistration` - Document scraper registration
287
+ - `_MarkdownScraperMetadataRegistration` - Markdown scraper registration
288
+ - `_MarkitdownScraperMetadataRegistration` - Markitdown scraper registration
289
+ - `_PdfScraperMetadataRegistration` - PDF scraper registration
290
+ - `_WebsiteScraperMetadataRegistration` - Website scraper registration
279
291
 
280
292
  ### Storage Backends
281
- - `BlackholeStorage` - Blackhole storage (discards data)
282
- - `MemoryStorage` - In-memory storage
283
- - `PrefixStorage` - Prefixed storage wrapper
293
+
294
+ - `BlackholeStorage` - Blackhole storage (discards data)
295
+ - `MemoryStorage` - In-memory storage
296
+ - `PrefixStorage` - Prefixed storage wrapper
284
297
 
285
298
  ### Type Definitions
286
- - `MODEL_VARIANTS` - Available model variants
287
- - `NonTaskSectionTypes` - Non-task section types
288
- - `SectionTypes` - All section types
289
- - `TaskTypes` - Task types
299
+
300
+ - `MODEL_VARIANTS` - Available model variants
301
+ - `NonTaskSectionTypes` - Non-task section types
302
+ - `SectionTypes` - All section types
303
+ - `TaskTypes` - Task types
290
304
 
291
305
  ### Server Configuration
292
- - `REMOTE_SERVER_URLS` - Remote server URLs
306
+
307
+ - `REMOTE_SERVER_URLS` - Remote server URLs
293
308
 
294
309
  > 💡 This package does not make sense on its own, look at [all promptbook packages](#-packages) or just install all by `npm i ptbk`
295
310
 
@@ -309,11 +324,15 @@ The main challenge is to narrow it down, constrain it, set the proper **context,
309
324
 
310
325
  Promptbook takes the best from both worlds. You are defining your AI behavior by simple **books**, which are very explicit. They are automatically enforced, but they are very easy to understand, very easy to write, and very reliable and portable.
311
326
 
327
+ <table style="border: 1px solid #777; border-radius: 10px;"><tr><td>
312
328
 
313
- <img
314
- alt="Paul Smith & Associés Book"
315
- src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.&width=800&height=450&nonce=0"
316
- />
329
+ **<ins>Paul Smith & Associés</ins>**<br/>
330
+ <br/>
331
+ **PERSONA** You are a company lawyer.<br/>
332
+ Your job is to provide legal advice and support to the company and its employees.<br/>
333
+ You are knowledgeable, professional, and detail-oriented.<br/>
334
+
335
+ </td></tr></table>
317
336
 
318
337
  <div style="page-break-after: always;"></div>
319
338
 
@@ -327,11 +346,15 @@ You can look at it as prompting (or writing a system message), but decorated by
327
346
 
328
347
  Personas define the character of your AI persona, its role, and how it should interact with users. It sets the tone and style of communication.
329
348
 
349
+ <table style="border: 1px solid #777; border-radius: 10px;"><tr><td>
350
+
351
+ **<ins>Paul Smith & Associés</ins>**<br/>
352
+ <br/>
353
+ **PERSONA** You are a company lawyer.<br/>
354
+ Your job is to provide legal advice and support to the company and its employees.<br/>
355
+ You are knowledgeable, professional, and detail-oriented.<br/>
330
356
 
331
- <img
332
- alt="Paul Smith & Associés Book"
333
- src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.&width=800&height=450&nonce=0"
334
- />
357
+ </td></tr></table>
335
358
 
336
359
  #### `Knowledge` commitment
337
360
 
@@ -341,11 +364,18 @@ This can include domain-specific knowledge, company policies, or any other relev
341
364
 
342
365
  Promptbook Engine will automatically enforce this knowledge during interactions. When the knowledge is short enough, it will be included in the prompt. When it is too long, it will be stored in vector databases and RAG retrieved when needed. But you don't need to care about it.
343
366
 
367
+ <table style="border: 1px solid #777; border-radius: 10px;"><tr><td>
344
368
 
345
- <img
346
- alt="Paul Smith & Associés Book"
347
- src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx&width=800&height=450&nonce=0"
348
- />
369
+ **<ins>Paul Smith & Associés</ins>**<br/>
370
+ <br/>
371
+ **PERSONA** You are a company lawyer.<br/>
372
+ Your job is to provide legal advice and support to the company and its employees.<br/>
373
+ You are knowledgeable, professional, and detail-oriented.<br/>
374
+ <br/>
375
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
376
+ **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
377
+
378
+ </td></tr></table>
349
379
 
350
380
  #### `Rule` commitment
351
381
 
@@ -353,21 +383,42 @@ Rules will enforce specific behaviors or constraints on the AI's responses. This
353
383
 
354
384
  Depending on rule strictness, Promptbook will either propagate it to the prompt or use other techniques, like adversary agent, to enforce it.
355
385
 
386
+ <table style="border: 1px solid #777; border-radius: 10px;"><tr><td>
387
+
388
+ **<ins>Paul Smith & Associés</ins>**<br/>
389
+ <br/>
390
+ **PERSONA** You are a company lawyer.<br/>
391
+ Your job is to provide legal advice and support to the company and its employees.<br/>
392
+ You are knowledgeable, professional, and detail-oriented.<br/>
393
+ <br/>
394
+ **RULE** Always ensure compliance with laws and regulations.<br/>
395
+ **RULE** Never provide legal advice outside your area of expertise.<br/>
396
+ **RULE** Never provide legal advice about criminal law.<br/>
397
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
398
+ **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
356
399
 
357
- <img
358
- alt="Paul Smith & Associés Book"
359
- src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20RULE%20Always%20ensure%20compliance%20with%20laws%20and%20regulations.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20outside%20your%20area%20of%20expertise.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20about%20criminal%20law.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx&width=800&height=450&nonce=0"
360
- />
400
+ </td></tr></table>
361
401
 
362
402
  #### `Action` commitment
363
403
 
364
404
  Action Commitment allows you to define specific actions that the AI can take during interactions. This can include things like posting on a social media platform, sending emails, creating calendar events, or interacting with your internal systems.
365
405
 
406
+ <table style="border: 1px solid #777; border-radius: 10px;"><tr><td>
366
407
 
367
- <img
368
- alt="Paul Smith & Associés Book"
369
- src="https://promptbook.studio/embed/book-preview.png?book=Paul%20Smith%20%26%20Associ%C3%A9s%0A%20%20%20%20%20%20%7C%20PERSONA%20You%20are%20a%20company%20lawyer.%0A%20%20%20%20%20%20%7C%20Your%20job%20is%20to%20provide%20legal%20advice%20and%20support%20to%20the%20company%20and%20its%20employees.%0A%20%20%20%20%20%20%7C%20You%20are%20knowledgeable%2C%20professional%2C%20and%20detail-oriented.%0A%20%20%20%20%20%20%7C%20RULE%20Always%20ensure%20compliance%20with%20laws%20and%20regulations.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20outside%20your%20area%20of%20expertise.%0A%20%20%20%20%20%20%7C%20RULE%20Never%20provide%20legal%20advice%20about%20criminal%20law.%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20%20https%3A%2F%2Fcompany.com%2Fcompany-policies.pdf%0A%20%20%20%20%20%20%7C%20KNOWLEDGE%20https%3A%2F%2Fcompany.com%2Finternal-documents%2Femployee-handbook.docx%0A%20%20%20%20%20%20%7C%20ACTION%20When%20a%20user%20asks%20about%20an%20issue%20that%20could%20be%20treated%20as%20a%20crime%2C%20notify%20legal%40company.com.&width=800&height=450&nonce=0"
370
- />
408
+ **<ins>Paul Smith & Associés</ins>**<br/>
409
+ <br/>
410
+ **PERSONA** You are a company lawyer.<br/>
411
+ Your job is to provide legal advice and support to the company and its employees.<br/>
412
+ You are knowledgeable, professional, and detail-oriented.<br/>
413
+ <br/>
414
+ **RULE** Always ensure compliance with laws and regulations.<br/>
415
+ **RULE** Never provide legal advice outside your area of expertise.<br/>
416
+ **RULE** Never provide legal advice about criminal law.<br/>
417
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
418
+ **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
419
+ **ACTION** When a user asks about an issue that could be treated as a crime, notify legal@company.com.<br/>
420
+
421
+ </td></tr></table>
371
422
 
372
423
  [Read more about the language](./BLUEPRINT.md)
373
424
 
@@ -414,14 +465,10 @@ Now you want to use it. There are several ways how to write your first book:
414
465
 
415
466
  We have written ai asistant in book who can help you with writing your first book.
416
467
 
417
-
418
-
419
468
  #### Your AI twin
420
469
 
421
470
  Copy your own behavior, personality, and knowledge into book and create your AI twin. It can help you with your work, personal life, or any other task.
422
471
 
423
-
424
-
425
472
  #### AI persona workpool
426
473
 
427
474
  Or you can pick from our library of pre-written books for various roles and tasks. You can find books for customer support, coding, marketing, sales, HR, legal, and many other roles.
@@ -541,8 +588,6 @@ Join our growing community of developers and users:
541
588
 
542
589
 
543
590
 
544
-
545
-
546
591
  ## 📚 Documentation
547
592
 
548
593
  See detailed guides and API reference in the [docs](https://github.com/webgptorg/promptbook/discussions/categories/concepts) or [online](https://discord.gg/x3QWNaa89N).
@@ -619,8 +664,6 @@ The following glossary is used to clarify certain concepts:
619
664
 
620
665
  _Note: This section is not a complete dictionary, more list of general AI / LLM terms that has connection with Promptbook_
621
666
 
622
-
623
-
624
667
  ### 💯 Core concepts
625
668
 
626
669
  - [📚 Collection of pipelines](https://github.com/webgptorg/promptbook/discussions/65)