@promptbook/editable 0.84.0-9 → 0.85.0-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.
- package/README.md +21 -5
- package/esm/index.es.js +56 -6
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/cli.index.d.ts +4 -0
- package/esm/typings/src/_packages/core.index.d.ts +12 -4
- package/esm/typings/src/_packages/deepseek.index.d.ts +8 -0
- package/esm/typings/src/_packages/types.index.d.ts +16 -2
- package/esm/typings/src/_packages/utils.index.d.ts +2 -2
- package/esm/typings/src/_packages/wizzard.index.d.ts +4 -0
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/about.d.ts +4 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/make.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/run.d.ts +3 -1
- package/esm/typings/src/cli/cli-commands/runInteractiveChatbot.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/start-server.d.ts +13 -0
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +3 -1
- package/esm/typings/src/config.d.ts +27 -1
- package/esm/typings/src/conversion/compilePipelineOnRemoteServer.d.ts +1 -1
- package/esm/typings/src/execution/AbstractTaskResult.d.ts +25 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +71 -0
- package/esm/typings/src/execution/FilesystemTools.d.ts +1 -1
- package/esm/typings/src/execution/PipelineExecutor.d.ts +2 -5
- package/esm/typings/src/execution/PipelineExecutorResult.d.ts +2 -15
- package/esm/typings/src/execution/PromptbookFetch.d.ts +8 -1
- package/esm/typings/src/execution/{assertsExecutionSuccessful.d.ts → assertsTaskSuccessful.d.ts} +4 -3
- package/esm/typings/src/execution/createPipelineExecutor/00-createPipelineExecutor.d.ts +0 -3
- package/esm/typings/src/execution/createPipelineExecutor/10-executePipeline.d.ts +2 -6
- package/esm/typings/src/execution/createPipelineExecutor/20-executeTask.d.ts +3 -6
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +9 -0
- package/esm/typings/src/llm-providers/deepseek/DeepseekExecutionToolsOptions.d.ts +9 -0
- package/esm/typings/src/llm-providers/deepseek/createDeepseekExecutionTools.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/register-configuration.d.ts +14 -0
- package/esm/typings/src/llm-providers/deepseek/register-constructor.d.ts +15 -0
- package/esm/typings/src/pipeline/book-notation.d.ts +3 -2
- package/esm/typings/src/pipeline/prompt-notation.d.ts +18 -5
- package/esm/typings/src/prepare/preparePipelineOnRemoteServer.d.ts +1 -1
- package/esm/typings/src/remote-server/socket-types/_subtypes/PromptbookServer_Identification.d.ts +5 -2
- package/esm/typings/src/remote-server/startRemoteServer.d.ts +1 -0
- package/esm/typings/src/types/typeAliases.d.ts +2 -0
- package/esm/typings/src/utils/editable/edit-pipeline-string/deflatePipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/editable/utils/isFlatPipeline.test.d.ts +1 -0
- package/esm/typings/src/utils/environment/$isRunningInBrowser.d.ts +3 -0
- package/esm/typings/src/utils/environment/$isRunningInJest.d.ts +3 -0
- package/esm/typings/src/utils/environment/$isRunningInNode.d.ts +3 -0
- package/esm/typings/src/utils/environment/$isRunningInWebWorker.d.ts +3 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.d.ts +10 -0
- package/esm/typings/src/utils/files/mimeTypeToExtension.test.d.ts +1 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +2 -1
- package/esm/typings/src/utils/random/$randomToken.d.ts +13 -0
- package/esm/typings/src/wizzard/wizzard.d.ts +8 -3
- package/package.json +9 -16
- package/umd/index.umd.js +56 -6
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/remote-server/socket-types/_common/PromptbookServer_Progress.d.ts +0 -10
- package/esm/typings/src/types/TaskProgress.d.ts +0 -43
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<!-- ⚠️ WARNING: This code has been generated so that any manual changes will be overwritten -->
|
|
2
2
|
|
|
3
|
-
#
|
|
3
|
+
# ✨ Promptbook
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
@@ -14,12 +14,13 @@
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
##
|
|
17
|
+
## 🌟 New Features
|
|
18
18
|
|
|
19
|
+
- 💫 Support of [`o3-mini` model by OpenAI](https://openai.com/index/openai-o3-mini/)
|
|
20
|
+
- 🐋 **Support of [DeepSeek models](https://www.npmjs.com/package/@promptbook/deepseek)**
|
|
19
21
|
- 💙 Working [the **Book** language v1.0.0](https://github.com/webgptorg/book)
|
|
20
22
|
- 🖤 Run books from CLI - `npx ptbk run path/to/your/book`
|
|
21
|
-
- 📚 Support of `.docx`, `.doc` and `.pdf` documents
|
|
22
|
-
- ✨ **Support of [OpenAI o1 model](https://openai.com/o1/)**
|
|
23
|
+
- 📚 Support of `.docx`, `.doc` and `.pdf` documents as knowledge
|
|
23
24
|
|
|
24
25
|
|
|
25
26
|
|
|
@@ -265,8 +266,9 @@ Or you can install them separately:
|
|
|
265
266
|
- **[@promptbook/anthropic-claude](https://www.npmjs.com/package/@promptbook/anthropic-claude)** - Execution tools for Anthropic Claude API, wrapper around Anthropic Claude SDK
|
|
266
267
|
- **[@promptbook/vercel](https://www.npmjs.com/package/@promptbook/vercel)** - Adapter for Vercel functionalities
|
|
267
268
|
- **[@promptbook/google](https://www.npmjs.com/package/@promptbook/google)** - Integration with Google's Gemini API
|
|
269
|
+
- **[@promptbook/deepseek](https://www.npmjs.com/package/@promptbook/deepseek)** - Integration with [DeepSeek API](https://www.deepseek.com/)
|
|
268
270
|
- **[@promptbook/azure-openai](https://www.npmjs.com/package/@promptbook/azure-openai)** - Execution tools for Azure OpenAI API
|
|
269
|
-
|
|
271
|
+
|
|
270
272
|
- **[@promptbook/fake-llm](https://www.npmjs.com/package/@promptbook/fake-llm)** - Mocked execution tools for testing the library and saving the tokens
|
|
271
273
|
- **[@promptbook/remote-client](https://www.npmjs.com/package/@promptbook/remote-client)** - Remote client for remote execution of promptbooks
|
|
272
274
|
- **[@promptbook/remote-server](https://www.npmjs.com/package/@promptbook/remote-server)** - Remote server for remote execution of promptbooks
|
|
@@ -436,6 +438,20 @@ See [TODO.md](./TODO.md)
|
|
|
436
438
|
|
|
437
439
|
|
|
438
440
|
|
|
441
|
+
## 🤝 Partners
|
|
442
|
+
|
|
443
|
+
<div style="display: flex; align-items: center; gap: 20px;">
|
|
444
|
+
|
|
445
|
+
<a href="https://promptbook.studio/">
|
|
446
|
+
<img src="./other/design/promptbook-studio-logo.png" alt="Partner 3" height="100">
|
|
447
|
+
</a>
|
|
448
|
+
|
|
449
|
+
<a href="https://technologickainkubace.org/en/about-technology-incubation/about-the-project/">
|
|
450
|
+
<img src="./other/partners/CI-Technology-Incubation.png" alt="Technology Incubation" height="100">
|
|
451
|
+
</a>
|
|
452
|
+
|
|
453
|
+
</div>
|
|
454
|
+
|
|
439
455
|
## 🖋️ Contributing
|
|
440
456
|
|
|
441
457
|
I am open to pull requests, feedback, and suggestions. Or if you like this utility, you can [☕ buy me a coffee](https://www.buymeacoffee.com/hejny) or [donate via cryptocurrencies](https://github.com/hejny/hejny/blob/main/documents/crypto.md).
|
package/esm/index.es.js
CHANGED
|
@@ -17,7 +17,7 @@ var BOOK_LANGUAGE_VERSION = '1.0.0';
|
|
|
17
17
|
* @generated
|
|
18
18
|
* @see https://github.com/webgptorg/promptbook
|
|
19
19
|
*/
|
|
20
|
-
var PROMPTBOOK_ENGINE_VERSION = '0.84.0
|
|
20
|
+
var PROMPTBOOK_ENGINE_VERSION = '0.84.0';
|
|
21
21
|
/**
|
|
22
22
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
23
23
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -188,6 +188,12 @@ var ADMIN_GITHUB_NAME = 'hejny';
|
|
|
188
188
|
* @public exported from `@promptbook/core`
|
|
189
189
|
*/
|
|
190
190
|
var DEFAULT_BOOK_TITLE = "\u2728 Untitled Book";
|
|
191
|
+
/**
|
|
192
|
+
* When the pipeline is flat and no name of return parameter is provided, this name is used
|
|
193
|
+
*
|
|
194
|
+
* @public exported from `@promptbook/core`
|
|
195
|
+
*/
|
|
196
|
+
var DEFAULT_BOOK_OUTPUT_PARAMETER_NAME = 'result';
|
|
191
197
|
// <- TODO: [🧠] Better system for generator warnings - not always "code" and "by `@promptbook/cli`"
|
|
192
198
|
/**
|
|
193
199
|
* The maximum number of iterations for a loops
|
|
@@ -3868,6 +3874,21 @@ function parseCommandVariant(input) {
|
|
|
3868
3874
|
return null;
|
|
3869
3875
|
}
|
|
3870
3876
|
|
|
3877
|
+
/**
|
|
3878
|
+
* Checks if value is valid email
|
|
3879
|
+
*
|
|
3880
|
+
* @public exported from `@promptbook/utils`
|
|
3881
|
+
*/
|
|
3882
|
+
function isValidEmail(email) {
|
|
3883
|
+
if (typeof email !== 'string') {
|
|
3884
|
+
return false;
|
|
3885
|
+
}
|
|
3886
|
+
if (email.split('\n').length > 1) {
|
|
3887
|
+
return false;
|
|
3888
|
+
}
|
|
3889
|
+
return /^.+@.+\..+$/.test(email);
|
|
3890
|
+
}
|
|
3891
|
+
|
|
3871
3892
|
/**
|
|
3872
3893
|
* Function `validatePipelineString` will validate the if the string is a valid pipeline string
|
|
3873
3894
|
* It does not check if the string is fully logically correct, but if it is a string that can be a pipeline string or the string looks completely different.
|
|
@@ -3881,6 +3902,15 @@ function validatePipelineString(pipelineString) {
|
|
|
3881
3902
|
if (isValidJsonString(pipelineString)) {
|
|
3882
3903
|
throw new ParseError('Expected a book, but got a JSON string');
|
|
3883
3904
|
}
|
|
3905
|
+
else if (isValidUrl(pipelineString)) {
|
|
3906
|
+
throw new ParseError("Expected a book, but got just the URL \"".concat(pipelineString, "\""));
|
|
3907
|
+
}
|
|
3908
|
+
else if (isValidFilePath(pipelineString)) {
|
|
3909
|
+
throw new ParseError("Expected a book, but got just the file path \"".concat(pipelineString, "\""));
|
|
3910
|
+
}
|
|
3911
|
+
else if (isValidEmail(pipelineString)) {
|
|
3912
|
+
throw new ParseError("Expected a book, but got just the email \"".concat(pipelineString, "\""));
|
|
3913
|
+
}
|
|
3884
3914
|
// <- TODO: Implement the validation + add tests when the pipeline logic considered as invalid
|
|
3885
3915
|
return pipelineString;
|
|
3886
3916
|
}
|
|
@@ -3908,12 +3938,15 @@ function isFlatPipeline(pipelineString) {
|
|
|
3908
3938
|
pipelineString = removeMarkdownComments(pipelineString);
|
|
3909
3939
|
pipelineString = spaceTrim(pipelineString);
|
|
3910
3940
|
var isMarkdownBeginningWithHeadline = pipelineString.startsWith('# ');
|
|
3911
|
-
|
|
3912
|
-
|
|
3941
|
+
//const isLastLineReturnStatement = pipelineString.split('\n').pop()!.split('`').join('').startsWith('->');
|
|
3942
|
+
var isBacktickBlockUsed = pipelineString.includes('```');
|
|
3943
|
+
var isQuoteBlocksUsed = /^>\s+/m.test(pipelineString);
|
|
3944
|
+
var isBlocksUsed = isBacktickBlockUsed || isQuoteBlocksUsed;
|
|
3945
|
+
// TODO: [🧉] Also (double)check
|
|
3913
3946
|
// > const usedCommands
|
|
3914
3947
|
// > const isBlocksUsed
|
|
3915
3948
|
// > const returnStatementCount
|
|
3916
|
-
var isFlat = !isMarkdownBeginningWithHeadline && isLastLineReturnStatement
|
|
3949
|
+
var isFlat = !isMarkdownBeginningWithHeadline && !isBlocksUsed; /* && isLastLineReturnStatement */
|
|
3917
3950
|
return isFlat;
|
|
3918
3951
|
}
|
|
3919
3952
|
|
|
@@ -3927,9 +3960,26 @@ function deflatePipeline(pipelineString) {
|
|
|
3927
3960
|
return pipelineString;
|
|
3928
3961
|
}
|
|
3929
3962
|
var pipelineStringLines = pipelineString.split('\n');
|
|
3930
|
-
var
|
|
3963
|
+
var potentialReturnStatement = pipelineStringLines.pop();
|
|
3964
|
+
var returnStatement;
|
|
3965
|
+
if (/(-|=)>\s*\{.*\}/.test(potentialReturnStatement)) {
|
|
3966
|
+
// Note: Last line is return statement
|
|
3967
|
+
returnStatement = potentialReturnStatement;
|
|
3968
|
+
}
|
|
3969
|
+
else {
|
|
3970
|
+
// Note: Last line is not a return statement
|
|
3971
|
+
returnStatement = "-> {".concat(DEFAULT_BOOK_OUTPUT_PARAMETER_NAME, "}");
|
|
3972
|
+
pipelineStringLines.push(potentialReturnStatement);
|
|
3973
|
+
}
|
|
3931
3974
|
var prompt = spaceTrim(pipelineStringLines.join('\n'));
|
|
3932
|
-
|
|
3975
|
+
var quotedPrompt;
|
|
3976
|
+
if (prompt.split('\n').length <= 1) {
|
|
3977
|
+
quotedPrompt = "> ".concat(prompt);
|
|
3978
|
+
}
|
|
3979
|
+
else {
|
|
3980
|
+
quotedPrompt = spaceTrim(function (block) { return "\n ```\n ".concat(block(prompt.split('`').join('\\`')), "\n ```\n "); });
|
|
3981
|
+
}
|
|
3982
|
+
pipelineString = validatePipelineString(spaceTrim(function (block) { return "\n # ".concat(DEFAULT_BOOK_TITLE, "\n\n ## Prompt\n\n ").concat(block(quotedPrompt), "\n\n ").concat(returnStatement, "\n "); }));
|
|
3933
3983
|
// <- TODO: Maybe use book` notation
|
|
3934
3984
|
return pipelineString;
|
|
3935
3985
|
}
|