@promptbook/types 0.103.0-43 โ†’ 0.103.0-45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/README.md +6 -18
  2. package/esm/typings/src/_packages/types.index.d.ts +8 -0
  3. package/esm/typings/src/book-components/AvatarProfile/AvatarProfile/AvatarProfile.d.ts +5 -0
  4. package/esm/typings/src/collection/agent-collection/AgentCollection.d.ts +2 -28
  5. package/esm/typings/src/collection/agent-collection/constructors/agent-collection-in-supabase/AgentCollectionInSupabase.d.ts +61 -9
  6. package/esm/typings/src/errors/DatabaseError.d.ts +3 -0
  7. package/esm/typings/src/llm-providers/_multiple/getSingleLlmExecutionTools.d.ts +1 -0
  8. package/esm/typings/src/llm-providers/_multiple/joinLlmExecutionTools.d.ts +1 -0
  9. package/esm/typings/src/llm-providers/agent/CreateAgentLlmExecutionToolsOptions.d.ts +2 -1
  10. package/esm/typings/src/llm-providers/anthropic-claude/anthropic-claude-models.d.ts +1 -1
  11. package/esm/typings/src/llm-providers/google/google-models.d.ts +1 -1
  12. package/esm/typings/src/llm-providers/openai/openai-models.d.ts +1 -1
  13. package/esm/typings/src/remote-server/startAgentServer.d.ts +3 -0
  14. package/esm/typings/src/remote-server/startRemoteServer.d.ts +1 -0
  15. package/esm/typings/src/types/typeAliases.d.ts +19 -1
  16. package/esm/typings/src/utils/color/$randomColor.d.ts +1 -0
  17. package/esm/typings/src/utils/random/$generateBookBoilerplate.d.ts +5 -2
  18. package/esm/typings/src/utils/random/$randomAgentPersona.d.ts +9 -0
  19. package/esm/typings/src/utils/random/$randomFullnameWithColor.d.ts +13 -0
  20. package/esm/typings/src/utils/random/$randomItem.d.ts +9 -0
  21. package/esm/typings/src/utils/random/$randomSeed.d.ts +3 -0
  22. package/esm/typings/src/utils/random/$randomToken.d.ts +1 -0
  23. package/esm/typings/src/version.d.ts +1 -1
  24. package/package.json +2 -2
  25. package/esm/typings/src/commands/_common/parseCommand.test.d.ts +0 -1
package/README.md CHANGED
@@ -9,8 +9,8 @@ Turn your company's scattered knowledge into AI ready Books
9
9
 
10
10
 
11
11
 
