@promptbook/types 0.112.0-73 → 0.112.0-80

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 (70) hide show
  1. package/README.md +9 -9
  2. package/esm/src/avatars/types/AvatarVisualDefinition.d.ts +1 -1
  3. package/esm/src/avatars/visuals/octopus3d2AvatarVisual.d.ts +7 -0
  4. package/esm/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +37 -0
  5. package/esm/src/book-components/Chat/save/_common/chatExportRendering.d.ts +47 -0
  6. package/esm/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +12 -0
  7. package/esm/src/book-components/Chat/save/index.d.ts +2 -2
  8. package/esm/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.d.ts +5 -3
  9. package/esm/src/book-components/Chat/save/pdf/buildChatPdf.d.ts +3 -3
  10. package/esm/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +1 -1
  11. package/esm/src/cli/cli-commands/agent/agentProjectPaths.d.ts +8 -8
  12. package/esm/src/cli/cli-commands/agent/initializeAgentRunnerCommand.d.ts +1 -1
  13. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +56 -0
  14. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.test.d.ts +1 -0
  15. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +7 -0
  16. package/esm/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +7 -0
  17. package/esm/src/cli/cli-commands/agents-server/init.d.ts +9 -0
  18. package/esm/src/cli/cli-commands/agents-server/init.test.d.ts +1 -0
  19. package/esm/src/cli/cli-commands/agents-server/initializeAgentsServerProjectConfiguration.d.ts +17 -0
  20. package/esm/src/cli/cli-commands/agents-server/printAgentsServerInitializationSummary.d.ts +7 -0
  21. package/esm/src/cli/cli-commands/agents-server/run.d.ts +14 -0
  22. package/esm/src/cli/cli-commands/agents-server/run.test.d.ts +1 -0
  23. package/esm/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +23 -0
  24. package/esm/src/cli/cli-commands/agents-server.d.ts +8 -0
  25. package/esm/src/cli/cli-commands/common/projectInitialization.d.ts +65 -0
  26. package/esm/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +44 -0
  27. package/esm/src/cli/common/$deprecateCliCommand.d.ts +8 -0
  28. package/esm/src/cli/common/$deprecateCliCommand.test.d.ts +1 -0
  29. package/esm/src/utils/color/Color.d.ts +4 -44
  30. package/esm/src/utils/color/ColorValue.d.ts +55 -0
  31. package/esm/src/utils/color/isHexColorString.d.ts +10 -0
  32. package/esm/src/utils/color/parseColorString.d.ts +11 -0
  33. package/esm/src/version.d.ts +1 -1
  34. package/package.json +2 -2
  35. package/umd/src/avatars/types/AvatarVisualDefinition.d.ts +1 -1
  36. package/umd/src/avatars/visuals/octopus3d2AvatarVisual.d.ts +7 -0
  37. package/umd/src/avatars/visuals/octopus3dAvatarVisualShared.d.ts +37 -0
  38. package/umd/src/book-components/Chat/save/_common/chatExportRendering.d.ts +47 -0
  39. package/umd/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +12 -0
  40. package/umd/src/book-components/Chat/save/index.d.ts +2 -2
  41. package/umd/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.d.ts +5 -3
  42. package/umd/src/book-components/Chat/save/pdf/buildChatPdf.d.ts +3 -3
  43. package/umd/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +1 -1
  44. package/umd/src/cli/cli-commands/agent/agentProjectPaths.d.ts +8 -8
  45. package/umd/src/cli/cli-commands/agent/initializeAgentRunnerCommand.d.ts +1 -1
  46. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +56 -0
  47. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.test.d.ts +1 -0
  48. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerEnvFile.d.ts +7 -0
  49. package/umd/src/cli/cli-commands/agents-server/ensureAgentsServerGitignoreFile.d.ts +7 -0
  50. package/umd/src/cli/cli-commands/agents-server/init.d.ts +9 -0
  51. package/umd/src/cli/cli-commands/agents-server/init.test.d.ts +1 -0
  52. package/umd/src/cli/cli-commands/agents-server/initializeAgentsServerProjectConfiguration.d.ts +17 -0
  53. package/umd/src/cli/cli-commands/agents-server/printAgentsServerInitializationSummary.d.ts +7 -0
  54. package/umd/src/cli/cli-commands/agents-server/run.d.ts +14 -0
  55. package/umd/src/cli/cli-commands/agents-server/run.test.d.ts +1 -0
  56. package/umd/src/cli/cli-commands/agents-server/startAgentsServer.d.ts +23 -0
  57. package/umd/src/cli/cli-commands/agents-server.d.ts +8 -0
  58. package/umd/src/cli/cli-commands/common/projectInitialization.d.ts +65 -0
  59. package/umd/src/cli/cli-commands/common/promptRunnerCliOptions.d.ts +44 -0
  60. package/umd/src/cli/common/$deprecateCliCommand.d.ts +8 -0
  61. package/umd/src/cli/common/$deprecateCliCommand.test.d.ts +1 -0
  62. package/umd/src/utils/color/Color.d.ts +4 -44
  63. package/umd/src/utils/color/ColorValue.d.ts +55 -0
  64. package/umd/src/utils/color/isHexColorString.d.ts +10 -0
  65. package/umd/src/utils/color/parseColorString.d.ts +11 -0
  66. package/umd/src/version.d.ts +1 -1
  67. package/esm/src/cli/cli-commands/coder/appendBlock.d.ts +0 -6
  68. package/esm/src/cli/cli-commands/coder/readTextFileIfExists.d.ts +0 -6
  69. package/umd/src/cli/cli-commands/coder/appendBlock.d.ts +0 -6
  70. package/umd/src/cli/cli-commands/coder/readTextFileIfExists.d.ts +0 -6
