@promptbook/types 0.70.0-1 → 0.71.0-7

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 (171) hide show
  1. package/README.md +27 -58
  2. package/esm/typings/promptbook-collection/index.d.ts +0 -3
  3. package/esm/typings/src/_packages/browser.index.d.ts +1 -1
  4. package/esm/typings/src/_packages/core.index.d.ts +37 -11
  5. package/esm/typings/src/_packages/node.index.d.ts +6 -2
  6. package/esm/typings/src/_packages/types.index.d.ts +40 -20
  7. package/esm/typings/src/_packages/utils.index.d.ts +4 -4
  8. package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
  9. package/esm/typings/src/cli/cli-commands/hello.d.ts +1 -1
  10. package/esm/typings/src/cli/cli-commands/make.d.ts +2 -2
  11. package/esm/typings/src/cli/cli-commands/prettify.d.ts +1 -1
  12. package/esm/typings/src/cli/main.d.ts +1 -1
  13. package/esm/typings/src/cli/promptbookCli.d.ts +1 -1
  14. package/esm/typings/src/collection/constructors/createCollectionFromDirectory.d.ts +8 -5
  15. package/esm/typings/src/collection/constructors/createCollectionFromUrl.d.ts +1 -1
  16. package/esm/typings/src/commands/EXPECT/expectCommandParser.d.ts +1 -1
  17. package/esm/typings/src/commands/FOREACH/ForeachCommand.d.ts +3 -7
  18. package/esm/typings/src/commands/FOREACH/ForeachJson.d.ts +27 -0
  19. package/esm/typings/src/commands/FOREACH/foreachCommandParser.d.ts +2 -3
  20. package/esm/typings/src/commands/FORMAT/formatCommandParser.d.ts +1 -1
  21. package/esm/typings/src/commands/JOKER/jokerCommandParser.d.ts +1 -1
  22. package/esm/typings/src/commands/KNOWLEDGE/knowledgeCommandParser.d.ts +1 -1
  23. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.d.ts +11 -0
  24. package/esm/typings/src/commands/KNOWLEDGE/utils/sourceContentToName.test.d.ts +4 -0
  25. package/esm/typings/src/commands/MODEL/modelCommandParser.d.ts +1 -1
  26. package/esm/typings/src/commands/PARAMETER/parameterCommandParser.d.ts +1 -1
  27. package/esm/typings/src/commands/PERSONA/personaCommandParser.d.ts +1 -1
  28. package/esm/typings/src/commands/POSTPROCESS/postprocessCommandParser.d.ts +1 -1
  29. package/esm/typings/src/commands/PROMPTBOOK_VERSION/promptbookVersionCommandParser.d.ts +1 -1
  30. package/esm/typings/src/commands/TEMPLATE/templateCommandParser.d.ts +1 -1
  31. package/esm/typings/src/commands/URL/urlCommandParser.d.ts +1 -1
  32. package/esm/typings/src/commands/X_ACTION/actionCommandParser.d.ts +1 -1
  33. package/esm/typings/src/commands/X_INSTRUMENT/instrumentCommandParser.d.ts +1 -1
  34. package/esm/typings/src/commands/_BOILERPLATE/boilerplateCommandParser.d.ts +1 -1
  35. package/esm/typings/src/commands/_common/types/CommandParser.d.ts +4 -4
  36. package/esm/typings/src/config.d.ts +26 -3
  37. package/esm/typings/src/conversion/pipelineStringToJson.d.ts +2 -15
  38. package/esm/typings/src/conversion/pipelineStringToJsonSync.d.ts +1 -1
  39. package/esm/typings/src/conversion/prettify/renderPipelineMermaidOptions.d.ts +3 -0
  40. package/esm/typings/src/conversion/utils/extractParameterNamesFromTemplate.d.ts +2 -1
  41. package/esm/typings/src/conversion/validation/_importPipeline.d.ts +1 -1
  42. package/esm/typings/src/conversion/validation/validatePipeline.d.ts +10 -5
  43. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceTools.d.ts +2 -2
  44. package/esm/typings/src/{knowledge/dialogs → dialogs}/callback/CallbackInterfaceToolsOptions.d.ts +2 -2
  45. package/esm/typings/src/{knowledge/dialogs → dialogs}/simple-prompt/SimplePromptInterfaceTools.d.ts +4 -4
  46. package/esm/typings/src/errors/AbstractFormatError.d.ts +11 -0
  47. package/esm/typings/src/errors/KnowledgeScrapeError.d.ts +9 -0
  48. package/esm/typings/src/errors/MissingToolsError.d.ts +9 -0
  49. package/esm/typings/src/execution/ExecutionTools.d.ts +3 -3
  50. package/esm/typings/src/execution/PipelineExecutor.d.ts +1 -0
  51. package/esm/typings/src/execution/PipelineExecutorResult.d.ts +9 -8
  52. package/esm/typings/src/execution/createPipelineExecutor/$OngoingTemplateResult.d.ts +45 -0
  53. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorOptions.d.ts +23 -0
  54. package/esm/typings/src/execution/createPipelineExecutor/00-CreatePipelineExecutorSettings.d.ts +29 -0
  55. package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +13 -0
  56. package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +58 -0
  57. package/esm/typings/src/execution/createPipelineExecutor/20-executeTemplate.d.ts +65 -0
  58. package/esm/typings/src/execution/createPipelineExecutor/30-executeFormatSubvalues.d.ts +15 -0
  59. package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +74 -0
  60. package/esm/typings/src/execution/createPipelineExecutor/filterJustOutputParameters.d.ts +34 -0
  61. package/esm/typings/src/execution/createPipelineExecutor/getContextForTemplate.d.ts +10 -0
  62. package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTemplate.d.ts +27 -0
  63. package/esm/typings/src/execution/createPipelineExecutor/getReservedParametersForTemplate.d.ts +30 -0
  64. package/esm/typings/src/execution/createPipelineExecutor/getSamplesForTemplate.d.ts +10 -0
  65. package/esm/typings/src/execution/embeddingVectorToString.d.ts +1 -1
  66. package/esm/typings/src/execution/utils/checkExpectations.d.ts +2 -0
  67. package/esm/typings/src/execution/utils/forEachAsync.d.ts +1 -0
  68. package/esm/typings/src/execution/utils/usageToHuman.d.ts +3 -4
  69. package/esm/typings/src/formats/_common/FormatDefinition.d.ts +14 -15
  70. package/esm/typings/src/formats/_common/FormatSubvalueDefinition.d.ts +31 -0
  71. package/esm/typings/src/formats/csv/{ListFormatDefinition.d.ts → CsvFormatDefinition.d.ts} +6 -3
  72. package/esm/typings/src/formats/csv/CsvFormatError.d.ts +10 -0
  73. package/esm/typings/src/formats/csv/CsvSettings.d.ts +13 -0
  74. package/esm/typings/src/formats/index.d.ts +1 -1
  75. package/esm/typings/src/formats/json/JsonFormatDefinition.d.ts +4 -3
  76. package/esm/typings/src/formats/text/TextFormatDefinition.d.ts +19 -0
  77. package/esm/typings/src/formats/xml/XmlFormatDefinition.d.ts +4 -3
  78. package/esm/typings/src/llm-providers/_common/createLlmToolsFromConfigurationFromEnv.d.ts +1 -1
  79. package/esm/typings/src/llm-providers/_common/createLlmToolsFromEnv.d.ts +1 -1
  80. package/esm/typings/src/llm-providers/_common/getLlmToolsForCli.d.ts +1 -1
  81. package/esm/typings/src/llm-providers/_common/utils/cache/CacheItem.d.ts +1 -1
  82. package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +2 -1
  83. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  84. package/esm/typings/src/llm-providers/anthropic-claude/createAnthropicClaudeExecutionTools.d.ts +2 -2
  85. package/esm/typings/src/llm-providers/anthropic-claude/playground/playground.d.ts +3 -2
  86. package/esm/typings/src/llm-providers/azure-openai/AzureOpenAiExecutionTools.d.ts +8 -1
  87. package/esm/typings/src/llm-providers/azure-openai/playground/playground.d.ts +1 -0
  88. package/esm/typings/src/llm-providers/langtail/playground/playground.d.ts +3 -0
  89. package/esm/typings/src/llm-providers/multiple/playground/playground.d.ts +3 -0
  90. package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +2 -1
  91. package/esm/typings/src/llm-providers/openai/playground/playground.d.ts +2 -1
  92. package/esm/typings/src/llm-providers/remote/playground/playground.d.ts +3 -0
  93. package/esm/typings/src/personas/preparePersona.d.ts +3 -3
  94. package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +67 -0
  95. package/esm/typings/src/prepare/isPipelinePrepared.d.ts +1 -1
  96. package/esm/typings/src/prepare/preparePipeline.d.ts +2 -2
  97. package/esm/typings/src/prepare/prepareTemplates.d.ts +3 -3
  98. package/esm/typings/src/scrapers/_common/Converter.d.ts +28 -0
  99. package/esm/typings/src/scrapers/_common/Scraper.d.ts +71 -0
  100. package/esm/typings/src/scrapers/_common/ScraperIntermediateSource.d.ts +11 -0
  101. package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.d.ts +4 -4
  102. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.d.ts +33 -0
  103. package/esm/typings/src/scrapers/_common/utils/getScraperIntermediateSource.test.d.ts +4 -0
  104. package/esm/typings/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +10 -0
  105. package/esm/typings/src/scrapers/document/documentScraper.d.ts +37 -0
  106. package/esm/typings/src/scrapers/document/documentScraper.test.d.ts +4 -0
  107. package/esm/typings/src/scrapers/document/playground/document-scraper-playground.d.ts +5 -0
  108. package/esm/typings/src/scrapers/document-legacy/legacyDocumentScraper.d.ts +37 -0
  109. package/esm/typings/src/scrapers/document-legacy/legacyDocumentScraper.test.d.ts +4 -0
  110. package/esm/typings/src/scrapers/document-legacy/playground/legacy-document-scraper-playground.d.ts +5 -0
  111. package/esm/typings/src/scrapers/index.d.ts +7 -0
  112. package/esm/typings/src/scrapers/markdown/markdownScraper.d.ts +29 -0
  113. package/esm/typings/src/scrapers/markdown/playground/markdown-scraper-playground.d.ts +5 -0
  114. package/esm/typings/src/scrapers/pdf/pdfScraper.d.ts +35 -0
  115. package/esm/typings/src/scrapers/pdf/playground/pdf-scraper-playground.d.ts +5 -0
  116. package/esm/typings/src/scrapers/website/playground/website-scraper-playground.d.ts +5 -0
  117. package/esm/typings/src/scrapers/website/utils/markdownConverter.d.ts +12 -0
  118. package/esm/typings/src/scrapers/website/websiteScraper.d.ts +43 -0
  119. package/esm/typings/src/storage/{files-storage/FilesStorage.d.ts → file-cache-storage/FileCacheStorage.d.ts} +4 -4
  120. package/esm/typings/src/storage/file-cache-storage/FileCacheStorageOptions.d.ts +10 -0
  121. package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.d.ts +1 -1
  122. package/esm/typings/src/storage/local-storage/getLocalStorage.d.ts +1 -1
  123. package/esm/typings/src/storage/local-storage/getSessionStorage.d.ts +1 -1
  124. package/esm/typings/src/types/PipelineJson/KnowledgeSourceJson.d.ts +9 -2
  125. package/esm/typings/src/types/PipelineJson/ParameterJson.d.ts +1 -0
  126. package/esm/typings/src/types/PipelineJson/PipelineJson.d.ts +3 -3
  127. package/esm/typings/src/types/PipelineJson/TemplateJsonCommon.d.ts +5 -0
  128. package/esm/typings/src/types/execution-report/executionReportJsonToString.d.ts +2 -1
  129. package/esm/typings/src/types/typeAliases.d.ts +9 -12
  130. package/esm/typings/src/utils/execCommand/$execCommand.d.ts +14 -0
  131. package/esm/typings/src/utils/execCommand/$execCommands.d.ts +17 -0
  132. package/esm/typings/src/utils/execCommand/IExecCommandOptions.d.ts +23 -0
  133. package/esm/typings/src/utils/execCommand/execCommandNormalizeOptions.d.ts +10 -0
  134. package/esm/typings/src/utils/expectation-counters/index.d.ts +3 -0
  135. package/esm/typings/src/utils/files/$isDirectoryExisting.d.ts +3 -3
  136. package/esm/typings/src/utils/files/$isFileExisting.d.ts +3 -3
  137. package/esm/typings/src/utils/files/$listAllFiles.d.ts +4 -4
  138. package/esm/typings/src/utils/files/extensionToMimeType.d.ts +8 -0
  139. package/esm/typings/src/utils/files/getFileExtension.d.ts +8 -0
  140. package/esm/typings/src/utils/files/getFileExtension.test.d.ts +1 -0
  141. package/esm/typings/src/utils/organization/{f.d.ts → empty_object.d.ts} +5 -1
  142. package/esm/typings/src/utils/organization/just_empty_object.d.ts +12 -0
  143. package/esm/typings/src/utils/{extractParameterNames.d.ts → parameters/extractParameterNames.d.ts} +2 -2
  144. package/esm/typings/src/utils/parameters/extractParameterNames.test.d.ts +1 -0
  145. package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.d.ts +27 -0
  146. package/esm/typings/src/utils/parameters/mapAvailableToExpectedParameters.test.d.ts +1 -0
  147. package/esm/typings/src/utils/{replaceParameters.d.ts → parameters/replaceParameters.d.ts} +2 -2
  148. package/esm/typings/src/utils/parameters/replaceParameters.test.d.ts +1 -0
  149. package/esm/typings/src/utils/serialization/checkSerializableAsJson.d.ts +1 -1
  150. package/esm/typings/src/utils/serialization/isSerializableAsJson.d.ts +1 -1
  151. package/esm/typings/src/utils/validators/filePath/isValidFilePath.d.ts +2 -2
  152. package/esm/typings/src/utils/validators/parameterName/validateParameterName.d.ts +10 -0
  153. package/esm/typings/src/utils/validators/parameterName/validateParameterName.test.d.ts +1 -0
  154. package/package.json +17 -13
  155. package/esm/typings/src/execution/createPipelineExecutor.d.ts +0 -72
  156. package/esm/typings/src/formats/list/ListFormatDefinition.d.ts +0 -16
  157. package/esm/typings/src/knowledge/prepare-knowledge/_common/Scraper.d.ts +0 -37
  158. package/esm/typings/src/knowledge/prepare-knowledge/markdown/playground/markdown-knowledge-playground.d.ts +0 -2
  159. package/esm/typings/src/knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.d.ts +0 -14
  160. package/esm/typings/src/knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.d.ts +0 -15
  161. package/esm/typings/src/prepare/PrepareOptions.d.ts +0 -22
  162. package/esm/typings/src/storage/files-storage/FilesStorageOptions.d.ts +0 -10
  163. /package/esm/typings/src/{knowledge/dialogs → dialogs}/user-interface-execution-tools.test.d.ts +0 -0
  164. /package/esm/typings/src/{knowledge/prepare-knowledge → scrapers}/_common/prepareKnowledgePieces.test.d.ts +0 -0
  165. /package/esm/typings/src/{knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown.test.d.ts → scrapers/markdown/markdownScraper.test.d.ts} +0 -0
  166. /package/esm/typings/src/{execution/utils/usageToHuman.test.d.ts → scrapers/website/utils/markdownConverter.test.d.ts} +0 -0
  167. /package/esm/typings/src/{knowledge/prepare-knowledge/pdf/prepareKnowledgeFromPdf.test.d.ts → scrapers/website/websiteScraper.test.d.ts} +0 -0
  168. /package/esm/typings/src/storage/{files-storage → file-cache-storage}/utils/nameToSubfolderPath.test.d.ts +0 -0
  169. /package/esm/typings/src/{personas/preparePersona.test.d.ts → utils/execCommand/execCommand.test.d.ts} +0 -0
  170. /package/esm/typings/src/utils/{extractParameterNames.test.d.ts → execCommand/execCommandNormalizeOptions.test.d.ts} +0 -0
  171. /package/esm/typings/src/utils/{replaceParameters.test.d.ts → files/extensionToMimeType.test.d.ts} +0 -0