12
- [![NPM Version of ![Promptbook logo - cube with letters P and B](./design/logo-h1.png) Promptbook](https://badge.fury.io/js/promptbook.svg)](https://www.npmjs.com/package/promptbook)
13
- [![Quality of package ![Promptbook logo - cube with letters P and B](./design/logo-h1.png) Promptbook](https://packagequality.com/shield/promptbook.svg)](https://packagequality.com/#?package=promptbook)
12
+ [![NPM Version of ![Promptbook logo](./design/logo-h1.png) Promptbook](https://badge.fury.io/js/promptbook.svg)](https://www.npmjs.com/package/promptbook)
13
+ [![Quality of package ![Promptbook logo](./design/logo-h1.png) Promptbook](https://packagequality.com/shield/promptbook.svg)](https://packagequality.com/#?package=promptbook)
14
14
  [![Known Vulnerabilities](https://snyk.io/test/github/webgptorg/promptbook/badge.svg)](https://snyk.io/test/github/webgptorg/promptbook)
15
15
  [![๐Ÿงช Test Books](https://github.com/webgptorg/promptbook/actions/workflows/test-books.yml/badge.svg)](https://github.com/webgptorg/promptbook/actions/workflows/test-books.yml)
16
16
  [![๐Ÿงช Test build](https://github.com/webgptorg/promptbook/actions/workflows/test-build.yml/badge.svg)](https://github.com/webgptorg/promptbook/actions/workflows/test-build.yml)
@@ -23,11 +23,7 @@ Turn your company's scattered knowledge into AI ready Books
23
23
 
24
24
  ## ๐ŸŒŸ New Features
25
25
 
26
- - ๐Ÿš€ **GPT-5 Support** - Now includes OpenAI's most advanced language model with unprecedented reasoning capabilities and 200K context window
27
- - ๐Ÿ’ก VS Code support for `.book` files with syntax highlighting and IntelliSense
28
- - ๐Ÿณ Official Docker image (`hejny/promptbook`) for seamless containerized usage
29
- - ๐Ÿ”ฅ Native support for OpenAI `o3-mini`, GPT-4 and other leading LLMs
30
- - ๐Ÿ” DeepSeek integration for advanced knowledge search
26
+ - **Gemini 3 Support**
31
27
 
32
28
 
33
29
 
@@ -362,7 +358,7 @@ Promptbook Engine will automatically enforce this knowledge during interactions.
362
358
  Your job is to provide legal advice and support to the company and its employees.<br/>
363
359
  You are knowledgeable, professional, and detail-oriented.<br/>
364
360
  <br/>
365
- **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
361
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
366
362
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
367
363
 
368
364
  </td></tr></table>
@@ -384,7 +380,7 @@ You are knowledgeable, professional, and detail-oriented.<br/>
384
380
  **RULE** Always ensure compliance with laws and regulations.<br/>
385
381
  **RULE** Never provide legal advice outside your area of expertise.<br/>
386
382
  **RULE** Never provide legal advice about criminal law.<br/>
387
- **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
383
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
388
384
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
389
385
 
390
386
  </td></tr></table>
@@ -404,7 +400,7 @@ You are knowledgeable, professional, and detail-oriented.<br/>
404
400
  **RULE** Always ensure compliance with laws and regulations.<br/>
405
401
  **RULE** Never provide legal advice outside your area of expertise.<br/>
406
402
  **RULE** Never provide legal advice about criminal law.<br/>
407
- **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
403
+ **KNOWLEDGE** https://company.com/company-policies.pdf<br/>
408
404
  **KNOWLEDGE** https://company.com/internal-documents/employee-handbook.docx<br/>
409
405
  **ACTION** When a user asks about an issue that could be treated as a crime, notify legal@company.com.<br/>
410
406
 
@@ -455,14 +451,10 @@ Now you want to use it. There are several ways how to write your first book:
455
451
 
456
452
  We have written ai asistant in book who can help you with writing your first book.
457
453
 
458
-
459
-
460
454
  #### Your AI twin
461
455
 
462
456
  Copy your own behavior, personality, and knowledge into book and create your AI twin. It can help you with your work, personal life, or any other task.
463
457
 
464
-
465
-
466
458
  #### AI persona workpool
467
459
 
468
460
  Or you can pick from our library of pre-written books for various roles and tasks. You can find books for customer support, coding, marketing, sales, HR, legal, and many other roles.
@@ -582,8 +574,6 @@ Join our growing community of developers and users:
582
574
 
583
575
 
584
576
 
585
-
586
-
587
577
  ## ๐Ÿ“š Documentation
588
578
 
589
579
  See detailed guides and API reference in the [docs](https://github.com/webgptorg/promptbook/discussions/categories/concepts) or [online](https://discord.gg/x3QWNaa89N).
@@ -660,8 +650,6 @@ The following glossary is used to clarify certain concepts:
660
650
 
661
651
  _Note: This section is not a complete dictionary, more list of general AI / LLM terms that has connection with Promptbook_
662
652
 
663
-
664
-
665
653
  ### ๐Ÿ’ฏ Core concepts
666
654
 
667
655
  - [๐Ÿ“š Collection of pipelines](https://github.com/webgptorg/promptbook/discussions/65)
@@ -216,6 +216,7 @@ import type { string_reserved_parameter_name } from '../types/typeAliases';
216
216
  import type { ReservedParameters } from '../types/typeAliases';
217
217
  import type { string_title } from '../types/typeAliases';
218
218
  import type { string_agent_name } from '../types/typeAliases';
219
+ import type { string_agent_name_in_book } from '../types/typeAliases';
219
220
  import type { string_persona_description } from '../types/typeAliases';
220
221
  import type { string_model_description } from '../types/typeAliases';
221
222
  import type { string_knowledge_source_content } from '../types/typeAliases';
@@ -274,6 +275,8 @@ import type { string_absolute_dirname } from '../types/typeAliases';
274
275
  import type { string_relative_dirname } from '../types/typeAliases';
275
276
  import type { string_dirname } from '../types/typeAliases';
276
277
  import type { string_person_fullname } from '../types/typeAliases';
278
+ import type { string_person_firstname } from '../types/typeAliases';
279
+ import type { string_person_lastname } from '../types/typeAliases';
277
280
  import type { string_person_profile } from '../types/typeAliases';
278
281
  import type { string_license } from '../types/typeAliases';
279
282
  import type { string_legal_entity } from '../types/typeAliases';
@@ -342,6 +345,7 @@ import type { OrderJsonOptions } from '../utils/normalization/orderJson';
342
345
  import type { empty_object } from '../utils/organization/empty_object';
343
346
  import type { really_any } from '../utils/organization/really_any';
344
347
  import type { TODO_any } from '../utils/organization/TODO_any';
348
+ import type { RandomFullnameWithColorResult } from '../utils/random/$randomFullnameWithColor';
345
349
  import type { CheckSerializableAsJsonOptions } from '../utils/serialization/checkSerializableAsJson';
346
350
  import type { ExportJsonOptions } from '../utils/serialization/exportJson';
347
351
  import type { ITakeChain } from '../utils/take/interfaces/ITakeChain';
@@ -564,6 +568,7 @@ export type { string_reserved_parameter_name };
564
568
  export type { ReservedParameters };
565
569
  export type { string_title };
566
570
  export type { string_agent_name };
571
+ export type { string_agent_name_in_book };
567
572
  export type { string_persona_description };
568
573
  export type { string_model_description };
569
574
  export type { string_knowledge_source_content };
@@ -622,6 +627,8 @@ export type { string_absolute_dirname };
622
627
  export type { string_relative_dirname };
623
628
  export type { string_dirname };
624
629
  export type { string_person_fullname };
630
+ export type { string_person_firstname };
631
+ export type { string_person_lastname };
625
632
  export type { string_person_profile };
626
633
  export type { string_license };
627
634
  export type { string_legal_entity };
@@ -690,6 +697,7 @@ export type { OrderJsonOptions };
690
697
  export type { empty_object };
691
698
  export type { really_any };
692
699
  export type { TODO_any };
700
+ export type { RandomFullnameWithColorResult };
693
701
  export type { CheckSerializableAsJsonOptions };
694
702
  export type { ExportJsonOptions };
695
703
  export type { ITakeChain };
@@ -1,3 +1,4 @@
1
+ import { CSSProperties } from 'react';
1
2
  import type { AgentBasicInformation } from '../../../book-2.0/agent-source/AgentBasicInformation';
2
3
  import type { string_book } from '../../../book-2.0/agent-source/string_book';
3
4
  import type { string_css_class } from '../../../types/typeAliases';
@@ -19,6 +20,10 @@ export type AvatarProfileProps = {
19
20
  * Optional CSS class name which will be added to root <div> element
20
21
  */
21
22
  readonly className?: string_css_class;
23
+ /**
24
+ * Optional CSS style which will be added to root <div/> element
25
+ */
26
+ readonly style?: CSSProperties;
22
27
  };
23
28
  /**
24
29
  * Shows a box with user avatar, name and description
@@ -1,8 +1,4 @@
1
- import type { Promisable } from 'type-fest';
2
- import type { AgentBasicInformation } from '../../book-2.0/agent-source/AgentBasicInformation';
3
- import type { string_book } from '../../book-2.0/agent-source/string_book';
4
- import { Agent } from '../../llm-providers/agent/Agent';
5
- import type { string_agent_name } from '../../types/typeAliases';
1
+ import { AgentCollectionInSupabase } from './constructors/agent-collection-in-supabase/AgentCollectionInSupabase';
6
2
  /**
7
3
  * Collection that groups together multiple AI Agents
8
4
  *
@@ -10,29 +6,7 @@ import type { string_agent_name } from '../../types/typeAliases';
10
6
  * - `AgentCollection` - which groups together AI Agents
11
7
  * - `PipelineCollection` - which groups together *(deprecated)* pipelines
12
8
  */
13
- export type AgentCollection = {
14
- /**
15
- * Gets all agents in the collection
16
- */
17
- listAgents(): Promisable<ReadonlyArray<AgentBasicInformation>>;
18
- /**
19
- * Get one agent by its name
20
- *
21
- * Note: !!!! Agents are existing independently of you getting them or not, you can get the same agent multiple times.
22
- * Note: Agents are changed by interacting with `Agent` objects directly. Only creation and deletion is done via the collection.
23
- */
24
- spawnAgent(agentName: string_agent_name): Promisable<Agent>;
25
- /**
26
- * Creates a new agent in the collection
27
- *
28
- * Note: You can set 'PARENT' in the agent source to inherit from another agent in the collection.
29
- */
30
- createAgent(agentSource: string_book): Promisable<AgentBasicInformation>;
31
- /**
32
- * Deletes an agent from the collection
33
- */
34
- deleteAgent(agentName: string_agent_name): Promisable<void>;
35
- };
9
+ export type AgentCollection = AgentCollectionInSupabase;
36
10
  /**
37
11
  * TODO: [๐Ÿง ][๐Ÿš™] `AgentXxx` vs `AgentsXxx` naming convention
38
12
  */
@@ -1,12 +1,10 @@
1
1
  import type { SupabaseClient } from '@supabase/supabase-js';
2
+ import { BehaviorSubject } from 'rxjs';
2
3
  import type { AgentBasicInformation } from '../../../../book-2.0/agent-source/AgentBasicInformation';
3
4
  import type { string_book } from '../../../../book-2.0/agent-source/string_book';
4
5
  import type { CommonToolsOptions } from '../../../../execution/CommonToolsOptions';
5
- import type { ExecutionTools } from '../../../../execution/ExecutionTools';
6
- import { Agent } from '../../../../llm-providers/agent/Agent';
7
6
  import type { PrepareAndScrapeOptions } from '../../../../prepare/PrepareAndScrapeOptions';
8
7
  import type { string_agent_name } from '../../../../types/typeAliases';
9
- import type { AgentCollection } from '../../AgentCollection';
10
8
  import type { AgentsDatabaseSchema } from './AgentsDatabaseSchema';
11
9
  /**
12
10
  * Agent collection stored in Supabase table
@@ -16,28 +14,81 @@ import type { AgentsDatabaseSchema } from './AgentsDatabaseSchema';
16
14
  * @public exported from `@promptbook/core`
17
15
  * <- TODO: !!! Move to `@promptbook/supabase` package
18
16
  */
19
- export declare class AgentCollectionInSupabase implements AgentCollection {
17
+ export declare class AgentCollectionInSupabase {
20
18
  private readonly supabaseClient;
21
- private readonly tools?;
22
19
  readonly options?: (PrepareAndScrapeOptions & CommonToolsOptions) | undefined;
23
20
  /**
24
21
  * @param rootPath - path to the directory with agents
25
- * @param tools - Execution tools to be used in `Agent` itself and listing the agents
22
+ * @param tools - Execution tools to be used in !!! `Agent` itself and listing the agents
26
23
  * @param options - Options for the collection creation
27
24
  */
28
- constructor(supabaseClient: SupabaseClient<AgentsDatabaseSchema>, tools?: Pick<ExecutionTools, "llm" | "fs" | "scrapers"> | undefined, options?: (PrepareAndScrapeOptions & CommonToolsOptions) | undefined);
25
+ constructor(supabaseClient: SupabaseClient<AgentsDatabaseSchema>, options?: (PrepareAndScrapeOptions & CommonToolsOptions) | undefined);
29
26
  /**
30
27
  * Cached defined execution tools
31
28
  */
32
- private _definedTools;
33
29
  /**
34
30
  * Gets all agents in the collection
35
31
  */
36
32
  listAgents(): Promise<ReadonlyArray<AgentBasicInformation>>;
37
33
  /**
38
34
  * !!!
35
+ * /
36
+ public async spawnAgent(agentName: string_agent_name): Promise<Agent> {
37
+
38
+ // <- TODO: !!! ENOENT: no such file or directory, open 'C:\Users\me\work\ai\promptbook\agents\examples\Asistent pro Lล VP.book
39
+ const { isVerbose = DEFAULT_IS_VERBOSE } = this.options || {};
40
+ const tools = await this.getTools();
41
+
42
+ const agentSourceValue = validateBook(await tools.fs!.readFile(agentSourcePath, 'utf-8'));
43
+ const agentSource = new BehaviorSubject(agentSourceValue);
44
+
45
+ // Note: Write file whenever agent source changes
46
+ agentSource.subscribe(async (newSource) => {
47
+ if (isVerbose) {
48
+ console.info(colors.cyan(`Writing agent source to file ${agentSourcePath}`));
49
+ }
50
+ await forTime(500); // <- TODO: [๐Ÿ™Œ] !!! Remove
51
+ await tools.fs!.writeFile(agentSourcePath, newSource, 'utf-8');
52
+ });
53
+
54
+ // Note: Watch file for external changes
55
+ for await (const event of tools.fs!.watch(agentSourcePath)) {
56
+ // <- TODO: !!!! Solve the memory freeing when the watching is no longer needed
57
+
58
+ if (event.eventType !== 'change') {
59
+ continue;
60
+ }
61
+
62
+ if (isVerbose) {
63
+ console.info(
64
+ colors.cyan(`Detected external change in agent source file ${agentSourcePath}, reloading`),
65
+ );
66
+ }
67
+ await forTime(500); // <- TODO: [๐Ÿ™Œ] !!! Remove
68
+ const newSource = validateBook(await tools.fs!.readFile(agentSourcePath, 'utf-8'));
69
+ agentSource.next(newSource);
70
+ }
71
+
72
+ // TODO: [๐Ÿ™Œ] !!!! Debug the infinite loop when file is changed externally and agent source is updated which causes file to be written again
73
+
74
+ const agent = new Agent({
75
+ ...this.options,
76
+ agentSource,
77
+ executionTools: this.tools || {},
78
+ });
79
+
80
+ if (isVerbose) {
81
+ console.info(colors.cyan(`Created agent "${agent.agentName}" from source file ${agentSourcePath}`));
82
+ }
83
+
84
+ return agent;
85
+ * /
86
+ }
87
+ */
88
+ /**
89
+ * !!!@@@
39
90
  */
40
- spawnAgent(agentName: string_agent_name): Promise<Agent>;
91
+ getAgentSource(agentName: string_agent_name): Promise<BehaviorSubject<string_book>>;
41
92
  /**
42
93
  * Creates a new agent in the collection
43
94
  *
@@ -50,6 +101,7 @@ export declare class AgentCollectionInSupabase implements AgentCollection {
50
101
  deleteAgent(agentName: string_agent_name): Promise<void>;
51
102
  }
52
103
  /**
104
+ * TODO: !!!! Implement it here correctly and update JSDoc comments here, and on interface + other implementations
53
105
  * TODO: Write unit test
54
106
  * TODO: [๐Ÿง ][๐Ÿš™] `AgentXxx` vs `AgentsXxx` naming convention
55
107
  */
@@ -7,3 +7,6 @@ export declare class DatabaseError extends Error {
7
7
  readonly name = "DatabaseError";
8
8
  constructor(message: string);
9
9
  }
10
+ /**
11
+ * TODO: !!!! Explain that NotFoundError (!!! and other specific errors) has priority over DatabaseError in some contexts
12
+ */
@@ -7,5 +7,6 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
7
7
  */
8
8
  export declare function getSingleLlmExecutionTools(oneOrMoreLlmExecutionTools: undefined | LlmExecutionTools | ReadonlyArray<LlmExecutionTools>): LlmExecutionTools | MultipleLlmExecutionTools;
9
9
  /**
10
+ * TODO: [๐Ÿ™†] `getSingleLlmExecutionTools` vs `joinLlmExecutionTools` - explain difference or pick one
10
11
  * TODO: [๐Ÿ‘ทโ€โ™‚๏ธ] @@@ Manual about construction of llmTools
11
12
  */
@@ -18,5 +18,6 @@ import { MultipleLlmExecutionTools } from './MultipleLlmExecutionTools';
18
18
  */
19
19
  export declare function joinLlmExecutionTools(title: string_title & string_markdown_text, ...llmExecutionTools: ReadonlyArray<LlmExecutionTools>): MultipleLlmExecutionTools;
20
20
  /**
21
+ * TODO: [๐Ÿ™†] `getSingleLlmExecutionTools` vs `joinLlmExecutionTools` - explain difference or pick one
21
22
  * TODO: [๐Ÿ‘ทโ€โ™‚๏ธ] @@@ Manual about construction of llmTools
22
23
  */
@@ -1,10 +1,11 @@
1
1
  import type { string_book } from '../../book-2.0/agent-source/string_book';
2
+ import { CommonToolsOptions } from '../../execution/CommonToolsOptions';
2
3
  import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
3
4
  import { OpenAiAssistantExecutionTools } from '../openai/OpenAiAssistantExecutionTools';
4
5
  /**
5
6
  * Options for creating AgentLlmExecutionTools
6
7
  */
7
- export type CreateAgentLlmExecutionToolsOptions = {
8
+ export type CreateAgentLlmExecutionToolsOptions = CommonToolsOptions & {
8
9
  /**
9
10
  * The underlying LLM execution tools to wrap
10
11
  */
@@ -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: Synced with official API docs at 2025-08-20
6
+ * Note: Synced with official API docs at 2025-11-19
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 Google models with descriptions
5
5
  *
6
- * Note: Synced with official API docs at 2025-08-20
6
+ * Note: Synced with official API docs at 2025-11-19
7
7
  *
8
8
  * @see https://ai.google.dev/models/gemini
9
9
  * @public exported from `@promptbook/google`
@@ -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: Synced with official API docs at 2025-08-20
5
+ * Note: Synced with official API docs at 2025-11-19
6
6
  *
7
7
  * @see https://platform.openai.com/docs/models/
8
8
  * @see https://openai.com/api/pricing/
@@ -21,3 +21,6 @@ type AgentsServerOptions = {
21
21
  */
22
22
  export declare function startAgentServer(options: AgentsServerOptions): Promise<TODO_any>;
23
23
  export {};
24
+ /**
25
+ * Note: [๐ŸŸข] Code in this file should never be never released in packages that could be imported into browser environment
26
+ */
@@ -25,4 +25,5 @@ export declare function startRemoteServer<TCustomOptions = undefined>(options: R
25
25
  * TODO: [๐Ÿƒ] Pass here some security token to prevent malitious usage and/or DDoS
26
26
  * TODO: [0] Set unavailable models as undefined in `RemoteLlmExecutionTools` NOT throw error here
27
27
  * TODO: Allow to constrain anonymous mode for specific models / providers
28
+ * Note: [๐ŸŸข] Code in this file should never be never released in packages that could be imported into browser environment
28
29
  */
@@ -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)
@@ -8,4 +8,5 @@ export declare function $randomColor(): Color;
8
8
  /**
9
9
  * TODO: !! Use Internally Color.fromValues
10
10
  * TODO: !! randomColorWithAlpha
11
+ * TODO: [๐Ÿคถ] Maybe export through `@promptbook/utils` or `@promptbook/random` package
11
12
  */
@@ -1,14 +1,14 @@
1
1
  import type { PartialDeep } from 'type-fest';
2
2
  import type { AgentBasicInformation } from '../../book-2.0/agent-source/AgentBasicInformation';
3
3
  import { string_book } from '../../book-2.0/agent-source/string_book';
4
- import { string_agent_name } from '../../types/typeAliases';
4
+ import { string_agent_name_in_book } from '../../types/typeAliases';
5
5
  type GenerateBookBoilerplateOptions = PartialDeep<Omit<AgentBasicInformation, 'parameters'>> & {
6
6
  /**
7
7
  * Name of the parent agent to inherit from
8
8
  *
9
9
  * @default 'Adam'
10
10
  */
11
- parentAgentName?: string_agent_name;
11
+ parentAgentName?: string_agent_name_in_book;
12
12
  };
13
13
  /**
14
14
  * Generates boilerplate for a new agent book
@@ -20,3 +20,6 @@ type GenerateBookBoilerplateOptions = PartialDeep<Omit<AgentBasicInformation, 'p
20
20
  */
21
21
  export declare function $generateBookBoilerplate(options?: GenerateBookBoilerplateOptions): string_book;
22
22
  export {};
23
+ /**
24
+ * TODO: [๐Ÿคถ] Maybe export through `@promptbook/utils` or `@promptbook/random` package
25
+ */
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @@@@
3
+ *
4
+ * @private internal helper function
5
+ */
6
+ export declare function $randomAgentPersona(): string;
7
+ /**
8
+ * TODO: [๐Ÿคถ] Maybe export through `@promptbook/utils` or `@promptbook/random` package
9
+ */
@@ -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
+ */
@@ -8,3 +8,6 @@ import type { number_seed } from '../../types/typeAliases';
8
8
  * @private internal helper function
9
9
  */
10
10
  export declare function $randomSeed(): number_seed;
11
+ /**
12
+ * TODO: [๐Ÿคถ] Maybe export through `@promptbook/utils` or `@promptbook/random` package
13
+ */
@@ -10,5 +10,6 @@ import type { string_token } from '../../types/typeAliases';
10
10
  */
11
11
  export declare function $randomToken(randomness: number): string_token;
12
12
  /**
13
+ * TODO: [๐Ÿคถ] Maybe export through `@promptbook/utils` or `@promptbook/random` package
13
14
  * TODO: Maybe use nanoid instead https://github.com/ai/nanoid
14
15
  */
@@ -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-42`).
18
+ * It follows semantic versioning (e.g., `0.103.0-44`).
19
19
  *
20
20
  * @generated
21
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/types",
3
- "version": "0.103.0-43",
3
+ "version": "0.103.0-45",
4
4
  "description": "Promptbook: Turn your company's scattered knowledge into AI ready books",
5
5
  "private": false,
6
6
  "sideEffects": false,
@@ -92,6 +92,6 @@
92
92
  },
93
93
  "typings": "./esm/typings/src/_packages/types.index.d.ts",
94
94
  "peerDependencies": {
95
- "@promptbook/core": "0.103.0-43"
95
+ "@promptbook/core": "0.103.0-45"
96
96
  }
97
97
  }