@promptbook/editable 0.101.0-2 → 0.101.0-20
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/esm/index.es.js +1 -1
- package/esm/index.es.js.map +1 -1
- package/esm/typings/src/_packages/components.index.d.ts +20 -0
- package/esm/typings/src/_packages/core.index.d.ts +14 -0
- package/esm/typings/src/_packages/types.index.d.ts +14 -0
- package/esm/typings/src/book-2.0/agent-source/AgentBasicInformation.d.ts +41 -3
- package/esm/typings/src/book-2.0/agent-source/AgentModelRequirements.d.ts +3 -0
- package/esm/typings/src/book-2.0/agent-source/createAgentModelRequirements.d.ts +4 -22
- package/esm/typings/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments.d.ts +1 -26
- package/esm/typings/src/book-2.0/agent-source/parseParameters.d.ts +13 -0
- package/esm/typings/src/book-2.0/commitments/ACTION/ACTION.d.ts +8 -2
- package/esm/typings/src/book-2.0/commitments/DELETE/DELETE.d.ts +59 -0
- package/esm/typings/src/book-2.0/commitments/FORMAT/FORMAT.d.ts +8 -2
- package/esm/typings/src/book-2.0/commitments/GOAL/GOAL.d.ts +45 -0
- package/esm/typings/src/book-2.0/commitments/KNOWLEDGE/KNOWLEDGE.d.ts +1 -1
- package/esm/typings/src/book-2.0/commitments/MEMORY/MEMORY.d.ts +46 -0
- package/esm/typings/src/book-2.0/commitments/MESSAGE/MESSAGE.d.ts +47 -0
- package/esm/typings/src/book-2.0/commitments/META/META.d.ts +62 -0
- package/esm/typings/src/book-2.0/commitments/MODEL/MODEL.d.ts +31 -4
- package/esm/typings/src/book-2.0/commitments/NOTE/NOTE.d.ts +20 -2
- package/esm/typings/src/book-2.0/commitments/PERSONA/PERSONA.d.ts +8 -2
- package/esm/typings/src/book-2.0/commitments/SCENARIO/SCENARIO.d.ts +46 -0
- package/esm/typings/src/book-2.0/commitments/STYLE/STYLE.d.ts +8 -2
- package/esm/typings/src/book-2.0/commitments/index.d.ts +7 -3
- package/esm/typings/src/book-2.0/utils/generatePlaceholderAgentProfileImageUrl.d.ts +3 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarChip/AvatarChip.d.ts +2 -2
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/MockedChat.d.ts +63 -0
- package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/index.d.ts +3 -0
- package/esm/typings/src/book-components/BookEditor/BookEditor.d.ts +15 -0
- package/esm/typings/src/book-components/BookEditor/BookEditorInner.d.ts +4 -0
- package/esm/typings/src/book-components/Chat/Chat/ChatProps.d.ts +26 -0
- package/esm/typings/src/book-components/Chat/LlmChat/LlmChatProps.d.ts +13 -0
- package/esm/typings/src/book-components/Chat/hooks/index.d.ts +2 -0
- package/esm/typings/src/book-components/Chat/hooks/useChatAutoScroll.d.ts +41 -0
- package/esm/typings/src/book-components/Chat/hooks/useSendMessageToLlmChat.d.ts +44 -0
- package/esm/typings/src/book-components/Chat/utils/parseMessageButtons.d.ts +22 -0
- package/esm/typings/src/book-components/icons/PauseIcon.d.ts +8 -0
- package/esm/typings/src/book-components/icons/PlayIcon.d.ts +8 -0
- package/esm/typings/src/execution/createPipelineExecutor/40-executeAttempts.d.ts +1 -2
- package/esm/typings/src/execution/createPipelineExecutor/getKnowledgeForTask.d.ts +1 -3
- package/esm/typings/src/formats/csv/CsvFormatError.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsConfigurationFromEnv.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForTestingAndScriptsAndPlayground.d.ts +1 -1
- package/esm/typings/src/llm-providers/_common/register/$provideLlmToolsForWizardOrCli.d.ts +1 -2
- package/esm/typings/src/llm-providers/_common/register/createLlmToolsFromConfiguration.d.ts +8 -2
- package/esm/typings/src/llm-providers/_common/utils/removeUnsupportedModelRequirements.d.ts +25 -0
- package/esm/typings/src/llm-providers/_multiple/MultipleLlmExecutionTools.d.ts +5 -13
- package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +11 -0
- package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +2 -1
- package/esm/typings/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +54 -0
- package/esm/typings/src/llm-providers/agent/createAgentLlmExecutionTools.d.ts +29 -0
- package/esm/typings/src/llm-providers/agent/playground/playground.d.ts +8 -0
- package/esm/typings/src/llm-providers/agent/register-configuration.d.ts +11 -0
- package/esm/typings/src/llm-providers/agent/register-constructor.d.ts +13 -0
- package/esm/typings/src/llm-providers/mocked/$fakeTextToExpectations.d.ts +1 -0
- package/esm/typings/src/llm-providers/mocked/MockedEchoLlmExecutionTools.d.ts +2 -5
- package/esm/typings/src/llm-providers/mocked/MockedFackedLlmExecutionTools.d.ts +2 -6
- package/esm/typings/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +15 -8
- package/esm/typings/src/personas/preparePersona.d.ts +1 -0
- package/esm/typings/src/remote-server/openapi-types.d.ts +31 -31
- package/esm/typings/src/scrapers/markdown/MarkdownScraper.d.ts +1 -2
- package/esm/typings/src/types/ModelRequirements.d.ts +2 -4
- package/esm/typings/src/utils/color/utils/colorSaturation.d.ts +1 -1
- package/esm/typings/src/utils/editable/edit-pipeline-string/addPipelineCommand.d.ts +1 -1
- package/esm/typings/src/utils/markdown/humanizeAiText.d.ts +1 -0
- package/esm/typings/src/version.d.ts +1 -1
- package/package.json +2 -2
- package/umd/index.umd.js +1 -1
- package/umd/index.umd.js.map +1 -1
- package/esm/typings/src/book-2.0/utils/extractAgentMetadata.d.ts +0 -17
- package/esm/typings/src/book-2.0/utils/extractProfileImageFromSystemMessage.d.ts +0 -12
- package/esm/typings/src/llm-providers/mocked/test/joker.test.d.ts +0 -4
- package/esm/typings/src/llm-providers/mocked/test/mocked-chat.test.d.ts +0 -5
- package/esm/typings/src/llm-providers/mocked/test/mocked-completion.test.d.ts +0 -4
- package/esm/typings/src/scripting/_test/postprocessing.test.d.ts +0 -1
- /package/esm/typings/src/{cli/test/ptbk.test.d.ts → llm-providers/_common/utils/removeUnsupportedModelRequirements.test.d.ts} +0 -0
@@ -1,4 +1,28 @@
|
|
1
1
|
import type { string_agent_name, string_url_image } from '../../types/typeAliases';
|
2
|
+
/**
|
3
|
+
* Unified parameter representation that supports two different notations:
|
4
|
+
* 1. @Parameter - single word parameter starting with @
|
5
|
+
* 2. {parameterName} or {parameter with multiple words} or {parameterName: description text}
|
6
|
+
* Both notations represent the same syntax feature - parameters
|
7
|
+
*/
|
8
|
+
export type BookParameter = {
|
9
|
+
/**
|
10
|
+
* The raw text of the parameter as it appears in the source
|
11
|
+
*/
|
12
|
+
text: string;
|
13
|
+
/**
|
14
|
+
* The notation used for this parameter
|
15
|
+
*/
|
16
|
+
notation: 'at' | 'brace';
|
17
|
+
/**
|
18
|
+
* The parameter name (without @ or {})
|
19
|
+
*/
|
20
|
+
name: string;
|
21
|
+
/**
|
22
|
+
* Optional description for {parameterName: description} notation
|
23
|
+
*/
|
24
|
+
description?: string;
|
25
|
+
};
|
2
26
|
export type AgentBasicInformation = {
|
3
27
|
/**
|
4
28
|
* Name of the agent
|
@@ -11,10 +35,24 @@ export type AgentBasicInformation = {
|
|
11
35
|
*/
|
12
36
|
personaDescription: string | null;
|
13
37
|
/**
|
14
|
-
*
|
15
|
-
*
|
38
|
+
* Metadata commitments parsed from META lines
|
39
|
+
* Each META commitment has the format "META TYPE content"
|
40
|
+
* When there are multiple meta commitments of the same type, later overrides earlier
|
41
|
+
*/
|
42
|
+
meta: {
|
43
|
+
image?: string_url_image;
|
44
|
+
link?: string;
|
45
|
+
title?: string;
|
46
|
+
description?: string;
|
47
|
+
[key: string]: string | undefined;
|
48
|
+
};
|
49
|
+
/**
|
50
|
+
* Parameters found in the agent source
|
51
|
+
* Supports two different notations for the same syntax feature:
|
52
|
+
* - @Parameter (single word parameter starting with @)
|
53
|
+
* - {parameterName} or {parameter with multiple words} or {parameterName: description text}
|
16
54
|
*/
|
17
|
-
|
55
|
+
parameters: BookParameter[];
|
18
56
|
};
|
19
57
|
/**
|
20
58
|
* TODO: [🕛] Unite `AgentBasicInformation`, `ChatParticipant`, `LlmExecutionTools` + `LlmToolsMetadata`
|
@@ -1,36 +1,18 @@
|
|
1
|
+
import type { AvailableModel } from '../../execution/AvailableModel';
|
2
|
+
import { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
1
3
|
import type { string_model_name } from '../../types/typeAliases';
|
2
4
|
import type { AgentModelRequirements } from './AgentModelRequirements';
|
3
5
|
import type { string_book } from './string_book';
|
4
6
|
/**
|
5
7
|
* Creates model requirements for an agent based on its source
|
6
|
-
* Results are cached to improve performance for repeated calls with the same agentSource and modelName
|
7
8
|
*
|
8
9
|
* There are 2 similar functions:
|
9
10
|
* - `parseAgentSource` which is a lightweight parser for agent source, it parses basic information and its purpose is to be quick and synchronous. The commitments there are hardcoded.
|
10
|
-
* - `createAgentModelRequirements` which is an asynchronous function that creates model requirements it applies each commitment one by one and works
|
11
|
+
* - `createAgentModelRequirements` which is an asynchronous function that creates model requirements it applies each commitment one by one and works asynchronous.
|
11
12
|
*
|
12
13
|
* @public exported from `@promptbook/core`
|
13
14
|
*/
|
14
|
-
export declare function createAgentModelRequirements(agentSource: string_book, modelName?: string_model_name): Promise<AgentModelRequirements>;
|
15
|
-
/**
|
16
|
-
* Clears the cache for createAgentModelRequirements
|
17
|
-
* Useful when agent sources are updated and cached results should be invalidated
|
18
|
-
*
|
19
|
-
* @private
|
20
|
-
*/
|
21
|
-
export declare function clearAgentModelRequirementsCache(): void;
|
22
|
-
/**
|
23
|
-
* Removes cache entries for a specific agent source (all model variants)
|
24
|
-
* @param agentSource The agent source to remove from cache
|
25
|
-
* @private
|
26
|
-
*/
|
27
|
-
export declare function invalidateAgentModelRequirementsCache(agentSource: string_book): void;
|
28
|
-
/**
|
29
|
-
* Gets the current cache size (for debugging/monitoring)
|
30
|
-
*
|
31
|
-
* @private
|
32
|
-
*/
|
33
|
-
export declare function getAgentModelRequirementsCacheSize(): number;
|
15
|
+
export declare function createAgentModelRequirements(agentSource: string_book, modelName?: string_model_name, availableModels?: readonly AvailableModel[], llmTools?: LlmExecutionTools): Promise<AgentModelRequirements>;
|
34
16
|
/**
|
35
17
|
* Extracts MCP servers from agent source
|
36
18
|
*
|
package/esm/typings/src/book-2.0/agent-source/createAgentModelRequirementsWithCommitments.d.ts
CHANGED
@@ -6,31 +6,6 @@ import type { string_book } from './string_book';
|
|
6
6
|
* This function uses a reduce-like pattern where each commitment applies its changes
|
7
7
|
* to build the final requirements starting from a basic empty model
|
8
8
|
*
|
9
|
-
* @
|
9
|
+
* @public exported from `@promptbook/core`
|
10
10
|
*/
|
11
11
|
export declare function createAgentModelRequirementsWithCommitments(agentSource: string_book, modelName?: string_model_name): Promise<AgentModelRequirements>;
|
12
|
-
/**
|
13
|
-
* Cached version of createAgentModelRequirementsWithCommitments
|
14
|
-
* This maintains the same caching behavior as the original function
|
15
|
-
*
|
16
|
-
* @private
|
17
|
-
*/
|
18
|
-
export declare function createAgentModelRequirementsWithCommitmentsCached(agentSource: string_book, modelName?: string_model_name): Promise<AgentModelRequirements>;
|
19
|
-
/**
|
20
|
-
* Clears the cache for createAgentModelRequirementsWithCommitments
|
21
|
-
*
|
22
|
-
* @private
|
23
|
-
*/
|
24
|
-
export declare function clearAgentModelRequirementsWithCommitmentsCache(): void;
|
25
|
-
/**
|
26
|
-
* Removes cache entries for a specific agent source
|
27
|
-
*
|
28
|
-
* @private
|
29
|
-
*/
|
30
|
-
export declare function invalidateAgentModelRequirementsWithCommitmentsCache(agentSource: string_book): void;
|
31
|
-
/**
|
32
|
-
* Gets the current cache size
|
33
|
-
*
|
34
|
-
* @private
|
35
|
-
*/
|
36
|
-
export declare function getAgentModelRequirementsWithCommitmentsCacheSize(): number;
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import type { BookParameter } from './AgentBasicInformation';
|
2
|
+
/**
|
3
|
+
* Parses parameters from text using both supported notations:
|
4
|
+
* 1. @Parameter - single word parameter starting with @
|
5
|
+
* 2. {parameterName} or {parameter with multiple words} or {parameterName: description text}
|
6
|
+
*
|
7
|
+
* Both notations represent the same syntax feature - parameters
|
8
|
+
*
|
9
|
+
* @param text - Text to extract parameters from
|
10
|
+
* @returns Array of parsed parameters with unified representation
|
11
|
+
* @public exported from `@promptbook/core`
|
12
|
+
*/
|
13
|
+
export declare function parseParameters(text: string): BookParameter[];
|
@@ -15,8 +15,8 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
15
15
|
*
|
16
16
|
* @private [🪔] Maybe export the commitments through some package
|
17
17
|
*/
|
18
|
-
export declare class ActionCommitmentDefinition extends BaseCommitmentDefinition<'ACTION'> {
|
19
|
-
constructor();
|
18
|
+
export declare class ActionCommitmentDefinition extends BaseCommitmentDefinition<'ACTION' | 'ACTIONS'> {
|
19
|
+
constructor(type?: 'ACTION' | 'ACTIONS');
|
20
20
|
/**
|
21
21
|
* Short one-line description of ACTION.
|
22
22
|
*/
|
@@ -33,6 +33,12 @@ export declare class ActionCommitmentDefinition extends BaseCommitmentDefinition
|
|
33
33
|
* @private [🪔] Maybe export the commitments through some package
|
34
34
|
*/
|
35
35
|
export declare const ActionCommitment: ActionCommitmentDefinition;
|
36
|
+
/**
|
37
|
+
* Singleton instance of the ACTIONS commitment definition
|
38
|
+
*
|
39
|
+
* @private [🪔] Maybe export the commitments through some package
|
40
|
+
*/
|
41
|
+
export declare const ActionsCommitment: ActionCommitmentDefinition;
|
36
42
|
/**
|
37
43
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
38
44
|
*/
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* DELETE commitment definition
|
5
|
+
*
|
6
|
+
* The DELETE commitment (and its aliases CANCEL, DISCARD, REMOVE) is used to
|
7
|
+
* remove or disregard certain information or context. This can be useful for
|
8
|
+
* overriding previous commitments or removing unwanted behaviors.
|
9
|
+
*
|
10
|
+
* Example usage in agent source:
|
11
|
+
*
|
12
|
+
* ```book
|
13
|
+
* DELETE Previous formatting requirements
|
14
|
+
* CANCEL All emotional responses
|
15
|
+
* DISCARD Technical jargon explanations
|
16
|
+
* REMOVE Casual conversational style
|
17
|
+
* ```
|
18
|
+
*
|
19
|
+
* @private [🪔] Maybe export the commitments through some package
|
20
|
+
*/
|
21
|
+
export declare class DeleteCommitmentDefinition extends BaseCommitmentDefinition<'DELETE' | 'CANCEL' | 'DISCARD' | 'REMOVE'> {
|
22
|
+
constructor(type: 'DELETE' | 'CANCEL' | 'DISCARD' | 'REMOVE');
|
23
|
+
/**
|
24
|
+
* Short one-line description of DELETE/CANCEL/DISCARD/REMOVE.
|
25
|
+
*/
|
26
|
+
get description(): string;
|
27
|
+
/**
|
28
|
+
* Markdown documentation for DELETE commitment.
|
29
|
+
*/
|
30
|
+
get documentation(): string;
|
31
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
32
|
+
}
|
33
|
+
/**
|
34
|
+
* Singleton instances of the DELETE commitment definitions with aliases
|
35
|
+
*
|
36
|
+
* @private [🪔] Maybe export the commitments through some package
|
37
|
+
*/
|
38
|
+
export declare const DeleteCommitment: DeleteCommitmentDefinition;
|
39
|
+
/**
|
40
|
+
* Singleton instances of the DELETE commitment definitions with aliases
|
41
|
+
*
|
42
|
+
* @private [🪔] Maybe export the commitments through some package
|
43
|
+
*/
|
44
|
+
export declare const CancelCommitment: DeleteCommitmentDefinition;
|
45
|
+
/**
|
46
|
+
* Singleton instances of the DELETE commitment definitions with aliases
|
47
|
+
*
|
48
|
+
* @private [🪔] Maybe export the commitments through some package
|
49
|
+
*/
|
50
|
+
export declare const DiscardCommitment: DeleteCommitmentDefinition;
|
51
|
+
/**
|
52
|
+
* Singleton instances of the DELETE commitment definitions with aliases
|
53
|
+
*
|
54
|
+
* @private [🪔] Maybe export the commitments through some package
|
55
|
+
*/
|
56
|
+
export declare const RemoveCommitment: DeleteCommitmentDefinition;
|
57
|
+
/**
|
58
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
59
|
+
*/
|
@@ -16,8 +16,8 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
16
16
|
*
|
17
17
|
* @private [🪔] Maybe export the commitments through some package
|
18
18
|
*/
|
19
|
-
export declare class FormatCommitmentDefinition extends BaseCommitmentDefinition<'FORMAT'> {
|
20
|
-
constructor();
|
19
|
+
export declare class FormatCommitmentDefinition extends BaseCommitmentDefinition<'FORMAT' | 'FORMATS'> {
|
20
|
+
constructor(type?: 'FORMAT' | 'FORMATS');
|
21
21
|
/**
|
22
22
|
* Short one-line description of FORMAT.
|
23
23
|
*/
|
@@ -34,6 +34,12 @@ export declare class FormatCommitmentDefinition extends BaseCommitmentDefinition
|
|
34
34
|
* @private [🪔] Maybe export the commitments through some package
|
35
35
|
*/
|
36
36
|
export declare const FormatCommitment: FormatCommitmentDefinition;
|
37
|
+
/**
|
38
|
+
* Singleton instance of the FORMATS commitment definition
|
39
|
+
*
|
40
|
+
* @private [🪔] Maybe export the commitments through some package
|
41
|
+
*/
|
42
|
+
export declare const FormatsCommitment: FormatCommitmentDefinition;
|
37
43
|
/**
|
38
44
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
39
45
|
*/
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* GOAL commitment definition
|
5
|
+
*
|
6
|
+
* The GOAL commitment defines the main goal which should be achieved by the AI assistant.
|
7
|
+
* There can be multiple goals. Later goals are more important than earlier goals.
|
8
|
+
*
|
9
|
+
* Example usage in agent source:
|
10
|
+
*
|
11
|
+
* ```book
|
12
|
+
* GOAL Help users understand complex technical concepts
|
13
|
+
* GOAL Provide accurate and up-to-date information
|
14
|
+
* GOAL Always prioritize user safety and ethical guidelines
|
15
|
+
* ```
|
16
|
+
*
|
17
|
+
* @private [🪔] Maybe export the commitments through some package
|
18
|
+
*/
|
19
|
+
export declare class GoalCommitmentDefinition extends BaseCommitmentDefinition<'GOAL' | 'GOALS'> {
|
20
|
+
constructor(type?: 'GOAL' | 'GOALS');
|
21
|
+
/**
|
22
|
+
* Short one-line description of GOAL.
|
23
|
+
*/
|
24
|
+
get description(): string;
|
25
|
+
/**
|
26
|
+
* Markdown documentation for GOAL commitment.
|
27
|
+
*/
|
28
|
+
get documentation(): string;
|
29
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
30
|
+
}
|
31
|
+
/**
|
32
|
+
* Singleton instance of the GOAL commitment definition
|
33
|
+
*
|
34
|
+
* @private [🪔] Maybe export the commitments through some package
|
35
|
+
*/
|
36
|
+
export declare const GoalCommitment: GoalCommitmentDefinition;
|
37
|
+
/**
|
38
|
+
* Singleton instance of the GOALS commitment definition
|
39
|
+
*
|
40
|
+
* @private [🪔] Maybe export the commitments through some package
|
41
|
+
*/
|
42
|
+
export declare const GoalsCommitment: GoalCommitmentDefinition;
|
43
|
+
/**
|
44
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
45
|
+
*/
|
@@ -35,7 +35,7 @@ export declare class KnowledgeCommitmentDefinition extends BaseCommitmentDefinit
|
|
35
35
|
private isUrl;
|
36
36
|
}
|
37
37
|
/**
|
38
|
-
* Singleton instance of the KNOWLEDGE commitment definition
|
38
|
+
* Singleton instance of the KNOWLEDGE commitment definition !!!!
|
39
39
|
*
|
40
40
|
* @private [🪔] Maybe export the commitments through some package
|
41
41
|
*/
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* MEMORY commitment definition
|
5
|
+
*
|
6
|
+
* The MEMORY commitment is similar to KNOWLEDGE but has a focus on remembering past
|
7
|
+
* interactions and user preferences. It helps the agent maintain context about the
|
8
|
+
* user's history, preferences, and previous conversations.
|
9
|
+
*
|
10
|
+
* Example usage in agent source:
|
11
|
+
*
|
12
|
+
* ```book
|
13
|
+
* MEMORY User prefers detailed technical explanations
|
14
|
+
* MEMORY Previously worked on React projects
|
15
|
+
* MEMORY Timezone: UTC-5 (Eastern Time)
|
16
|
+
* ```
|
17
|
+
*
|
18
|
+
* @private [🪔] Maybe export the commitments through some package
|
19
|
+
*/
|
20
|
+
export declare class MemoryCommitmentDefinition extends BaseCommitmentDefinition<'MEMORY' | 'MEMORIES'> {
|
21
|
+
constructor(type?: 'MEMORY' | 'MEMORIES');
|
22
|
+
/**
|
23
|
+
* Short one-line description of MEMORY.
|
24
|
+
*/
|
25
|
+
get description(): string;
|
26
|
+
/**
|
27
|
+
* Markdown documentation for MEMORY commitment.
|
28
|
+
*/
|
29
|
+
get documentation(): string;
|
30
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
31
|
+
}
|
32
|
+
/**
|
33
|
+
* Singleton instance of the MEMORY commitment definition
|
34
|
+
*
|
35
|
+
* @private [🪔] Maybe export the commitments through some package
|
36
|
+
*/
|
37
|
+
export declare const MemoryCommitment: MemoryCommitmentDefinition;
|
38
|
+
/**
|
39
|
+
* Singleton instance of the MEMORIES commitment definition
|
40
|
+
*
|
41
|
+
* @private [🪔] Maybe export the commitments through some package
|
42
|
+
*/
|
43
|
+
export declare const MemoriesCommitment: MemoryCommitmentDefinition;
|
44
|
+
/**
|
45
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
46
|
+
*/
|
@@ -0,0 +1,47 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* MESSAGE commitment definition
|
5
|
+
*
|
6
|
+
* The MESSAGE commitment contains 1:1 text of the message which AI assistant already
|
7
|
+
* sent during the conversation. Later messages are later in the conversation.
|
8
|
+
* It is similar to EXAMPLE but it is not example, it is the real message which
|
9
|
+
* AI assistant already sent.
|
10
|
+
*
|
11
|
+
* Example usage in agent source:
|
12
|
+
*
|
13
|
+
* ```book
|
14
|
+
* MESSAGE Hello! How can I help you today?
|
15
|
+
* MESSAGE I understand you're looking for information about our services.
|
16
|
+
* MESSAGE Based on your requirements, I'd recommend our premium package.
|
17
|
+
* ```
|
18
|
+
*
|
19
|
+
* @private [🪔] Maybe export the commitments through some package
|
20
|
+
*/
|
21
|
+
export declare class MessageCommitmentDefinition extends BaseCommitmentDefinition<'MESSAGE' | 'MESSAGES'> {
|
22
|
+
constructor(type?: 'MESSAGE' | 'MESSAGES');
|
23
|
+
/**
|
24
|
+
* Short one-line description of MESSAGE.
|
25
|
+
*/
|
26
|
+
get description(): string;
|
27
|
+
/**
|
28
|
+
* Markdown documentation for MESSAGE commitment.
|
29
|
+
*/
|
30
|
+
get documentation(): string;
|
31
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
32
|
+
}
|
33
|
+
/**
|
34
|
+
* Singleton instance of the MESSAGE commitment definition
|
35
|
+
*
|
36
|
+
* @private [🪔] Maybe export the commitments through some package
|
37
|
+
*/
|
38
|
+
export declare const MessageCommitment: MessageCommitmentDefinition;
|
39
|
+
/**
|
40
|
+
* Singleton instance of the MESSAGES commitment definition
|
41
|
+
*
|
42
|
+
* @private [🪔] Maybe export the commitments through some package
|
43
|
+
*/
|
44
|
+
export declare const MessagesCommitment: MessageCommitmentDefinition;
|
45
|
+
/**
|
46
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
47
|
+
*/
|
@@ -0,0 +1,62 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* META commitment definition
|
5
|
+
*
|
6
|
+
* The META commitment handles all meta-information about the agent such as:
|
7
|
+
* - META IMAGE: Sets the agent's avatar/profile image URL
|
8
|
+
* - META LINK: Provides profile/source links for the person the agent models
|
9
|
+
* - META TITLE: Sets the agent's display title
|
10
|
+
* - META DESCRIPTION: Sets the agent's description
|
11
|
+
* - META [ANYTHING]: Any other meta information in uppercase format
|
12
|
+
*
|
13
|
+
* These commitments are special because they don't affect the system message,
|
14
|
+
* but are handled separately in the parsing logic for profile display.
|
15
|
+
*
|
16
|
+
* Example usage in agent source:
|
17
|
+
*
|
18
|
+
* ```book
|
19
|
+
* META IMAGE https://example.com/avatar.jpg
|
20
|
+
* META LINK https://twitter.com/username
|
21
|
+
* META TITLE Professional Assistant
|
22
|
+
* META DESCRIPTION An AI assistant specialized in business tasks
|
23
|
+
* META AUTHOR John Doe
|
24
|
+
* META VERSION 1.0
|
25
|
+
* ```
|
26
|
+
*
|
27
|
+
* @private [🪔] Maybe export the commitments through some package
|
28
|
+
*/
|
29
|
+
export declare class MetaCommitmentDefinition extends BaseCommitmentDefinition<`META${string}`> {
|
30
|
+
constructor();
|
31
|
+
/**
|
32
|
+
* Short one-line description of META commitments.
|
33
|
+
*/
|
34
|
+
get description(): string;
|
35
|
+
/**
|
36
|
+
* Markdown documentation for META commitment.
|
37
|
+
*/
|
38
|
+
get documentation(): string;
|
39
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
40
|
+
/**
|
41
|
+
* Extracts meta information from the content based on the meta type
|
42
|
+
* This is used by the parsing logic
|
43
|
+
*/
|
44
|
+
extractMetaValue(metaType: string, content: string): string | null;
|
45
|
+
/**
|
46
|
+
* Validates if the provided content is a valid URL (for IMAGE and LINK types)
|
47
|
+
*/
|
48
|
+
isValidUrl(content: string): boolean;
|
49
|
+
/**
|
50
|
+
* Checks if this is a known meta type
|
51
|
+
*/
|
52
|
+
isKnownMetaType(metaType: string): boolean;
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* Singleton instance of the META commitment definition
|
56
|
+
*
|
57
|
+
* @private [🪔] Maybe export the commitments through some package
|
58
|
+
*/
|
59
|
+
export declare const MetaCommitment: MetaCommitmentDefinition;
|
60
|
+
/**
|
61
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
62
|
+
*/
|
@@ -4,20 +4,29 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
4
4
|
* MODEL commitment definition
|
5
5
|
*
|
6
6
|
* The MODEL commitment specifies which AI model to use and can also set
|
7
|
-
* model-specific parameters like temperature, topP, and
|
7
|
+
* model-specific parameters like temperature, topP, topK, and maxTokens.
|
8
8
|
*
|
9
|
-
*
|
9
|
+
* Supports multiple syntax variations:
|
10
10
|
*
|
11
|
+
* Single-line format:
|
11
12
|
* ```book
|
12
13
|
* MODEL gpt-4
|
13
14
|
* MODEL claude-3-opus temperature=0.3
|
14
15
|
* MODEL gpt-3.5-turbo temperature=0.8 topP=0.9
|
15
16
|
* ```
|
16
17
|
*
|
18
|
+
* Multi-line named parameter format:
|
19
|
+
* ```book
|
20
|
+
* MODEL NAME gpt-4
|
21
|
+
* MODEL TEMPERATURE 0.7
|
22
|
+
* MODEL TOP_P 0.9
|
23
|
+
* MODEL MAX_TOKENS 2048
|
24
|
+
* ```
|
25
|
+
*
|
17
26
|
* @private [🪔] Maybe export the commitments through some package
|
18
27
|
*/
|
19
|
-
export declare class ModelCommitmentDefinition extends BaseCommitmentDefinition<'MODEL'> {
|
20
|
-
constructor();
|
28
|
+
export declare class ModelCommitmentDefinition extends BaseCommitmentDefinition<'MODEL' | 'MODELS'> {
|
29
|
+
constructor(type?: 'MODEL' | 'MODELS');
|
21
30
|
/**
|
22
31
|
* Short one-line description of MODEL.
|
23
32
|
*/
|
@@ -27,6 +36,18 @@ export declare class ModelCommitmentDefinition extends BaseCommitmentDefinition<
|
|
27
36
|
*/
|
28
37
|
get documentation(): string;
|
29
38
|
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
39
|
+
/**
|
40
|
+
* Check if the first part is a known named parameter
|
41
|
+
*/
|
42
|
+
private isNamedParameter;
|
43
|
+
/**
|
44
|
+
* Parse the new named parameter format: "MODEL TEMPERATURE 0.7"
|
45
|
+
*/
|
46
|
+
private parseNamedParameter;
|
47
|
+
/**
|
48
|
+
* Parse the legacy format: "MODEL gpt-4 temperature=0.3 topP=0.9"
|
49
|
+
*/
|
50
|
+
private parseLegacyFormat;
|
30
51
|
}
|
31
52
|
/**
|
32
53
|
* Singleton instance of the MODEL commitment definition
|
@@ -34,6 +55,12 @@ export declare class ModelCommitmentDefinition extends BaseCommitmentDefinition<
|
|
34
55
|
* @private [🪔] Maybe export the commitments through some package
|
35
56
|
*/
|
36
57
|
export declare const ModelCommitment: ModelCommitmentDefinition;
|
58
|
+
/**
|
59
|
+
* Singleton instance of the MODELS commitment definition
|
60
|
+
*
|
61
|
+
* @private [🪔] Maybe export the commitments through some package
|
62
|
+
*/
|
63
|
+
export declare const ModelsCommitment: ModelCommitmentDefinition;
|
37
64
|
/**
|
38
65
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
39
66
|
*/
|
@@ -26,8 +26,8 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
26
26
|
*
|
27
27
|
* @private [🪔] Maybe export the commitments through some package
|
28
28
|
*/
|
29
|
-
export declare class NoteCommitmentDefinition extends BaseCommitmentDefinition<'NOTE'> {
|
30
|
-
constructor();
|
29
|
+
export declare class NoteCommitmentDefinition extends BaseCommitmentDefinition<'NOTE' | 'NOTES' | 'COMMENT' | 'NONCE'> {
|
30
|
+
constructor(type?: 'NOTE' | 'NOTES' | 'COMMENT' | 'NONCE');
|
31
31
|
/**
|
32
32
|
* Short one-line description of NOTE.
|
33
33
|
*/
|
@@ -44,6 +44,24 @@ export declare class NoteCommitmentDefinition extends BaseCommitmentDefinition<'
|
|
44
44
|
* @private [🪔] Maybe export the commitments through some package
|
45
45
|
*/
|
46
46
|
export declare const NoteCommitment: NoteCommitmentDefinition;
|
47
|
+
/**
|
48
|
+
* Singleton instance of the NOTES commitment definition
|
49
|
+
*
|
50
|
+
* @private [🪔] Maybe export the commitments through some package
|
51
|
+
*/
|
52
|
+
export declare const NotesCommitment: NoteCommitmentDefinition;
|
53
|
+
/**
|
54
|
+
* Singleton instance of the COMMENT commitment definition
|
55
|
+
*
|
56
|
+
* @private [🪔] Maybe export the commitments through some package
|
57
|
+
*/
|
58
|
+
export declare const CommentCommitment: NoteCommitmentDefinition;
|
59
|
+
/**
|
60
|
+
* Singleton instance of the NONCE commitment definition
|
61
|
+
*
|
62
|
+
* @private [🪔] Maybe export the commitments through some package
|
63
|
+
*/
|
64
|
+
export declare const NonceCommitment: NoteCommitmentDefinition;
|
47
65
|
/**
|
48
66
|
* [💞] Ignore a discrepancy between file name and entity name
|
49
67
|
*/
|
@@ -23,8 +23,8 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
|
23
23
|
*
|
24
24
|
* @private [🪔] Maybe export the commitments through some package
|
25
25
|
*/
|
26
|
-
export declare class PersonaCommitmentDefinition extends BaseCommitmentDefinition<'PERSONA'> {
|
27
|
-
constructor();
|
26
|
+
export declare class PersonaCommitmentDefinition extends BaseCommitmentDefinition<'PERSONA' | 'PERSONAE'> {
|
27
|
+
constructor(type?: 'PERSONA' | 'PERSONAE');
|
28
28
|
/**
|
29
29
|
* Short one-line description of PERSONA.
|
30
30
|
*/
|
@@ -41,6 +41,12 @@ export declare class PersonaCommitmentDefinition extends BaseCommitmentDefinitio
|
|
41
41
|
* @private [🪔] Maybe export the commitments through some package
|
42
42
|
*/
|
43
43
|
export declare const PersonaCommitment: PersonaCommitmentDefinition;
|
44
|
+
/**
|
45
|
+
* Singleton instance of the PERSONAE commitment definition
|
46
|
+
*
|
47
|
+
* @private [🪔] Maybe export the commitments through some package
|
48
|
+
*/
|
49
|
+
export declare const PersonaeCommitment: PersonaCommitmentDefinition;
|
44
50
|
/**
|
45
51
|
* Note: [💞] Ignore a discrepancy between file name and entity name
|
46
52
|
*/
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import type { AgentModelRequirements } from '../../agent-source/AgentModelRequirements';
|
2
|
+
import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
|
3
|
+
/**
|
4
|
+
* SCENARIO commitment definition
|
5
|
+
*
|
6
|
+
* The SCENARIO commitment defines a specific situation or context in which the AI
|
7
|
+
* assistant should operate. It helps to set the scene for the AI's responses.
|
8
|
+
* Later scenarios are more important than earlier scenarios.
|
9
|
+
*
|
10
|
+
* Example usage in agent source:
|
11
|
+
*
|
12
|
+
* ```book
|
13
|
+
* SCENARIO You are in a customer service call center during peak hours
|
14
|
+
* SCENARIO The customer is frustrated and has been on hold for 20 minutes
|
15
|
+
* SCENARIO This is the customer's third call about the same issue
|
16
|
+
* ```
|
17
|
+
*
|
18
|
+
* @private [🪔] Maybe export the commitments through some package
|
19
|
+
*/
|
20
|
+
export declare class ScenarioCommitmentDefinition extends BaseCommitmentDefinition<'SCENARIO' | 'SCENARIOS'> {
|
21
|
+
constructor(type?: 'SCENARIO' | 'SCENARIOS');
|
22
|
+
/**
|
23
|
+
* Short one-line description of SCENARIO.
|
24
|
+
*/
|
25
|
+
get description(): string;
|
26
|
+
/**
|
27
|
+
* Markdown documentation for SCENARIO commitment.
|
28
|
+
*/
|
29
|
+
get documentation(): string;
|
30
|
+
applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
|
31
|
+
}
|
32
|
+
/**
|
33
|
+
* Singleton instance of the SCENARIO commitment definition
|
34
|
+
*
|
35
|
+
* @private [🪔] Maybe export the commitments through some package
|
36
|
+
*/
|
37
|
+
export declare const ScenarioCommitment: ScenarioCommitmentDefinition;
|
38
|
+
/**
|
39
|
+
* Singleton instance of the SCENARIOS commitment definition
|
40
|
+
*
|
41
|
+
* @private [🪔] Maybe export the commitments through some package
|
42
|
+
*/
|
43
|
+
export declare const ScenariosCommitment: ScenarioCommitmentDefinition;
|
44
|
+
/**
|
45
|
+
* Note: [💞] Ignore a discrepancy between file name and entity name
|
46
|
+
*/
|