@promptbook/browser 0.72.0-9 → 0.72.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 (133) hide show
  1. package/README.md +4 -8
  2. package/esm/index.es.js +224 -27
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/typings/src/_packages/core.index.d.ts +24 -18
  5. package/esm/typings/src/_packages/node.index.d.ts +2 -0
  6. package/esm/typings/src/_packages/types.index.d.ts +18 -12
  7. package/esm/typings/src/_packages/utils.index.d.ts +2 -2
  8. package/esm/typings/src/collection/PipelineCollection.d.ts +1 -1
  9. package/esm/typings/src/collection/SimplePipelineCollection.d.ts +2 -2
  10. package/esm/typings/src/collection/collectionToJson.d.ts +1 -1
  11. package/esm/typings/src/collection/constructors/createCollectionFromJson.d.ts +1 -1
  12. package/esm/typings/src/collection/constructors/createCollectionFromPromise.d.ts +1 -1
  13. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +5 -5
  14. package/esm/typings/src/config.d.ts +21 -14
  15. package/esm/typings/src/executables/$provideExecutablesForNode.d.ts +12 -0
  16. package/esm/typings/src/executables/apps/locateLibreoffice.d.ts +11 -0
  17. package/esm/typings/src/executables/apps/locatePandoc.d.ts +11 -0
  18. package/esm/typings/src/executables/locateApp.d.ts +33 -0
  19. package/esm/typings/src/executables/locateApp.test.d.ts +1 -0
  20. package/esm/typings/src/executables/platforms/locateAppOnLinux.d.ts +12 -0
  21. package/esm/typings/src/executables/platforms/locateAppOnMacOs.d.ts +12 -0
  22. package/esm/typings/src/executables/platforms/locateAppOnWindows.d.ts +12 -0
  23. package/esm/typings/src/execution/EmbeddingVector.d.ts +1 -1
  24. package/esm/typings/src/execution/Executables.d.ts +18 -0
  25. package/esm/typings/src/execution/ExecutionTools.d.ts +9 -3
  26. package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
  27. package/esm/typings/src/execution/LlmExecutionTools.d.ts +2 -2
  28. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -2
  29. package/esm/typings/src/execution/assertsExecutionSuccessful.d.ts +3 -2
  30. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +29 -6
  31. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +2 -11
  32. package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +4 -13
  33. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +9 -14
  34. package/esm/typings/src/execution/translation/automatic-translate/automatic-translators/LindatAutomaticTranslator.d.ts +11 -3
  35. package/esm/typings/src/execution/utils/addUsage.d.ts +1 -1
  36. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -1
  37. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +2 -2
  38. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +2 -2
  39. package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForCli.d.ts +2 -2
  40. package/esm/typings/src/llm-providers/_common/register/LlmToolsConfiguration.d.ts +1 -1
  41. package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +7 -0
  42. package/esm/typings/src/llm-providers/_common/utils/cache/CacheLlmToolsOptions.d.ts +4 -1
  43. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +1 -1
  44. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions.d.ts +2 -2
  45. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  46. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +1 -1
  47. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions.d.ts +2 -1
  48. package/esm/typings/src/llm-providers/langtail/LangtailExecutionTools.d.ts +1 -1
  49. package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +1 -1
  50. package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +1 -1
  51. package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +1 -1
  52. package/esm/typings/src/llm-providers/multiple/MultipleLlmExecutionTools.d.ts +4 -5
  53. package/esm/typings/src/llm-providers/multiple/joinLlmExecutionTools.d.ts +1 -1
  54. package/esm/typings/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +0 -1
  55. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -2
  56. package/esm/typings/src/llm-providers/openai/OpenAiExecutionToolsOptions.d.ts +2 -2
  57. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  58. package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +4 -4
  59. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Request.d.ts +15 -6
  60. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_ListModels_Response.d.ts +4 -4
  61. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Request.d.ts +6 -12
  62. package/esm/typings/src/llm-providers/remote/interfaces/PromptbookServer_Prompt_Response.d.ts +3 -3
  63. package/esm/typings/src/llm-providers/remote/interfaces/RemoteLlmExecutionToolsOptions.d.ts +9 -14
  64. package/esm/typings/src/llm-providers/remote/interfaces/RemoteServerOptions.d.ts +23 -8
  65. package/esm/typings/src/llm-providers/remote/startRemoteServer.d.ts +1 -1
  66. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +4 -23
  67. package/esm/typings/src/prepare/prepareTemplates.d.ts +1 -1
  68. package/esm/typings/src/scrapers/_common/Scraper.d.ts +2 -9
  69. package/esm/typings/src/scrapers/_common/prepareKnowledgePieces.d.ts +1 -1
  70. package/esm/typings/src/scrapers/_common/register/$provideScrapersForBrowser.d.ts +2 -2
  71. package/esm/typings/src/scrapers/_common/register/$provideScrapersForNode.d.ts +2 -2
  72. package/esm/typings/src/scrapers/_common/register/ScraperAndConverterMetadata.d.ts +2 -2
  73. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +2 -2
  74. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +1 -1
  75. package/esm/typings/src/scrapers/document/DocumentScraper.d.ts +2 -2
  76. package/esm/typings/src/scrapers/document/createDocumentScraper.d.ts +1 -1
  77. package/esm/typings/src/scrapers/document/register-metadata.d.ts +1 -1
  78. package/esm/typings/src/scrapers/document-legacy/LegacyDocumentScraper.d.ts +3 -3
  79. package/esm/typings/src/scrapers/document-legacy/createLegacyDocumentScraper.d.ts +1 -1
  80. package/esm/typings/src/scrapers/document-legacy/register-metadata.d.ts +1 -1
  81. package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +1 -1
  82. package/esm/typings/src/scrapers/markdown/createMarkdownScraper.d.ts +1 -1
  83. package/esm/typings/src/scrapers/markdown/register-metadata.d.ts +1 -1
  84. package/esm/typings/src/scrapers/pdf/PdfScraper.d.ts +2 -2
  85. package/esm/typings/src/scrapers/pdf/createPdfScraper.d.ts +1 -1
  86. package/esm/typings/src/scrapers/pdf/register-metadata.d.ts +1 -1
  87. package/esm/typings/src/scrapers/website/WebsiteScraper.d.ts +6 -3
  88. package/esm/typings/src/scrapers/website/createWebsiteScraper.d.ts +1 -1
  89. package/esm/typings/src/scrapers/website/register-metadata.d.ts +1 -1
  90. package/esm/typings/src/scrapers/website/utils/createShowdownConverter.d.ts +7 -0
  91. package/esm/typings/src/scrapers/website/utils/createShowdownConverter.test.d.ts +1 -0
  92. package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +1 -1
  93. package/esm/typings/src/storage/file-cache-storage/utils/nameToSubfolderPath.d.ts +1 -1
  94. package/esm/typings/src/types/Arrayable.d.ts +1 -1
  95. package/esm/typings/src/types/IntermediateFilesStrategy.d.ts +7 -0
  96. package/esm/typings/src/types/PipelineJson/KnowledgePieceJson.d.ts +4 -4
  97. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +1 -1
  98. package/esm/typings/src/types/PipelineJson/PersonaJson.d.ts +1 -1
  99. package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +2 -2
  100. package/esm/typings/src/types/Prompt.d.ts +2 -1
  101. package/esm/typings/src/types/execution-report/ExecutionReportJson.d.ts +1 -1
  102. package/esm/typings/src/types/typeAliases.d.ts +11 -8
  103. package/esm/typings/src/utils/$Register.d.ts +1 -1
  104. package/esm/typings/src/utils/FromtoItems.d.ts +1 -1
  105. package/esm/typings/src/utils/arrayableToArray.d.ts +1 -1
  106. package/esm/typings/src/utils/emojis.d.ts +1 -1
  107. package/esm/typings/src/utils/execCommand/$execCommand.d.ts +4 -2
  108. package/esm/typings/src/utils/execCommand/$execCommandNormalizeOptions.d.ts +12 -0
  109. package/esm/typings/src/utils/execCommand/$execCommands.d.ts +1 -0
  110. package/esm/typings/src/utils/execCommand/ExecCommandOptions.d.ts +45 -0
  111. package/esm/typings/src/utils/expectation-counters/countSentences.d.ts +1 -1
  112. package/esm/typings/src/utils/files/isExecutable.d.ts +11 -0
  113. package/esm/typings/src/utils/markdown/extractAllBlocksFromMarkdown.d.ts +1 -1
  114. package/esm/typings/src/utils/markdown/splitMarkdownIntoSections.d.ts +1 -1
  115. package/esm/typings/src/utils/normalization/IKeywords.d.ts +2 -2
  116. package/esm/typings/src/utils/normalization/parseKeywords.d.ts +2 -2
  117. package/esm/typings/src/utils/normalization/parseKeywordsFromString.d.ts +2 -2
  118. package/esm/typings/src/utils/normalization/searchKeywords.d.ts +2 -2
  119. package/esm/typings/src/utils/organization/TODO_USE.d.ts +1 -1
  120. package/esm/typings/src/utils/organization/keepUnused.d.ts +1 -1
  121. package/esm/typings/src/utils/random/$randomSeed.d.ts +1 -1
  122. package/esm/typings/src/utils/sets/intersection.d.ts +1 -1
  123. package/esm/typings/src/utils/sets/union.d.ts +1 -1
  124. package/esm/typings/src/utils/unwrapResult.d.ts +4 -4
  125. package/package.json +4 -3
  126. package/umd/index.umd.js +224 -27
  127. package/umd/index.umd.js.map +1 -1
  128. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +0 -29
  129. package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +0 -12
  130. package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +0 -23
  131. package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +0 -10
  132. /package/esm/typings/src/{scrapers/website/WebsiteScraper.test.d.ts → executables/apps/locateLibreoffice.test.d.ts} +0 -0
  133. /package/esm/typings/src/{scrapers/website/utils/markdownConverter.test.d.ts → executables/apps/locatePandoc.test.d.ts} +0 -0