package/README.md CHANGED
@@ -16,6 +16,16 @@ Supercharge your use of large language models
16
16
 
17
17
 
18
18
 
19
+ ## ✨ New Features
20
+
21
+ - ✨ **Support of [OpenAI o1 model](https://openai.com/o1/)**
22
+
23
+ <blockquote style="color: #ff8811">
24
+ <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>.
25
+ </blockquote>
26
+
27
+
28
+
19
29
  ## 📦 Package `@promptbook/types`
20
30
 
21
31
  - Promptbooks are [divided into several](#-packages) packages, all are published from [single monorepo](https://github.com/webgptorg/promptbook).
@@ -65,13 +75,15 @@ Rest of the documentation is common for **entire promptbook ecosystem**:
65
75
 
66
76
  ## 🤍 The Promptbook Whitepaper
67
77
 
78
+
79
+
68
80
  If you have a simple, single prompt for ChatGPT, GPT-4, Anthropic Claude, Google Gemini, Llama 2, or whatever, it doesn't matter how you integrate it. Whether it's calling a REST API directly, using the SDK, hardcoding the prompt into the source code, or importing a text file, the process remains the same.
69
81
 
70
82
  But often you will struggle with the limitations of LLMs, such as hallucinations, off-topic responses, poor quality output, language drift, word repetition repetition repetition repetition or misuse, lack of context, or just plain w𝒆𝐢rd responses. When this happens, you generally have three options:
71
83
 
72
84
  1. **Fine-tune** the model to your specifications or even train your own.
73
85
  2. **Prompt-engineer** the prompt to the best shape you can achieve.
74
- 3. Use **multiple prompts** in a [pipeline](https://github.com/webgptorg/promptbook/discussions/64) to get the best result.
86
+ 3. Orchestrate **multiple prompts** in a [pipeline](https://github.com/webgptorg/promptbook/discussions/64) to get the best result.
75
87
 
76
88
  In all of these situations, but especially in 3., the Promptbook library can make your life easier.
77
89
 
@@ -83,7 +95,9 @@ In all of these situations, but especially in 3., the Promptbook library can mak
83
95
  - Promptbook has built in versioning. You can test multiple **A/B versions** of pipelines and see which one works best.
84
96
  - Promptbook is designed to do [**RAG** (Retrieval-Augmented Generation)](https://github.com/webgptorg/promptbook/discussions/41) and other advanced techniques. You can use **knowledge** to improve the quality of the output.
85
97
 
86
- ## 🧔 Promptbook _(for prompt-engeneers)_
98
+
99
+
100
+ ## 🧔 Pipeline _(for prompt-engeneers)_
87
101
 
88
102
  **P**romp**t** **b**oo**k** markdown file (or `.ptbk.md` file) is document that describes a **pipeline** - a series of prompts that are chained together to form somewhat reciepe for transforming natural language input.
89
103
 
@@ -105,7 +119,6 @@ File `write-website-content.ptbk.md`:
105
119
  > Instructions for creating web page content.
106
120
  >
107
121
  > - PIPELINE URL https://promptbook.studio/webgpt/write-website-content.ptbk.md
108
- > - PROMPTBOOK VERSION 0.0.1
109
122
  > - INPUT  PARAM `{rawTitle}` Automatically suggested a site name or empty text
110
123
  > - INPUT  PARAM `{rawAssigment}` Automatically generated site entry from image recognition
111
124
  > - OUTPUT PARAM `{websiteContent}` Web content
@@ -400,6 +413,8 @@ The following glossary is used to clarify certain concepts:
400
413
  - When you want to **version** your prompts and **test multiple versions**
401
414
  - When you want to **log** the execution of prompts and backtrace the issues
402
415
 
416
+ [See more](https://github.com/webgptorg/promptbook/discussions/111)
417
+
403
418
  ### ➖ When not to use
404
419
 
405
420
  - When you have already implemented single simple prompt and it works fine for your job
@@ -409,6 +424,8 @@ The following glossary is used to clarify certain concepts:
409
424
  - When your main focus is on something other than text - like images, audio, video, spreadsheets _(other media types may be added in the future, [see discussion](https://github.com/webgptorg/promptbook/discussions/103))_
410
425
  - When you need to use recursion _([see the discussion](https://github.com/webgptorg/promptbook/discussions/38))_
411
426
 
427
+ [See more](https://github.com/webgptorg/promptbook/discussions/112)
428
+
412
429
  ## 🐜 Known issues
413
430
 
414
431
  - [🤸‍♂️ Iterations not working yet](https://github.com/webgptorg/promptbook/discussions/55)
@@ -421,63 +438,15 @@ The following glossary is used to clarify certain concepts:
421
438
 
422
439
  ## ❔ FAQ
423
440
 
424
-
425
-
426
441
  If you have a question [start a discussion](https://github.com/webgptorg/promptbook/discussions/), [open an issue](https://github.com/webgptorg/promptbook/issues) or [write me an email](https://www.pavolhejny.com/contact).
427
442
 
428
- ### Why not just use the OpenAI SDK / Anthropic Claude SDK / ...?
429
-
430
- Different levels of abstraction. OpenAI library is for direct use of OpenAI API. This library is for a higher level of abstraction. It define pipelines that are independent of the underlying library, LLM model, or even LLM provider.
431
-
432
- ### How is it different from the Langchain library?
433
-
434
- Langchain is primarily aimed at ML developers working in Python. This library is for developers working in javascript/typescript and creating applications for end users.
435
-
436
- We are considering creating a bridge/converter between these two libraries.
437
-
438
-
439
-
440
- ### Promptbooks vs. OpenAI`s GPTs
441
-
442
- GPTs are chat assistants that can be assigned to specific tasks and materials. But they are still chat assistants. Promptbooks are a way to orchestrate many more predefined tasks to have much tighter control over the process. Promptbooks are not a good technology for creating human-like chatbots, GPTs are not a good technology for creating outputs with specific requirements.
443
-
444
-
445
-
446
-
447
-
448
-
449
-
450
-
451
-
452
-
453
-
454
-
455
-
456
-
457
-
458
- ### Where should I store my promptbooks?
459
-
460
- If you use raw SDKs, you just put prompts in the sourcecode, mixed in with typescript, javascript, python or whatever programming language you use.
461
-
462
- If you use promptbooks, you can store them in several places, each with its own advantages and disadvantages:
463
-
464
- 1. As **source code**, typically git-committed. In this case you can use the versioning system and the promptbooks will be tightly coupled with the version of the application. You still get the power of promptbooks, as you separate the concerns of the prompt-engineer and the programmer.
465
-
466
- 2. As data in a **database** In this case, promptbooks are like posts / articles on the blog. They can be modified independently of the application. You don't need to redeploy the application to change the promptbooks. You can have multiple versions of promptbooks for each user. You can have a web interface for non-programmers to create and modify promptbooks. But you lose the versioning system and you still have to consider the interface between the promptbooks and the application _(= input and output parameters)_.
467
-
468
- 3. In a **configuration** in environment variables. This is a good way to store promptbooks if you have an application with multiple deployments and you want to have different but simple promptbooks for each deployment and you don't need to change them often.
469
-
470
- ### What should I do when I need same promptbook in multiple human languages?
471
-
472
- A single promptbook can be written for several _(human)_ languages at once. However, we recommend that you have separate promptbooks for each language.
473
-
474
- In large language models, you will get better results if you have prompts in the same language as the user input.
475
-
476
- The best way to manage this is to have suffixed promptbooks like `write-website-content.en.ptbk.md` and `write-website-content.cs.ptbk.md` for each supported language.
477
-
478
-
479
-
480
-
443
+ - [❔ Why not just use the OpenAI SDK / Anthropic Claude SDK / ...?](https://github.com/webgptorg/promptbook/discussions/114)
444
+ - [❔ How is it different from the OpenAI`s GPTs?](https://github.com/webgptorg/promptbook/discussions/118)
445
+ - [❔ How is it different from the Langchain?](https://github.com/webgptorg/promptbook/discussions/115)
446
+ - [❔ How is it different from the DSPy?](https://github.com/webgptorg/promptbook/discussions/117)
447
+ - [❔ How is it different from _anything_?](https://github.com/webgptorg/promptbook/discussions?discussions_q=is%3Aopen+label%3A%22Promptbook+vs%22)
448
+ - [❔ Is Promptbook using RAG _(Retrieval-Augmented Generation)_?](https://github.com/webgptorg/promptbook/discussions/123)
449
+ - [❔ Is Promptbook using function calling?](https://github.com/webgptorg/promptbook/discussions/124)
481
450
 
482
451
  ## ⌚ Changelog
483
452
 
@@ -1,7 +1,6 @@
1
1
  declare const _default: ({
2
2
  title: string;
3
3
  pipelineUrl: string;
4
- promptbookVersion: string;
5
4
  parameters: {
6
5
  name: string;
7
6
  description: string;
@@ -24,7 +23,6 @@ declare const _default: ({
24
23
  } | {
25
24
  title: string;
26
25
  pipelineUrl: string;
27
- promptbookVersion: string;
28
26
  parameters: {
29
27
  name: string;
30
28
  description: string;
@@ -53,7 +51,6 @@ declare const _default: ({
53
51
  } | {
54
52
  title: string;
55
53
  pipelineUrl: string;
56
- promptbookVersion: string;
57
54
  parameters: {
58
55
  name: string;
59
56
  description: string;
@@ -1,5 +1,5 @@
1
1
  import { PROMPTBOOK_VERSION } from '../version';
2
- import { SimplePromptInterfaceTools } from '../knowledge/dialogs/simple-prompt/SimplePromptInterfaceTools';
2
+ import { SimplePromptInterfaceTools } from '../dialogs/simple-prompt/SimplePromptInterfaceTools';
3
3
  import { getLocalStorage } from '../storage/local-storage/getLocalStorage';
4
4
  import { getSessionStorage } from '../storage/local-storage/getSessionStorage';
5
5
  export { PROMPTBOOK_VERSION };
@@ -13,23 +13,29 @@ import { MAX_FILENAME_LENGTH } from '../config';
13
13
  import { MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH } from '../config';
14
14
  import { MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL } from '../config';
15
15
  import { EXECUTIONS_CACHE_DIRNAME } from '../config';
16
+ import { SCRAPE_CACHE_DIRNAME } from '../config';
16
17
  import { PIPELINE_COLLECTION_BASE_FILENAME } from '../config';
17
18
  import { RESERVED_PARAMETER_NAMES } from '../config';
18
19
  import { DEFAULT_REMOTE_URL } from '../config';
19
20
  import { DEFAULT_REMOTE_URL_PATH } from '../config';
21
+ import { DEFAULT_CSV_SETTINGS } from '../config';
20
22
  import { IS_VERBOSE } from '../config';
21
23
  import { pipelineJsonToString } from '../conversion/pipelineJsonToString';
22
- import type { PipelineStringToJsonOptions } from '../conversion/pipelineStringToJson';
23
24
  import { pipelineStringToJson } from '../conversion/pipelineStringToJson';
24
25
  import { pipelineStringToJsonSync } from '../conversion/pipelineStringToJsonSync';
25
26
  import { prettifyPipelineString } from '../conversion/prettify/prettifyPipelineString';
26
27
  import { stringifyPipelineJson } from '../conversion/utils/stringifyPipelineJson';
27
28
  import { validatePipeline } from '../conversion/validation/validatePipeline';
29
+ import { CallbackInterfaceTools } from '../dialogs/callback/CallbackInterfaceTools';
30
+ import type { CallbackInterfaceToolsOptions } from '../dialogs/callback/CallbackInterfaceToolsOptions';
31
+ import { AbstractFormatError } from '../errors/AbstractFormatError';
28
32
  import { CollectionError } from '../errors/CollectionError';
29
33
  import { EnvironmentMismatchError } from '../errors/EnvironmentMismatchError';
30
34
  import { ExpectError } from '../errors/ExpectError';
31
35
  import { ERRORS } from '../errors/index';
36
+ import { KnowledgeScrapeError } from '../errors/KnowledgeScrapeError';
32
37
  import { LimitReachedError } from '../errors/LimitReachedError';
38
+ import { MissingToolsError } from '../errors/MissingToolsError';
33
39
  import { NotFoundError } from '../errors/NotFoundError';
34
40
  import { NotYetImplementedError } from '../errors/NotYetImplementedError';
35
41
  import { ParseError } from '../errors/ParseError';
@@ -38,17 +44,17 @@ import { PipelineLogicError } from '../errors/PipelineLogicError';
38
44
  import { PipelineUrlError } from '../errors/PipelineUrlError';
39
45
  import { UnexpectedError } from '../errors/UnexpectedError';
40
46
  import { assertsExecutionSuccessful } from '../execution/assertsExecutionSuccessful';
41
- import { createPipelineExecutor } from '../execution/createPipelineExecutor';
47
+ import { createPipelineExecutor } from '../execution/createPipelineExecutor/00-createPipelineExecutor';
42
48
  import { embeddingVectorToString } from '../execution/embeddingVectorToString';
43
49
  import { ZERO_USAGE } from '../execution/utils/addUsage';
44
50
  import { addUsage } from '../execution/utils/addUsage';
45
51
  import { isPassingExpectations } from '../execution/utils/checkExpectations';
46
52
  import { usageToHuman } from '../execution/utils/usageToHuman';
47
53
  import { usageToWorktime } from '../execution/utils/usageToWorktime';
48
- import { CallbackInterfaceTools } from '../knowledge/dialogs/callback/CallbackInterfaceTools';
49
- import type { CallbackInterfaceToolsOptions } from '../knowledge/dialogs/callback/CallbackInterfaceToolsOptions';
50
- import { prepareKnowledgePieces } from '../knowledge/prepare-knowledge/_common/prepareKnowledgePieces';
51
- import { prepareKnowledgeFromMarkdown } from '../knowledge/prepare-knowledge/markdown/prepareKnowledgeFromMarkdown';
54
+ import { CsvFormatDefinition } from '../formats/csv/CsvFormatDefinition';
55
+ import { CsvFormatError } from '../formats/csv/CsvFormatError';
56
+ import { MANDATORY_CSV_SETTINGS } from '../formats/csv/CsvSettings';
57
+ import { TextFormatDefinition } from '../formats/text/TextFormatDefinition';
52
58
  import { $llmToolsMetadataRegister } from '../llm-providers/_common/$llmToolsMetadataRegister';
53
59
  import { $llmToolsRegister } from '../llm-providers/_common/$llmToolsRegister';
54
60
  import { createLlmToolsFromConfiguration } from '../llm-providers/_common/createLlmToolsFromConfiguration';
@@ -64,6 +70,13 @@ import { isPipelinePrepared } from '../prepare/isPipelinePrepared';
64
70
  import { preparePipeline } from '../prepare/preparePipeline';
65
71
  import { prepareTemplates } from '../prepare/prepareTemplates';
66
72
  import { unpreparePipeline } from '../prepare/unpreparePipeline';
73
+ import { prepareKnowledgePieces } from '../scrapers/_common/prepareKnowledgePieces';
74
+ import { legacyDocumentScraper } from '../scrapers/document-legacy/legacyDocumentScraper';
75
+ import { documentScraper } from '../scrapers/document/documentScraper';
76
+ import { SCRAPERS } from '../scrapers/index';
77
+ import { markdownScraper } from '../scrapers/markdown/markdownScraper';
78
+ import { pdfScraper } from '../scrapers/pdf/pdfScraper';
79
+ import { websiteScraper } from '../scrapers/website/websiteScraper';
67
80
  import { MemoryStorage } from '../storage/memory/MemoryStorage';
68
81
  import { PrefixStorage } from '../storage/utils/PrefixStorage';
69
82
  import { executionReportJsonToString } from '../types/execution-report/executionReportJsonToString';
@@ -86,23 +99,29 @@ export { MAX_FILENAME_LENGTH };
86
99
  export { MAX_KNOWLEDGE_SOURCES_SCRAPING_DEPTH };
87
100
  export { MAX_KNOWLEDGE_SOURCES_SCRAPING_TOTAL };
88
101
  export { EXECUTIONS_CACHE_DIRNAME };
102
+ export { SCRAPE_CACHE_DIRNAME };
89
103
  export { PIPELINE_COLLECTION_BASE_FILENAME };
90
104
  export { RESERVED_PARAMETER_NAMES };
91
105
  export { DEFAULT_REMOTE_URL };
92
106
  export { DEFAULT_REMOTE_URL_PATH };
107
+ export { DEFAULT_CSV_SETTINGS };
93
108
  export { IS_VERBOSE };
94
109
  export { pipelineJsonToString };
95
- export type { PipelineStringToJsonOptions };
96
110
  export { pipelineStringToJson };
97
111
  export { pipelineStringToJsonSync };
98
112
  export { prettifyPipelineString };
99
113
  export { stringifyPipelineJson };
100
114
  export { validatePipeline };
115
+ export { CallbackInterfaceTools };
116
+ export type { CallbackInterfaceToolsOptions };
117
+ export { AbstractFormatError };
101
118
  export { CollectionError };
102
119
  export { EnvironmentMismatchError };
103
120
  export { ExpectError };
104
121
  export { ERRORS };
122
+ export { KnowledgeScrapeError };
105
123
  export { LimitReachedError };
124
+ export { MissingToolsError };
106
125
  export { NotFoundError };
107
126
  export { NotYetImplementedError };
108
127
  export { ParseError };
@@ -118,10 +137,10 @@ export { addUsage };
118
137
  export { isPassingExpectations };
119
138
  export { usageToHuman };
120
139
  export { usageToWorktime };
121
- export { CallbackInterfaceTools };
122
- export type { CallbackInterfaceToolsOptions };
123
- export { prepareKnowledgePieces };
124
- export { prepareKnowledgeFromMarkdown };
140
+ export { CsvFormatDefinition };
141
+ export { CsvFormatError };
142
+ export { MANDATORY_CSV_SETTINGS };
143
+ export { TextFormatDefinition };
125
144
  export { $llmToolsMetadataRegister };
126
145
  export { $llmToolsRegister };
127
146
  export { createLlmToolsFromConfiguration };
@@ -137,6 +156,13 @@ export { isPipelinePrepared };
137
156
  export { preparePipeline };
138
157
  export { prepareTemplates };
139
158
  export { unpreparePipeline };
159
+ export { prepareKnowledgePieces };
160
+ export { legacyDocumentScraper };
161
+ export { documentScraper };
162
+ export { SCRAPERS };
163
+ export { markdownScraper };
164
+ export { pdfScraper };
165
+ export { websiteScraper };
140
166
  export { MemoryStorage };
141
167
  export { PrefixStorage };
142
168
  export { executionReportJsonToString };
@@ -2,9 +2,13 @@ import { PROMPTBOOK_VERSION } from '../version';
2
2
  import { createCollectionFromDirectory } from '../collection/constructors/createCollectionFromDirectory';
3
3
  import { createLlmToolsFromConfigurationFromEnv } from '../llm-providers/_common/createLlmToolsFromConfigurationFromEnv';
4
4
  import { createLlmToolsFromEnv } from '../llm-providers/_common/createLlmToolsFromEnv';
5
- import { FilesStorage } from '../storage/files-storage/FilesStorage';
5
+ import { FileCacheStorage } from '../storage/file-cache-storage/FileCacheStorage';
6
+ import { $execCommand } from '../utils/execCommand/$execCommand';
7
+ import { $execCommands } from '../utils/execCommand/$execCommands';
6
8
  export { PROMPTBOOK_VERSION };
7
9
  export { createCollectionFromDirectory };
8
10
  export { createLlmToolsFromConfigurationFromEnv };
9
11
  export { createLlmToolsFromEnv };
10
- export { FilesStorage };
12
+ export { FileCacheStorage };
13
+ export { $execCommand };
14
+ export { $execCommands };
@@ -7,14 +7,17 @@ import type { PipelineTemplateCommandParser } from '../commands/_common/types/Co
7
7
  import type { CommandParserInput } from '../commands/_common/types/CommandParser';
8
8
  import type { CommandUsagePlace } from '../commands/_common/types/CommandUsagePlaces';
9
9
  import type { ExpectCommand } from '../commands/EXPECT/ExpectCommand';
10
+ import type { ForeachJson } from '../commands/FOREACH/ForeachJson';
10
11
  import type { FormatCommand } from '../commands/FORMAT/FormatCommand';
11
12
  import type { TemplateType } from '../commands/TEMPLATE/TemplateTypes';
12
- import type { PipelineStringToJsonOptions } from '../conversion/pipelineStringToJson';
13
13
  import type { PrettifyOptions } from '../conversion/prettify/PrettifyOptions';
14
14
  import type { renderPipelineMermaidOptions } from '../conversion/prettify/renderPipelineMermaidOptions';
15
+ import type { CallbackInterfaceToolsOptions } from '../dialogs/callback/CallbackInterfaceToolsOptions';
15
16
  import type { ErrorJson } from '../errors/utils/ErrorJson';
16
17
  import type { AvailableModel } from '../execution/AvailableModel';
17
18
  import type { CommonExecutionToolsOptions } from '../execution/CommonExecutionToolsOptions';
19
+ import type { CreatePipelineExecutorOptions } from '../execution/createPipelineExecutor/00-CreatePipelineExecutorOptions';
20
+ import type { CreatePipelineExecutorSettings } from '../execution/createPipelineExecutor/00-CreatePipelineExecutorSettings';
18
21
  import type { EmbeddingVector } from '../execution/EmbeddingVector';
19
22
  import type { ExecutionTools } from '../execution/ExecutionTools';
20
23
  import type { LlmExecutionTools } from '../execution/LlmExecutionTools';
@@ -32,7 +35,8 @@ import type { ScriptExecutionToolsExecuteOptions } from '../execution/ScriptExec
32
35
  import type { UncertainNumber } from '../execution/UncertainNumber';
33
36
  import type { UserInterfaceTools } from '../execution/UserInterfaceTools';
34
37
  import type { UserInterfaceToolsPromptDialogOptions } from '../execution/UserInterfaceTools';
35
- import type { CallbackInterfaceToolsOptions } from '../knowledge/dialogs/callback/CallbackInterfaceToolsOptions';
38
+ import type { FormatSubvalueDefinition } from '../formats/_common/FormatSubvalueDefinition';
39
+ import type { CsvSettings } from '../formats/csv/CsvSettings';
36
40
  import type { LlmToolsConfiguration } from '../llm-providers/_common/LlmToolsConfiguration';
37
41
  import type { LlmToolsMetadata } from '../llm-providers/_common/LlmToolsMetadata';
38
42
  import type { LlmToolsOptions } from '../llm-providers/_common/LlmToolsOptions';
@@ -60,11 +64,15 @@ import type { RemoteLlmExecutionToolsOptions } from '../llm-providers/remote/int
60
64
  import type { RemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
61
65
  import type { AnonymousRemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
62
66
  import type { CollectionRemoteServerOptions } from '../llm-providers/remote/interfaces/RemoteServerOptions';
63
- import type { PrepareOptions } from '../prepare/PrepareOptions';
67
+ import type { PrepareAndScrapeOptions } from '../prepare/PrepareAndScrapeOptions';
68
+ import type { Converter } from '../scrapers/_common/Converter';
69
+ import type { Scraper } from '../scrapers/_common/Scraper';
70
+ import type { ScraperSourceHandler } from '../scrapers/_common/Scraper';
71
+ import type { ScraperIntermediateSource } from '../scrapers/_common/ScraperIntermediateSource';
64
72
  import type { JavascriptExecutionToolsOptions } from '../scripting/javascript/JavascriptExecutionToolsOptions';
65
73
  import type { PostprocessingFunction } from '../scripting/javascript/JavascriptExecutionToolsOptions';
66
74
  import type { PromptbookStorage } from '../storage/_common/PromptbookStorage';
67
- import type { FilesStorageOptions } from '../storage/files-storage/FilesStorageOptions';
75
+ import type { FileCacheStorageOptions } from '../storage/file-cache-storage/FileCacheStorageOptions';
68
76
  import type { ExecutionPromptReportJson } from '../types/execution-report/ExecutionPromptReportJson';
69
77
  import type { ExecutionReportJson } from '../types/execution-report/ExecutionReportJson';
70
78
  import type { ExecutionReportString } from '../types/execution-report/ExecutionReportString';
@@ -161,13 +169,12 @@ import type { string_sha256 } from '../types/typeAliases';
161
169
  import type { string_semantic_version } from '../types/typeAliases';
162
170
  import type { string_version_dependency } from '../types/typeAliases';
163
171
  import type { string_file_extension } from '../types/typeAliases';
164
- import type { string_file_absolute_path } from '../types/typeAliases';
165
- import type { string_file_relative_path } from '../types/typeAliases';
166
- import type { string_file_path } from '../types/typeAliases';
167
- import type { string_folder_absolute_path } from '../types/typeAliases';
168
- import type { string_folder_relative_path } from '../types/typeAliases';
169
- import type { string_folder_path } from '../types/typeAliases';
172
+ import type { string_absolute_filename } from '../types/typeAliases';
173
+ import type { string_relative_filename } from '../types/typeAliases';
170
174
  import type { string_filename } from '../types/typeAliases';
175
+ import type { string_absolute_dirname } from '../types/typeAliases';
176
+ import type { string_relative_dirname } from '../types/typeAliases';
177
+ import type { string_dirname } from '../types/typeAliases';
171
178
  import type { string_person_fullname } from '../types/typeAliases';
172
179
  import type { string_person_profile } from '../types/typeAliases';
173
180
  import type { string_license } from '../types/typeAliases';
@@ -210,6 +217,8 @@ import type { number_megabytes } from '../types/typeAliases';
210
217
  import type { number_gigabytes } from '../types/typeAliases';
211
218
  import type { number_terabytes } from '../types/typeAliases';
212
219
  import type { Registered } from '../utils/$Register';
220
+ import type { IExecCommandOptions } from '../utils/execCommand/IExecCommandOptions';
221
+ import type { IExecCommandOptionsAdvanced } from '../utils/execCommand/IExecCommandOptions';
213
222
  import type { FromtoItems } from '../utils/FromtoItems';
214
223
  import type { CodeBlock } from '../utils/markdown/extractAllBlocksFromMarkdown';
215
224
  import type { MarkdownSection } from '../utils/markdown/parseMarkdownSection';
@@ -220,6 +229,7 @@ import type { string_camelCase } from '../utils/normalization/normalizeTo_camelC
220
229
  import type { string_PascalCase } from '../utils/normalization/normalizeTo_PascalCase';
221
230
  import type { string_SCREAMING_CASE } from '../utils/normalization/normalizeTo_SCREAMING_CASE';
222
231
  import type { string_snake_case } from '../utils/normalization/normalizeTo_snake_case';
232
+ import type { empty_object } from '../utils/organization/empty_object';
223
233
  import type { really_any } from '../utils/organization/really_any';
224
234
  import type { TODO_any } from '../utils/organization/TODO_any';
225
235
  import type { string_promptbook_version } from '../version';
@@ -232,14 +242,17 @@ export type { PipelineTemplateCommandParser };
232
242
  export type { CommandParserInput };
233
243
  export type { CommandUsagePlace };
234
244
  export type { ExpectCommand };
245
+ export type { ForeachJson };
235
246
  export type { FormatCommand };
236
247
  export type { TemplateType };
237
- export type { PipelineStringToJsonOptions };
238
248
  export type { PrettifyOptions };
239
249
  export type { renderPipelineMermaidOptions };
250
+ export type { CallbackInterfaceToolsOptions };
240
251
  export type { ErrorJson };
241
252
  export type { AvailableModel };
242
253
  export type { CommonExecutionToolsOptions };
254
+ export type { CreatePipelineExecutorOptions };
255
+ export type { CreatePipelineExecutorSettings };
243
256
  export type { EmbeddingVector };
244
257
  export type { ExecutionTools };
245
258
  export type { LlmExecutionTools };
@@ -257,7 +270,8 @@ export type { ScriptExecutionToolsExecuteOptions };
257
270
  export type { UncertainNumber };
258
271
  export type { UserInterfaceTools };
259
272
  export type { UserInterfaceToolsPromptDialogOptions };
260
- export type { CallbackInterfaceToolsOptions };
273
+ export type { FormatSubvalueDefinition };
274
+ export type { CsvSettings };
261
275
  export type { LlmToolsConfiguration };
262
276
  export type { LlmToolsMetadata };
263
277
  export type { LlmToolsOptions };
@@ -285,11 +299,15 @@ export type { RemoteLlmExecutionToolsOptions };
285
299
  export type { RemoteServerOptions };
286
300
  export type { AnonymousRemoteServerOptions };
287
301
  export type { CollectionRemoteServerOptions };
288
- export type { PrepareOptions };
302
+ export type { PrepareAndScrapeOptions };
303
+ export type { Converter };
304
+ export type { Scraper };
305
+ export type { ScraperSourceHandler };
306
+ export type { ScraperIntermediateSource };
289
307
  export type { JavascriptExecutionToolsOptions };
290
308
  export type { PostprocessingFunction };
291
309
  export type { PromptbookStorage };
292
- export type { FilesStorageOptions };
310
+ export type { FileCacheStorageOptions };
293
311
  export type { ExecutionPromptReportJson };
294
312
  export type { ExecutionReportJson };
295
313
  export type { ExecutionReportString };
@@ -386,13 +404,12 @@ export type { string_sha256 };
386
404
  export type { string_semantic_version };
387
405
  export type { string_version_dependency };
388
406
  export type { string_file_extension };
389
- export type { string_file_absolute_path };
390
- export type { string_file_relative_path };
391
- export type { string_file_path };
392
- export type { string_folder_absolute_path };
393
- export type { string_folder_relative_path };
394
- export type { string_folder_path };
407
+ export type { string_absolute_filename };
408
+ export type { string_relative_filename };
395
409
  export type { string_filename };
410
+ export type { string_absolute_dirname };
411
+ export type { string_relative_dirname };
412
+ export type { string_dirname };
396
413
  export type { string_person_fullname };
397
414
  export type { string_person_profile };
398
415
  export type { string_license };
@@ -435,6 +452,8 @@ export type { number_megabytes };
435
452
  export type { number_gigabytes };
436
453
  export type { number_terabytes };
437
454
  export type { Registered };
455
+ export type { IExecCommandOptions };
456
+ export type { IExecCommandOptionsAdvanced };
438
457
  export type { FromtoItems };
439
458
  export type { CodeBlock };
440
459
  export type { MarkdownSection };
@@ -445,6 +464,7 @@ export type { string_camelCase };
445
464
  export type { string_PascalCase };
446
465
  export type { string_SCREAMING_CASE };
447
466
  export type { string_snake_case };
467
+ export type { empty_object };
448
468
  export type { really_any };
449
469
  export type { TODO_any };
450
470
  export type { string_promptbook_version };
@@ -20,7 +20,6 @@ import { splitIntoSentences } from '../utils/expectation-counters/countSentences
20
20
  import { countSentences } from '../utils/expectation-counters/countSentences';
21
21
  import { countWords } from '../utils/expectation-counters/countWords';
22
22
  import { CountUtils } from '../utils/expectation-counters/index';
23
- import { extractParameterNames } from '../utils/extractParameterNames';
24
23
  import { capitalize } from '../utils/normalization/capitalize';
25
24
  import { decapitalize } from '../utils/normalization/decapitalize';
26
25
  import { DIACRITIC_VARIANTS_LETTERS } from '../utils/normalization/DIACRITIC_VARIANTS_LETTERS';
@@ -43,11 +42,12 @@ import { parseKeywords } from '../utils/normalization/parseKeywords';
43
42
  import { parseKeywordsFromString } from '../utils/normalization/parseKeywordsFromString';
44
43
  import { removeDiacritics } from '../utils/normalization/removeDiacritics';
45
44
  import { searchKeywords } from '../utils/normalization/searchKeywords';
45
+ import { extractParameterNames } from '../utils/parameters/extractParameterNames';
46
+ import { replaceParameters } from '../utils/parameters/replaceParameters';
46
47
  import { parseNumber } from '../utils/parseNumber';
47
48
  import { $randomSeed } from '../utils/random/$randomSeed';
48
49
  import { removeEmojis } from '../utils/removeEmojis';
49
50
  import { removeQuotes } from '../utils/removeQuotes';
50
- import { replaceParameters } from '../utils/replaceParameters';
51
51
  import { $deepFreeze } from '../utils/serialization/$deepFreeze';
52
52
  import { checkSerializableAsJson } from '../utils/serialization/checkSerializableAsJson';
53
53
  import { clonePipeline } from '../utils/serialization/clonePipeline';
@@ -91,7 +91,6 @@ export { splitIntoSentences };
91
91
  export { countSentences };
92
92
  export { countWords };
93
93
  export { CountUtils };
94
- export { extractParameterNames };
95
94
  export { capitalize };
96
95
  export { decapitalize };
97
96
  export { DIACRITIC_VARIANTS_LETTERS };
@@ -114,11 +113,12 @@ export { parseKeywords };
114
113
  export { parseKeywordsFromString };
115
114
  export { removeDiacritics };
116
115
  export { searchKeywords };
116
+ export { extractParameterNames };
117
+ export { replaceParameters };
117
118
  export { parseNumber };
118
119
  export { $randomSeed };
119
120
  export { removeEmojis };
120
121
  export { removeQuotes };
121
- export { replaceParameters };
122
122
  export { $deepFreeze };
123
123
  export { checkSerializableAsJson };
124
124
  export { clonePipeline };
@@ -7,5 +7,5 @@ import type { Command as Program } from 'commander';
7
7
  export declare function initializeAboutCommand(program: Program): void;
8
8
  /**
9
9
  * TODO: [🗽] Unite branding and make single place for it
10
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
10
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
11
11
  */
@@ -6,5 +6,5 @@ import type { Command as Program } from 'commander';
6
6
  */
7
7
  export declare function initializeHelloCommand(program: Program): void;
8
8
  /**
9
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
9
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
10
10
  */
@@ -6,9 +6,9 @@ import type { Command as Program } from 'commander';
6
6
  */
7
7
  export declare function initializeMakeCommand(program: Program): void;
8
8
  /**
9
- * TODO: [🥃] !!! Allow `ptbk make` without configuring any llm tools
9
+ * TODO: [🥃][main] !!! Allow `ptbk make` without configuring any llm tools
10
10
  * TODO: Maybe remove this command - "about" command should be enough?
11
11
  * TODO: [0] DRY Javascript and typescript - Maybe make ONLY typescript and for javascript just remove types
12
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
12
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
13
13
  * TODO: [🖇] What about symlinks? Maybe flag --follow-symlinks
14
14
  */
@@ -6,6 +6,6 @@ import type { Command as Program } from 'commander';
6
6
  */
7
7
  export declare function initializePrettifyCommand(program: Program): void;
8
8
  /**
9
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
9
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
10
10
  * TODO: [🖇] What about symlinks? Maybe flag --follow-symlinks
11
11
  */
@@ -8,5 +8,5 @@ export declare const _CLI: {
8
8
  _initialize: typeof promptbookCli;
9
9
  };
10
10
  /**
11
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
11
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
12
12
  */
@@ -8,5 +8,5 @@ export declare function promptbookCli(): Promise<void>;
8
8
  * TODO: [🥠] Do not export, its just for CLI script
9
9
  * TODO: [🕌] When more functionalities, rename
10
10
  * Note: 11:11
11
- * Note: [🟡] This code should never be published outside of `@promptbook/cli`
11
+ * Note: [🟡] Code in this file should never be published outside of `@promptbook/cli`
12
12
  */
@@ -1,10 +1,13 @@
1
- import type { PipelineStringToJsonOptions } from '../../conversion/pipelineStringToJson';
2
- import type { string_folder_path } from '../../types/typeAliases';
1
+ import type { PrepareAndScrapeOptions } from '../../prepare/PrepareAndScrapeOptions';
2
+ import type { string_dirname } from '../../types/typeAliases';
3
3
  import type { PipelineCollection } from '../PipelineCollection';
4
4
  /**
5
5
  * Options for `createCollectionFromDirectory` function
6
+ *
7
+ * Note: `rootDirname` is not needed because it is the folder in which `.ptbk.md` file is located
8
+ * This is not same as `path` which is the first argument of `createCollectionFromDirectory` - it can be a subfolder
6
9
  */
7
- type CreatePipelineCollectionFromDirectoryOptions = PipelineStringToJsonOptions & {
10
+ type CreatePipelineCollectionFromDirectoryOptions = Omit<PrepareAndScrapeOptions, 'rootDirname'> & {
8
11
  /**
9
12
  * If true, the directory is searched recursively for pipelines
10
13
  *
@@ -41,9 +44,9 @@ type CreatePipelineCollectionFromDirectoryOptions = PipelineStringToJsonOptions
41
44
  * @returns PipelineCollection
42
45
  * @public exported from `@promptbook/node`
43
46
  */
44
- export declare function createCollectionFromDirectory(path: string_folder_path, options?: CreatePipelineCollectionFromDirectoryOptions): Promise<PipelineCollection>;
47
+ export declare function createCollectionFromDirectory(path: string_dirname, options?: CreatePipelineCollectionFromDirectoryOptions): Promise<PipelineCollection>;
45
48
  export {};
46
49
  /**
47
- * Note: [🟢] This code should never be published outside of `@promptbook/node` and `@promptbook/cli` and `@promptbook/cli`
50
+ * Note: [🟢] Code in this file should never be published outside of `@promptbook/node` and `@promptbook/cli`
48
51
  * TODO: [🖇] What about symlinks? Maybe option isSymlinksFollowed
49
52
  */
@@ -25,5 +25,5 @@ type CreatePipelineCollectionFromUrlyOptions = {
25
25
  export declare function createCollectionFromUrl(url: string_url | URL, options: CreatePipelineCollectionFromUrlyOptions): Promise<PipelineCollection>;
26
26
  export {};
27
27
  /**
28
- * TODO: !!!! [🧠] Library precompilation and do not mix markdown and json promptbooks
28
+ * TODO: [main] !!!! [🧠] Library precompilation and do not mix markdown and json promptbooks
29
29
  */
@@ -3,7 +3,7 @@ import type { ExpectCommand } from './ExpectCommand';
3
3
  /**
4
4
  * Parses the expect command
5
5
  *
6
- * @see ./EXPECT-README.md for more details
6
+ * @see `documentationUrl` for more details
7
7
  * @private within the commands folder
8
8
  */
9
9
  export declare const expectCommandParser: PipelineTemplateCommandParser<ExpectCommand>;