@promptbook/wizard 0.100.0-9 → 0.100.1
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 +7 -14
- package/esm/index.es.js +651 -150
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/color.index.d.ts +50 -0
- package/esm/typings/src/_packages/components.index.d.ts +36 -0
- package/esm/typings/src/_packages/core.index.d.ts +30 -0
- package/esm/typings/src/_packages/types.index.d.ts +38 -0
- package/esm/typings/src/book-2.0/agent-source/parseAgentSource.d.ts +30 -0
- package/esm/typings/src/book-2.0/agent-source/parseAgentSource.test.d.ts +1 -0
- package/esm/typings/src/book-2.0/agent-source/string_book.d.ts +26 -0
- package/esm/typings/src/book-2.0/commitments/ACTION/ACTION.d.ts +38 -0
- package/esm/typings/src/book-2.0/commitments/FORMAT/FORMAT.d.ts +39 -0
- package/esm/typings/src/book-2.0/commitments/KNOWLEDGE/KNOWLEDGE.d.ts +45 -0
- package/esm/typings/src/book-2.0/commitments/META_IMAGE/META_IMAGE.d.ts +44 -0
- package/esm/typings/src/book-2.0/commitments/META_LINK/META_LINK.d.ts +56 -0
- package/esm/typings/src/book-2.0/commitments/MODEL/MODEL.d.ts +39 -0
- package/esm/typings/src/book-2.0/commitments/NOTE/NOTE.d.ts +49 -0
- package/esm/typings/src/book-2.0/commitments/PERSONA/PERSONA.d.ts +46 -0
- package/esm/typings/src/book-2.0/commitments/RULE/RULE.d.ts +44 -0
- package/esm/typings/src/book-2.0/commitments/SAMPLE/SAMPLE.d.ts +44 -0
- package/esm/typings/src/book-2.0/commitments/STYLE/STYLE.d.ts +38 -0
- package/esm/typings/src/book-2.0/commitments/_base/BaseCommitmentDefinition.d.ts +52 -0
- package/esm/typings/src/book-2.0/commitments/_base/BookCommitment.d.ts +5 -0
- package/esm/typings/src/book-2.0/commitments/_base/CommitmentDefinition.d.ts +48 -0
- package/esm/typings/src/book-2.0/commitments/_base/NotYetImplementedCommitmentDefinition.d.ts +22 -0
- package/esm/typings/src/book-2.0/commitments/_base/createEmptyAgentModelRequirements.d.ts +19 -0
- package/esm/typings/src/book-2.0/commitments/_misc/AgentModelRequirements.d.ts +37 -0
- package/esm/typings/src/book-2.0/commitments/_misc/AgentSourceParseResult.d.ts +18 -0
- package/esm/typings/src/book-2.0/commitments/_misc/ParsedCommitment.d.ts +22 -0
- package/esm/typings/src/book-2.0/commitments/_misc/createAgentModelRequirements.d.ts +62 -0
- package/esm/typings/src/book-2.0/commitments/_misc/createAgentModelRequirementsWithCommitments.d.ts +36 -0
- package/esm/typings/src/book-2.0/commitments/_misc/createCommitmentRegex.d.ts +20 -0
- package/esm/typings/src/book-2.0/commitments/_misc/parseAgentSourceWithCommitments.d.ts +24 -0
- package/esm/typings/src/book-2.0/commitments/_misc/removeCommentsFromSystemMessage.d.ts +11 -0
- package/esm/typings/src/book-2.0/commitments/index.d.ts +56 -0
- package/esm/typings/src/book-2.0/utils/profileImageUtils.d.ts +39 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarChip/AvatarChip.d.ts +35 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarChip/AvatarChipFromSource.d.ts +21 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarChip/index.d.ts +2 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +29 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfileFromSource.d.ts +19 -0
- package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +40 -0
- package/esm/typings/src/book-components/BookEditor/BookEditorInner.d.ts +15 -0
- package/esm/typings/src/book-components/BookEditor/config.d.ts +10 -0
- package/esm/typings/src/book-components/BookEditor/injectCssModuleIntoShadowRoot.d.ts +11 -0
- package/esm/typings/src/book-components/Chat/Chat/Chat.d.ts +20 -0
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +110 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChat.d.ts +14 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChat.test.d.ts +1 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChatProps.d.ts +24 -0
- package/esm/typings/src/book-components/Chat/types/ChatMessage.d.ts +16 -0
- package/esm/typings/src/book-components/Chat/types/ChatParticipant.d.ts +32 -0
- package/esm/typings/src/book-components/Chat/utils/ChatPersistence.d.ts +25 -0
- package/esm/typings/src/book-components/Chat/utils/ExportFormat.d.ts +4 -0
- package/esm/typings/src/book-components/Chat/utils/addUtmParamsToUrl.d.ts +7 -0
- package/esm/typings/src/book-components/Chat/utils/createShortLinkForChat.d.ts +7 -0
- package/esm/typings/src/book-components/Chat/utils/downloadFile.d.ts +6 -0
- package/esm/typings/src/book-components/Chat/utils/exportChatHistory.d.ts +9 -0
- package/esm/typings/src/book-components/Chat/utils/generatePdfContent.d.ts +8 -0
- package/esm/typings/src/book-components/Chat/utils/generateQrDataUrl.d.ts +7 -0
- package/esm/typings/src/book-components/Chat/utils/getPromptbookBranding.d.ts +6 -0
- package/esm/typings/src/book-components/Chat/utils/messagesToHtml.d.ts +8 -0
- package/esm/typings/src/book-components/Chat/utils/messagesToJson.d.ts +7 -0
- package/esm/typings/src/book-components/Chat/utils/messagesToMarkdown.d.ts +8 -0
- package/esm/typings/src/book-components/Chat/utils/messagesToText.d.ts +8 -0
- package/esm/typings/src/book-components/_common/react-utils/classNames.d.ts +7 -0
- package/esm/typings/src/book-components/_common/react-utils/collectCssTextsForClass.d.ts +7 -0
- package/esm/typings/src/book-components/_common/react-utils/escapeHtml.d.ts +6 -0
- package/esm/typings/src/book-components/_common/react-utils/escapeRegex.d.ts +6 -0
- package/esm/typings/src/config.d.ts +19 -0
- package/esm/typings/src/execution/AvailableModel.d.ts +4 -0
- package/esm/typings/src/execution/ExecutionTask.d.ts +27 -1
- package/esm/typings/src/execution/LlmExecutionTools.d.ts +11 -6
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +6 -1
- package/esm/typings/src/llm-providers/_common/filterModels.d.ts +0 -3
- package/esm/typings/src/llm-providers/_common/profiles/llmProviderProfiles.d.ts +81 -0
- package/esm/typings/src/llm-providers/_common/profiles/test/llmProviderProfiles.test.d.ts +1 -0
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +3 -4
- package/esm/typings/src/llm-providers/_multiple/MultipleLlmExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/anthropic-claude/AnthropicClaudeExecutionTools.d.ts +5 -5
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/deepseek/deepseek-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/ollama/ollama-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +8 -0
- package/esm/typings/src/llm-providers/openai/OpenAiExecutionTools.d.ts +5 -0
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/remote/RemoteLlmExecutionTools.d.ts +5 -0
- package/esm/typings/src/pipeline/book-notation.d.ts +2 -1
- package/esm/typings/src/playground/permanent/error-handling-playground.d.ts +5 -0
- package/esm/typings/src/types/ModelRequirements.d.ts +0 -2
- package/esm/typings/src/types/typeAliases.d.ts +6 -0
- package/esm/typings/src/utils/color/$randomColor.d.ts +11 -0
- package/esm/typings/src/utils/color/Color.d.ts +179 -0
- package/esm/typings/src/utils/color/css-colors.d.ts +159 -0
- package/esm/typings/src/utils/color/internal-utils/checkChannelValue.d.ts +14 -0
- package/esm/typings/src/utils/color/internal-utils/hslToRgb.d.ts +17 -0
- package/esm/typings/src/utils/color/internal-utils/rgbToHsl.d.ts +17 -0
- package/esm/typings/src/utils/color/operators/ColorTransformer.d.ts +5 -0
- package/esm/typings/src/utils/color/operators/darken.d.ts +9 -0
- package/esm/typings/src/utils/color/operators/furthest.d.ts +16 -0
- package/esm/typings/src/utils/color/operators/grayscale.d.ts +9 -0
- package/esm/typings/src/utils/color/operators/lighten.d.ts +12 -0
- package/esm/typings/src/utils/color/operators/mixWithColor.d.ts +11 -0
- package/esm/typings/src/utils/color/operators/nearest.d.ts +10 -0
- package/esm/typings/src/utils/color/operators/negative.d.ts +7 -0
- package/esm/typings/src/utils/color/operators/negativeLightness.d.ts +7 -0
- package/esm/typings/src/utils/color/operators/withAlpha.d.ts +9 -0
- package/esm/typings/src/utils/color/utils/areColorsEqual.d.ts +14 -0
- package/esm/typings/src/utils/color/utils/colorDistance.d.ts +21 -0
- package/esm/typings/src/utils/color/utils/colorHue.d.ts +11 -0
- package/esm/typings/src/utils/color/utils/colorHueDistance.d.ts +11 -0
- package/esm/typings/src/utils/color/utils/colorHueDistance.test.d.ts +1 -0
- package/esm/typings/src/utils/color/utils/colorLuminance.d.ts +9 -0
- package/esm/typings/src/utils/color/utils/colorSatulightion.d.ts +7 -0
- package/esm/typings/src/utils/color/utils/colorSaturation.d.ts +9 -0
- package/esm/typings/src/utils/color/utils/colorToDataUrl.d.ts +10 -0
- package/esm/typings/src/utils/color/utils/mixColors.d.ts +11 -0
- package/esm/typings/src/utils/organization/preserve.d.ts +21 -0
- package/esm/typings/src/utils/take/classes/TakeChain.d.ts +11 -0
- package/esm/typings/src/utils/take/interfaces/ITakeChain.d.ts +12 -0
- package/esm/typings/src/utils/take/interfaces/Takeable.d.ts +7 -0
- package/esm/typings/src/utils/take/take.d.ts +12 -0
- package/esm/typings/src/utils/take/take.test.d.ts +1 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/package.json +2 -3
- package/umd/index.umd.js +655 -154
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/scripting/javascript/utils/preserve.d.ts +0 -14
@@ -1,5 +1,6 @@
|
|
1
1
|
import type { Observable } from 'rxjs';
|
2
2
|
import { PartialDeep } from 'type-fest';
|
3
|
+
import type { number_percent } from '../types/typeAliases';
|
3
4
|
import type { task_id } from '../types/typeAliases';
|
4
5
|
import type { string_SCREAMING_CASE } from '../utils/normalization/normalizeTo_SCREAMING_CASE';
|
5
6
|
import type { string_promptbook_version } from '../version';
|
@@ -19,7 +20,8 @@ type CreateTaskOptions<TTaskResult extends AbstractTaskResult> = {
|
|
19
20
|
readonly title: AbstractTask<TTaskResult>['title'];
|
20
21
|
/**
|
21
22
|
* Callback that processes the task and updates the ongoing result
|
22
|
-
* @param
|
23
|
+
* @param updateOngoingResult Function to update the partial result of the task processing
|
24
|
+
* @param updateTldr Function to update tldr progress information
|
23
25
|
* @returns The final task result
|
24
26
|
*/
|
25
27
|
taskProcessCallback(updateOngoingResult: (newOngoingResult: PartialDeep<TTaskResult> & {
|
@@ -27,6 +29,9 @@ type CreateTaskOptions<TTaskResult extends AbstractTaskResult> = {
|
|
27
29
|
* Optional update of the task title
|
28
30
|
*/
|
29
31
|
readonly title?: AbstractTask<TTaskResult>['title'];
|
32
|
+
}) => void, updateTldr: (tldrInfo: {
|
33
|
+
readonly percent: number_percent;
|
34
|
+
readonly message: string;
|
30
35
|
}) => void): Promise<TTaskResult>;
|
31
36
|
};
|
32
37
|
/**
|
@@ -80,6 +85,19 @@ export type AbstractTask<TTaskResult extends AbstractTaskResult> = {
|
|
80
85
|
* Status of the task
|
81
86
|
*/
|
82
87
|
readonly status: task_status;
|
88
|
+
/**
|
89
|
+
* Short summary of the task status for quick overview in the UI
|
90
|
+
*/
|
91
|
+
readonly tldr: {
|
92
|
+
/**
|
93
|
+
* Progress in percentage from 0 to 1 (100%) that can be used to display a progress bar
|
94
|
+
*/
|
95
|
+
readonly percent: number_percent;
|
96
|
+
/**
|
97
|
+
* Short summary message of the task status that can be displayed in the UI
|
98
|
+
*/
|
99
|
+
readonly message: string;
|
100
|
+
};
|
83
101
|
/**
|
84
102
|
* Date when the task was created
|
85
103
|
*/
|
@@ -92,6 +110,14 @@ export type AbstractTask<TTaskResult extends AbstractTaskResult> = {
|
|
92
110
|
* Gets a promise that resolves with the task result
|
93
111
|
*/
|
94
112
|
asPromise(options?: {
|
113
|
+
/**
|
114
|
+
* Do the task throws on error
|
115
|
+
*
|
116
|
+
* - If `true` when error occurs the returned promise will rejects
|
117
|
+
* - If `false` the promise will resolve with object with all listed errors and warnings and partial result
|
118
|
+
*
|
119
|
+
* @default true
|
120
|
+
*/
|
95
121
|
readonly isCrashedOnError?: boolean;
|
96
122
|
}): Promise<TTaskResult>;
|
97
123
|
/**
|
@@ -1,12 +1,9 @@
|
|
1
1
|
import type { Promisable } from 'type-fest';
|
2
|
+
import type { ChatParticipant } from '../book-components/Chat/types/ChatParticipant';
|
2
3
|
import type { Prompt } from '../types/Prompt';
|
3
|
-
import type { string_markdown } from '../types/typeAliases';
|
4
|
-
import type { string_markdown_text } from '../types/typeAliases';
|
5
|
-
import type { string_title } from '../types/typeAliases';
|
4
|
+
import type { string_markdown, string_markdown_text, string_title } from '../types/typeAliases';
|
6
5
|
import type { AvailableModel } from './AvailableModel';
|
7
|
-
import type { ChatPromptResult } from './PromptResult';
|
8
|
-
import type { CompletionPromptResult } from './PromptResult';
|
9
|
-
import type { EmbeddingPromptResult } from './PromptResult';
|
6
|
+
import type { ChatPromptResult, CompletionPromptResult, EmbeddingPromptResult } from './PromptResult';
|
10
7
|
/**
|
11
8
|
* Container for all the tools needed to execute prompts to large language models like GPT-4
|
12
9
|
* On its interface it exposes common methods for prompt execution.
|
@@ -27,6 +24,13 @@ export type LlmExecutionTools = {
|
|
27
24
|
* @example "Use all models from OpenAI"
|
28
25
|
*/
|
29
26
|
readonly description?: string_markdown;
|
27
|
+
/**
|
28
|
+
* Profile representing the model as a virtual persona for chat interfaces
|
29
|
+
* This includes visual identity like avatar, colors, and display information
|
30
|
+
*
|
31
|
+
* @example { name: 'OPENAI', fullname: 'OpenAI GPT', color: '#10a37f', avatarSrc: '/openai-logo.png' }
|
32
|
+
*/
|
33
|
+
readonly profile?: ChatParticipant;
|
30
34
|
/**
|
31
35
|
* Check comfiguration
|
32
36
|
*
|
@@ -52,6 +56,7 @@ export type LlmExecutionTools = {
|
|
52
56
|
callEmbeddingModel?(prompt: Prompt): Promise<EmbeddingPromptResult>;
|
53
57
|
};
|
54
58
|
/**
|
59
|
+
* TODO: [🕛] Extend this from sth class
|
55
60
|
* TODO: [🍚] Implement destroyable pattern to free resources
|
56
61
|
* TODO: [🏳] Add `callTranslationModel`
|
57
62
|
* TODO: [🧠] Emulation of one type of model with another one - emuate chat with completion; emulate translation with chat
|
@@ -1,10 +1,11 @@
|
|
1
|
-
import type { ReadonlyDeep, WritableDeep } from 'type-fest';
|
1
|
+
import type { PartialDeep, Promisable, ReadonlyDeep, WritableDeep } from 'type-fest';
|
2
2
|
import type { PipelineJson } from '../../pipeline/PipelineJson/PipelineJson';
|
3
3
|
import type { TaskJson } from '../../pipeline/PipelineJson/TaskJson';
|
4
4
|
import type { Parameters } from '../../types/typeAliases';
|
5
5
|
import type { string_parameter_name } from '../../types/typeAliases';
|
6
6
|
import type { TODO_string } from '../../utils/organization/TODO_string';
|
7
7
|
import type { ExecutionReportJson } from '../execution-report/ExecutionReportJson';
|
8
|
+
import type { PipelineExecutorResult } from '../PipelineExecutorResult';
|
8
9
|
import type { CreatePipelineExecutorOptions } from './00-CreatePipelineExecutorOptions';
|
9
10
|
/**
|
10
11
|
* Options for executing attempts of a pipeline task, including configuration for jokers, priority,
|
@@ -46,6 +47,10 @@ export type ExecuteAttemptsOptions = Required<Omit<CreatePipelineExecutorOptions
|
|
46
47
|
* The pipeline structure prepared for execution, as a deeply immutable PipelineJson object.
|
47
48
|
*/
|
48
49
|
readonly preparedPipeline: ReadonlyDeep<PipelineJson>;
|
50
|
+
/**
|
51
|
+
* Callback invoked with partial results as the execution progresses.
|
52
|
+
*/
|
53
|
+
onProgress(newOngoingResult: PartialDeep<PipelineExecutorResult>): Promisable<void>;
|
49
54
|
/**
|
50
55
|
* The execution report object, which is updated during execution.
|
51
56
|
*/
|
@@ -10,6 +10,3 @@ import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
10
10
|
* @public exported from `@promptbook/core`
|
11
11
|
*/
|
12
12
|
export declare function filterModels<TLlmTools extends LlmExecutionTools>(llmTools: TLlmTools, predicate: (model: AvailableModel) => boolean): TLlmTools;
|
13
|
-
/**
|
14
|
-
* TODO: !!! [models] Test that this is working
|
15
|
-
*/
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import type { ChatParticipant } from '../../../book-components/Chat/types/ChatParticipant';
|
2
|
+
/**
|
3
|
+
* Predefined profiles for LLM providers to maintain consistency across the application
|
4
|
+
* These profiles represent each provider as a virtual persona in chat interfaces
|
5
|
+
*
|
6
|
+
* @private !!!!
|
7
|
+
*/
|
8
|
+
export declare const LLM_PROVIDER_PROFILES: {
|
9
|
+
readonly OPENAI: {
|
10
|
+
name: string;
|
11
|
+
fullname: string;
|
12
|
+
color: string;
|
13
|
+
};
|
14
|
+
readonly ANTHROPIC: {
|
15
|
+
name: string;
|
16
|
+
fullname: string;
|
17
|
+
color: string;
|
18
|
+
};
|
19
|
+
readonly AZURE_OPENAI: {
|
20
|
+
name: string;
|
21
|
+
fullname: string;
|
22
|
+
color: string;
|
23
|
+
};
|
24
|
+
readonly GOOGLE: {
|
25
|
+
name: string;
|
26
|
+
fullname: string;
|
27
|
+
color: string;
|
28
|
+
};
|
29
|
+
readonly DEEPSEEK: {
|
30
|
+
name: string;
|
31
|
+
fullname: string;
|
32
|
+
color: string;
|
33
|
+
};
|
34
|
+
readonly OLLAMA: {
|
35
|
+
name: string;
|
36
|
+
fullname: string;
|
37
|
+
color: string;
|
38
|
+
};
|
39
|
+
readonly REMOTE: {
|
40
|
+
name: string;
|
41
|
+
fullname: string;
|
42
|
+
color: string;
|
43
|
+
};
|
44
|
+
readonly MOCKED_ECHO: {
|
45
|
+
name: string;
|
46
|
+
fullname: string;
|
47
|
+
color: string;
|
48
|
+
};
|
49
|
+
readonly MOCKED_FAKE: {
|
50
|
+
name: string;
|
51
|
+
fullname: string;
|
52
|
+
color: string;
|
53
|
+
};
|
54
|
+
readonly VERCEL: {
|
55
|
+
name: string;
|
56
|
+
fullname: string;
|
57
|
+
color: string;
|
58
|
+
};
|
59
|
+
readonly MULTIPLE: {
|
60
|
+
name: string;
|
61
|
+
fullname: string;
|
62
|
+
color: string;
|
63
|
+
};
|
64
|
+
};
|
65
|
+
/**
|
66
|
+
* Helper function to get a profile by provider name with fallback
|
67
|
+
*
|
68
|
+
* @private !!!!
|
69
|
+
*/
|
70
|
+
export declare function getLlmProviderProfile(providerKey: keyof typeof LLM_PROVIDER_PROFILES): ChatParticipant;
|
71
|
+
/**
|
72
|
+
* Creates a custom profile based on a provider profile but with custom properties
|
73
|
+
*
|
74
|
+
* @private !!!!
|
75
|
+
*/
|
76
|
+
export declare function createCustomLlmProfile(baseProfile: ChatParticipant, overrides: Partial<ChatParticipant>): ChatParticipant;
|
77
|
+
/**
|
78
|
+
* TODO: Refactor this - each profile must be alongside the provider definition
|
79
|
+
* TODO: [🕛] Unite `AvatarProfileProps`, `ChatParticipant`, `LlmExecutionTools` + `LlmToolsMetadata`
|
80
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
81
|
+
*/
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -1,7 +1,5 @@
|
|
1
|
-
import { MODEL_ORDERS } from '../../../constants';
|
2
|
-
import {
|
3
|
-
import type { string_name } from '../../../types/typeAliases';
|
4
|
-
import type { string_title } from '../../../types/typeAliases';
|
1
|
+
import { MODEL_ORDERS, MODEL_TRUST_LEVELS } from '../../../constants';
|
2
|
+
import type { string_name, string_title } from '../../../types/typeAliases';
|
5
3
|
import type { Registered } from '../../../utils/$Register';
|
6
4
|
import type { string_SCREAMING_CASE } from '../../../utils/normalization/normalizeTo_SCREAMING_CASE';
|
7
5
|
import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
|
@@ -52,6 +50,7 @@ export type LlmToolsMetadata = Registered & {
|
|
52
50
|
createConfigurationFromEnv(env: Record<string_name, string>): LlmToolsConfiguration[number] | null;
|
53
51
|
};
|
54
52
|
/**
|
53
|
+
* TODO: [🕛] Extend this
|
55
54
|
* TODO: Add configuration schema and maybe some documentation link
|
56
55
|
* TODO: Maybe constrain LlmToolsConfiguration[number] by generic to ensure that `createConfigurationFromEnv` and `getBoilerplateConfiguration` always create same `packageName` and `className`
|
57
56
|
* TODO: [®] DRY Register logic
|
@@ -28,6 +28,11 @@ export declare class MultipleLlmExecutionTools implements LlmExecutionTools {
|
|
28
28
|
constructor(...llmExecutionTools: ReadonlyArray<LlmExecutionTools>);
|
29
29
|
get title(): string_title & string_markdown_text;
|
30
30
|
get description(): string_markdown;
|
31
|
+
get profile(): {
|
32
|
+
name: string;
|
33
|
+
fullname: string;
|
34
|
+
color: string;
|
35
|
+
};
|
31
36
|
/**
|
32
37
|
* Check the configuration of all execution tools
|
33
38
|
*/
|
@@ -2,7 +2,6 @@ import Anthropic from '@anthropic-ai/sdk';
|
|
2
2
|
import type { AvailableModel } from '../../execution/AvailableModel';
|
3
3
|
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
4
4
|
import type { ChatPromptResult } from '../../execution/PromptResult';
|
5
|
-
import type { CompletionPromptResult } from '../../execution/PromptResult';
|
6
5
|
import type { Prompt } from '../../types/Prompt';
|
7
6
|
import type { string_markdown } from '../../types/typeAliases';
|
8
7
|
import type { string_markdown_text } from '../../types/typeAliases';
|
@@ -29,6 +28,11 @@ export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools
|
|
29
28
|
constructor(options?: AnthropicClaudeExecutionToolsNonProxiedOptions);
|
30
29
|
get title(): string_title & string_markdown_text;
|
31
30
|
get description(): string_markdown;
|
31
|
+
get profile(): {
|
32
|
+
name: string;
|
33
|
+
fullname: string;
|
34
|
+
color: string;
|
35
|
+
};
|
32
36
|
getClient(): Promise<Anthropic>;
|
33
37
|
/**
|
34
38
|
* Check the `options` passed to `constructor`
|
@@ -42,10 +46,6 @@ export declare class AnthropicClaudeExecutionTools implements LlmExecutionTools
|
|
42
46
|
* Calls Anthropic Claude API to use a chat model.
|
43
47
|
*/
|
44
48
|
callChatModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<ChatPromptResult>;
|
45
|
-
/**
|
46
|
-
* Calls Anthropic Claude API to use a completion model.
|
47
|
-
*/
|
48
|
-
callCompletionModel(prompt: Pick<Prompt, 'content' | 'parameters' | 'modelRequirements'>): Promise<CompletionPromptResult>;
|
49
49
|
/**
|
50
50
|
* Get the model that should be used as default
|
51
51
|
*/
|
@@ -3,7 +3,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
3
3
|
/**
|
4
4
|
* List of available Anthropic Claude models with pricing
|
5
5
|
*
|
6
|
-
* Note:
|
6
|
+
* Note: Synced with official API docs at 2025-08-20
|
7
7
|
*
|
8
8
|
* @see https://docs.anthropic.com/en/docs/models-overview
|
9
9
|
* @public exported from `@promptbook/anthropic-claude`
|
@@ -3,7 +3,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
3
3
|
/**
|
4
4
|
* List of available Deepseek models with descriptions
|
5
5
|
*
|
6
|
-
* Note:
|
6
|
+
* Note: Synced with official API docs at 2025-08-20
|
7
7
|
*
|
8
8
|
* @see https://www.deepseek.com/models
|
9
9
|
* @public exported from `@promptbook/deepseek`
|
@@ -3,7 +3,7 @@ import type { number_usd } from '../../types/typeAliases';
|
|
3
3
|
/**
|
4
4
|
* List of available Google models with descriptions
|
5
5
|
*
|
6
|
-
* Note:
|
6
|
+
* Note: Synced with official API docs at 2025-08-20
|
7
7
|
*
|
8
8
|
* @see https://ai.google.dev/models/gemini
|
9
9
|
* @public exported from `@promptbook/google`
|
@@ -17,6 +17,11 @@ export declare class MockedEchoLlmExecutionTools implements LlmExecutionTools {
|
|
17
17
|
constructor(options?: CommonToolsOptions);
|
18
18
|
get title(): string_title & string_markdown_text;
|
19
19
|
get description(): string_markdown;
|
20
|
+
get profile(): {
|
21
|
+
name: string;
|
22
|
+
fullname: string;
|
23
|
+
color: string;
|
24
|
+
};
|
20
25
|
/**
|
21
26
|
* Does nothing, just to implement the interface
|
22
27
|
*/
|
@@ -2,7 +2,7 @@ import type { AvailableModel } from '../../execution/AvailableModel';
|
|
2
2
|
/**
|
3
3
|
* List of available models in Ollama library
|
4
4
|
*
|
5
|
-
* Note:
|
5
|
+
* Note: Synced with official API docs at 2025-08-20
|
6
6
|
*
|
7
7
|
* @see https://ollama.com/library
|
8
8
|
* @public exported from `@promptbook/ollama`
|
@@ -82,6 +82,14 @@ export declare abstract class OpenAiCompatibleExecutionTools implements LlmExecu
|
|
82
82
|
* Default model for completion variant.
|
83
83
|
*/
|
84
84
|
protected abstract getDefaultEmbeddingModel(): AvailableModel;
|
85
|
+
/**
|
86
|
+
* Makes a request with retry logic for network errors like ECONNRESET
|
87
|
+
*/
|
88
|
+
private makeRequestWithRetry;
|
89
|
+
/**
|
90
|
+
* Determines if an error is retryable (network-related errors)
|
91
|
+
*/
|
92
|
+
private isRetryableNetworkError;
|
85
93
|
}
|
86
94
|
/**
|
87
95
|
* TODO: [🛄] Some way how to re-wrap the errors from `OpenAiCompatibleExecutionTools`
|
@@ -13,6 +13,11 @@ import { OpenAiCompatibleExecutionTools } from './OpenAiCompatibleExecutionTools
|
|
13
13
|
export declare class OpenAiExecutionTools extends OpenAiCompatibleExecutionTools implements LlmExecutionTools {
|
14
14
|
get title(): string_title & string_markdown_text;
|
15
15
|
get description(): string_markdown;
|
16
|
+
get profile(): {
|
17
|
+
name: string;
|
18
|
+
fullname: string;
|
19
|
+
color: string;
|
20
|
+
};
|
16
21
|
/**
|
17
22
|
* List all available models (non dynamically)
|
18
23
|
*
|
@@ -2,7 +2,7 @@ import type { AvailableModel } from '../../execution/AvailableModel';
|
|
2
2
|
/**
|
3
3
|
* List of available OpenAI models with pricing
|
4
4
|
*
|
5
|
-
* Note:
|
5
|
+
* Note: Synced with official API docs at 2025-08-20
|
6
6
|
*
|
7
7
|
* @see https://platform.openai.com/docs/models/
|
8
8
|
* @see https://openai.com/api/pricing/
|
@@ -24,6 +24,11 @@ export declare class RemoteLlmExecutionTools<TCustomOptions = undefined> impleme
|
|
24
24
|
constructor(options: RemoteClientOptions<TCustomOptions>);
|
25
25
|
get title(): string_title & string_markdown_text;
|
26
26
|
get description(): string_markdown;
|
27
|
+
get profile(): {
|
28
|
+
name: string;
|
29
|
+
fullname: string;
|
30
|
+
color: string;
|
31
|
+
};
|
27
32
|
/**
|
28
33
|
* Check the configuration of all execution tools
|
29
34
|
*/
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import type { string_book } from '../book-2.0/agent-source/string_book';
|
1
2
|
import type { PipelineString } from './PipelineString';
|
2
3
|
/**
|
3
4
|
* Tag function for notating a pipeline with a book\`...\ notation as template literal
|
@@ -12,7 +13,7 @@ import type { PipelineString } from './PipelineString';
|
|
12
13
|
* @returns the pipeline string
|
13
14
|
* @public exported from `@promptbook/core`
|
14
15
|
*/
|
15
|
-
export declare function book(strings: TemplateStringsArray, ...values: Array<string>): PipelineString;
|
16
|
+
export declare function book(strings: TemplateStringsArray, ...values: Array<string>): string_book & PipelineString;
|
16
17
|
/**
|
17
18
|
* TODO: [🧠][🈴] Where is the best location for this file
|
18
19
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
@@ -136,6 +136,12 @@ export type ReservedParameters = Record<string_reserved_parameter_name, string_p
|
|
136
136
|
* For example `"Ai*nautes"`
|
137
137
|
*/
|
138
138
|
export type string_title = string;
|
139
|
+
/**
|
140
|
+
* Semantic helper
|
141
|
+
*
|
142
|
+
* For example `"My AI Assistant"`
|
143
|
+
*/
|
144
|
+
export type string_agent_name = string;
|
139
145
|
/**
|
140
146
|
* Unstructured description of the persona
|
141
147
|
*
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { Color } from './Color';
|
2
|
+
/**
|
3
|
+
* Creates a random color
|
4
|
+
*
|
5
|
+
* @public exported from `@promptbook/color`
|
6
|
+
*/
|
7
|
+
export declare function $randomColor(): Color;
|
8
|
+
/**
|
9
|
+
* TODO: !! Use Internally Color.fromValues
|
10
|
+
* TODO: !! randomColorWithAlpha
|
11
|
+
*/
|
@@ -0,0 +1,179 @@
|
|
1
|
+
import type { string_color, string_url_image } from '../../types/typeAliases';
|
2
|
+
import type { WithTake } from '../take/interfaces/ITakeChain';
|
3
|
+
import { CSS_COLORS } from './css-colors';
|
4
|
+
/**
|
5
|
+
* Color object represents an RGB color with alpha channel
|
6
|
+
*
|
7
|
+
* Note: There is no fromObject/toObject because the most logical way to serialize color is as a hex string (#009edd)
|
8
|
+
*
|
9
|
+
* @public exported from `@promptbook/color`
|
10
|
+
*/
|
11
|
+
export declare class Color {
|
12
|
+
readonly red: number;
|
13
|
+
readonly green: number;
|
14
|
+
readonly blue: number;
|
15
|
+
readonly alpha: number;
|
16
|
+
/**
|
17
|
+
* Creates a new Color instance from miscellaneous formats
|
18
|
+
* - It can receive Color instance and just return the same instance
|
19
|
+
* - It can receive color in string format for example `#009edd`, `rgb(0,158,221)`, `rgb(0%,62%,86.7%)`, `hsl(197.1,100%,43.3%)`
|
20
|
+
*
|
21
|
+
* Note: This is not including fromImage because detecting color from an image is heavy task which requires async stuff and we cannot safely determine with overloading if return value will be a promise
|
22
|
+
*
|
23
|
+
* @param color
|
24
|
+
* @returns Color object
|
25
|
+
*/
|
26
|
+
static from(color: string_color | Color): WithTake<Color>;
|
27
|
+
/**
|
28
|
+
* Creates a new Color instance from miscellaneous string formats
|
29
|
+
*
|
30
|
+
* @param color as a string for example `#009edd`, `rgb(0,158,221)`, `rgb(0%,62%,86.7%)`, `hsl(197.1,100%,43.3%)`, `red`, `darkgrey`,...
|
31
|
+
* @returns Color object
|
32
|
+
*/
|
33
|
+
static fromString(color: string_color): WithTake<Color>;
|
34
|
+
/**
|
35
|
+
* Gets common color
|
36
|
+
*
|
37
|
+
* @param key as a css string like `midnightblue`
|
38
|
+
* @returns Color object
|
39
|
+
*/
|
40
|
+
static get(key: keyof typeof CSS_COLORS): WithTake<Color>;
|
41
|
+
/**
|
42
|
+
* Creates a new Color instance from average color of given image
|
43
|
+
*
|
44
|
+
* @param image as a source for example `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAA1JREFUGFdjYJh39z8ABJgCe/ZvAS4AAAAASUVORK5CYII=`
|
45
|
+
* @returns Color object
|
46
|
+
*/
|
47
|
+
static fromImage(image: string_url_image): Promise<Color>;
|
48
|
+
/**
|
49
|
+
* Creates a new Color instance from color in hex format
|
50
|
+
*
|
51
|
+
* @param color in hex for example `#009edd`, `009edd`, `#555`,...
|
52
|
+
* @returns Color object
|
53
|
+
*/
|
54
|
+
static fromHex(hex: string_color): WithTake<Color>;
|
55
|
+
/**
|
56
|
+
* Creates a new Color instance from color in hex format with 3 color digits (without alpha channel)
|
57
|
+
*
|
58
|
+
* @param color in hex for example `09d`
|
59
|
+
* @returns Color object
|
60
|
+
*/
|
61
|
+
private static fromHex3;
|
62
|
+
/**
|
63
|
+
* Creates a new Color instance from color in hex format with 6 color digits (without alpha channel)
|
64
|
+
*
|
65
|
+
* @param color in hex for example `009edd`
|
66
|
+
* @returns Color object
|
67
|
+
*/
|
68
|
+
private static fromHex6;
|
69
|
+
/**
|
70
|
+
* Creates a new Color instance from color in hex format with 8 color digits (with alpha channel)
|
71
|
+
*
|
72
|
+
* @param color in hex for example `009edd`
|
73
|
+
* @returns Color object
|
74
|
+
*/
|
75
|
+
private static fromHex8;
|
76
|
+
/**
|
77
|
+
* Creates a new Color instance from color in hsl format
|
78
|
+
*
|
79
|
+
* @param color as a hsl for example `hsl(197.1,100%,43.3%)`
|
80
|
+
* @returns Color object
|
81
|
+
*/
|
82
|
+
static fromHsl(hsl: string_color): WithTake<Color>;
|
83
|
+
/**
|
84
|
+
* Creates a new Color instance from color in rgb format
|
85
|
+
*
|
86
|
+
* @param color as a rgb for example `rgb(0,158,221)`, `rgb(0%,62%,86.7%)`
|
87
|
+
* @returns Color object
|
88
|
+
*/
|
89
|
+
static fromRgbString(rgb: string_color): WithTake<Color>;
|
90
|
+
/**
|
91
|
+
* Creates a new Color instance from color in rbga format
|
92
|
+
*
|
93
|
+
* @param color as a rgba for example `rgba(0,158,221,0.5)`, `rgb(0%,62%,86.7%,50%)`
|
94
|
+
* @returns Color object
|
95
|
+
*/
|
96
|
+
static fromRgbaString(rgba: string_color): WithTake<Color>;
|
97
|
+
/**
|
98
|
+
* Creates a new Color for color channels values
|
99
|
+
*
|
100
|
+
* @param red number from 0 to 255
|
101
|
+
* @param green number from 0 to 255
|
102
|
+
* @param blue number from 0 to 255
|
103
|
+
* @param alpha number from 0 (transparent) to 255 (opaque = default)
|
104
|
+
* @returns Color object
|
105
|
+
*/
|
106
|
+
static fromValues(red: number, green: number, blue: number, alpha?: number): WithTake<Color>;
|
107
|
+
/**
|
108
|
+
* Checks if the given value is a valid Color object.
|
109
|
+
*
|
110
|
+
* @param {unknown} value - The value to check.
|
111
|
+
* @return {value is WithTake<Color>} Returns true if the value is a valid Color object, false otherwise.
|
112
|
+
*/
|
113
|
+
static isColor(value: unknown): value is WithTake<Color>;
|
114
|
+
/**
|
115
|
+
* Creates new Color object
|
116
|
+
*
|
117
|
+
* Note: Consider using one of static methods like `from` or `fromString`
|
118
|
+
*
|
119
|
+
* @param red number from 0 to 255
|
120
|
+
* @param green number from 0 to 255
|
121
|
+
* @param blue number from 0 to 255
|
122
|
+
* @param alpha number from 0 (transparent) to 255 (opaque)
|
123
|
+
*/
|
124
|
+
private constructor();
|
125
|
+
/**
|
126
|
+
* Shortcut for `red` property
|
127
|
+
* Number from 0 to 255
|
128
|
+
* @alias red
|
129
|
+
*/
|
130
|
+
get r(): number;
|
131
|
+
/**
|
132
|
+
* Shortcut for `green` property
|
133
|
+
* Number from 0 to 255
|
134
|
+
* @alias green
|
135
|
+
*/
|
136
|
+
get g(): number;
|
137
|
+
/**
|
138
|
+
* Shortcut for `blue` property
|
139
|
+
* Number from 0 to 255
|
140
|
+
* @alias blue
|
141
|
+
*/
|
142
|
+
get b(): number;
|
143
|
+
/**
|
144
|
+
* Shortcut for `alpha` property
|
145
|
+
* Number from 0 (transparent) to 255 (opaque)
|
146
|
+
* @alias alpha
|
147
|
+
*/
|
148
|
+
get a(): number;
|
149
|
+
/**
|
150
|
+
* Shortcut for `alpha` property
|
151
|
+
* Number from 0 (transparent) to 255 (opaque)
|
152
|
+
* @alias alpha
|
153
|
+
*/
|
154
|
+
get opacity(): number;
|
155
|
+
/**
|
156
|
+
* Shortcut for 1-`alpha` property
|
157
|
+
*/
|
158
|
+
get transparency(): number;
|
159
|
+
clone(): WithTake<Color>;
|
160
|
+
toString(): string_color;
|
161
|
+
toHex(): string_color;
|
162
|
+
toRgb(): string_color;
|
163
|
+
toHsl(): string_color;
|
164
|
+
}
|
165
|
+
/**
|
166
|
+
* TODO: For each method a corresponding static method should be created
|
167
|
+
* Like clone can be done by color.clone() OR Color.clone(color)
|
168
|
+
* TODO: Probably as an independent LIB OR add to LIB xyzt (ask @roseckyj)
|
169
|
+
* TODO: !! Transfer back to Collboard (whole directory)
|
170
|
+
* TODO: Maybe [🏌️♂️] change ACRY toString => (toHex) toRgb when there will be toRgb and toRgba united
|
171
|
+
* TODO: Convert getters to methods - getters only for values
|
172
|
+
* TODO: Write tests
|
173
|
+
* TODO: Getters for alpha, opacity, transparency, r, b, g, h, s, l, a,...
|
174
|
+
* TODO: [0] Should be fromRgbString and fromRgbaString one or two functions + one or two regex
|
175
|
+
* TODO: Use rgb, rgba, hsl for testing and parsing with the same regex
|
176
|
+
* TODO: Regex for rgb, rgba, hsl does not support all options like deg, rad, turn,...
|
177
|
+
* TODO: Convolution matrix
|
178
|
+
* TODO: Maybe connect with textures
|
179
|
+
*/
|