@@ -14,11 +14,12 @@ import type { PrettifyOptions } from '../conversion/prettify/PrettifyOptions';
14
14
  import type { renderPipelineMermaidOptions } from '../conversion/prettify/renderPipelineMermaidOptions';
15
15
  import type { CallbackInterfaceToolsOptions } from '../dialogs/callback/CallbackInterfaceToolsOptions';
16
16
  import type { ErrorJson } from '../errors/utils/ErrorJson';
17
+ import type { LocateAppOptions } from '../executables/locateApp';
17
18
  import type { AvailableModel } from '../execution/AvailableModel';
18
19
  import type { CommonToolsOptions } from '../execution/CommonToolsOptions';
19
20
  import type { CreatePipelineExecutorOptions } from '../execution/createPipelineExecutor/00-CreatePipelineExecutorOptions';
20
- import type { CreatePipelineExecutorSettings } from '../execution/createPipelineExecutor/00-CreatePipelineExecutorSettings';
21
21
  import type { EmbeddingVector } from '../execution/EmbeddingVector';
22
+ import type { Executables } from '../execution/Executables';
22
23
  import type { ExecutionTools } from '../execution/ExecutionTools';
23
24
  import type { FilesystemTools } from '../execution/FilesystemTools';
24
25
  import type { LlmExecutionTools } from '../execution/LlmExecutionTools';
