@promptbook/browser 0.112.0 → 0.113.0-0

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 (30) hide show
  1. package/README.md +45 -29
  2. package/esm/index.es.js +123 -10
  3. package/esm/index.es.js.map +1 -1
  4. package/esm/src/_packages/core.index.d.ts +22 -0
  5. package/esm/src/_packages/types.index.d.ts +2 -0
  6. package/esm/src/book-2.0/agent-source/AgentBasicInformation.d.ts +2 -0
  7. package/esm/src/book-2.0/agent-source/agentSourceVisibility.d.ts +97 -0
  8. package/esm/src/book-2.0/agent-source/agentSourceVisibility.test.d.ts +1 -0
  9. package/esm/src/book-components/BookEditor/BookEditorMonacoTokenization.d.ts +1 -0
  10. package/esm/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +6 -0
  11. package/esm/src/collection/agent-collection/CreateAgentInput.d.ts +2 -1
  12. package/esm/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +21 -1
  13. package/esm/src/commitments/META_VISIBILITY/META_VISIBILITY.d.ts +27 -0
  14. package/esm/src/commitments/index.d.ts +2 -1
  15. package/esm/src/version.d.ts +1 -1
  16. package/package.json +2 -2
  17. package/umd/index.umd.js +123 -10
  18. package/umd/index.umd.js.map +1 -1
  19. package/umd/src/_packages/core.index.d.ts +22 -0
  20. package/umd/src/_packages/types.index.d.ts +2 -0
  21. package/umd/src/book-2.0/agent-source/AgentBasicInformation.d.ts +2 -0
  22. package/umd/src/book-2.0/agent-source/agentSourceVisibility.d.ts +97 -0
  23. package/umd/src/book-2.0/agent-source/agentSourceVisibility.test.d.ts +1 -0
  24. package/umd/src/book-components/BookEditor/BookEditorMonacoTokenization.d.ts +1 -0
  25. package/umd/src/cli/cli-commands/agents-server/buildAgentsServer.d.ts +6 -0
  26. package/umd/src/collection/agent-collection/CreateAgentInput.d.ts +2 -1
  27. package/umd/src/collection/agent-collection/constructors/agent-collection-in-supabase/prepareAgentSourceForPersistence.d.ts +21 -1
  28. package/umd/src/commitments/META_VISIBILITY/META_VISIBILITY.d.ts +27 -0
  29. package/umd/src/commitments/index.d.ts +2 -1
  30. package/umd/src/version.d.ts +1 -1
@@ -1,4 +1,15 @@
1
1
  import { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION } from '../version';
