faceted-prompting 0.4.0 → 0.5.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 (66) hide show
  1. package/README.md +39 -12
  2. package/dist/cli/compose-command.d.ts.map +1 -1
  3. package/dist/cli/compose-command.js +1 -0
  4. package/dist/cli/compose-command.js.map +1 -1
  5. package/dist/cli/compose-execution.d.ts +1 -0
  6. package/dist/cli/compose-execution.d.ts.map +1 -1
  7. package/dist/cli/compose-execution.js +2 -0
  8. package/dist/cli/compose-execution.js.map +1 -1
  9. package/dist/cli/install-skill/facet-token-renderer.d.ts +1 -1
  10. package/dist/cli/install-skill/facet-token-renderer.d.ts.map +1 -1
  11. package/dist/cli/install-skill/facet-token-renderer.js +2 -2
  12. package/dist/cli/install-skill/facet-token-renderer.js.map +1 -1
  13. package/dist/cli/install-skill/facets.d.ts +2 -0
  14. package/dist/cli/install-skill/facets.d.ts.map +1 -1
  15. package/dist/cli/install-skill/facets.js +43 -4
  16. package/dist/cli/install-skill/facets.js.map +1 -1
  17. package/dist/cli/install-skill/instruction-partial-copy.d.ts +6 -0
  18. package/dist/cli/install-skill/instruction-partial-copy.d.ts.map +1 -0
  19. package/dist/cli/install-skill/instruction-partial-copy.js +32 -0
  20. package/dist/cli/install-skill/instruction-partial-copy.js.map +1 -0
  21. package/dist/cli/install-skill/modes.d.ts.map +1 -1
  22. package/dist/cli/install-skill/modes.js +2 -1
  23. package/dist/cli/install-skill/modes.js.map +1 -1
  24. package/dist/cli/instruction-includes.d.ts +11 -0
  25. package/dist/cli/instruction-includes.d.ts.map +1 -0
  26. package/dist/cli/instruction-includes.js +130 -0
  27. package/dist/cli/instruction-includes.js.map +1 -0
  28. package/dist/cli/skill-commands.d.ts.map +1 -1
  29. package/dist/cli/skill-commands.js +1 -0
  30. package/dist/cli/skill-commands.js.map +1 -1
  31. package/dist/cli/skill-document-renderer.d.ts +6 -0
  32. package/dist/cli/skill-document-renderer.d.ts.map +1 -0
  33. package/dist/cli/skill-document-renderer.js +73 -0
  34. package/dist/cli/skill-document-renderer.js.map +1 -0
  35. package/dist/cli/skill-renderer.d.ts +5 -3
  36. package/dist/cli/skill-renderer.d.ts.map +1 -1
  37. package/dist/cli/skill-renderer.js +98 -75
  38. package/dist/cli/skill-renderer.js.map +1 -1
  39. package/dist/cli/skill-types.d.ts +6 -1
  40. package/dist/cli/skill-types.d.ts.map +1 -1
  41. package/dist/compose-definition.d.ts.map +1 -1
  42. package/dist/compose-definition.js +4 -1
  43. package/dist/compose-definition.js.map +1 -1
  44. package/dist/compose.d.ts +3 -2
  45. package/dist/compose.d.ts.map +1 -1
  46. package/dist/compose.js +30 -33
  47. package/dist/compose.js.map +1 -1
  48. package/dist/index.d.ts +1 -1
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js.map +1 -1
  51. package/dist/init/index.d.ts.map +1 -1
  52. package/dist/init/index.js +9 -1
  53. package/dist/init/index.js.map +1 -1
  54. package/dist/instruction-partial-paths.d.ts +3 -0
  55. package/dist/instruction-partial-paths.d.ts.map +1 -0
  56. package/dist/instruction-partial-paths.js +6 -0
  57. package/dist/instruction-partial-paths.js.map +1 -0
  58. package/dist/prompt-payload.d.ts +1 -0
  59. package/dist/prompt-payload.d.ts.map +1 -1
  60. package/dist/prompt-payload.js +26 -8
  61. package/dist/prompt-payload.js.map +1 -1
  62. package/dist/types.d.ts +9 -4
  63. package/dist/types.d.ts.map +1 -1
  64. package/dist/types.js +7 -2
  65. package/dist/types.js.map +1 -1
  66. package/package.json +3 -3