@@ -2,6 +2,7 @@ import type { string_color } from '../../types/string_person_fullname';
2
2
  import type { string_url_image } from '../../types/string_url_image';
3
3
  import type { WithTake } from '../take/interfaces/ITakeChain';
4
4
  import { CSS_COLORS } from './css-colors';
5
+ import { ColorValue } from './ColorValue';
5
6
  /**
6
7
  * Color object represents an RGB color with alpha channel
7
8
  *
@@ -9,11 +10,7 @@ import { CSS_COLORS } from './css-colors';
9
10
  *
10
11
  * @public exported from `@promptbook/color`
11
12
  */
12
- export declare class Color {
13
- readonly red: number;
14
- readonly green: number;
15
- readonly blue: number;
16
- readonly alpha: number;
13
+ export declare class Color extends ColorValue {
17
14
  /**
18
15
  * Creates a new Color instance from miscellaneous formats
19
16
  * - It can receive Color instance and just return the same instance
@@ -117,43 +114,6 @@ export declare class Color {
117
114
  * @param alpha number from 0 (transparent) to 255 (opaque)
118
115
  */
119
116
  private constructor();
120
- /**
121
- * Shortcut for `red` property
122
- * Number from 0 to 255
123
- * @alias red
124
- */
125
- get r(): number;
126
- /**
127
- * Shortcut for `green` property
128
- * Number from 0 to 255
129
- * @alias green
130
- */
131
- get g(): number;
132
- /**
133
- * Shortcut for `blue` property
134
- * Number from 0 to 255
135
- * @alias blue
136
- */
137
- get b(): number;
138
- /**
139
- * Shortcut for `alpha` property
140
- * Number from 0 (transparent) to 255 (opaque)
141
- * @alias alpha
142
- */
143
- get a(): number;
144
- /**
145
- * Shortcut for `alpha` property
146
- * Number from 0 (transparent) to 255 (opaque)
147
- * @alias alpha
148
- */
149
- get opacity(): number;
150
- /**
151
- * Shortcut for 1-`alpha` property
152
- */
153
- get transparency(): number;
154
- clone(): WithTake<Color>;
155
- toString(): string_color;
156
- toHex(): string_color;
157
- toRgb(): string_color;
158
- toHsl(): string_color;
117
+ protected createColor(red: number, green: number, blue: number, alpha: number): Color;
118
+ private static fromColorChannels;
159
119
  }
@@ -0,0 +1,55 @@
1
+ import type { string_color } from '../../types/string_person_fullname';
2
+ import type { WithTake } from '../take/interfaces/ITakeChain';
3
+ import type { Color } from './Color';
4
+ /**
5
+ * Shared immutable channel storage and serialization helpers for `Color`.
6
+ *
7
+ * @private base class of Color
8
+ */
9
+ export declare abstract class ColorValue {
10
+ readonly red: number;
11
+ readonly green: number;
12
+ readonly blue: number;
13
+ readonly alpha: number;
14
+ protected constructor(red: number, green: number, blue: number, alpha?: number);
15
+ /**
16
+ * Shortcut for `red` property
17
+ * Number from 0 to 255
18
+ * @alias red
19
+ */
20
+ get r(): number;
21
+ /**
22
+ * Shortcut for `green` property
23
+ * Number from 0 to 255
24
+ * @alias green
25
+ */
26
+ get g(): number;
27
+ /**
28
+ * Shortcut for `blue` property
29
+ * Number from 0 to 255
30
+ * @alias blue
31
+ */
32
+ get b(): number;
33
+ /**
34
+ * Shortcut for `alpha` property
35
+ * Number from 0 (transparent) to 255 (opaque)
36
+ * @alias alpha
37
+ */
38
+ get a(): number;
39
+ /**
40
+ * Shortcut for `alpha` property
41
+ * Number from 0 (transparent) to 255 (opaque)
42
+ * @alias alpha
43
+ */
44
+ get opacity(): number;
45
+ /**
46
+ * Shortcut for 1-`alpha` property
47
+ */
48
+ get transparency(): number;
49
+ clone(): WithTake<Color>;
50
+ toString(): string_color;
51
+ toHex(): string_color;
52
+ toRgb(): string_color;
53
+ toHsl(): string_color;
54
+ protected abstract createColor(red: number, green: number, blue: number, alpha: number): Color;
55
+ }
@@ -0,0 +1,10 @@
1
+ import type { string_color } from '../../types/string_person_fullname';
2
+ /**
3
+ * Checks if the given value is a valid hex color string
4
+ *
5
+ * @param value - value to check
6
+ * @returns true if the value is a valid hex color string (e.g., `#009edd`, `#fff`, etc.)
7
+ *
8
+ * @private function of Color
9
+ */
10
+ export declare function isHexColorString(value: unknown): value is string_color;
@@ -0,0 +1,11 @@
1
+ import type { string_color } from '../../types/string_person_fullname';
2
+ import type { ColorChannelSet } from './parsers/ColorChannelSet';
3
+ /**
4
+ * Parses a supported color string into RGBA channels.
5
+ *
6
+ * @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`,...
7
+ * @returns RGBA channel values.
8
+ *
9
+ * @private function of Color
10
+ */
11
+ export declare function parseColorString(color: string_color): ColorChannelSet;
@@ -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.112.0-72`).
18
+ * It follows semantic versioning (e.g., `0.112.0-79`).
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.112.0-73",
3
+ "version": "0.112.0-80",
4
4
  "description": "Promptbook: Create persistent AI agents that turn your company's scattered knowledge into action",
5
5
  "private": false,
6
6
  "sideEffects": false,
@@ -96,6 +96,6 @@
96
96
  "types": "./esm/src/_packages/types.index.d.ts",
97
97
  "typings": "./esm/src/_packages/types.index.d.ts",
98
98
  "peerDependencies": {
99
- "@promptbook/core": "0.112.0-73"
99
+ "@promptbook/core": "0.112.0-80"
100
100
  }
101
101
  }
@@ -7,7 +7,7 @@ import type { AvatarDefinition } from './AvatarDefinition';
7
7
  *
8
8
  * @private shared contract for the avatar rendering system
9
9
  */
10
- export type AvatarVisualId = 'pixel-art' | 'octopus' | 'octopus2' | 'octopus3' | 'octopus3d' | 'ascii-octopus' | 'minecraft' | 'minecraft2' | 'fractal' | 'orb';
10
+ export type AvatarVisualId = 'pixel-art' | 'octopus' | 'octopus2' | 'octopus3' | 'octopus3d' | 'octopus3d2' | 'ascii-octopus' | 'minecraft' | 'minecraft2' | 'fractal' | 'orb';
11
11
  /**
12
12
  * Derived color palette used by avatar visuals.
13
13
  *
@@ -0,0 +1,7 @@
1
+ import type { AvatarVisualDefinition } from '../types/AvatarVisualDefinition';
2
+ /**
3
+ * Octopus 3D 2 avatar visual.
4
+ *
5
+ * @private built-in avatar visual
6
+ */
7
+ export declare const octopus3d2AvatarVisual: AvatarVisualDefinition;
@@ -0,0 +1,37 @@
1
+ import type { AvatarPalette } from '../types/AvatarVisualDefinition';
2
+ import { type Point3D, type ProjectedPoint } from './avatar3dProjectionShared';
3
+ /**
4
+ * Eye-style knobs shared by the proper-3D octopus visuals.
5
+ *
6
+ * @private helper of the 3D octopus avatar visuals
7
+ */
8
+ export type OctopusProjectedEyeStyle = {
9
+ readonly irisScale: number;
10
+ readonly pupilWidthScale: number;
11
+ readonly pupilHeightScale: number;
12
+ readonly upperLidArchRatio: number;
13
+ readonly upperLidInsetRatio: number;
14
+ readonly lowerLidOpacity: number;
15
+ };
16
+ /**
17
+ * Draws one projected eye on a rotated octopus surface.
18
+ *
19
+ * @private helper of the 3D octopus avatar visuals
20
+ */
21
+ export declare function drawProjectedOrganicEye(context: CanvasRenderingContext2D, localCenter: Point3D, radiusX: number, radiusY: number, center: Point3D, rotationX: number, rotationY: number, sceneCenterX: number, sceneCenterY: number, size: number, palette: AvatarPalette, timeMs: number, phase: number, interaction: {
22
+ readonly gazeX: number;
23
+ readonly gazeY: number;
24
+ readonly intensity: number;
25
+ }, eyeStyle: OctopusProjectedEyeStyle): void;
26
+ /**
27
+ * Draws a subtle projected mouth arc across the front of a rotated octopus surface.
28
+ *
29
+ * @private helper of the 3D octopus avatar visuals
30
+ */
31
+ export declare function drawProjectedOrganicMouth(context: CanvasRenderingContext2D, localPoints: readonly [Point3D, Point3D, Point3D], center: Point3D, rotationX: number, rotationY: number, sceneCenterX: number, sceneCenterY: number, palette: AvatarPalette, size: number): void;
32
+ /**
33
+ * Draws one filled projected quad.
34
+ *
35
+ * @private helper of the 3D octopus avatar visuals
36
+ */
37
+ export declare function drawProjectedQuad(context: CanvasRenderingContext2D, corners: readonly [ProjectedPoint, ProjectedPoint, ProjectedPoint, ProjectedPoint], fillStyle: string): void;
@@ -1,4 +1,6 @@
1
+ import type { ChatMessage } from '../../types/ChatMessage';
1
2
  import type { ChatParticipant } from '../../types/ChatParticipant';
3
+ import type { ParsedCitation } from '../../utils/parseCitationsFromContent';
2
4
  /**
3
5
  * Minimal participant visuals needed by chat exports.
4
6
  *
@@ -8,6 +10,33 @@ export type ChatExportParticipantVisuals = {
8
10
  readonly displayName: string;
9
11
  readonly accentColor: string;
10
12
  };
13
+ /**
14
+ * One numbered source collected from rendered chat message citations.
15
+ *
16
+ * @private internal utility of chat save format definitions
17
+ */
18
+ export type ChatExportCitationFootnote = {
19
+ readonly number: number;
20
+ readonly citation: ParsedCitation;
21
+ };
22
+ /**
23
+ * Document-wide citation footnotes collected while rendering chat exports.
24
+ *
25
+ * @private internal utility of chat save format definitions
26
+ */
27
+ export type ChatExportCitationFootnoteRegistry = {
28
+ readonly footnotes: Array<ChatExportCitationFootnote>;
29
+ readonly footnoteBySourceKey: Map<string, ChatExportCitationFootnote>;
30
+ };
31
+ /**
32
+ * Render-ready chat message citation payload using document-wide footnote numbers.
33
+ *
34
+ * @private internal utility of chat save format definitions
35
+ */
36
+ export type ChatExportCitationRenderModel = {
37
+ readonly content: ChatMessage['content'];
38
+ readonly footnotes: ReadonlyArray<ChatExportCitationFootnote>;
39
+ };
11
40
  /**
12
41
  * Formats exported timestamps into a compact human-readable label.
13
42
  *
@@ -26,3 +55,21 @@ export declare function buildChatExportParticipantMap(participants: ReadonlyArra
26
55
  * @private internal utility of chat save format definitions
27
56
  */
28
57
  export declare function resolveChatExportParticipantVisuals(participants: ReadonlyMap<string, ChatParticipant>, sender: string): ChatExportParticipantVisuals;
58
+ /**
59
+ * Creates an empty document-wide citation footnote registry.
60
+ *
61
+ * @private internal utility of chat save format definitions
62
+ */
63
+ export declare function createChatExportCitationFootnoteRegistry(): ChatExportCitationFootnoteRegistry;
64
+ /**
65
+ * Converts one message to markdown content with document-wide numbered citation references.
66
+ *
67
+ * @private internal utility of chat save format definitions
68
+ */
69
+ export declare function createChatExportCitationRenderModel(citationFootnotes: ChatExportCitationFootnoteRegistry, message: Pick<ChatMessage, 'content' | 'citations'>): ChatExportCitationRenderModel;
70
+ /**
71
+ * Creates a readable source label for one citation footnote.
72
+ *
73
+ * @private internal utility of chat save format definitions
74
+ */
75
+ export declare function formatChatExportCitationFootnoteLabel(footnote: ChatExportCitationFootnote, href?: string): string;
@@ -1,5 +1,17 @@
1
1
  import type { ChatMessage } from '../../types/ChatMessage';
2
2
  import type { ChatParticipant } from '../../types/ChatParticipant';
3
+ /**
4
+ * Class name that gives the PDF renderer the same root styles as the standalone HTML document body.
5
+ *
6
+ * @private Internal helper shared by HTML and PDF chat exports.
7
+ */
8
+ export declare const CHAT_HTML_EXPORT_RENDER_ROOT_CLASS_NAME = "chat-html-export-render-root";
9
+ /**
10
+ * Builds the standalone HTML chat export document shared by HTML downloads and PDF rendering.
11
+ *
12
+ * @private Internal helper shared by HTML and PDF chat exports.
13
+ */
14
+ export declare function buildChatHtml(title: string, messages: ReadonlyArray<ChatMessage>, participants: ReadonlyArray<ChatParticipant>): string;
3
15
  /**
4
16
  * HTML export plugin
5
17
  *
@@ -26,7 +26,7 @@ export declare const CHAT_SAVE_FORMATS: readonly [{
26
26
  }, {
27
27
  readonly formatName: "md";
28
28
  readonly label: "Markdown";
29
- readonly getContent: ({ messages, participants }: {
29
+ readonly getContent: ({ title, messages, participants }: {
30
30
  readonly title: string;
31
31
  readonly messages: readonly import("../types/ChatMessage").ChatMessage[];
32
32
  readonly participants: readonly import("../types/ChatParticipant").ChatParticipant[];
@@ -60,7 +60,7 @@ export declare const CHAT_SAVE_FORMATS: readonly [{
60
60
  readonly title: string;
61
61
  readonly messages: readonly import("../types/ChatMessage").ChatMessage[];
62
62
  readonly participants: readonly import("../types/ChatParticipant").ChatParticipant[];
63
- }) => Uint8Array;
63
+ }) => Promise<Uint8Array>;
64
64
  readonly mimeType: "application/pdf";
65
65
  readonly fileExtension: "pdf";
66
66
  }];
@@ -1,3 +1,5 @@
1
+ import type { ChatMessage } from '../../types/ChatMessage';
2
+ import type { ChatParticipant } from '../../types/ChatParticipant';
1
3
  /**
2
4
  * Markdown export plugin
3
5
  *
@@ -6,10 +8,10 @@
6
8
  export declare const mdSaveFormatDefinition: {
7
9
  readonly formatName: "md";
8
10
  readonly label: "Markdown";
9
- readonly getContent: ({ messages, participants }: {
11
+ readonly getContent: ({ title, messages, participants }: {
10
12
  readonly title: string;
11
- readonly messages: readonly import("../../types/ChatMessage").ChatMessage[];
12
- readonly participants: readonly import("../../types/ChatParticipant").ChatParticipant[];
13
+ readonly messages: readonly ChatMessage[];
14
+ readonly participants: readonly ChatParticipant[];
13
15
  }) => string;
14
16
  readonly mimeType: "text/markdown";
15
17
  readonly fileExtension: "md";
@@ -1,13 +1,13 @@
1
1
  import type { ChatMessage } from '../../types/ChatMessage';
2
2
  import type { ChatParticipant } from '../../types/ChatParticipant';
3
3
  /**
4
- * Builds a polished PDF representation of the provided chat.
4
+ * Builds a PDF from the same standalone HTML document used by the HTML chat download.
5
5
  *
6
6
  * @param title - Title used in the PDF heading and metadata.
7
7
  * @param messages - Messages that should be included in the PDF export.
8
- * @param participants - Optional participant metadata to resolve sender names.
8
+ * @param participants - Participant metadata used by the HTML chat export.
9
9
  * @returns Binary data for the generated PDF file.
10
10
  *
11
11
  * @private Internal helper used by `pdfSaveFormatDefinition`.
12
12
  */
13
- export declare function buildChatPdf(title: string, messages: ReadonlyArray<ChatMessage>, participants?: ReadonlyArray<ChatParticipant>): Uint8Array;
13
+ export declare function buildChatPdf(title: string, messages: ReadonlyArray<ChatMessage>, participants: ReadonlyArray<ChatParticipant>): Promise<Uint8Array>;
@@ -10,7 +10,7 @@ export declare const pdfSaveFormatDefinition: {
10
10
  readonly title: string;
11
11
  readonly messages: readonly import("../../types/ChatMessage").ChatMessage[];
12
12
  readonly participants: readonly import("../../types/ChatParticipant").ChatParticipant[];
13
- }) => Uint8Array;
13
+ }) => Promise<Uint8Array>;
14
14
  readonly mimeType: "application/pdf";
15
15
  readonly fileExtension: "pdf";
16
16
  };
@@ -4,6 +4,12 @@
4
4
  * @private internal utility of `ptbk agent`
5
5
  */
6
6
  export declare const AGENT_BOOK_FILE_PATH = "agent.book";
7
+ /**
8
+ * Relative path to local knowledge files initialized by `ptbk agent init`.
9
+ *
10
+ * @private internal utility of `ptbk agent`
11
+ */
12
+ export declare const AGENT_KNOWLEDGE_DIRECTORY_PATH = "knowledge";
7
13
  /**
8
14
  * Relative path to the message queue root initialized by `ptbk agent init`.
9
15
  *
@@ -23,19 +29,13 @@ export declare const AGENT_QUEUED_MESSAGES_DIRECTORY_PATH: string;
23
29
  */
24
30
  export declare const AGENT_FINISHED_MESSAGES_DIRECTORY_PATH: string;
25
31
  /**
26
- * Relative path to local knowledge files referenced by the default agent prompt.
27
- *
28
- * @private internal utility of `ptbk agent`
29
- */
30
- export declare const AGENT_KNOWLEDGE_DIRECTORY_PATH = "knowledge";
31
- /**
32
- * Relative path to local agent documentation initialized by `ptbk agent init`.
32
+ * Relative path to generated local agent documentation initialized by `ptbk agent init`.
33
33
  *
34
34
  * @private internal utility of `ptbk agent`
35
35
  */
36
36
  export declare const AGENT_DOCS_DIRECTORY_PATH = "docs";
37
37
  /**
38
- * Relative path to the local Book language manual used by the coding runner prompt.
38
+ * Relative path to the local Book language manual initialized by `ptbk agent init`.
39
39
  *
40
40
  * @private internal utility of `ptbk agent`
41
41
  */
@@ -11,7 +11,7 @@ type InitializeAgentRunnerCommandOptions = {
11
11
  readonly aliases?: ReadonlyArray<string>;
12
12
  readonly summary: string;
13
13
  readonly featureLines: ReadonlyArray<string>;
14
- readonly isExitingOnSuccess?: boolean;
14
+ readonly executionMode: 'once' | 'watch';
15
15
  readonly configureCommand?: (command: Program) => void;
16
16
  readonly loadExecutor: () => Promise<(runOptions: ReturnType<typeof createAgentRunOptionsFromCliOptions>) => Promise<unknown>>;
17
17
  };
@@ -0,0 +1,56 @@
1
+ /// <reference types="node" />
2
+ /**
3
+ * Inputs controlling one cached Agents Server production build.
4
+ *
5
+ * @private internal type of `ptbk agents-server`
6
+ */
7
+ type EnsureAgentsServerBuildOptions = {
8
+ readonly appPath?: string;
9
+ readonly environment?: NodeJS.ProcessEnv;
10
+ readonly isBuildForced?: boolean;
11
+ readonly onBuildEvent?: (event: string) => void;
12
+ readonly onBuildOutput?: (chunk: string) => void;
13
+ };
14
+ /**
15
+ * Paths needed after the Agents Server production build is ready.
16
+ *
17
+ * @private internal type of `ptbk agents-server`
18
+ */
19
+ export type AgentsServerBuildArtifacts = {
20
+ readonly appPath: string;
21
+ readonly nextCliPath: string;
22
+ };
23
+ /**
24
+ * Input paths required to validate or update the cached Agents Server build.
25
+ *
26
+ * @private internal type of `ptbk agents-server`
27
+ */
28
+ type AgentsServerBuildCacheOptions = {
29
+ readonly appPath: string;
30
+ readonly environment?: NodeJS.ProcessEnv;
31
+ };
32
+ /**
33
+ * Ensures that the local Agents Server production build exists and matches its source fingerprint.
34
+ *
35
+ * @private internal utility of `ptbk agents-server`
36
+ */
37
+ export declare function ensureAgentsServerBuild(options?: EnsureAgentsServerBuildOptions): Promise<AgentsServerBuildArtifacts>;
38
+ /**
39
+ * Returns true when the production build marker and source fingerprint still match.
40
+ *
41
+ * @private internal utility of `ptbk agents-server`
42
+ */
43
+ export declare function isAgentsServerBuildCacheCurrent(options: AgentsServerBuildCacheOptions): Promise<boolean>;
44
+ /**
45
+ * Persists the source fingerprint for the just-created production build.
46
+ *
47
+ * @private internal utility of `ptbk agents-server`
48
+ */
49
+ export declare function writeAgentsServerBuildCache(options: AgentsServerBuildCacheOptions): Promise<void>;
50
+ /**
51
+ * Finds the Agents Server app in a source checkout or generated CLI package.
52
+ *
53
+ * @private internal utility of `ptbk agents-server`
54
+ */
55
+ export declare function resolveAgentsServerAppPath(): Promise<string>;
56
+ export {};
@@ -0,0 +1,7 @@
1
+ import { type EnsureProjectEnvFileResult } from '../common/projectInitialization';
2
+ /**
3
+ * Ensures `.env` contains all required Agents Server configuration entries.
4
+ *
5
+ * @private internal utility of `ptbk agents-server init`
6
+ */
7
+ export declare function ensureAgentsServerEnvFile(projectPath: string): Promise<EnsureProjectEnvFileResult>;
@@ -0,0 +1,7 @@
1
+ import { type ProjectInitializationStatus } from '../common/projectInitialization';
2
+ /**
3
+ * Ensures `.gitignore` excludes local Agents Server runtime artifacts.
4
+ *
5
+ * @private internal utility of `ptbk agents-server init`
6
+ */
7
+ export declare function ensureAgentsServerGitignoreFile(projectPath: string): Promise<ProjectInitializationStatus>;
@@ -0,0 +1,9 @@
1
+ import type { Command as Program } from 'commander';
2
+ import type { $side_effect } from '../../../utils/organization/$side_effect';
3
+ export { initializeAgentsServerProjectConfiguration } from './initializeAgentsServerProjectConfiguration';
4
+ /**
5
+ * Initializes `agents-server init` command for Promptbook CLI utilities.
6
+ *
7
+ * @private internal function of `promptbookCli`
8
+ */
9
+ export declare function $initializeAgentsServerInitCommand(program: Program): $side_effect;
@@ -0,0 +1,17 @@
1
+ import type { ProjectInitializationStatus } from '../common/projectInitialization';
2
+ /**
3
+ * Result summary returned after Agents Server configuration initialization.
4
+ *
5
+ * @private internal utility of `ptbk agents-server init`
6
+ */
7
+ export type AgentsServerInitializationSummary = {
8
+ readonly envFileStatus: ProjectInitializationStatus;
9
+ readonly gitignoreFileStatus: ProjectInitializationStatus;
10
+ readonly initializedEnvVariableNames: ReadonlyArray<string>;
11
+ };
12
+ /**
13
+ * Creates or updates local Agents Server configuration files in the current project.
14
+ *
15
+ * @private internal utility of `ptbk agents-server init`
16
+ */
17
+ export declare function initializeAgentsServerProjectConfiguration(projectPath: string): Promise<AgentsServerInitializationSummary>;
@@ -0,0 +1,7 @@
1
+ import type { AgentsServerInitializationSummary } from './initializeAgentsServerProjectConfiguration';
2
+ /**
3
+ * Prints a readable summary of local Agents Server configuration initialization.
4
+ *
5
+ * @private internal utility of `ptbk agents-server init`
6
+ */
7
+ export declare function printAgentsServerInitializationSummary(summary: AgentsServerInitializationSummary): void;
@@ -0,0 +1,14 @@
1
+ import type { Command as Program } from 'commander';
2
+ import type { $side_effect } from '../../../utils/organization/$side_effect';
3
+ /**
4
+ * Initializes `agents-server start` command for Promptbook CLI utilities.
5
+ *
6
+ * @private internal function of `promptbookCli`
7
+ */
8
+ export declare function $initializeAgentsServerStartCommand(program: Program): $side_effect;
9
+ /**
10
+ * Initializes `agents-server build` command for Promptbook CLI utilities.
11
+ *
12
+ * @private internal function of `promptbookCli`
13
+ */
14
+ export declare function $initializeAgentsServerBuildCommand(program: Program): $side_effect;
@@ -0,0 +1,23 @@
1
+ import type { ThinkingLevel } from '../coder/ThinkingLevel';
2
+ import type { PromptRunnerAgentName } from '../common/promptRunnerCliOptions';
3
+ import type { number_port } from '../../../types/number_positive';
4
+ /**
5
+ * Options required to start the foreground Agents Server service group.
6
+ *
7
+ * @private internal type of `ptbk agents-server`
8
+ */
9
+ export type StartAgentsServerOptions = {
10
+ readonly port: number_port;
11
+ readonly agentName: PromptRunnerAgentName;
12
+ readonly model?: string;
13
+ readonly noUi: boolean;
14
+ readonly thinkingLevel?: ThinkingLevel;
15
+ readonly allowCredits: boolean;
16
+ readonly isBuildForced: boolean;
17
+ };
18
+ /**
19
+ * Starts the Agents Server web app and local coding-agent queue workers in the foreground.
20
+ *
21
+ * @private internal utility of `ptbk agents-server`
22
+ */
23
+ export declare function startAgentsServer(options: StartAgentsServerOptions): Promise<void>;
@@ -0,0 +1,8 @@
1
+ import type { Command as Program } from 'commander';
2
+ import type { $side_effect } from '../../utils/organization/$side_effect';
3
+ /**
4
+ * Initializes `agents-server` command with subcommands for Promptbook CLI utilities.
5
+ *
6
+ * @private internal function of `promptbookCli`
7
+ */
8
+ export declare function $initializeAgentsServerCommand(program: Program): $side_effect;