2
+ import { AGENT_VISIBILITY_VALUES } from '../book-2.0/agent-source/agentSourceVisibility';
3
+ import type { AgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
4
+ import { DEFAULT_AGENT_VISIBILITY } from '../book-2.0/agent-source/agentSourceVisibility';
5
+ import { isAgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
6
+ import { normalizeAgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
7
+ import { parseAgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
8
+ import { parseAgentVisibilityStrict } from '../book-2.0/agent-source/agentSourceVisibility';
9
+ import { parseAgentSourceVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
10
+ import { isPublicAgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
11
+ import { getNextAgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
12
+ import { setAgentSourceVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
2
13
  import { computeAgentHash } from '../book-2.0/agent-source/computeAgentHash';
3
14
  import { createAgentModelRequirements } from '../book-2.0/agent-source/createAgentModelRequirements';
4
15
  import type { CreateAgentModelRequirementsOptions } from '../book-2.0/agent-source/CreateAgentModelRequirementsOptions';
@@ -224,6 +235,17 @@ import { $generateBookBoilerplate } from '../utils/random/$generateBookBoilerpla
224
235
  import { CORE_AGENTS_SERVER_WELL_KNOWN_AGENT_NAMES } from '../../servers';
225
236
  import { PUBLIC_AGENTS_SERVERS } from '../../servers';
226
237
  export { BOOK_LANGUAGE_VERSION, PROMPTBOOK_ENGINE_VERSION };
238
+ export { AGENT_VISIBILITY_VALUES };
239
+ export type { AgentVisibility };
240
+ export { DEFAULT_AGENT_VISIBILITY };
241
+ export { isAgentVisibility };
242
+ export { normalizeAgentVisibility };
243
+ export { parseAgentVisibility };
244
+ export { parseAgentVisibilityStrict };
245
+ export { parseAgentSourceVisibility };
246
+ export { isPublicAgentVisibility };
247
+ export { getNextAgentVisibility };
248
+ export { setAgentSourceVisibility };
227
249
  export { computeAgentHash };
228
250
  export { createAgentModelRequirements };
229
251
  export type { CreateAgentModelRequirementsOptions };
@@ -2,6 +2,7 @@ import type { BookParameter } from '../book-2.0/agent-source/AgentBasicInformati
2
2
  import type { AgentCapability } from '../book-2.0/agent-source/AgentBasicInformation';
3
3
  import type { AgentBasicInformation } from '../book-2.0/agent-source/AgentBasicInformation';
4
4
  import type { AgentModelRequirements } from '../book-2.0/agent-source/AgentModelRequirements';
5
+ import type { AgentVisibility } from '../book-2.0/agent-source/agentSourceVisibility';
5
6
  import type { CreateAgentModelRequirementsOptions } from '../book-2.0/agent-source/CreateAgentModelRequirementsOptions';
6
7
  import type { string_book } from '../book-2.0/agent-source/string_book';
7
8
  import type { BookNodeAgentSource } from '../book-3.0/BookNodeAgentSource';
@@ -444,6 +445,7 @@ export type { BookParameter };
444
445
  export type { AgentCapability };
445
446
  export type { AgentBasicInformation };
446
447
  export type { AgentModelRequirements };
448
+ export type { AgentVisibility };
447
449
  export type { CreateAgentModelRequirementsOptions };
448
450
  export type { string_book };
449
451
  export type { BookNodeAgentSource };
@@ -4,6 +4,7 @@ import type { string_agent_url } from '../../types/string_agent_url';
4
4
  import type { string_fonts } from '../../types/string_markdown';
5
5
  import type { string_color } from '../../types/string_person_fullname';
6
6
  import type { string_url_image } from '../../types/string_url_image';
7
+ import type { AgentVisibility } from './agentSourceVisibility';
7
8
  /**
8
9
  * Unified parameter representation that supports two different notations:
9
10
  * 1. @Parameter - single word parameter starting with @
@@ -97,6 +98,7 @@ export type AgentBasicInformation = {
97
98
  font?: string_fonts;
98
99
  color?: string_color;
99
100
  voice?: string;
101
+ visibility?: AgentVisibility;
100
102
  [key: string]: string | undefined;
101
103
  };
102
104
  /**
@@ -0,0 +1,97 @@
1
+ import type { string_book } from './string_book';
2
+ /**
3
+ * Supported visibility states for persisted agents.
4
+ *
5
+ * @public exported from `@promptbook/core`
6
+ */
7
+ export declare const AGENT_VISIBILITY_VALUES: readonly ["PRIVATE", "UNLISTED", "PUBLIC"];
8
+ /**
9
+ * Canonical visibility union for agents.
10
+ *
11
+ * @public exported from `@promptbook/core`
12
+ */
13
+ export type AgentVisibility = (typeof AGENT_VISIBILITY_VALUES)[number];
14
+ /**
15
+ * Fallback visibility used when no valid value is configured.
16
+ *
17
+ * @public exported from `@promptbook/core`
18
+ */
19
+ export declare const DEFAULT_AGENT_VISIBILITY: AgentVisibility;
20
+ /**
21
+ * Returns `true` when the value is one of supported visibility states.
22
+ *
23
+ * @param value - Raw value to validate.
24
+ * @returns Whether the value is a valid `AgentVisibility`.
25
+ *
26
+ * @public exported from `@promptbook/core`
27
+ */
28
+ export declare function isAgentVisibility(value: unknown): value is AgentVisibility;
29
+ /**
30
+ * Normalizes raw visibility text into a supported value.
31
+ *
32
+ * @param value - Raw visibility value.
33
+ * @returns Normalized visibility, or `null` when invalid.
34
+ *
35
+ * @public exported from `@promptbook/core`
36
+ */
37
+ export declare function normalizeAgentVisibility(value: unknown): AgentVisibility | null;
38
+ /**
39
+ * Parses visibility from an unknown value with a safe fallback.
40
+ *
41
+ * @param value - Raw visibility value.
42
+ * @param fallback - Fallback when the value is invalid.
43
+ * @returns Parsed visibility.
44
+ *
45
+ * @public exported from `@promptbook/core`
46
+ */
47
+ export declare function parseAgentVisibility(value: unknown, fallback?: AgentVisibility): AgentVisibility;
48
+ /**
49
+ * Parses visibility and throws when the value is not supported.
50
+ *
51
+ * @param value - Raw visibility value.
52
+ * @param sourceLabel - Human-readable source used in the error message.
53
+ * @returns Parsed visibility.
54
+ *
55
+ * @public exported from `@promptbook/core`
56
+ */
57
+ export declare function parseAgentVisibilityStrict(value: unknown, sourceLabel?: string): AgentVisibility;
58
+ /**
59
+ * Extracts the last `META VISIBILITY` value from an agent source.
60
+ *
61
+ * @param agentSource - Raw book source.
62
+ * @param options - Strict parsing options.
63
+ * @returns Normalized visibility, or `null` when no commitment is present.
64
+ *
65
+ * @public exported from `@promptbook/core`
66
+ */
67
+ export declare function parseAgentSourceVisibility(agentSource: string_book, options?: {
68
+ readonly isStrict?: boolean;
69
+ }): AgentVisibility | null;
70
+ /**
71
+ * Returns whether an agent should be listed publicly in anonymous views.
72
+ *
73
+ * @param visibility - Agent visibility to evaluate.
74
+ * @returns `true` for publicly listed agents.
75
+ *
76
+ * @public exported from `@promptbook/core`
77
+ */
78
+ export declare function isPublicAgentVisibility(visibility: AgentVisibility | null | undefined): boolean;
79
+ /**
80
+ * Returns the next visibility in UI rotation order.
81
+ *
82
+ * @param visibility - Current visibility.
83
+ * @returns Next visibility value.
84
+ *
85
+ * @public exported from `@promptbook/core`
86
+ */
87
+ export declare function getNextAgentVisibility(visibility: AgentVisibility | null | undefined): AgentVisibility;
88
+ /**
89
+ * Inserts or replaces the `META VISIBILITY` commitment in a book source.
90
+ *
91
+ * @param agentSource - Raw book source.
92
+ * @param visibility - Visibility to persist.
93
+ * @returns Source with exactly one normalized `META VISIBILITY` line.
94
+ *
95
+ * @public exported from `@promptbook/core`
96
+ */
97
+ export declare function setAgentSourceVisibility(agentSource: string_book, visibility: AgentVisibility): string_book;
@@ -19,6 +19,7 @@ export declare const BookEditorMonacoTokenization: {
19
19
  AGENT_URL_REFERENCE_REGEX: RegExp;
20
20
  AGENT_REFERENCE_TOKEN_REGEX: RegExp;
21
21
  AGENT_REFERENCE_BRACED_REGEX: RegExp;
22
+ NON_AGENT_REFERENCE_INLINE_AT_TOKEN_REGEX: RegExp;
22
23
  AGENT_REFERENCE_HIGHLIGHT_REGEXES: readonly [RegExp, RegExp, RegExp];
23
24
  extractAgentReferenceValue: (token: string) => string;
24
25
  resolveAgentReferenceToUrl: (referenceValue: string) => string | null;
@@ -6,6 +6,12 @@
6
6
  * @private internal constant of `ptbk agents-server`
7
7
  */
8
8
  export declare const PTBK_AGENTS_SERVER_NODE_MODULES_PATH_ENV = "PTBK_AGENTS_SERVER_NODE_MODULES_PATH";
9
+ /**
10
+ * Environment variable consumed by `apps/agents-server/next.config.ts` to throttle build workers.
11
+ *
12
+ * @private internal constant of `ptbk agents-server`
13
+ */
14
+ export declare const PTBK_AGENTS_SERVER_BUILD_WORKER_COUNT_ENV = "PTBK_AGENTS_SERVER_BUILD_WORKER_COUNT";
9
15
  /**
10
16
  * Environment variable used only by the CLI-owned production build.
11
17
  *
@@ -1,4 +1,5 @@
1
1
  import type { string_book } from '../../book-2.0/agent-source/string_book';
2
+ import { type AgentVisibility } from '../../book-2.0/agent-source/agentSourceVisibility';
2
3
  import type { LlmToolDefinition } from '../../types/LlmToolDefinition';
3
4
  /**
4
5
  * Supported visibility options for agent creation.
@@ -11,7 +12,7 @@ export declare const CREATE_AGENT_VISIBILITY_VALUES: readonly ["PRIVATE", "UNLIS
11
12
  *
12
13
  * @private shared create-agent contract
13
14
  */
14
- export type CreateAgentVisibility = (typeof CREATE_AGENT_VISIBILITY_VALUES)[number];
15
+ export type CreateAgentVisibility = AgentVisibility;
15
16
  /**
16
17
  * Canonical input payload for creating one persisted agent entity.
17
18
  *
@@ -1,6 +1,22 @@
1
1
  import type { AgentBasicInformation } from '../../../../book-2.0/agent-source/AgentBasicInformation';
2
+ import { type AgentVisibility } from '../../../../book-2.0/agent-source/agentSourceVisibility';
2
3
  import type { string_book } from '../../../../book-2.0/agent-source/string_book';
3
4
  import type { string_agent_permanent_id } from '../../../../types/string_agent_name';
5
+ /**
6
+ * Options used while preparing a source for persistence.
7
+ *
8
+ * @private shared persistence helper for `AgentCollectionInSupabase`
9
+ */
10
+ export type PrepareAgentSourceForPersistenceOptions = {
11
+ /**
12
+ * Visibility value that should be written into the book when present.
13
+ */
14
+ readonly visibility?: AgentVisibility | null;
15
+ /**
16
+ * Whether `visibility` should replace an existing `META VISIBILITY` commitment.
17
+ */
18
+ readonly isVisibilityOverride?: boolean;
19
+ };
4
20
  /**
5
21
  * Prepared agent source payload ready for database persistence.
6
22
  *
@@ -22,6 +38,10 @@ export type PreparedAgentSourceForPersistence = {
22
38
  * Permanent id extracted from the original source before stripping `META ID`.
23
39
  */
24
40
  readonly permanentId: string_agent_permanent_id | undefined;
41
+ /**
42
+ * Visibility parsed from the normalized source.
43
+ */
44
+ readonly visibility: AgentVisibility | undefined;
25
45
  };
26
46
  /**
27
47
  * Normalizes one agent source before persistence.
@@ -33,4 +53,4 @@ export type PreparedAgentSourceForPersistence = {
33
53
  *
34
54
  * @private shared persistence helper for `AgentCollectionInSupabase`
35
55
  */
36
- export declare function prepareAgentSourceForPersistence(agentSource: string_book): PreparedAgentSourceForPersistence;
56
+ export declare function prepareAgentSourceForPersistence(agentSource: string_book, options?: PrepareAgentSourceForPersistenceOptions): PreparedAgentSourceForPersistence;
@@ -0,0 +1,27 @@
1
+ import type { AgentModelRequirements } from '../../book-2.0/agent-source/AgentModelRequirements';
2
+ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
3
+ /**
4
+ * META VISIBILITY commitment definition.
5
+ *
6
+ * The `META VISIBILITY` commitment stores whether an agent is public, private, or unlisted.
7
+ * Agents Server mirrors this value into the database for efficient filtering, but the book
8
+ * commitment remains the editable source of truth.
9
+ *
10
+ * @private Metadata-only commitment used by Agents Server.
11
+ */
12
+ export declare class MetaVisibilityCommitmentDefinition extends BaseCommitmentDefinition<'META VISIBILITY'> {
13
+ constructor();
14
+ /**
15
+ * Short one-line description of META VISIBILITY.
16
+ */
17
+ get description(): string;
18
+ /**
19
+ * Icon for this commitment.
20
+ */
21
+ get icon(): string;
22
+ /**
23
+ * Markdown documentation for META VISIBILITY commitment.
24
+ */
25
+ get documentation(): string;
26
+ applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
27
+ }
@@ -25,6 +25,7 @@ import { MetaFontCommitmentDefinition } from './META_FONT/META_FONT';
25
25
  import { MetaImageCommitmentDefinition } from './META_IMAGE/META_IMAGE';
26
26
  import { MetaInputPlaceholderCommitmentDefinition } from './META_INPUT_PLACEHOLDER/META_INPUT_PLACEHOLDER';
27
27
  import { MetaLinkCommitmentDefinition } from './META_LINK/META_LINK';
28
+ import { MetaVisibilityCommitmentDefinition } from './META_VISIBILITY/META_VISIBILITY';
28
29
  import { MetaVoiceCommitmentDefinition } from './META_VOICE/META_VOICE';
29
30
  import { ModelCommitmentDefinition } from './MODEL/MODEL';
30
31
  import { NoteCommitmentDefinition } from './NOTE/NOTE';
@@ -61,4 +62,4 @@ import { NotYetImplementedCommitmentDefinition } from './_base/NotYetImplemented
61
62
  *
62
63
  * @private Use functions to access commitments instead of this array directly
63
64
  */
64
- export declare const COMMITMENT_REGISTRY: readonly [PersonaCommitmentDefinition, PersonaCommitmentDefinition, KnowledgeCommitmentDefinition, MemoryCommitmentDefinition, MemoryCommitmentDefinition, StyleCommitmentDefinition, StyleCommitmentDefinition, RuleCommitmentDefinition, RuleCommitmentDefinition, LanguageCommitmentDefinition, LanguageCommitmentDefinition, WritingSampleCommitmentDefinition, WritingRulesCommitmentDefinition, SampleCommitmentDefinition, SampleCommitmentDefinition, FormatCommitmentDefinition, FormatCommitmentDefinition, TemplateCommitmentDefinition, TemplateCommitmentDefinition, FromCommitmentDefinition, ImportCommitmentDefinition, ImportCommitmentDefinition, ModelCommitmentDefinition, ModelCommitmentDefinition, ActionCommitmentDefinition, ActionCommitmentDefinition, ComponentCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaImageCommitmentDefinition, MetaColorCommitmentDefinition, MetaFontCommitmentDefinition, MetaLinkCommitmentDefinition, MetaDomainCommitmentDefinition, MetaDisclaimerCommitmentDefinition, MetaInputPlaceholderCommitmentDefinition, MetaCommitmentDefinition, MetaVoiceCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, GoalCommitmentDefinition, GoalCommitmentDefinition, InitialMessageCommitmentDefinition, UserMessageCommitmentDefinition, InternalMessageCommitmentDefinition, AgentMessageCommitmentDefinition, MessageSuffixCommitmentDefinition, MessageCommitmentDefinition, MessageCommitmentDefinition, WalletCommitmentDefinition, WalletCommitmentDefinition, ScenarioCommitmentDefinition, ScenarioCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DictionaryCommitmentDefinition, OpenCommitmentDefinition, ClosedCommitmentDefinition, TeamCommitmentDefinition, UseBrowserCommitmentDefinition, UseDeepSearchCommitmentDefinition, UseSearchEngineCommitmentDefinition, UseSpawnCommitmentDefinition, UseTimeoutCommitmentDefinition, UseTimeCommitmentDefinition, UseUserLocationCommitmentDefinition, UseCalendarCommitmentDefinition, UseEmailCommitmentDefinition, UsePopupCommitmentDefinition, UseImageGeneratorCommitmentDefinition, UseMcpCommitmentDefinition, UsePrivacyCommitmentDefinition, UseProjectCommitmentDefinition, NotYetImplementedCommitmentDefinition<"EXPECT">, NotYetImplementedCommitmentDefinition<"BEHAVIOUR">, NotYetImplementedCommitmentDefinition<"BEHAVIOURS">, NotYetImplementedCommitmentDefinition<"AVOID">, NotYetImplementedCommitmentDefinition<"AVOIDANCE">, NotYetImplementedCommitmentDefinition<"CONTEXT">];
65
+ export declare const COMMITMENT_REGISTRY: readonly [PersonaCommitmentDefinition, PersonaCommitmentDefinition, KnowledgeCommitmentDefinition, MemoryCommitmentDefinition, MemoryCommitmentDefinition, StyleCommitmentDefinition, StyleCommitmentDefinition, RuleCommitmentDefinition, RuleCommitmentDefinition, LanguageCommitmentDefinition, LanguageCommitmentDefinition, WritingSampleCommitmentDefinition, WritingRulesCommitmentDefinition, SampleCommitmentDefinition, SampleCommitmentDefinition, FormatCommitmentDefinition, FormatCommitmentDefinition, TemplateCommitmentDefinition, TemplateCommitmentDefinition, FromCommitmentDefinition, ImportCommitmentDefinition, ImportCommitmentDefinition, ModelCommitmentDefinition, ModelCommitmentDefinition, ActionCommitmentDefinition, ActionCommitmentDefinition, ComponentCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaImageCommitmentDefinition, MetaColorCommitmentDefinition, MetaFontCommitmentDefinition, MetaLinkCommitmentDefinition, MetaDomainCommitmentDefinition, MetaDisclaimerCommitmentDefinition, MetaInputPlaceholderCommitmentDefinition, MetaVisibilityCommitmentDefinition, MetaCommitmentDefinition, MetaVoiceCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, GoalCommitmentDefinition, GoalCommitmentDefinition, InitialMessageCommitmentDefinition, UserMessageCommitmentDefinition, InternalMessageCommitmentDefinition, AgentMessageCommitmentDefinition, MessageSuffixCommitmentDefinition, MessageCommitmentDefinition, MessageCommitmentDefinition, WalletCommitmentDefinition, WalletCommitmentDefinition, ScenarioCommitmentDefinition, ScenarioCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DictionaryCommitmentDefinition, OpenCommitmentDefinition, ClosedCommitmentDefinition, TeamCommitmentDefinition, UseBrowserCommitmentDefinition, UseDeepSearchCommitmentDefinition, UseSearchEngineCommitmentDefinition, UseSpawnCommitmentDefinition, UseTimeoutCommitmentDefinition, UseTimeCommitmentDefinition, UseUserLocationCommitmentDefinition, UseCalendarCommitmentDefinition, UseEmailCommitmentDefinition, UsePopupCommitmentDefinition, UseImageGeneratorCommitmentDefinition, UseMcpCommitmentDefinition, UsePrivacyCommitmentDefinition, UseProjectCommitmentDefinition, NotYetImplementedCommitmentDefinition<"EXPECT">, NotYetImplementedCommitmentDefinition<"BEHAVIOUR">, NotYetImplementedCommitmentDefinition<"BEHAVIOURS">, NotYetImplementedCommitmentDefinition<"AVOID">, NotYetImplementedCommitmentDefinition<"AVOIDANCE">, NotYetImplementedCommitmentDefinition<"CONTEXT">];
@@ -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-140`).
18
+ * It follows semantic versioning (e.g., `0.112.0`).
19
19
  *
20
20
  * @generated
21
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/browser",
3
- "version": "0.112.0",
3
+ "version": "0.113.0-0",
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,
@@ -98,7 +98,7 @@
98
98
  "types": "./esm/src/_packages/browser.index.d.ts",
99
99
  "typings": "./esm/src/_packages/browser.index.d.ts",
100
100
  "peerDependencies": {
101
- "@promptbook/core": "0.112.0"
101
+ "@promptbook/core": "0.113.0-0"
102
102
  },
103
103
  "dependencies": {
104
104
  "@openai/agents": "0.4.15",
package/umd/index.umd.js CHANGED
@@ -29,7 +29,7 @@
29
29
  * @generated
30
30
  * @see https://github.com/webgptorg/promptbook
31
31
  */
32
- const PROMPTBOOK_ENGINE_VERSION = '0.112.0';
32
+ const PROMPTBOOK_ENGINE_VERSION = '0.113.0-0';
33
33
  /**
34
34
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
35
35
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -11688,6 +11688,70 @@
11688
11688
  }
11689
11689
  // Note: [💞] Ignore a discrepancy between file name and entity name
11690
11690
 
11691
+ /**
11692
+ * META VISIBILITY commitment definition.
11693
+ *
11694
+ * The `META VISIBILITY` commitment stores whether an agent is public, private, or unlisted.
11695
+ * Agents Server mirrors this value into the database for efficient filtering, but the book
11696
+ * commitment remains the editable source of truth.
11697
+ *
11698
+ * @private Metadata-only commitment used by Agents Server.
11699
+ */
11700
+ class MetaVisibilityCommitmentDefinition extends BaseCommitmentDefinition {
11701
+ constructor() {
11702
+ super('META VISIBILITY');
11703
+ }
11704
+ /**
11705
+ * Short one-line description of META VISIBILITY.
11706
+ */
11707
+ get description() {
11708
+ return 'Set whether the agent is private, unlisted, or public.';
11709
+ }
11710
+ /**
11711
+ * Icon for this commitment.
11712
+ */
11713
+ get icon() {
11714
+ return '👁️';
11715
+ }
11716
+ /**
11717
+ * Markdown documentation for META VISIBILITY commitment.
11718
+ */
11719
+ get documentation() {
11720
+ return spacetrim.spaceTrim(`
11721
+ # META VISIBILITY
11722
+
11723
+ Sets the agent visibility used by Agents Server.
11724
+
11725
+ ## Allowed values
11726
+
11727
+ - \`PRIVATE\` - accessible only to signed-in users with access.
11728
+ - \`UNLISTED\` - accessible by direct link but hidden from public listings.
11729
+ - \`PUBLIC\` - visible in public listings and accessible by anyone.
11730
+
11731
+ ## Key aspects
11732
+
11733
+ - Does not modify the agent's behavior, system message, or tools.
11734
+ - Whitespace and letter case are normalized when persisted.
11735
+ - If multiple \`META VISIBILITY\` commitments are present, persistence keeps one normalized value.
11736
+ - Agents Server mirrors the value into the database for filtering, but the book is the source of truth.
11737
+
11738
+ ## Example
11739
+
11740
+ \`\`\`book
11741
+ Helpful Assistant
11742
+
11743
+ GOAL Be helpful and friendly.
11744
+ META VISIBILITY PUBLIC
11745
+ \`\`\`
11746
+ `);
11747
+ }
11748
+ applyToAgentModelRequirements(requirements, content) {
11749
+ // META VISIBILITY is metadata only and does not alter model requirements.
11750
+ return requirements;
11751
+ }
11752
+ }
11753
+ // Note: [💞] Ignore a discrepancy between file name and entity name
11754
+
11691
11755
  /**
11692
11756
  * META VOICE commitment definition
11693
11757
  *
@@ -18183,31 +18247,65 @@
18183
18247
  // Note: [💞] Ignore a discrepancy between file name and entity name
18184
18248
 
18185
18249
  /**
18186
- * This error type indicates that some limit was reached
18250
+ * This error indicates that the promptbook in a markdown format cannot be parsed into a valid promptbook object
18187
18251
  *
18188
18252
  * @public exported from `@promptbook/core`
18189
18253
  */
18190
- class LimitReachedError extends Error {
18254
+ class ParseError extends Error {
18191
18255
  constructor(message) {
18192
18256
  super(message);
18193
- this.name = 'LimitReachedError';
18194
- Object.setPrototypeOf(this, LimitReachedError.prototype);
18257
+ this.name = 'ParseError';
18258
+ Object.setPrototypeOf(this, ParseError.prototype);
18195
18259
  }
18196
18260
  }
18261
+ // TODO: Maybe split `ParseError` and `ApplyError`
18197
18262
 
18198
18263
  /**
18199
- * This error indicates that the promptbook in a markdown format cannot be parsed into a valid promptbook object
18264
+ * Supported visibility states for persisted agents.
18200
18265
  *
18201
18266
  * @public exported from `@promptbook/core`
18202
18267
  */
18203
- class ParseError extends Error {
18268
+ const AGENT_VISIBILITY_VALUES = ['PRIVATE', 'UNLISTED', 'PUBLIC'];
18269
+ /**
18270
+ * Returns `true` when the value is one of supported visibility states.
18271
+ *
18272
+ * @param value - Raw value to validate.
18273
+ * @returns Whether the value is a valid `AgentVisibility`.
18274
+ *
18275
+ * @public exported from `@promptbook/core`
18276
+ */
18277
+ function isAgentVisibility(value) {
18278
+ return typeof value === 'string' && AGENT_VISIBILITY_VALUES.includes(value);
18279
+ }
18280
+ /**
18281
+ * Normalizes raw visibility text into a supported value.
18282
+ *
18283
+ * @param value - Raw visibility value.
18284
+ * @returns Normalized visibility, or `null` when invalid.
18285
+ *
18286
+ * @public exported from `@promptbook/core`
18287
+ */
18288
+ function normalizeAgentVisibility(value) {
18289
+ if (typeof value !== 'string') {
18290
+ return null;
18291
+ }
18292
+ const normalized = value.trim().toUpperCase();
18293
+ return isAgentVisibility(normalized) ? normalized : null;
18294
+ }
18295
+ // Note: [💞] Ignore a discrepancy between file name and entity name
18296
+
18297
+ /**
18298
+ * This error type indicates that some limit was reached
18299
+ *
18300
+ * @public exported from `@promptbook/core`
18301
+ */
18302
+ class LimitReachedError extends Error {
18204
18303
  constructor(message) {
18205
18304
  super(message);
18206
- this.name = 'ParseError';
18207
- Object.setPrototypeOf(this, ParseError.prototype);
18305
+ this.name = 'LimitReachedError';
18306
+ Object.setPrototypeOf(this, LimitReachedError.prototype);
18208
18307
  }
18209
18308
  }
18210
- // TODO: Maybe split `ParseError` and `ApplyError`
18211
18309
 
18212
18310
  /**
18213
18311
  * Maximum allowed source length for create-agent payloads.
@@ -20542,6 +20640,7 @@
20542
20640
  new MetaDomainCommitmentDefinition(),
20543
20641
  new MetaDisclaimerCommitmentDefinition(),
20544
20642
  new MetaInputPlaceholderCommitmentDefinition(),
20643
+ new MetaVisibilityCommitmentDefinition(),
20545
20644
  new MetaCommitmentDefinition(),
20546
20645
  new MetaVoiceCommitmentDefinition(),
20547
20646
  new NoteCommitmentDefinition('NOTE'),
@@ -22196,6 +22295,7 @@
22196
22295
  'META COLOR': applyMetaColorContent,
22197
22296
  'META FONT': applyMetaFontContent,
22198
22297
  'META VOICE': applyMetaVoiceContent,
22298
+ 'META VISIBILITY': applyMetaVisibilityContent,
22199
22299
  };
22200
22300
  /**
22201
22301
  * Applies META-style commitments that mutate parsed profile metadata.
@@ -22225,6 +22325,10 @@
22225
22325
  applyMetaAvatarContent(state, metaValue);
22226
22326
  return;
22227
22327
  }
22328
+ if (metaTypeRaw.toUpperCase() === 'VISIBILITY') {
22329
+ applyMetaVisibilityContent(state, metaValue);
22330
+ return;
22331
+ }
22228
22332
  const metaType = normalizeTo_camelCase(metaTypeRaw);
22229
22333
  state.meta[metaType] = metaValue;
22230
22334
  }
@@ -22301,6 +22405,15 @@
22301
22405
  function applyMetaVoiceContent(state, content) {
22302
22406
  state.meta.voice = spacetrim.spaceTrim(content);
22303
22407
  }
22408
+ /**
22409
+ * Applies META VISIBILITY content into the normalized `meta.visibility` field.
22410
+ */
22411
+ function applyMetaVisibilityContent(state, content) {
22412
+ const visibility = normalizeAgentVisibility(content);
22413
+ if (visibility) {
22414
+ state.meta.visibility = visibility;
22415
+ }
22416
+ }
22304
22417
  /**
22305
22418
  * Normalizes the separator in the content
22306
22419
  *