@@ -9,7 +9,10 @@ export interface SkillSection {
9
9
  readonly body: string;
10
10
  readonly path: string;
11
11
  }
12
- export type InstructionSection = SkillSection | {
12
+ export interface FileInstructionSection extends SkillSection {
13
+ readonly sourcePaths: readonly string[];
14
+ }
15
+ export type InstructionSection = FileInstructionSection | {
13
16
  readonly ref: 'literal';
14
17
  readonly body: string;
15
18
  };
@@ -20,11 +23,13 @@ export interface SkillDocumentInput {
20
23
  readonly policies: readonly SkillSection[];
21
24
  readonly knowledge: readonly SkillSection[];
22
25
  readonly instructions: readonly InstructionSection[];
26
+ readonly outputContracts: readonly SkillSection[];
23
27
  }
24
28
  export interface ResolvedDefinitionSections {
25
29
  readonly persona: SkillSection;
26
30
  readonly policies: readonly SkillSection[];
27
31
  readonly knowledge: readonly SkillSection[];
28
32
  readonly instructions: readonly InstructionSection[];
33
+ readonly outputContracts: readonly SkillSection[];
29
34
  }
30
35
  //# sourceMappingURL=skill-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-types.d.ts","sourceRoot":"","sources":["../../src/cli/skill-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnG,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACtD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACtD"}
1
+ {"version":3,"file":"skill-types.d.ts","sourceRoot":"","sources":["../../src/cli/skill-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC1D,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AAED,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GAAG;IAAE,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7G,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrD,QAAQ,CAAC,eAAe,EAAE,SAAS,YAAY,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrD,QAAQ,CAAC,eAAe,EAAE,SAAS,YAAY,EAAE,CAAC;CACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"compose-definition.d.ts","sourceRoot":"","sources":["../src/compose-definition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AAsFvE,wBAAsB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAyB9F"}
1
+ {"version":3,"file":"compose-definition.d.ts","sourceRoot":"","sources":["../src/compose-definition.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,MAAM,YAAY,CAAC;AAuFvE,wBAAsB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA2B9F"}
@@ -8,9 +8,10 @@ const ALLOWED_COMPOSE_KEYS = new Set([
8
8
  'knowledge',
9
9
  'policies',
10
10
  'instructions',
11
+ 'output-contracts',
11
12
  'order',
12
13
  ]);
13
- const ORDER_VALUES = new Set(['persona', 'knowledge', 'policies', 'instructions']);
14
+ const ORDER_VALUES = new Set(['persona', 'knowledge', 'policies', 'instructions', 'output-contracts']);
14
15
  function normalizeOrder(rawOrder) {
15
16
  if (!rawOrder)
16
17
  return undefined;
@@ -89,6 +90,7 @@ export async function loadComposeDefinition(definitionPath) {
89
90
  const instructions = normalizeInstructions(parsed);
90
91
  const knowledge = ensureStringList(parsed.knowledge, 'knowledge');
91
92
  const policies = ensureStringList(parsed.policies, 'policies');
93
+ const outputContracts = ensureStringList(parsed['output-contracts'], 'output-contracts');
92
94
  const rawOrder = ensureStringList(parsed.order, 'order');
93
95
  const order = normalizeOrder(rawOrder);
94
96
  return {
@@ -99,6 +101,7 @@ export async function loadComposeDefinition(definitionPath) {
99
101
  knowledge: knowledge && knowledge.length > 0 ? knowledge : undefined,
100
102
  policies: policies && policies.length > 0 ? policies : undefined,
101
103
  instructions: instructions && instructions.length > 0 ? instructions : undefined,
104
+ outputContracts: outputContracts && outputContracts.length > 0 ? outputContracts : undefined,
102
105
  order,
103
106
  };
104
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compose-definition.js","sourceRoot":"","sources":["../src/compose-definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose-definition.js","sourceRoot":"","sources":["../src/compose-definition.ts"],"names":[],"mappings":"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"}
package/dist/compose.d.ts CHANGED
@@ -2,7 +2,8 @@
2
2
  * Facet composition — the core placement rule.
3
3
  *
4
4
  * system prompt: persona only (WHO)
5
- * user message: knowledge + instructions + policies (WHAT TO KNOW / WHAT TO DO / HOW)
5
+ * user message: knowledge + instructions + output-contracts + policies
6
+ * (WHAT TO KNOW / WHAT TO DO / HOW TO ANSWER / HOW)
6
7
  *
7
8
  * This module has ZERO dependencies on TAKT internals.
8
9
  */
@@ -12,7 +13,7 @@ import type { FacetSet, ComposedPrompt, ComposeOptions } from './types.js';
12
13
  * placement rules.
13
14
  *
14
15
  * - persona → systemPrompt
15
- * - knowledge / instructions / policies → userMessage (in that order)
16
+ * - knowledge / instructions / output-contracts / policies → userMessage
16
17
  *
17
18
  * Policies are placed last so they serve as the most recent constraint
18
19
  * the model sees before generating output.
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG3E;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,GAAG,cAAc,CA2CjF"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAqB,MAAM,YAAY,CAAC;AAiC9F;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,GAAG,cAAc,CASjF"}
package/dist/compose.js CHANGED
@@ -2,54 +2,51 @@
2
2
  * Facet composition — the core placement rule.
3
3
  *
4
4
  * system prompt: persona only (WHO)
5
- * user message: knowledge + instructions + policies (WHAT TO KNOW / WHAT TO DO / HOW)
5
+ * user message: knowledge + instructions + output-contracts + policies
6
+ * (WHAT TO KNOW / WHAT TO DO / HOW TO ANSWER / HOW)
6
7
  *
7
8
  * This module has ZERO dependencies on TAKT internals.
8
9
  */
10
+ import { DEFAULT_USER_MESSAGE_ORDER } from './types.js';
9
11
  import { prepareKnowledgeContent, preparePolicyContent } from './truncation.js';
12
+ function renderOrderedUserPart(entry, facets, contextMaxChars) {
13
+ if (entry === 'policies') {
14
+ if (!facets.policies || facets.policies.length === 0)
15
+ return [];
16
+ const joined = facets.policies.map(p => p.body).join('\n\n---\n\n');
17
+ const sourcePath = facets.policies.length === 1
18
+ ? facets.policies[0].sourcePath
19
+ : undefined;
20
+ return [preparePolicyContent(joined, contextMaxChars, sourcePath)];
21
+ }
22
+ if (entry === 'knowledge') {
23
+ if (!facets.knowledge || facets.knowledge.length === 0)
24
+ return [];
25
+ const joined = facets.knowledge.map(k => k.body).join('\n\n---\n\n');
26
+ const sourcePath = facets.knowledge.length === 1
27
+ ? facets.knowledge[0].sourcePath
28
+ : undefined;
29
+ return [prepareKnowledgeContent(joined, contextMaxChars, sourcePath)];
30
+ }
31
+ if (entry === 'instructions') {
32
+ return facets.instructions?.map(instruction => instruction.body) ?? [];
33
+ }
34
+ return facets.outputContracts?.map(outputContract => outputContract.body) ?? [];
35
+ }
10
36
  /**
11
37
  * Compose facets into an LLM-ready prompt according to Faceted Prompting
12
38
  * placement rules.
13
39
  *
14
40
  * - persona → systemPrompt
15
- * - knowledge / instructions / policies → userMessage (in that order)
41
+ * - knowledge / instructions / output-contracts / policies → userMessage
16
42
  *
17
43
  * Policies are placed last so they serve as the most recent constraint
18
44
  * the model sees before generating output.
19
45
  */
20
46
  export function compose(facets, options) {
21
47
  const systemPrompt = facets.persona?.body ?? '';
22
- const userParts = [];
23
- const order = options.userMessageOrder ?? ['knowledge', 'instructions', 'policies'];
24
- for (const entry of order) {
25
- if (entry === 'policies') {
26
- if (!facets.policies || facets.policies.length === 0)
27
- continue;
28
- const joined = facets.policies.map(p => p.body).join('\n\n---\n\n');
29
- const sourcePath = facets.policies.length === 1
30
- ? facets.policies[0].sourcePath
31
- : undefined;
32
- userParts.push(preparePolicyContent(joined, options.contextMaxChars, sourcePath));
33
- continue;
34
- }
35
- if (entry === 'knowledge') {
36
- if (!facets.knowledge || facets.knowledge.length === 0)
37
- continue;
38
- const joined = facets.knowledge.map(k => k.body).join('\n\n---\n\n');
39
- const sourcePath = facets.knowledge.length === 1
40
- ? facets.knowledge[0].sourcePath
41
- : undefined;
42
- userParts.push(prepareKnowledgeContent(joined, options.contextMaxChars, sourcePath));
43
- continue;
44
- }
45
- if (entry === 'instructions') {
46
- if (!facets.instructions || facets.instructions.length === 0)
47
- continue;
48
- for (const instruction of facets.instructions) {
49
- userParts.push(instruction.body);
50
- }
51
- }
52
- }
48
+ const order = options.userMessageOrder ?? DEFAULT_USER_MESSAGE_ORDER;
49
+ const userParts = order.flatMap(entry => renderOrderedUserPart(entry, facets, options.contextMaxChars));
53
50
  return {
54
51
  systemPrompt,
55
52
  userMessage: userParts.join('\n\n'),
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEhF;;;;;;;;;GASG;AACH,MAAM,UAAU,OAAO,CAAC,MAAgB,EAAE,OAAuB;IAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;IAEhD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAEpF,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACpE,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAC7C,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,UAAU;gBAChC,CAAC,CAAC,SAAS,CAAC;YACd,SAAS,CAAC,IAAI,CACZ,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAClE,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACjE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBAC9C,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,UAAU;gBACjC,CAAC,CAAC,SAAS,CAAC;YACd,SAAS,CAAC,IAAI,CACZ,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CACrE,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACvE,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC9C,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,YAAY;QACZ,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;KACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEhF,SAAS,qBAAqB,CAC5B,KAAwB,EACxB,MAAgB,EAChB,eAAuB;IAEvB,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC7C,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,UAAU;YAChC,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,CAAC,oBAAoB,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAC9C,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,UAAU;YACjC,CAAC,CAAC,SAAS,CAAC;QACd,OAAO,CAAC,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACzE,CAAC;IAED,OAAO,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAClF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,OAAO,CAAC,MAAgB,EAAE,OAAuB;IAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,IAAI,0BAA0B,CAAC;IACrE,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IAExG,OAAO;QACL,YAAY;QACZ,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;KACpC,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * Re-exports all public types, interfaces, and functions.
5
5
  * Consumers should import from this module only.
6
6
  */
7
- export type { FacetKind, FacetContent, FacetSet, ComposedPrompt, ComposedPromptPayload, ComposeOptions, CopyFiles, } from './types.js';
7
+ export type { FacetKind, FacetContent, FacetSet, ComposedPrompt, ComposedPromptPayload, ComposeDefinition, ComposeOptions, ComposeOrderEntry, CopyFiles, } from './types.js';
8
8
  export { compose } from './compose.js';
9
9
  export { composePromptPayload } from './prompt-payload.js';
10
10
  export type { DataEngine } from './data-engine.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,GACf,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,GACf,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAI3D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,aAAa;AACb,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,kBAAkB;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,SAAS;AACT,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIlD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,GACf,MAAM,cAAc,CAAC;AAItB,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,UAAU;AACV,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAI3D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,aAAa;AACb,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AAEzB,kBAAkB;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,SAAS;AACT,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIlD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,GACf,MAAM,cAAc,CAAC;AAItB,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"AAyJA,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB,CAAC;AAEF,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAuB/D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAMnE;AA4CD,wBAAsB,sBAAsB,CAAC,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhH;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAK9H"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"AAiKA,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB,CAAC;AAEF,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAuB/D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAMnE;AA4CD,wBAAsB,sBAAsB,CAAC,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpF;AAED,wBAAsB,uBAAuB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhH;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAK9H"}
@@ -1,7 +1,15 @@
1
1
  import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
2
2
  import { dirname, join } from 'node:path';
3
3
  import { ensureConfigFile, getFacetedRoot } from '../config/index.js';
4
- const REQUIRED_FACET_DIRS = ['persona', 'knowledge', 'policies', 'instructions', 'output-contracts'];
4
+ import { INSTRUCTION_PARTIALS_FACET_DIR } from '../instruction-partial-paths.js';
5
+ const REQUIRED_FACET_DIRS = [
6
+ 'persona',
7
+ 'knowledge',
8
+ 'policies',
9
+ 'instructions',
10
+ INSTRUCTION_PARTIALS_FACET_DIR,
11
+ 'output-contracts',
12
+ ];
5
13
  const TAKT_BOOTSTRAP_BASE_URL = 'https://raw.githubusercontent.com/nrslib/takt/main/builtins/ja/facets';
6
14
  function makeComposition(name, description, knowledge) {
7
15
  const lines = [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/init/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const INSTRUCTION_PARTIALS_FACET_DIR = "partials/instructions";
2
+ export declare function instructionPartialsDir(facetsRoot: string): string;
3
+ //# sourceMappingURL=instruction-partial-paths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instruction-partial-paths.d.ts","sourceRoot":"","sources":["../src/instruction-partial-paths.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,8BAA8B,0BAA0B,CAAC;AAEtE,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEjE"}
@@ -0,0 +1,6 @@
1
+ import { join } from 'node:path';
2
+ export const INSTRUCTION_PARTIALS_FACET_DIR = 'partials/instructions';
3
+ export function instructionPartialsDir(facetsRoot) {
4
+ return join(facetsRoot, INSTRUCTION_PARTIALS_FACET_DIR);
5
+ }
6
+ //# sourceMappingURL=instruction-partial-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instruction-partial-paths.js","sourceRoot":"","sources":["../src/instruction-partial-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,8BAA8B,GAAG,uBAAuB,CAAC;AAEtE,MAAM,UAAU,sBAAsB,CAAC,UAAkB;IACvD,OAAO,IAAI,CAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC;AAC1D,CAAC"}
@@ -4,6 +4,7 @@ export declare function composePromptPayload(params: {
4
4
  definitionDir: string;
5
5
  facetsRoot?: string;
6
6
  facetsRoots?: readonly string[];
7
+ facetedRoots?: readonly string[];
7
8
  composeOptions: ComposeOptions;
8
9
  }): ComposedPromptPayload;
9
10
  //# sourceMappingURL=prompt-payload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-payload.d.ts","sourceRoot":"","sources":["../src/prompt-payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,cAAc,EAAa,MAAM,YAAY,CAAC;AAqBtG,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,iBAAiB,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,qBAAqB,CAYxB"}
1
+ {"version":3,"file":"prompt-payload.d.ts","sourceRoot":"","sources":["../src/prompt-payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,cAAc,EAAa,MAAM,YAAY,CAAC;AA2CtG,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,iBAAiB,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;CAChC,GAAG,qBAAqB,CAaxB"}
@@ -1,18 +1,36 @@
1
1
  import { compose } from './compose.js';
2
- import { buildFacetSet, resolveDefinitionSections } from './cli/skill-renderer.js';
3
- function buildCopyFiles(params) {
4
- const resolved = resolveDefinitionSections(params);
2
+ import { buildFacetSetFromResolvedSections, resolveDefinitionSections } from './cli/skill-renderer.js';
3
+ function instructionFacetPath(instruction) {
4
+ if ('path' in instruction) {
5
+ return instruction.path;
6
+ }
7
+ return undefined;
8
+ }
9
+ function instructionPartialSourcePaths(instruction) {
10
+ if (!('sourcePaths' in instruction)) {
11
+ return [];
12
+ }
13
+ return instruction.sourcePaths.filter(path => path !== instruction.path);
14
+ }
15
+ function dedupePaths(paths) {
16
+ return paths.reduce((deduped, path) => deduped.includes(path) ? deduped : [...deduped, path], []);
17
+ }
18
+ function buildCopyFiles(resolved) {
19
+ const instructionPartials = dedupePaths(resolved.instructions.flatMap(instruction => instructionPartialSourcePaths(instruction)));
5
20
  return {
6
21
  persona: [resolved.persona.path],
7
22
  knowledge: resolved.knowledge.map(section => section.path),
8
23
  policies: resolved.policies.map(section => section.path),
9
- instructions: resolved.instructions
10
- .filter((instruction) => 'path' in instruction)
11
- .map(instruction => instruction.path),
24
+ instructions: dedupePaths(resolved.instructions
25
+ .map(instruction => instructionFacetPath(instruction))
26
+ .filter(path => path !== undefined)),
27
+ outputContracts: resolved.outputContracts.map(section => section.path),
28
+ ...(instructionPartials.length > 0 ? { instructionPartials } : {}),
12
29
  };
13
30
  }
14
31
  export function composePromptPayload(params) {
15
- const facetSet = buildFacetSet(params);
32
+ const resolved = resolveDefinitionSections(params);
33
+ const facetSet = buildFacetSetFromResolvedSections(resolved);
16
34
  const composed = compose(facetSet, {
17
35
  ...params.composeOptions,
18
36
  userMessageOrder: params.definition.order,
@@ -20,7 +38,7 @@ export function composePromptPayload(params) {
20
38
  return {
21
39
  systemPrompt: composed.systemPrompt,
22
40
  userPrompt: composed.userMessage,
23
- copyFiles: buildCopyFiles(params),
41
+ copyFiles: buildCopyFiles(resolved),
24
42
  };
25
43
  }
26
44
  //# sourceMappingURL=prompt-payload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-payload.js","sourceRoot":"","sources":["../src/prompt-payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEnF,SAAS,cAAc,CAAC,MAKvB;IACC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAEnD,OAAO;QACL,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QAChC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC1D,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACxD,YAAY,EAAE,QAAQ,CAAC,YAAY;aAChC,MAAM,CAAC,CAAC,WAAW,EAA8D,EAAE,CAAC,MAAM,IAAI,WAAW,CAAC;aAC1G,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;KACxC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAMpC;IACC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE;QACjC,GAAG,MAAM,CAAC,cAAc;QACxB,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK;KAC1C,CAAC,CAAC;IAEH,OAAO;QACL,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,UAAU,EAAE,QAAQ,CAAC,WAAW;QAChC,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"prompt-payload.js","sourceRoot":"","sources":["../src/prompt-payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,iCAAiC,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAGvG,SAAS,oBAAoB,CAAC,WAA+B;IAC3D,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;QAC1B,OAAO,WAAW,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,6BAA6B,CAAC,WAA+B;IACpE,IAAI,CAAC,CAAC,aAAa,IAAI,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,WAAW,CAAC,KAAwB;IAC3C,OAAO,KAAK,CAAC,MAAM,CAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACvD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,EACvD,EAAE,CAAC,CAAC;AACN,CAAC;AAED,SAAS,cAAc,CAAC,QAAoC;IAC1D,MAAM,mBAAmB,GAAG,WAAW,CACrC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,CAAC,CACzF,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QAChC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QAC1D,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACxD,YAAY,EAAE,WAAW,CACvB,QAAQ,CAAC,YAAY;aAClB,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;aACrD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CACtC;QACD,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;QACtE,GAAG,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAOpC;IACC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,iCAAiC,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE;QACjC,GAAG,MAAM,CAAC,cAAc;QACxB,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,KAAK;KAC1C,CAAC,CAAC;IAEH,OAAO;QACL,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,UAAU,EAAE,QAAQ,CAAC,WAAW;QAChC,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC;KACpC,CAAC;AACJ,CAAC"}
package/dist/types.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * Core type definitions for Faceted Prompting.
3
3
  *
4
4
  * Defines the vocabulary of facets (persona, policy, knowledge, instruction,
5
- * output-contract) and the structures used by compose() and DataEngine.
5
+ * output-contracts) and the structures used by compose() and DataEngine.
6
6
  *
7
7
  * This module has ZERO dependencies on TAKT internals.
8
8
  */
@@ -25,12 +25,13 @@ export interface FacetSet {
25
25
  readonly policies?: readonly FacetContent[];
26
26
  readonly knowledge?: readonly FacetContent[];
27
27
  readonly instructions?: readonly FacetContent[];
28
+ readonly outputContracts?: readonly FacetContent[];
28
29
  }
29
30
  /**
30
31
  * The output of compose(): facet content assigned to LLM message slots.
31
32
  *
32
33
  * persona → systemPrompt
33
- * policy + knowledge + instruction → userMessage
34
+ * knowledge + instructions + output-contracts + policies → userMessage
34
35
  */
35
36
  export interface ComposedPrompt {
36
37
  readonly systemPrompt: string;
@@ -41,6 +42,8 @@ export interface CopyFiles {
41
42
  readonly knowledge: readonly string[];
42
43
  readonly policies: readonly string[];
43
44
  readonly instructions: readonly string[];
45
+ readonly outputContracts: readonly string[];
46
+ readonly instructionPartials?: readonly string[];
44
47
  }
45
48
  export interface ComposedPromptPayload {
46
49
  readonly systemPrompt: string;
@@ -48,7 +51,8 @@ export interface ComposedPromptPayload {
48
51
  readonly copyFiles: CopyFiles;
49
52
  }
50
53
  /** User-message sections that can be ordered in compose definitions. */
51
- export type ComposeOrderEntry = 'policies' | 'knowledge' | 'instructions';
54
+ export type ComposeOrderEntry = 'policies' | 'knowledge' | 'instructions' | 'output-contracts';
55
+ export declare const DEFAULT_USER_MESSAGE_ORDER: readonly ComposeOrderEntry[];
52
56
  /** CLI compose definition loaded from YAML. */
53
57
  export interface ComposeDefinition {
54
58
  readonly name: string;
@@ -58,13 +62,14 @@ export interface ComposeDefinition {
58
62
  readonly knowledge?: readonly string[];
59
63
  readonly policies?: readonly string[];
60
64
  readonly instructions?: readonly string[];
65
+ readonly outputContracts?: readonly string[];
61
66
  readonly order?: readonly ComposeOrderEntry[];
62
67
  }
63
68
  /** Options controlling compose() behaviour. */
64
69
  export interface ComposeOptions {
65
70
  /** Maximum character length for knowledge/policy content before truncation. */
66
71
  readonly contextMaxChars: number;
67
- /** Optional user-message section order for policies/knowledge/instruction. */
72
+ /** Optional user-message section order for knowledge/instructions/output-contracts/policies. */
68
73
  readonly userMessageOrder?: readonly ComposeOrderEntry[];
69
74
  }
70
75
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uDAAuD;AACvD,MAAM,MAAM,SAAS,GACjB,UAAU,GACV,UAAU,GACV,WAAW,GACX,cAAc,GACd,kBAAkB,CAAC;AAEvB,8DAA8D;AAC9D,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC7C,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CACjD;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B;AAED,wEAAwE;AACxE,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,CAAC;AAE1E,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC/C;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC1D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uDAAuD;AACvD,MAAM,MAAM,SAAS,GACjB,UAAU,GACV,UAAU,GACV,WAAW,GACX,cAAc,GACd,kBAAkB,CAAC;AAEvB,8DAA8D;AAC9D,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC7C,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CACpD;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B;AAED,wEAAwE;AACxE,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,cAAc,GAAG,kBAAkB,CAAC;AAE/F,eAAO,MAAM,0BAA0B,EAAE,SAAS,iBAAiB,EAKlE,CAAC;AAEF,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC/C;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,+EAA+E;IAC/E,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,gGAAgG;IAChG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC1D"}
package/dist/types.js CHANGED
@@ -2,9 +2,14 @@
2
2
  * Core type definitions for Faceted Prompting.
3
3
  *
4
4
  * Defines the vocabulary of facets (persona, policy, knowledge, instruction,
5
- * output-contract) and the structures used by compose() and DataEngine.
5
+ * output-contracts) and the structures used by compose() and DataEngine.
6
6
  *
7
7
  * This module has ZERO dependencies on TAKT internals.
8
8
  */
9
- export {};
9
+ export const DEFAULT_USER_MESSAGE_ORDER = [
10
+ 'knowledge',
11
+ 'instructions',
12
+ 'output-contracts',
13
+ 'policies',
14
+ ];
10
15
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA4DH,MAAM,CAAC,MAAM,0BAA0B,GAAiC;IACtE,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,UAAU;CACX,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "faceted-prompting",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Faceted Prompting — structured prompt composition for LLMs",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -50,11 +50,11 @@
50
50
  "eslint": "^9.0.0",
51
51
  "typescript": "^5.9.3",
52
52
  "typescript-eslint": "^8.57.0",
53
- "vitest": "^3.2.4"
53
+ "vitest": "^4.1.9"
54
54
  },
55
55
  "dependencies": {
56
56
  "traced-config": "^0.1.0",
57
57
  "update-notifier": "^7.3.1",
58
- "yaml": "^2.8.1"
58
+ "yaml": "^2.9.0"
59
59
  }
60
60
  }