@@ -49,7 +50,6 @@ import type { AnthropicClaudeExecutionToolsDirectOptions } from '../llm-provider
49
50
  import type { AnthropicClaudeExecutionToolsProxiedOptions } from '../llm-providers/anthropic-claude/AnthropicClaudeExecutionToolsOptions';
50
51
  import type { AzureOpenAiExecutionToolsOptions } from '../llm-providers/azure-openai/AzureOpenAiExecutionToolsOptions';
51
52
  import type { LangtailExecutionToolsOptions } from '../llm-providers/langtail/LangtailExecutionToolsOptions';
52
- import type { MultipleLlmExecutionTools } from '../llm-providers/multiple/MultipleLlmExecutionTools';
53
53
  import type { OpenAiAssistantExecutionToolsOptions } from '../llm-providers/openai/OpenAiAssistantExecutionToolsOptions';
54
54
  import type { OpenAiExecutionToolsOptions } from '../llm-providers/openai/OpenAiExecutionToolsOptions';
55
55
  import type { PromptbookServer_Error } from '../llm-providers/remote/interfaces/PromptbookServer_Error';
@@ -66,6 +66,7 @@ import type { RemoteLlmExecutionToolsOptions } from '../llm-providers/remote/int
66
66
  import type { RemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
67
67
  import type { AnonymousRemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
68
68
  import type { CollectionRemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
69
+ import type { CollectionRemoteServerClientOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
69
70
  import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
70
71
  import type { Converter } from '../scrapers/_common/Converter';
71
72
  import type { ScraperAndConverterMetadata } from '../scrapers/_common/register/ScraperAndConverterMetadata';
@@ -81,6 +82,7 @@ import type { ExecutionPromptReportJson } from '../types/execution-report/Execut
81
82
  import type { ExecutionReportJson } from '../types/execution-report/ExecutionReportJson';
82
83
  import type { ExecutionReportString } from '../types/execution-report/ExecutionReportString';
83
84
  import type { ExecutionReportStringOptions } from '../types/execution-report/ExecutionReportStringOptions';
85
+ import type { IntermediateFilesStrategy } from '../types/IntermediateFilesStrategy';
84
86
  import type { ModelRequirements } from '../types/ModelRequirements';
85
87
  import type { CompletionModelRequirements } from '../types/ModelRequirements';
86
88
  import type { ChatModelRequirements } from '../types/ModelRequirements';
@@ -162,13 +164,13 @@ import type { string_url_image } from '../types/typeAliases';
162
164
  import type { string_executable_path } from '../types/typeAliases';
163
165
  import type { string_uri } from '../types/typeAliases';
164
166
  import type { string_uri_part } from '../types/typeAliases';
165
- import type { string_uriid } from '../types/typeAliases';
166
167
  import type { string_hostname } from '../types/typeAliases';
167
168
  import type { string_host } from '../types/typeAliases';
168
169
  import type { string_protocol } from '../types/typeAliases';
169
170
  import type { string_email } from '../types/typeAliases';
170
171
  import type { string_emails } from '../types/typeAliases';
171
172
  import type { string_uuid } from '../types/typeAliases';
173
+ import type { string_app_id } from '../types/typeAliases';
172
174
  import type { string_user_id } from '../types/typeAliases';
173
175
  import type { string_sha256 } from '../types/typeAliases';
174
176
  import type { string_semantic_version } from '../types/typeAliases';
@@ -191,6 +193,7 @@ import type { string_translate_name_not_normalized } from '../types/typeAliases'
191
193
  import type { string_translate_language } from '../types/typeAliases';
192
194
  import type { string_javascript_name } from '../types/typeAliases';
193
195
  import type { string_postprocessing_function_name } from '../types/typeAliases';
196
+ import type { id } from '../types/typeAliases';
194
197
  import type { string_token } from '../types/typeAliases';
195
198
  import type { string_license_token } from '../types/typeAliases';
196
199
  import type { string_password } from '../types/typeAliases';
@@ -223,13 +226,13 @@ import type { number_gigabytes } from '../types/typeAliases';
223
226
  import type { number_terabytes } from '../types/typeAliases';
224
227
  import type { Registered } from '../utils/$Register';
225
228
  import type { Registration } from '../utils/$Register';
226
- import type { IExecCommandOptions } from '../utils/execCommand/IExecCommandOptions';
227
- import type { IExecCommandOptionsAdvanced } from '../utils/execCommand/IExecCommandOptions';
229
+ import type { ExecCommandOptions } from '../utils/execCommand/ExecCommandOptions';
230
+ import type { ExecCommandOptionsAdvanced } from '../utils/execCommand/ExecCommandOptions';
228
231
  import type { FromtoItems } from '../utils/FromtoItems';
229
232
  import type { CodeBlock } from '../utils/markdown/extractAllBlocksFromMarkdown';
230
233
  import type { MarkdownSection } from '../utils/markdown/parseMarkdownSection';
231
234
  import type { string_keyword } from '../utils/normalization/IKeywords';
232
- import type { IKeywords } from '../utils/normalization/IKeywords';
235
+ import type { Keywords } from '../utils/normalization/IKeywords';
233
236
  import type { string_kebab_case } from '../utils/normalization/normalize-to-kebab-case';
234
237
  import type { string_camelCase } from '../utils/normalization/normalizeTo_camelCase';
235
238
  import type { string_PascalCase } from '../utils/normalization/normalizeTo_PascalCase';
@@ -255,11 +258,12 @@ export type { PrettifyOptions };
255
258
  export type { renderPipelineMermaidOptions };
256
259
  export type { CallbackInterfaceToolsOptions };
257
260
  export type { ErrorJson };
261
+ export type { LocateAppOptions };
258
262
  export type { AvailableModel };
259
263
  export type { CommonToolsOptions };
260
264
  export type { CreatePipelineExecutorOptions };
261
- export type { CreatePipelineExecutorSettings };
262
265
  export type { EmbeddingVector };
266
+ export type { Executables };
263
267
  export type { ExecutionTools };
264
268
  export type { FilesystemTools };
265
269
  export type { LlmExecutionTools };
@@ -290,7 +294,6 @@ export type { AnthropicClaudeExecutionToolsDirectOptions };
290
294
  export type { AnthropicClaudeExecutionToolsProxiedOptions };
291
295
  export type { AzureOpenAiExecutionToolsOptions };
292
296
  export type { LangtailExecutionToolsOptions };
293
- export type { MultipleLlmExecutionTools };
294
297
  export type { OpenAiAssistantExecutionToolsOptions };
295
298
  export type { OpenAiExecutionToolsOptions };
296
299
  export type { PromptbookServer_Error };
@@ -307,6 +310,7 @@ export type { RemoteLlmExecutionToolsOptions };
307
310
  export type { RemoteServerOptions };
308
311
  export type { AnonymousRemoteServerOptions };
309
312
  export type { CollectionRemoteServerOptions };
313
+ export type { CollectionRemoteServerClientOptions };
310
314
  export type { PrepareAndScrapeOptions };
311
315
  export type { Converter };
312
316
  export type { ScraperAndConverterMetadata };
@@ -322,6 +326,7 @@ export type { ExecutionPromptReportJson };
322
326
  export type { ExecutionReportJson };
323
327
  export type { ExecutionReportString };
324
328
  export type { ExecutionReportStringOptions };
329
+ export type { IntermediateFilesStrategy };
325
330
  export type { ModelRequirements };
326
331
  export type { CompletionModelRequirements };
327
332
  export type { ChatModelRequirements };
@@ -403,13 +408,13 @@ export type { string_url_image };
403
408
  export type { string_executable_path };
404
409
  export type { string_uri };
405
410
  export type { string_uri_part };
406
- export type { string_uriid };
407
411
  export type { string_hostname };
408
412
  export type { string_host };
409
413
  export type { string_protocol };
410
414
  export type { string_email };
411
415
  export type { string_emails };
412
416
  export type { string_uuid };
417
+ export type { string_app_id };
413
418
  export type { string_user_id };
414
419
  export type { string_sha256 };
415
420
  export type { string_semantic_version };
@@ -432,6 +437,7 @@ export type { string_translate_name_not_normalized };
432
437
  export type { string_translate_language };
433
438
  export type { string_javascript_name };
434
439
  export type { string_postprocessing_function_name };
440
+ export type { id };
435
441
  export type { string_token };
436
442
  export type { string_license_token };
437
443
  export type { string_password };
@@ -464,13 +470,13 @@ export type { number_gigabytes };
464
470
  export type { number_terabytes };
465
471
  export type { Registered };
466
472
  export type { Registration };
467
- export type { IExecCommandOptions };
468
- export type { IExecCommandOptionsAdvanced };
473
+ export type { ExecCommandOptions };
474
+ export type { ExecCommandOptionsAdvanced };
469
475
  export type { FromtoItems };
470
476
  export type { CodeBlock };
471
477
  export type { MarkdownSection };
472
478
  export type { string_keyword };
473
- export type { IKeywords };
479
+ export type { Keywords };
474
480
  export type { string_kebab_case };
475
481
  export type { string_camelCase };
476
482
  export type { string_PascalCase };
@@ -24,7 +24,7 @@ import { capitalize } from '../utils/normalization/capitalize';
24
24
  import { decapitalize } from '../utils/normalization/decapitalize';
25
25
  import { DIACRITIC_VARIANTS_LETTERS } from '../utils/normalization/DIACRITIC_VARIANTS_LETTERS';
26
26
  import type { string_keyword } from '../utils/normalization/IKeywords';
27
- import type { IKeywords } from '../utils/normalization/IKeywords';
27
+ import type { Keywords } from '../utils/normalization/IKeywords';
28
28
  import { isValidKeyword } from '../utils/normalization/isValidKeyword';
29
29
  import { nameToUriPart } from '../utils/normalization/nameToUriPart';
30
30
  import { nameToUriParts } from '../utils/normalization/nameToUriParts';
@@ -95,7 +95,7 @@ export { capitalize };
95
95
  export { decapitalize };
96
96
  export { DIACRITIC_VARIANTS_LETTERS };
97
97
  export type { string_keyword };
98
- export type { IKeywords };
98
+ export type { Keywords };
99
99
  export { isValidKeyword };
100
100
  export { nameToUriPart };
101
101
  export { nameToUriParts };
@@ -11,7 +11,7 @@ export type PipelineCollection = {
11
11
  /**
12
12
  * Gets all pipelines in the collection
13
13
  */
14
- listPipelines(): Promisable<Array<string_pipeline_url>>;
14
+ listPipelines(): Promisable<ReadonlyArray<string_pipeline_url>>;
15
15
  /**
16
16
  * Gets pipeline by its URL
17
17
  *
@@ -19,11 +19,11 @@ export declare class SimplePipelineCollection implements PipelineCollection {
19
19
  * Note: During the construction logic of all pipelines are validated
20
20
  * Note: It is not recommended to use this constructor directly, use `createCollectionFromJson` *(or other variant)* instead
21
21
  */
22
- constructor(...pipelines: Array<PipelineJson>);
22
+ constructor(...pipelines: ReadonlyArray<PipelineJson>);
23
23
  /**
24
24
  * Gets all pipelines in the collection
25
25
  */
26
- listPipelines(): Array<string_pipeline_url>;
26
+ listPipelines(): ReadonlyArray<string_pipeline_url>;
27
27
  /**
28
28
  * Gets pipeline by its URL
29
29
  *
@@ -7,7 +7,7 @@ import type { PipelineCollection } from './PipelineCollection';
7
7
  *
8
8
  * @public exported from `@promptbook/core`
9
9
  */
10
- export declare function collectionToJson(collection: PipelineCollection): Promise<Array<PipelineJson>>;
10
+ export declare function collectionToJson(collection: PipelineCollection): Promise<ReadonlyArray<PipelineJson>>;
11
11
  /**
12
12
  * TODO: [🧠] Maybe clear `sourceFile` or clear when exposing through API or remote server
13
13
  */
@@ -10,4 +10,4 @@ import type { PipelineCollection } from '../PipelineCollection';
10
10
  * @returns PipelineCollection
11
11
  * @public exported from `@promptbook/core`
12
12
  */
13
- export declare function createCollectionFromJson(...promptbooks: Array<PipelineJson>): PipelineCollection;
13
+ export declare function createCollectionFromJson(...promptbooks: ReadonlyArray<PipelineJson>): PipelineCollection;
@@ -20,4 +20,4 @@ import type { PipelineCollection } from '../PipelineCollection';
20
20
  * @deprecated Do not use, it will became internal tool for other constructor functions
21
21
  * @public exported from `@promptbook/core`
22
22
  */
23
- export declare function createCollectionFromPromise(promptbookSourcesPromiseOrFactory: Promise<Array<PipelineJson>> | (() => Promise<Array<PipelineJson>>)): PipelineCollection;
23
+ export declare function createCollectionFromPromise(promptbookSourcesPromiseOrFactory: Promise<ReadonlyArray<PipelineJson>> | (() => Promise<ReadonlyArray<PipelineJson>>)): PipelineCollection;
@@ -40,11 +40,11 @@ export type CommonCommandParser<TCommand extends CommandBase> = {
40
40
  /**
41
41
  * @@@
42
42
  */
43
- readonly aliasNames?: Array<string_name & string_SCREAMING_CASE>;
43
+ readonly aliasNames?: ReadonlyArray<string_name & string_SCREAMING_CASE>;
44
44
  /**
45
45
  * @@@
46
46
  */
47
- readonly deprecatedNames?: Array<string_name & string_SCREAMING_CASE>;
47
+ readonly deprecatedNames?: ReadonlyArray<string_name & string_SCREAMING_CASE>;
48
48
  /**
49
49
  * @@@
50
50
  */
@@ -56,7 +56,7 @@ export type CommonCommandParser<TCommand extends CommandBase> = {
56
56
  /**
57
57
  * @@@
58
58
  */
59
- readonly examples: Array<string_markdown_text>;
59
+ readonly examples: ReadonlyArray<string_markdown_text>;
60
60
  /**
61
61
  * @throws {ParseError} if the parsing fails
62
62
  */
@@ -95,7 +95,7 @@ export type PipelineHeadCommandParser<TCommand extends CommandBase> = CommonComm
95
95
  *
96
96
  * Note: This is used in `pipelineJsonToString` utility
97
97
  */
98
- takeFromPipelineJson(pipelineJson: PipelineJson): Array<TCommand>;
98
+ takeFromPipelineJson(pipelineJson: PipelineJson): ReadonlyArray<TCommand>;
99
99
  };
100
100
  /**
101
101
  * @@@
@@ -120,7 +120,7 @@ export type PipelineTemplateCommandParser<TCommand extends CommandBase> = Common
120
120
  *
121
121
  * Note: This is used in `pipelineJsonToString` utility
122
122
  */
123
- takeFromTemplateJson($templateJson: $TemplateJson): Array<TCommand>;
123
+ takeFromTemplateJson($templateJson: $TemplateJson): ReadonlyArray<TCommand>;
124
124
  };
125
125
  /**
126
126
  * @@@
@@ -1,4 +1,5 @@
1
1
  import type { CsvSettings } from './formats/csv/CsvSettings';
2
+ import type { IntermediateFilesStrategy } from './types/IntermediateFilesStrategy';
2
3
  /**
3
4
  * Warning message for the generated sections and files files
4
5
  *
@@ -12,7 +13,7 @@ export declare const GENERATOR_WARNING = "\u26A0\uFE0F WARNING: This code has be
12
13
  *
13
14
  * @public exported from `@promptbook/core`
14
15
  */
15
- export declare const CLAIM = "Supercharge LLM models with Promptbook";
16
+ export declare const CLAIM = "Build responsible, controlled and transparent applications on top of LLM models!";
16
17
  /**
17
18
  * Warning message for the generated sections and files files
18
19
  *
@@ -50,37 +51,43 @@ export declare const CONNECTION_RETRIES_LIMIT = 5;
50
51
  */
51
52
  export declare const IMMEDIATE_TIME = 10;
52
53
  /**
53
- * The maximum number of (LLM) tasks running in parallel
54
+ * The maximum length of the (generated) filename
54
55
  *
55
56
  * @public exported from `@promptbook/core`
56
57
  */
57
- export declare const MAX_PARALLEL_COUNT = 5;
58
+ export declare const MAX_FILENAME_LENGTH = 30;
58
59
  /**
59
- * The maximum number of attempts to execute LLM task before giving up
60
+ * Strategy for caching the intermediate results for knowledge sources
60
61
  *
61
62
  * @public exported from `@promptbook/core`
62
63
  */
63
- export declare const MAX_EXECUTION_ATTEMPTS = 3;
64
+ export declare const DEFAULT_INTERMEDIATE_FILES_STRATEGY: IntermediateFilesStrategy;
64
65
  /**
65
- * The maximum length of the (generated) filename
66
+ * The maximum number of (LLM) tasks running in parallel
66
67
  *
67
68
  * @public exported from `@promptbook/core`
68
69
  */
69
- export declare const MAX_FILENAME_LENGTH = 30;
70
+ export declare const DEFAULT_MAX_PARALLEL_COUNT = 5;
71
+ /**
72
+ * The maximum number of attempts to execute LLM task before giving up
73
+ *
74
+ * @public exported from `@promptbook/core`
75
+ */
76
+ export declare const DEFAULT_MAX_EXECUTION_ATTEMPTS = 3;
70
77
  /**
71
78
  * @@@
72
79
  * TODO: [🐝][main] !!! Use
73
80
  *
74
81
  * @public exported from `@promptbook/core`
75
82
  */
76
- export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH = 3;
83
+ export declare const DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH = 3;
77
84
  /**
78
85
  * @@@
79
86
  * TODO: [🐝][main] !!! Use
80
87
  *
81
88
  * @public exported from `@promptbook/core`
82
89
  */
83
- export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL = 200;
90
+ export declare const DEFAULT_MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL = 200;
84
91
  /**
85
92
  * Where to store the cache of executions for promptbook CLI
86
93
  *
@@ -88,7 +95,7 @@ export declare const MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL = 200;
88
95
  *
89
96
  * @public exported from `@promptbook/core`
90
97
  */
91
- export declare const EXECUTIONS_CACHE_DIRNAME = "/.promptbook/executions-cache";
98
+ export declare const DEFAULT_EXECUTIONS_CACHE_DIRNAME = "/.promptbook/executions-cache";
92
99
  /**
93
100
  * Where to store the scrape cache
94
101
  *
@@ -96,13 +103,13 @@ export declare const EXECUTIONS_CACHE_DIRNAME = "/.promptbook/executions-cache";
96
103
  *
97
104
  * @public exported from `@promptbook/core`
98
105
  */
99
- export declare const SCRAPE_CACHE_DIRNAME = "/.promptbook/scrape-cache";
106
+ export declare const DEFAULT_SCRAPE_CACHE_DIRNAME = "/.promptbook/scrape-cache";
100
107
  /**
101
108
  * The name of the builded pipeline collection made by CLI `ptbk make` and for lookup in `createCollectionFromDirectory`
102
109
  *
103
110
  * @public exported from `@promptbook/core`
104
111
  */
105
- export declare const PIPELINE_COLLECTION_BASE_FILENAME = "index";
112
+ export declare const DEFAULT_PIPELINE_COLLECTION_BASE_FILENAME = "index";
106
113
  /**
107
114
  * Nonce which is used for replacing things in strings
108
115
  *
@@ -159,13 +166,13 @@ export declare const DEFAULT_CSV_SETTINGS: CsvSettings;
159
166
  *
160
167
  * @public exported from `@promptbook/core`
161
168
  */
162
- export declare const IS_VERBOSE = false;
169
+ export declare const DEFAULT_IS_VERBOSE = false;
163
170
  /**
164
171
  * @@@
165
172
  *
166
173
  * @public exported from `@promptbook/core`
167
174
  */
168
- export declare const IS_AUTO_INSTALLED = false;
175
+ export declare const DEFAULT_IS_AUTO_INSTALLED = false;
169
176
  /**
170
177
  * @@@
171
178
  *
@@ -0,0 +1,12 @@
1
+ import type { Executables } from '../execution/Executables';
2
+ import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
3
+ /**
4
+ * @@@
5
+ *
6
+ * @public exported from `@promptbook/node`
7
+ */
8
+ export declare function $provideExecutablesForNode(options?: PrepareAndScrapeOptions): Promise<Executables>;
9
+ /**
10
+ * TODO: [🧠] Allow to override the executables without need to call `locatePandoc` / `locateLibreoffice` in case of provided
11
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
12
+ */
@@ -0,0 +1,11 @@
1
+ import type { string_executable_path } from '../../types/typeAliases';
2
+ /**
3
+ * @@@
4
+ *
5
+ * @private within the repository
6
+ */
7
+ export declare function locateLibreoffice(): Promise<string_executable_path | null>;
8
+ /**
9
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node` OR `@promptbook/legacy-documents`
10
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
11
+ */
@@ -0,0 +1,11 @@
1
+ import type { string_executable_path } from '../../types/typeAliases';
2
+ /**
3
+ * @@@
4
+ *
5
+ * @private within the repository
6
+ */
7
+ export declare function locatePandoc(): Promise<string_executable_path | null>;
8
+ /**
9
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node` OR `@promptbook/documents`
10
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
11
+ */
@@ -0,0 +1,33 @@
1
+ import type { RequireAtLeastOne } from 'type-fest';
2
+ import type { string_executable_path } from '../types/typeAliases';
3
+ /**
4
+ * Options for locating any application
5
+ */
6
+ export interface LocateAppOptions {
7
+ /**
8
+ * Name of the application
9
+ */
10
+ appName: string;
11
+ /**
12
+ * Name of the executable on Linux
13
+ */
14
+ linuxWhich?: string;
15
+ /**
16
+ * Path suffix on Windows
17
+ */
18
+ windowsSuffix?: string;
19
+ /**
20
+ * Name of the application on macOS
21
+ */
22
+ macOsName?: string;
23
+ }
24
+ /**
25
+ * Locates an application on the system
26
+ *
27
+ * @private within the repository
28
+ */
29
+ export declare function locateApp(options: RequireAtLeastOne<LocateAppOptions, 'linuxWhich' | 'windowsSuffix' | 'macOsName'>): Promise<string_executable_path | null>;
30
+ /**
31
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node`
32
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
33
+ */
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { string_executable_path } from '../../types/typeAliases';
2
+ import type { LocateAppOptions } from '../locateApp';
3
+ /**
4
+ * @@@
5
+ *
6
+ * @private within the repository
7
+ */
8
+ export declare function locateAppOnLinux({ appName, linuxWhich, }: Pick<Required<LocateAppOptions>, 'appName' | 'linuxWhich'>): Promise<string_executable_path | null>;
9
+ /**
10
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node`
11
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
12
+ */
@@ -0,0 +1,12 @@
1
+ import type { string_executable_path } from '../../types/typeAliases';
2
+ import type { LocateAppOptions } from '../locateApp';
3
+ /**
4
+ * @@@
5
+ *
6
+ * @private within the repository
7
+ */
8
+ export declare function locateAppOnMacOs({ appName, macOsName, }: Pick<Required<LocateAppOptions>, 'appName' | 'macOsName'>): Promise<string_executable_path | null>;
9
+ /**
10
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node`
11
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
12
+ */
@@ -0,0 +1,12 @@
1
+ import type { string_executable_path } from '../../types/typeAliases';
2
+ import type { LocateAppOptions } from '../locateApp';
3
+ /**
4
+ * @@@
5
+ *
6
+ * @private within the repository
7
+ */
8
+ export declare function locateAppOnWindows({ appName, windowsSuffix, }: Pick<Required<LocateAppOptions>, 'appName' | 'windowsSuffix'>): Promise<string_executable_path | null>;
9
+ /**
10
+ * TODO: [🧠][♿] Maybe export through `@promptbook/node`
11
+ * Note: [🟢] Code in this file should never be never released in packages that could be imported into browser environment
12
+ */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Represents a vector in an latent space of the embedding model
3
3
  */
4
- export type EmbeddingVector = Array<number>;
4
+ export type EmbeddingVector = ReadonlyArray<number>;
5
5
  /**
6
6
  * TODO: Figure out how to use NPM package xyzt
7
7
  * Not using IVectorData due to HUGE dimensionality
@@ -0,0 +1,18 @@
1
+ import type { string_executable_path } from '../types/typeAliases';
2
+ /**
3
+ * Paths to the external programs executables
4
+ */
5
+ export type Executables = {
6
+ /**
7
+ * Path to the `pandoc` executable
8
+ *
9
+ * @example 'C:/Users/me/AppData/Local/Pandoc/pandoc.exe'
10
+ */
11
+ pandocPath?: string_executable_path;
12
+ /**
13
+ * Path to the LibreOffice executable
14
+ *
15
+ * @example 'C:/Program Files/LibreOffice/program/swriter.exe'
16
+ */
17
+ libreOfficePath?: string_executable_path;
18
+ };
@@ -1,5 +1,6 @@
1
1
  import type { Scraper } from '../scrapers/_common/Scraper';
2
2
  import type { Arrayable } from '../types/Arrayable';
3
+ import type { Executables } from './Executables';
3
4
  import type { FilesystemTools } from './FilesystemTools';
4
5
  import type { LlmExecutionTools } from './LlmExecutionTools';
5
6
  import type { ScriptExecutionTools } from './ScriptExecutionTools';
@@ -26,6 +27,14 @@ export type ExecutionTools = {
26
27
  * @default undefined - If not provided, no filesystem operations will be possible
27
28
  */
28
29
  readonly fs?: FilesystemTools;
30
+ /**
31
+ * Scrapers for extracting knowledge from external sources
32
+ *
33
+ * Tip: Use `$provideExecutablesForNode`
34
+ *
35
+ * @default [] - If not provided, no external knowledge extraction will be possible
36
+ */
37
+ readonly executables?: Executables;
29
38
  /**
30
39
  * Scrapers for extracting knowledge from external sources
31
40
  *
@@ -51,6 +60,3 @@ export type ExecutionTools = {
51
60
  */
52
61
  readonly userInterface?: UserInterfaceTools;
53
62
  };
54
- /**
55
- * TODO: !!!!!! Move here also the executables and make $provideXxxxForNode
56
- */
@@ -3,7 +3,7 @@ import type fs from 'fs/promises';
3
3
  /**
4
4
  * Container for all the tools needed to manipulate with filesystem
5
5
  */
6
- export type FilesystemTools = Pick<typeof fs, 'access' | 'constants' | 'readFile' | 'stat' | 'readdir'>;
6
+ export type FilesystemTools = Pick<typeof fs, 'access' | 'constants' | 'readFile' | 'writeFile' | 'stat' | 'readdir'>;
7
7
  /**
8
8
  * TODO: Implement destroyable pattern to free resources
9
9
  */
@@ -37,7 +37,7 @@ export type LlmExecutionTools = {
37
37
  /**
38
38
  * List all available models that can be used
39
39
  */
40
- listModels(): Promisable<Array<AvailableModel>>;
40
+ listModels(): Promisable<ReadonlyArray<AvailableModel>>;
41
41
  /**
42
42
  * Calls a chat model
43
43
  */
@@ -52,7 +52,7 @@ export type LlmExecutionTools = {
52
52
  callEmbeddingModel?(prompt: Prompt): Promise<EmbeddingPromptResult>;
53
53
  };
54
54
  /**
55
- * TODO: Implement destroyable pattern to free resources
55
+ * TODO: [🍚] Implement destroyable pattern to free resources
56
56
  * TODO: [🏳] Add `callTranslationModel`
57
57
  * TODO: [🧠] Emulation of one type of model with another one - emuate chat with completion; emulate translation with chat
58
58
  * TODO: [🍓][♐] Some heuristic to pick the best model in listed models
@@ -27,11 +27,11 @@ export type PipelineExecutorResult = {
27
27
  /**
28
28
  * Errors that occured during the execution, details are aviable in `executionReport`
29
29
  */
30
- readonly errors: ReadonlyDeep<Array<ErrorJson>>;
30
+ readonly errors: ReadonlyDeep<ReadonlyArray<ErrorJson>>;
31
31
  /**
32
32
  * Warnings that occured during the execution, details are aviable in `executionReport`
33
33
  */
34
- readonly warnings: ReadonlyDeep<Array<ErrorJson>>;
34
+ readonly warnings: ReadonlyDeep<ReadonlyArray<ErrorJson>>;
35
35
  /**
36
36
  * The report of the execution with all details
37
37
  */
@@ -1,4 +1,4 @@
1
- import type { PipelineExecutor } from './PipelineExecutor';
1
+ import type { PipelineExecutorResult } from './PipelineExecutorResult';
2
2
  /**
3
3
  * Asserts that the execution of a Promptbook is successful
4
4
  *
@@ -6,7 +6,8 @@ import type { PipelineExecutor } from './PipelineExecutor';
6
6
  * @throws {PipelineExecutionError} If the execution is not successful or if multiple errors occurred
7
7
  * @public exported from `@promptbook/core`
8
8
  */
9
- export declare function assertsExecutionSuccessful(executionResult: Pick<Awaited<ReturnType<PipelineExecutor>>, 'isSuccessful' | 'errors'>): void;
9
+ export declare function assertsExecutionSuccessful(executionResult: Pick<PipelineExecutorResult, 'isSuccessful' | 'errors'>): void;
10
10
  /**
11
+ * TODO: [🐚] This function should be removed OR changed OR be completely rewritten
11
12
  * TODO: [🧠] Can this return type be better typed than void
12
13
  */