@promptbook/anthropic-claude 0.103.0-42 → 0.103.0-44
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 +6 -18
- package/esm/index.es.js +61 -101
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/core.index.d.ts +6 -0
- package/esm/typings/src/_packages/node.index.d.ts +0 -2
- package/esm/typings/src/_packages/types.index.d.ts +22 -0
- package/esm/typings/src/_packages/utils.index.d.ts +2 -0
- package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +2 -4
- package/esm/typings/src/book-2.0/agent-source/padBook.d.ts +1 -1
- package/esm/typings/src/book-2.0/agent-source/string_book.d.ts +1 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +6 -1
- package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +1 -1
- package/esm/typings/src/book-components/Chat/save/_common/ChatSaveFormatDefinition.d.ts +1 -1
- package/esm/typings/src/book-components/Chat/types/ChatParticipant.d.ts +1 -1
- package/esm/typings/src/book-components/Qr/BrandedQrCode.d.ts +1 -1
- package/esm/typings/src/book-components/Qr/useQrCode.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/_boilerplate.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/about.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/hello.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/list-models.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/list-scrapers.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/login.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/make.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/prettify.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/run.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/start-agents-server.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/start-pipelines-server.d.ts +1 -1
- package/esm/typings/src/cli/cli-commands/test-command.d.ts +1 -1
- package/esm/typings/src/cli/common/$addGlobalOptionsToCommand.d.ts +1 -1
- package/esm/typings/src/collection/agent-collection/AgentCollection.d.ts +2 -29
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabase.d.ts +107 -0
- package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentsDatabaseSchema.d.ts +129 -0
- package/esm/typings/src/commands/_common/types/CommandParser.d.ts +1 -1
- package/esm/typings/src/config.d.ts +1 -1
- package/esm/typings/src/errors/0-index.d.ts +3 -0
- package/esm/typings/src/errors/DatabaseError.d.ts +12 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +1 -1
- package/esm/typings/src/high-level-abstractions/_common/HighLevelAbstraction.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/$registeredLlmToolsMessage.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/LlmToolsMetadata.d.ts +1 -1
- package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +1 -0
- package/esm/typings/src/llm-providers/agent/Agent.d.ts +5 -2
- package/esm/typings/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/agent/AgentOptions.d.ts +4 -2
- package/esm/typings/src/llm-providers/agent/CreateAgentLlmExecutionToolsOptions.d.ts +4 -3
- package/esm/typings/src/llm-providers/agent/createAgentLlmExecutionTools.d.ts +1 -1
- package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
- package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
- package/esm/typings/src/prepare/PrepareAndScrapeOptions.d.ts +1 -0
- package/esm/typings/src/remote-server/startAgentServer.d.ts +2 -2
- package/esm/typings/src/remote-server/types/RemoteServerOptions.d.ts +0 -19
- package/esm/typings/src/storage/env-storage/$EnvStorage.d.ts +1 -1
- package/esm/typings/src/transpilers/_common/BookTranspiler.d.ts +5 -1
- package/esm/typings/src/transpilers/_common/BookTranspilerOptions.d.ts +1 -1
- package/esm/typings/src/transpilers/_common/register/$bookTranspilersRegister.d.ts +1 -1
- package/esm/typings/src/transpilers/formatted-book-in-markdown/FormattedBookInMarkdownTranspiler.d.ts +4 -1
- package/esm/typings/src/transpilers/formatted-book-in-markdown/register.d.ts +1 -1
- package/esm/typings/src/transpilers/openai-sdk/OpenAiSdkTranspiler.d.ts +4 -1
- package/esm/typings/src/transpilers/openai-sdk/register.d.ts +1 -1
- package/esm/typings/src/types/typeAliases.d.ts +19 -1
- package/esm/typings/src/utils/color/$randomColor.d.ts +1 -0
- package/esm/typings/src/utils/color/operators/darken.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/grayscale.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/lighten.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/mixWithColor.d.ts +1 -1
- package/esm/typings/src/utils/color/operators/saturate.d.ts +1 -1
- package/esm/typings/src/utils/environment/$detectRuntimeEnvironment.d.ts +16 -0
- package/esm/typings/src/utils/execCommand/$execCommand.d.ts +1 -1
- package/esm/typings/src/utils/execCommand/$execCommands.d.ts +1 -1
- package/esm/typings/src/utils/files/$induceBookDownload.d.ts +2 -2
- package/esm/typings/src/utils/files/$induceFileDownload.d.ts +2 -2
- package/esm/typings/src/utils/files/ObjectUrl.d.ts +1 -1
- package/esm/typings/src/utils/misc/aboutPromptbookInformation.d.ts +6 -0
- package/esm/typings/src/utils/organization/$side_effect.d.ts +1 -1
- package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +25 -0
- package/esm/typings/src/utils/random/$randomAgentPersona.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomFullnameWithColor.d.ts +13 -0
- package/esm/typings/src/utils/random/$randomItem.d.ts +9 -0
- package/esm/typings/src/utils/random/$randomSeed.d.ts +3 -0
- package/esm/typings/src/utils/random/$randomToken.d.ts +2 -0
- package/esm/typings/src/utils/serialization/$deepFreeze.d.ts +1 -1
- package/esm/typings/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -2
- package/esm/typings/src/version.d.ts +1 -1
- package/package.json +2 -2
- package/umd/index.umd.js +61 -101
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/collection/agent-collection/constructors/AgentCollectionInDirectory.d.ts +0 -89
- package/esm/typings/src/collection/agent-collection/constructors/AgentCollectionInDirectory.test.d.ts +0 -1
- package/esm/typings/src/commands/_common/parseCommand.test.d.ts +0 -1
- package/esm/typings/src/execution/utils/logLlmCall.d.ts +0 -8
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { Promisable } from 'type-fest';
|
|
2
|
-
import {
|
|
2
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
3
|
+
import type { ExecutionTools } from '../../execution/ExecutionTools';
|
|
4
|
+
import type { string_name, string_script, string_title } from '../../types/typeAliases';
|
|
5
|
+
import type { Registered } from '../../utils/misc/$Register';
|
|
6
|
+
import type { BookTranspilerOptions } from './BookTranspilerOptions';
|
|
3
7
|
/**
|
|
4
8
|
* Transpiler takes a book and transpiles it into another format (e.g., Langchain).
|
|
5
9
|
*/
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
+
import type { ExecutionTools } from '../../execution/ExecutionTools';
|
|
3
|
+
import type { string_markdown } from '../../types/typeAliases';
|
|
4
|
+
import type { BookTranspilerOptions } from '../_common/BookTranspilerOptions';
|
|
2
5
|
/**
|
|
3
6
|
* Converts a book into a 1:1 formatted markdown
|
|
4
7
|
*
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
+
import type { ExecutionTools } from '../../execution/ExecutionTools';
|
|
3
|
+
import type { string_script } from '../../types/typeAliases';
|
|
4
|
+
import type { BookTranspilerOptions } from '../_common/BookTranspilerOptions';
|
|
2
5
|
/**
|
|
3
6
|
* Transpiler to Javascript code using OpenAI SDK.
|
|
4
7
|
*
|
|
@@ -142,6 +142,12 @@ export type string_title = string;
|
|
|
142
142
|
* For example `"My AI Assistant"`
|
|
143
143
|
*/
|
|
144
144
|
export type string_agent_name = string;
|
|
145
|
+
/**
|
|
146
|
+
* Semantic helper
|
|
147
|
+
*
|
|
148
|
+
* For example `"My AI Assistant"`
|
|
149
|
+
*/
|
|
150
|
+
export type string_agent_name_in_book = string;
|
|
145
151
|
/**
|
|
146
152
|
* Unstructured description of the persona
|
|
147
153
|
*
|
|
@@ -530,7 +536,19 @@ export type string_dirname = string_absolute_dirname | string_relative_dirname;
|
|
|
530
536
|
*
|
|
531
537
|
* For example `"John Smith"`
|
|
532
538
|
*/
|
|
533
|
-
export type string_person_fullname = string;
|
|
539
|
+
export type string_person_fullname = `${string_person_firstname} ${string_person_lastname}` | string;
|
|
540
|
+
/**
|
|
541
|
+
* Semantic helper
|
|
542
|
+
*
|
|
543
|
+
* For example `"John Smith"`
|
|
544
|
+
*/
|
|
545
|
+
export type string_person_firstname = string;
|
|
546
|
+
/**
|
|
547
|
+
* Semantic helper
|
|
548
|
+
*
|
|
549
|
+
* For example `"John Smith"`
|
|
550
|
+
*/
|
|
551
|
+
export type string_person_lastname = string;
|
|
534
552
|
/**
|
|
535
553
|
* Semantic helper
|
|
536
554
|
* Full profile of the person with his email and web (like in package.json)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { number_percent } from '../../../types/typeAliases';
|
|
1
2
|
import { Color } from '../Color';
|
|
2
3
|
import type { ColorTransformer } from './ColorTransformer';
|
|
3
|
-
import { number_percent } from '../../../types/typeAliases';
|
|
4
4
|
/**
|
|
5
5
|
* Makes color transformer which returns a mix of two colors based on a ratio
|
|
6
6
|
*
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns information about the current runtime environment
|
|
3
|
+
*
|
|
4
|
+
* Note: `$` is used to indicate that this function is not a pure function - it looks at the global object to determine the environments
|
|
5
|
+
*
|
|
6
|
+
* @public exported from `@promptbook/utils`
|
|
7
|
+
*/
|
|
8
|
+
export declare function $detectRuntimeEnvironment(): {
|
|
9
|
+
isRunningInBrowser: any;
|
|
10
|
+
isRunningInJest: any;
|
|
11
|
+
isRunningInNode: any;
|
|
12
|
+
isRunningInWebWorker: any;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* TODO: [🎺] Also detect and report node version here
|
|
16
|
+
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { string_book } from '../../
|
|
2
|
-
import { $side_effect } from '../organization/$side_effect';
|
|
1
|
+
import type { string_book } from '../../book-2.0/agent-source/string_book';
|
|
2
|
+
import type { $side_effect } from '../organization/$side_effect';
|
|
3
3
|
/**
|
|
4
4
|
* Download a Book in a browser
|
|
5
5
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { string_url } from '../../types/typeAliases';
|
|
2
|
-
import { $side_effect } from '../organization/$side_effect';
|
|
1
|
+
import type { string_url } from '../../types/typeAliases';
|
|
2
|
+
import type { $side_effect } from '../organization/$side_effect';
|
|
3
3
|
/**
|
|
4
4
|
* Download a File in a browser
|
|
5
5
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IDestroyable, Registration } from 'destroyable';
|
|
2
|
-
import { string_mime_type, string_url } from '../../types/typeAliases';
|
|
2
|
+
import type { string_mime_type, string_url } from '../../types/typeAliases';
|
|
3
3
|
/**
|
|
4
4
|
* Converts Blob, File or MediaSource to url using URL.createObjectURL
|
|
5
5
|
*
|
|
@@ -6,6 +6,12 @@ export type AboutPromptbookInformationOptions = {
|
|
|
6
6
|
* @default true
|
|
7
7
|
*/
|
|
8
8
|
isServersInfoIncluded?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Include information about runtime environment
|
|
11
|
+
*
|
|
12
|
+
* @default true
|
|
13
|
+
*/
|
|
14
|
+
isRuntimeEnvironmentInfoIncluded?: boolean;
|
|
9
15
|
};
|
|
10
16
|
/**
|
|
11
17
|
* Provide information about Promptbook, engine version, book language version, servers, ...
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { PartialDeep } from 'type-fest';
|
|
2
|
+
import type { AgentBasicInformation } from '../../book-2.0/agent-source/AgentBasicInformation';
|
|
3
|
+
import { string_book } from '../../book-2.0/agent-source/string_book';
|
|
4
|
+
import { string_agent_name_in_book } from '../../types/typeAliases';
|
|
5
|
+
type GenerateBookBoilerplateOptions = PartialDeep<Omit<AgentBasicInformation, 'parameters'>> & {
|
|
6
|
+
/**
|
|
7
|
+
* Name of the parent agent to inherit from
|
|
8
|
+
*
|
|
9
|
+
* @default 'Adam'
|
|
10
|
+
*/
|
|
11
|
+
parentAgentName?: string_agent_name_in_book;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Generates boilerplate for a new agent book
|
|
15
|
+
*
|
|
16
|
+
* Note: `$` is used to indicate that this function is not a pure function - it is not deterministic
|
|
17
|
+
* Note: This function is using cryptographically secure components internally
|
|
18
|
+
*
|
|
19
|
+
* @public exported from `@promptbook/core`
|
|
20
|
+
*/
|
|
21
|
+
export declare function $generateBookBoilerplate(options?: GenerateBookBoilerplateOptions): string_book;
|
|
22
|
+
export {};
|
|
23
|
+
/**
|
|
24
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
25
|
+
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { string_color, string_person_fullname } from '../../types/typeAliases';
|
|
2
|
+
export type RandomFullnameWithColorResult = {
|
|
3
|
+
fullname: string_person_fullname;
|
|
4
|
+
color: string_color;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* @private internal helper function
|
|
9
|
+
*/
|
|
10
|
+
export declare function $randomFullnameWithColor(): RandomFullnameWithColorResult;
|
|
11
|
+
/**
|
|
12
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
13
|
+
*/
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pick random item from the received array
|
|
3
|
+
*
|
|
4
|
+
* @private internal helper function
|
|
5
|
+
*/
|
|
6
|
+
export declare function $randomItem<TItem>(...items: Array<TItem>): TItem;
|
|
7
|
+
/**
|
|
8
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
9
|
+
*/
|
|
@@ -2,6 +2,7 @@ import type { string_token } from '../../types/typeAliases';
|
|
|
2
2
|
/**
|
|
3
3
|
* Generates random token
|
|
4
4
|
*
|
|
5
|
+
* Note: `$` is used to indicate that this function is not a pure function - it is not deterministic
|
|
5
6
|
* Note: This function is cryptographically secure (it uses crypto.randomBytes internally)
|
|
6
7
|
*
|
|
7
8
|
* @private internal helper function
|
|
@@ -9,5 +10,6 @@ import type { string_token } from '../../types/typeAliases';
|
|
|
9
10
|
*/
|
|
10
11
|
export declare function $randomToken(randomness: number): string_token;
|
|
11
12
|
/**
|
|
13
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
12
14
|
* TODO: Maybe use nanoid instead https://github.com/ai/nanoid
|
|
13
15
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { string_javascript } from '../../types/typeAliases';
|
|
2
|
-
import { TODO_any } from '../organization/TODO_any';
|
|
1
|
+
import type { string_javascript } from '../../types/typeAliases';
|
|
2
|
+
import type { TODO_any } from '../organization/TODO_any';
|
|
3
3
|
type SerializeToPromptbookJavascriptReturn = {
|
|
4
4
|
/**
|
|
5
5
|
* Array of import statements required for the `value` to work
|
|
@@ -15,7 +15,7 @@ export declare const BOOK_LANGUAGE_VERSION: string_semantic_version;
|
|
|
15
15
|
export declare const PROMPTBOOK_ENGINE_VERSION: string_promptbook_version;
|
|
16
16
|
/**
|
|
17
17
|
* Represents the version string of the Promptbook engine.
|
|
18
|
-
* It follows semantic versioning (e.g., `0.103.0-
|
|
18
|
+
* It follows semantic versioning (e.g., `0.103.0-43`).
|
|
19
19
|
*
|
|
20
20
|
* @generated
|
|
21
21
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@promptbook/anthropic-claude",
|
|
3
|
-
"version": "0.103.0-
|
|
3
|
+
"version": "0.103.0-44",
|
|
4
4
|
"description": "Promptbook: Turn your company's scattered knowledge into AI ready books",
|
|
5
5
|
"private": false,
|
|
6
6
|
"sideEffects": false,
|
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
"module": "./esm/index.es.js",
|
|
98
98
|
"typings": "./esm/typings/src/_packages/anthropic-claude.index.d.ts",
|
|
99
99
|
"peerDependencies": {
|
|
100
|
-
"@promptbook/core": "0.103.0-
|
|
100
|
+
"@promptbook/core": "0.103.0-44"
|
|
101
101
|
},
|
|
102
102
|
"dependencies": {
|
|
103
103
|
"@anthropic-ai/sdk": "0.68.0",
|
package/umd/index.umd.js
CHANGED
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
* @generated
|
|
19
19
|
* @see https://github.com/webgptorg/book
|
|
20
20
|
*/
|
|
21
|
-
const BOOK_LANGUAGE_VERSION = '
|
|
21
|
+
const BOOK_LANGUAGE_VERSION = '2.0.0';
|
|
22
22
|
/**
|
|
23
23
|
* The version of the Promptbook engine
|
|
24
24
|
*
|
|
25
25
|
* @generated
|
|
26
26
|
* @see https://github.com/webgptorg/promptbook
|
|
27
27
|
*/
|
|
28
|
-
const PROMPTBOOK_ENGINE_VERSION = '0.103.0-
|
|
28
|
+
const PROMPTBOOK_ENGINE_VERSION = '0.103.0-44';
|
|
29
29
|
/**
|
|
30
30
|
* TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
|
|
31
31
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
|
@@ -731,6 +731,23 @@
|
|
|
731
731
|
* TODO: Maybe connect with textures
|
|
732
732
|
*/
|
|
733
733
|
|
|
734
|
+
/**
|
|
735
|
+
* Makes color transformer which returns a grayscale version of the color
|
|
736
|
+
*
|
|
737
|
+
* @param amount from 0 to 1
|
|
738
|
+
*
|
|
739
|
+
* @public exported from `@promptbook/color`
|
|
740
|
+
*/
|
|
741
|
+
function grayscale(amount) {
|
|
742
|
+
return ({ red, green, blue, alpha }) => {
|
|
743
|
+
const average = (red + green + blue) / 3;
|
|
744
|
+
red = Math.round(average * amount + red * (1 - amount));
|
|
745
|
+
green = Math.round(average * amount + green * (1 - amount));
|
|
746
|
+
blue = Math.round(average * amount + blue * (1 - amount));
|
|
747
|
+
return Color.fromValues(red, green, blue, alpha);
|
|
748
|
+
};
|
|
749
|
+
}
|
|
750
|
+
|
|
734
751
|
/**
|
|
735
752
|
* Converts HSL values to RGB values
|
|
736
753
|
*
|
|
@@ -846,102 +863,6 @@
|
|
|
846
863
|
* TODO: Maybe implement by mix+hsl
|
|
847
864
|
*/
|
|
848
865
|
|
|
849
|
-
/**
|
|
850
|
-
* Calculates distance between two colors
|
|
851
|
-
*
|
|
852
|
-
* @param color1 first color
|
|
853
|
-
* @param color2 second color
|
|
854
|
-
*
|
|
855
|
-
* Note: This function is inefficient. Use colorDistanceSquared instead if possible.
|
|
856
|
-
*
|
|
857
|
-
* @public exported from `@promptbook/color`
|
|
858
|
-
*/
|
|
859
|
-
/**
|
|
860
|
-
* Calculates distance between two colors without square root
|
|
861
|
-
*
|
|
862
|
-
* @param color1 first color
|
|
863
|
-
* @param color2 second color
|
|
864
|
-
*
|
|
865
|
-
* @public exported from `@promptbook/color`
|
|
866
|
-
*/
|
|
867
|
-
function colorDistanceSquared(color1, color2) {
|
|
868
|
-
const rmean = (color1.red + color2.red) / 2;
|
|
869
|
-
const r = color1.red - color2.red;
|
|
870
|
-
const g = color1.green - color2.green;
|
|
871
|
-
const b = color1.blue - color2.blue;
|
|
872
|
-
const weightR = 2 + rmean / 256;
|
|
873
|
-
const weightG = 4.0;
|
|
874
|
-
const weightB = 2 + (255 - rmean) / 256;
|
|
875
|
-
const distance = weightR * r * r + weightG * g * g + weightB * b * b;
|
|
876
|
-
return distance;
|
|
877
|
-
}
|
|
878
|
-
|
|
879
|
-
/**
|
|
880
|
-
* Makes color transformer which finds the nearest color from the given list
|
|
881
|
-
*
|
|
882
|
-
* @param colors array of colors to choose from
|
|
883
|
-
*
|
|
884
|
-
* @public exported from `@promptbook/color`
|
|
885
|
-
*/
|
|
886
|
-
function nearest(...colors) {
|
|
887
|
-
return (color) => {
|
|
888
|
-
const distances = colors.map((c) => colorDistanceSquared(c, color));
|
|
889
|
-
const minDistance = Math.min(...distances);
|
|
890
|
-
const minIndex = distances.indexOf(minDistance);
|
|
891
|
-
const nearestColor = colors[minIndex];
|
|
892
|
-
return nearestColor;
|
|
893
|
-
};
|
|
894
|
-
}
|
|
895
|
-
|
|
896
|
-
/**
|
|
897
|
-
* Color transformer which returns the negative color
|
|
898
|
-
*
|
|
899
|
-
* @public exported from `@promptbook/color`
|
|
900
|
-
*/
|
|
901
|
-
function negative(color) {
|
|
902
|
-
const r = 255 - color.red;
|
|
903
|
-
const g = 255 - color.green;
|
|
904
|
-
const b = 255 - color.blue;
|
|
905
|
-
return Color.fromValues(r, g, b, color.alpha);
|
|
906
|
-
}
|
|
907
|
-
|
|
908
|
-
/**
|
|
909
|
-
* Makes color transformer which finds the furthest color from the given list
|
|
910
|
-
*
|
|
911
|
-
* @param colors array of colors to choose from
|
|
912
|
-
*
|
|
913
|
-
* @public exported from `@promptbook/color`
|
|
914
|
-
*/
|
|
915
|
-
function furthest(...colors) {
|
|
916
|
-
return (color) => {
|
|
917
|
-
const furthestColor = negative(nearest(...colors.map(negative))(color));
|
|
918
|
-
return furthestColor;
|
|
919
|
-
};
|
|
920
|
-
}
|
|
921
|
-
/**
|
|
922
|
-
* Makes color transformer which finds the best text color (black or white) for the given background color
|
|
923
|
-
*
|
|
924
|
-
* @public exported from `@promptbook/color`
|
|
925
|
-
*/
|
|
926
|
-
furthest(Color.get('white'), Color.from('black'));
|
|
927
|
-
|
|
928
|
-
/**
|
|
929
|
-
* Makes color transformer which returns a grayscale version of the color
|
|
930
|
-
*
|
|
931
|
-
* @param amount from 0 to 1
|
|
932
|
-
*
|
|
933
|
-
* @public exported from `@promptbook/color`
|
|
934
|
-
*/
|
|
935
|
-
function grayscale(amount) {
|
|
936
|
-
return ({ red, green, blue, alpha }) => {
|
|
937
|
-
const average = (red + green + blue) / 3;
|
|
938
|
-
red = Math.round(average * amount + red * (1 - amount));
|
|
939
|
-
green = Math.round(average * amount + green * (1 - amount));
|
|
940
|
-
blue = Math.round(average * amount + blue * (1 - amount));
|
|
941
|
-
return Color.fromValues(red, green, blue, alpha);
|
|
942
|
-
};
|
|
943
|
-
}
|
|
944
|
-
|
|
945
866
|
/**
|
|
946
867
|
* Makes color transformer which saturate the given color
|
|
947
868
|
*
|
|
@@ -1425,7 +1346,7 @@
|
|
|
1425
1346
|
/**
|
|
1426
1347
|
* List of available Anthropic Claude models with pricing
|
|
1427
1348
|
*
|
|
1428
|
-
* Note: Synced with official API docs at 2025-
|
|
1349
|
+
* Note: Synced with official API docs at 2025-11-19
|
|
1429
1350
|
*
|
|
1430
1351
|
* @see https://docs.anthropic.com/en/docs/models-overview
|
|
1431
1352
|
* @public exported from `@promptbook/anthropic-claude`
|
|
@@ -1433,6 +1354,26 @@
|
|
|
1433
1354
|
const ANTHROPIC_CLAUDE_MODELS = exportJson({
|
|
1434
1355
|
name: 'ANTHROPIC_CLAUDE_MODELS',
|
|
1435
1356
|
value: [
|
|
1357
|
+
{
|
|
1358
|
+
modelVariant: 'CHAT',
|
|
1359
|
+
modelTitle: 'Claude Sonnet 4.5',
|
|
1360
|
+
modelName: 'claude-sonnet-4-5-20250929',
|
|
1361
|
+
modelDescription: 'Our smartest model for complex agents and coding',
|
|
1362
|
+
pricing: {
|
|
1363
|
+
prompt: pricing(`$3.00 / 1M tokens`),
|
|
1364
|
+
output: pricing(`$15.00 / 1M tokens`),
|
|
1365
|
+
},
|
|
1366
|
+
},
|
|
1367
|
+
{
|
|
1368
|
+
modelVariant: 'CHAT',
|
|
1369
|
+
modelTitle: 'Claude Haiku 4.5',
|
|
1370
|
+
modelName: 'claude-haiku-4-5-20251001',
|
|
1371
|
+
modelDescription: 'Our fastest model with near-frontier intelligence',
|
|
1372
|
+
pricing: {
|
|
1373
|
+
prompt: pricing(`$1.00 / 1M tokens`),
|
|
1374
|
+
output: pricing(`$5.00 / 1M tokens`),
|
|
1375
|
+
},
|
|
1376
|
+
},
|
|
1436
1377
|
{
|
|
1437
1378
|
modelVariant: 'CHAT',
|
|
1438
1379
|
modelTitle: 'Claude Opus 4.1',
|
|
@@ -1447,7 +1388,7 @@
|
|
|
1447
1388
|
modelVariant: 'CHAT',
|
|
1448
1389
|
modelTitle: 'Claude Opus 4',
|
|
1449
1390
|
modelName: 'claude-opus-4-20250514',
|
|
1450
|
-
modelDescription: 'Previous flagship Claude model with 200K token context window. Features very high intelligence and capability with exceptional performance across reasoning, coding, and creative tasks. Maintains strong safety guardrails while delivering sophisticated outputs for complex professional applications.',
|
|
1391
|
+
modelDescription: 'Previous flagship Claude model with 200K token context window. Features very high intelligence and capability with exceptional performance across reasoning, coding, and creative tasks. Maintains strong safety guardrails while delivering sophisticated outputs for complex professional applications. DEPRECATED: Use Claude Opus 4.1 instead.',
|
|
1451
1392
|
pricing: {
|
|
1452
1393
|
prompt: pricing(`$15.00 / 1M tokens`),
|
|
1453
1394
|
output: pricing(`$75.00 / 1M tokens`),
|
|
@@ -1457,7 +1398,7 @@
|
|
|
1457
1398
|
modelVariant: 'CHAT',
|
|
1458
1399
|
modelTitle: 'Claude Sonnet 4',
|
|
1459
1400
|
modelName: 'claude-sonnet-4-20250514',
|
|
1460
|
-
modelDescription: 'High-performance Claude model with exceptional reasoning capabilities and 200K token context window (1M context beta available). Features balanced intelligence and efficiency with enhanced multimodal understanding. Offers optimal performance for most enterprise applications requiring sophisticated AI capabilities.',
|
|
1401
|
+
modelDescription: 'High-performance Claude model with exceptional reasoning capabilities and 200K token context window (1M context beta available). Features balanced intelligence and efficiency with enhanced multimodal understanding. Offers optimal performance for most enterprise applications requiring sophisticated AI capabilities. DEPRECATED: Use Claude Sonnet 4.5 instead.',
|
|
1461
1402
|
pricing: {
|
|
1462
1403
|
prompt: pricing(`$3.00 / 1M tokens`),
|
|
1463
1404
|
output: pricing(`$15.00 / 1M tokens`),
|
|
@@ -1598,6 +1539,7 @@
|
|
|
1598
1539
|
/**
|
|
1599
1540
|
* Generates random token
|
|
1600
1541
|
*
|
|
1542
|
+
* Note: `$` is used to indicate that this function is not a pure function - it is not deterministic
|
|
1601
1543
|
* Note: This function is cryptographically secure (it uses crypto.randomBytes internally)
|
|
1602
1544
|
*
|
|
1603
1545
|
* @private internal helper function
|
|
@@ -1607,6 +1549,7 @@
|
|
|
1607
1549
|
return crypto.randomBytes(randomness).toString('hex');
|
|
1608
1550
|
}
|
|
1609
1551
|
/**
|
|
1552
|
+
* TODO: [🤶] Maybe export through `@promptbook/utils` or `@promptbook/random` package
|
|
1610
1553
|
* TODO: Maybe use nanoid instead https://github.com/ai/nanoid
|
|
1611
1554
|
*/
|
|
1612
1555
|
|
|
@@ -2620,6 +2563,22 @@
|
|
|
2620
2563
|
}
|
|
2621
2564
|
}
|
|
2622
2565
|
|
|
2566
|
+
/**
|
|
2567
|
+
* This error indicates error from the database
|
|
2568
|
+
*
|
|
2569
|
+
* @public exported from `@promptbook/core`
|
|
2570
|
+
*/
|
|
2571
|
+
class DatabaseError extends Error {
|
|
2572
|
+
constructor(message) {
|
|
2573
|
+
super(message);
|
|
2574
|
+
this.name = 'DatabaseError';
|
|
2575
|
+
Object.setPrototypeOf(this, DatabaseError.prototype);
|
|
2576
|
+
}
|
|
2577
|
+
}
|
|
2578
|
+
/**
|
|
2579
|
+
* TODO: !!!! Explain that NotFoundError (!!! and other specific errors) has priority over DatabaseError in some contexts
|
|
2580
|
+
*/
|
|
2581
|
+
|
|
2623
2582
|
/**
|
|
2624
2583
|
* This error type indicates that you try to use a feature that is not available in the current environment
|
|
2625
2584
|
*
|
|
@@ -2809,6 +2768,7 @@
|
|
|
2809
2768
|
UnexpectedError,
|
|
2810
2769
|
WrappedError,
|
|
2811
2770
|
NotAllowed,
|
|
2771
|
+
DatabaseError,
|
|
2812
2772
|
// TODO: [🪑]> VersionMismatchError,
|
|
2813
2773
|
};
|
|
2814
2774
|
/**
|