@promptbook/cli 0.114.0-25 → 0.114.0-26

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.
@@ -3,23 +3,30 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
3
3
  /**
4
4
  * `WRITING RULES` commitment definition.
5
5
  *
6
- * It adds constraints that apply strictly to writing style and presentation
7
- * rather than task-solving behavior.
6
+ * The `WRITING RULES`/`WRITING RULE` commitment adds constraints that apply strictly to writing style
7
+ * and presentation rather than task-solving behavior.
8
+ *
9
+ * Example usage in agent source:
10
+ *
11
+ * ```book
12
+ * WRITING RULES Keep every response under 120 words
13
+ * WRITING RULE Always end the message with an emoji
14
+ * ```
8
15
  *
9
16
  * @private [🪔] Maybe export the commitments through some package
10
17
  */
11
- export declare class WritingRulesCommitmentDefinition extends BaseCommitmentDefinition<'WRITING RULES'> {
12
- constructor();
18
+ export declare class WritingRulesCommitmentDefinition extends BaseCommitmentDefinition<'WRITING RULES' | 'WRITING RULE'> {
19
+ constructor(type?: 'WRITING RULES' | 'WRITING RULE');
13
20
  /**
14
- * Short one-line description of `WRITING RULES`.
21
+ * Short one-line description of `WRITING RULES`/`WRITING RULE`.
15
22
  */
16
23
  get description(): string;
17
24
  /**
18
- * Icon for `WRITING RULES`.
25
+ * Icon for `WRITING RULES`/`WRITING RULE`.
19
26
  */
20
27
  get icon(): string;
21
28
  /**
22
- * Markdown documentation for `WRITING RULES`.
29
+ * Markdown documentation for `WRITING RULES`/`WRITING RULE` commitment.
23
30
  */
24
31
  get documentation(): string;
25
32
  applyToAgentModelRequirements(requirements: AgentModelRequirements, content: string): AgentModelRequirements;
@@ -55,4 +55,4 @@ import { NotYetImplementedCommitmentDefinition } from './_base/NotYetImplemented
55
55
  *
56
56
  * @private Use functions to access commitments instead of this array directly
57
57
  */
58
- export declare const COMMITMENT_REGISTRY: readonly [PersonaCommitmentDefinition, PersonaCommitmentDefinition, KnowledgeCommitmentDefinition, StyleCommitmentDefinition, StyleCommitmentDefinition, RuleCommitmentDefinition, RuleCommitmentDefinition, LanguageCommitmentDefinition, LanguageCommitmentDefinition, WritingSampleCommitmentDefinition, WritingRulesCommitmentDefinition, SampleCommitmentDefinition, SampleCommitmentDefinition, FormatCommitmentDefinition, FormatCommitmentDefinition, TemplateCommitmentDefinition, TemplateCommitmentDefinition, FromCommitmentDefinition, ImportCommitmentDefinition, ImportCommitmentDefinition, ModelCommitmentDefinition, ModelCommitmentDefinition, ActionCommitmentDefinition, ActionCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaImageCommitmentDefinition, MetaColorCommitmentDefinition, MetaFontCommitmentDefinition, MetaLinkCommitmentDefinition, MetaDomainCommitmentDefinition, MetaDescriptionCommitmentDefinition, MetaDisclaimerCommitmentDefinition, MetaFullnameCommitmentDefinition, MetaIdCommitmentDefinition, MetaInputPlaceholderCommitmentDefinition, MetaThinkingMessageCommitmentDefinition, MetaVisibilityCommitmentDefinition, MetaVoiceCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, GoalCommitmentDefinition, GoalCommitmentDefinition, InitialMessageCommitmentDefinition, UserMessageCommitmentDefinition, InternalMessageCommitmentDefinition, AgentMessageCommitmentDefinition, MessageSuffixCommitmentDefinition, MessageCommitmentDefinition, MessageCommitmentDefinition, ScenarioCommitmentDefinition, ScenarioCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DictionaryCommitmentDefinition, OpenCommitmentDefinition, ClosedCommitmentDefinition, TeamCommitmentDefinition, UseUserLocationCommitmentDefinition, UseCalendarCommitmentDefinition, UsePopupCommitmentDefinition, UseImageGeneratorCommitmentDefinition, UseMcpCommitmentDefinition, UsePrivacyCommitmentDefinition, UseProjectCommitmentDefinition, NotYetImplementedCommitmentDefinition<"EXPECT">, NotYetImplementedCommitmentDefinition<"BEHAVIOUR">, NotYetImplementedCommitmentDefinition<"BEHAVIOURS">, NotYetImplementedCommitmentDefinition<"AVOID">, NotYetImplementedCommitmentDefinition<"AVOIDANCE">, NotYetImplementedCommitmentDefinition<"CONTEXT">];
58
+ export declare const COMMITMENT_REGISTRY: readonly [PersonaCommitmentDefinition, PersonaCommitmentDefinition, KnowledgeCommitmentDefinition, StyleCommitmentDefinition, StyleCommitmentDefinition, RuleCommitmentDefinition, RuleCommitmentDefinition, LanguageCommitmentDefinition, LanguageCommitmentDefinition, WritingSampleCommitmentDefinition, WritingRulesCommitmentDefinition, WritingRulesCommitmentDefinition, SampleCommitmentDefinition, SampleCommitmentDefinition, FormatCommitmentDefinition, FormatCommitmentDefinition, TemplateCommitmentDefinition, TemplateCommitmentDefinition, FromCommitmentDefinition, ImportCommitmentDefinition, ImportCommitmentDefinition, ModelCommitmentDefinition, ModelCommitmentDefinition, ActionCommitmentDefinition, ActionCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaAvatarCommitmentDefinition, MetaImageCommitmentDefinition, MetaColorCommitmentDefinition, MetaFontCommitmentDefinition, MetaLinkCommitmentDefinition, MetaDomainCommitmentDefinition, MetaDescriptionCommitmentDefinition, MetaDisclaimerCommitmentDefinition, MetaFullnameCommitmentDefinition, MetaIdCommitmentDefinition, MetaInputPlaceholderCommitmentDefinition, MetaThinkingMessageCommitmentDefinition, MetaVisibilityCommitmentDefinition, MetaVoiceCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, NoteCommitmentDefinition, GoalCommitmentDefinition, GoalCommitmentDefinition, InitialMessageCommitmentDefinition, UserMessageCommitmentDefinition, InternalMessageCommitmentDefinition, AgentMessageCommitmentDefinition, MessageSuffixCommitmentDefinition, MessageCommitmentDefinition, MessageCommitmentDefinition, ScenarioCommitmentDefinition, ScenarioCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DeleteCommitmentDefinition, DictionaryCommitmentDefinition, OpenCommitmentDefinition, ClosedCommitmentDefinition, TeamCommitmentDefinition, UseUserLocationCommitmentDefinition, UseCalendarCommitmentDefinition, 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.114.0-24`).
18
+ * It follows semantic versioning (e.g., `0.114.0-25`).
19
19
  *
20
20
  * @generated
21
21
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@promptbook/cli",
3
- "version": "0.114.0-25",
3
+ "version": "0.114.0-26",
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,
@@ -80,6 +80,7 @@ const BEHAVIOR_COMMITMENT_TYPES = new Set([
80
80
  'LANGUAGES',
81
81
  'WRITING SAMPLE',
82
82
  'WRITING RULES',
83
+ 'WRITING RULE',
83
84
  'SCENARIO',
84
85
  'SCENARIOS',
85
86
  'MESSAGE',
@@ -6,32 +6,39 @@ import { BaseCommitmentDefinition } from '../_base/BaseCommitmentDefinition';
6
6
  /**
7
7
  * `WRITING RULES` commitment definition.
8
8
  *
9
- * It adds constraints that apply strictly to writing style and presentation
10
- * rather than task-solving behavior.
9
+ * The `WRITING RULES`/`WRITING RULE` commitment adds constraints that apply strictly to writing style
10
+ * and presentation rather than task-solving behavior.
11
+ *
12
+ * Example usage in agent source:
13
+ *
14
+ * ```book
15
+ * WRITING RULES Keep every response under 120 words
16
+ * WRITING RULE Always end the message with an emoji
17
+ * ```
11
18
  *
12
19
  * @private [🪔] Maybe export the commitments through some package
13
20
  */
14
- export class WritingRulesCommitmentDefinition extends BaseCommitmentDefinition<'WRITING RULES'> {
15
- public constructor() {
16
- super('WRITING RULES');
21
+ export class WritingRulesCommitmentDefinition extends BaseCommitmentDefinition<'WRITING RULES' | 'WRITING RULE'> {
22
+ public constructor(type: 'WRITING RULES' | 'WRITING RULE' = 'WRITING RULES') {
23
+ super(type);
17
24
  }
18
25
 
19
26
  /**
20
- * Short one-line description of `WRITING RULES`.
27
+ * Short one-line description of `WRITING RULES`/`WRITING RULE`.
21
28
  */
22
29
  public get description(): string {
23
30
  return 'Add writing-only constraints such as tone, length, formatting, or emoji usage.';
24
31
  }
25
32
 
26
33
  /**
27
- * Icon for `WRITING RULES`.
34
+ * Icon for `WRITING RULES`/`WRITING RULE`.
28
35
  */
29
36
  public get icon(): string {
30
37
  return '📝';
31
38
  }
32
39
 
33
40
  /**
34
- * Markdown documentation for `WRITING RULES`.
41
+ * Markdown documentation for `WRITING RULES`/`WRITING RULE` commitment.
35
42
  */
36
43
  public get documentation(): string {
37
44
  return spaceTrim(`
@@ -41,6 +48,7 @@ export class WritingRulesCommitmentDefinition extends BaseCommitmentDefinition<'
41
48
 
42
49
  ## Key aspects
43
50
 
51
+ - All writing rules are treated equally regardless of singular/plural form.
44
52
  - Use it for writing-only constraints such as tone, formatting, length, emoji usage, punctuation, or reading level.
45
53
  - Do **not** use it for problem-solving behavior, policy, tool usage, or decision-making logic. Use \`RULE\` for that.
46
54
  - Newer writing-rules blocks override conflicting earlier writing-rules blocks.
@@ -71,7 +71,8 @@ export const COMMITMENT_REGISTRY = [
71
71
  new LanguageCommitmentDefinition('LANGUAGE'),
72
72
  new LanguageCommitmentDefinition('LANGUAGES'),
73
73
  new WritingSampleCommitmentDefinition(),
74
- new WritingRulesCommitmentDefinition(),
74
+ new WritingRulesCommitmentDefinition('WRITING RULES'),
75
+ new WritingRulesCommitmentDefinition('WRITING RULE'),
75
76
  new SampleCommitmentDefinition('SAMPLE'),
76
77
  new SampleCommitmentDefinition('EXAMPLE'),
77
78
  new FormatCommitmentDefinition('FORMAT'),