@vertesia/tools-sdk 1.0.0-dev.20260203.130115Z → 1.0.0-dev.20260227.112605Z

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 (171) hide show
  1. package/lib/cjs/ContentTypesCollection.js +43 -0
  2. package/lib/cjs/ContentTypesCollection.js.map +1 -0
  3. package/lib/cjs/InteractionCollection.js +43 -0
  4. package/lib/cjs/InteractionCollection.js.map +1 -0
  5. package/lib/cjs/RenderingTemplateCollection.js +43 -0
  6. package/lib/cjs/RenderingTemplateCollection.js.map +1 -0
  7. package/lib/cjs/SkillCollection.js +384 -0
  8. package/lib/cjs/SkillCollection.js.map +1 -0
  9. package/lib/cjs/ToolCollection.js +221 -0
  10. package/lib/cjs/ToolCollection.js.map +1 -0
  11. package/lib/cjs/ToolRegistry.js +95 -0
  12. package/lib/cjs/ToolRegistry.js.map +1 -0
  13. package/lib/cjs/auth.js +131 -0
  14. package/lib/cjs/auth.js.map +1 -0
  15. package/lib/cjs/build/validate.js +7 -0
  16. package/lib/cjs/build/validate.js.map +1 -0
  17. package/lib/cjs/copy-assets.js +84 -0
  18. package/lib/cjs/copy-assets.js.map +1 -0
  19. package/lib/cjs/index.js +33 -0
  20. package/lib/cjs/index.js.map +1 -0
  21. package/lib/cjs/package.json +3 -0
  22. package/lib/cjs/server/app-package.js +141 -0
  23. package/lib/cjs/server/app-package.js.map +1 -0
  24. package/lib/cjs/server/content-types.js +73 -0
  25. package/lib/cjs/server/content-types.js.map +1 -0
  26. package/lib/cjs/server/interactions.js +89 -0
  27. package/lib/cjs/server/interactions.js.map +1 -0
  28. package/lib/cjs/server/mcp.js +45 -0
  29. package/lib/cjs/server/mcp.js.map +1 -0
  30. package/lib/cjs/server/site.js +42 -0
  31. package/lib/cjs/server/site.js.map +1 -0
  32. package/lib/cjs/server/skills.js +114 -0
  33. package/lib/cjs/server/skills.js.map +1 -0
  34. package/lib/cjs/server/templates.js +67 -0
  35. package/lib/cjs/server/templates.js.map +1 -0
  36. package/lib/cjs/server/tools.js +87 -0
  37. package/lib/cjs/server/tools.js.map +1 -0
  38. package/lib/cjs/server/types.js +3 -0
  39. package/lib/cjs/server/types.js.map +1 -0
  40. package/lib/cjs/server/widgets.js +27 -0
  41. package/lib/cjs/server/widgets.js.map +1 -0
  42. package/lib/cjs/server.js +139 -0
  43. package/lib/cjs/server.js.map +1 -0
  44. package/lib/cjs/site/styles.js +692 -0
  45. package/lib/cjs/site/styles.js.map +1 -0
  46. package/lib/cjs/site/templates.js +1185 -0
  47. package/lib/cjs/site/templates.js.map +1 -0
  48. package/lib/cjs/types.js +3 -0
  49. package/lib/cjs/types.js.map +1 -0
  50. package/lib/cjs/utils.js +44 -0
  51. package/lib/cjs/utils.js.map +1 -0
  52. package/lib/esm/ContentTypesCollection.js +39 -0
  53. package/lib/esm/ContentTypesCollection.js.map +1 -0
  54. package/lib/esm/InteractionCollection.js +39 -0
  55. package/lib/esm/InteractionCollection.js.map +1 -0
  56. package/lib/esm/RenderingTemplateCollection.js +39 -0
  57. package/lib/esm/RenderingTemplateCollection.js.map +1 -0
  58. package/lib/esm/SkillCollection.js +377 -0
  59. package/lib/esm/SkillCollection.js.map +1 -0
  60. package/lib/esm/ToolCollection.js +183 -0
  61. package/lib/esm/ToolCollection.js.map +1 -0
  62. package/lib/esm/ToolRegistry.js +90 -0
  63. package/lib/esm/ToolRegistry.js.map +1 -0
  64. package/lib/esm/auth.js +124 -0
  65. package/lib/esm/auth.js.map +1 -0
  66. package/lib/esm/build/validate.js +4 -0
  67. package/lib/esm/build/validate.js.map +1 -0
  68. package/lib/esm/copy-assets.js +81 -0
  69. package/lib/esm/copy-assets.js.map +1 -0
  70. package/lib/esm/index.js +13 -0
  71. package/lib/esm/index.js.map +1 -0
  72. package/lib/esm/server/app-package.js +138 -0
  73. package/lib/esm/server/app-package.js.map +1 -0
  74. package/lib/esm/server/content-types.js +70 -0
  75. package/lib/esm/server/content-types.js.map +1 -0
  76. package/lib/esm/server/interactions.js +86 -0
  77. package/lib/esm/server/interactions.js.map +1 -0
  78. package/lib/esm/server/mcp.js +42 -0
  79. package/lib/esm/server/mcp.js.map +1 -0
  80. package/lib/esm/server/site.js +39 -0
  81. package/lib/esm/server/site.js.map +1 -0
  82. package/lib/esm/server/skills.js +111 -0
  83. package/lib/esm/server/skills.js.map +1 -0
  84. package/lib/esm/server/templates.js +64 -0
  85. package/lib/esm/server/templates.js.map +1 -0
  86. package/lib/esm/server/tools.js +84 -0
  87. package/lib/esm/server/tools.js.map +1 -0
  88. package/lib/esm/server/types.js +2 -0
  89. package/lib/esm/server/types.js.map +1 -0
  90. package/lib/esm/server/widgets.js +24 -0
  91. package/lib/esm/server/widgets.js.map +1 -0
  92. package/lib/esm/server.js +135 -0
  93. package/lib/esm/server.js.map +1 -0
  94. package/lib/esm/site/styles.js +689 -0
  95. package/lib/esm/site/styles.js.map +1 -0
  96. package/lib/esm/site/templates.js +1170 -0
  97. package/lib/esm/site/templates.js.map +1 -0
  98. package/lib/esm/types.js +2 -0
  99. package/lib/esm/types.js.map +1 -0
  100. package/lib/esm/utils.js +38 -0
  101. package/lib/esm/utils.js.map +1 -0
  102. package/lib/types/ContentTypesCollection.d.ts +18 -0
  103. package/lib/types/ContentTypesCollection.d.ts.map +1 -0
  104. package/lib/types/InteractionCollection.d.ts +18 -0
  105. package/lib/types/InteractionCollection.d.ts.map +1 -0
  106. package/lib/types/RenderingTemplateCollection.d.ts +17 -0
  107. package/lib/types/RenderingTemplateCollection.d.ts.map +1 -0
  108. package/lib/types/SkillCollection.d.ts +119 -0
  109. package/lib/types/SkillCollection.d.ts.map +1 -0
  110. package/lib/types/ToolCollection.d.ts +67 -0
  111. package/lib/types/ToolCollection.d.ts.map +1 -0
  112. package/lib/types/ToolRegistry.d.ts +22 -0
  113. package/lib/types/ToolRegistry.d.ts.map +1 -0
  114. package/lib/types/auth.d.ts +32 -0
  115. package/lib/types/auth.d.ts.map +1 -0
  116. package/lib/types/build/validate.d.ts +2 -0
  117. package/lib/types/build/validate.d.ts.map +1 -0
  118. package/lib/types/copy-assets.d.ts +14 -0
  119. package/lib/types/copy-assets.d.ts.map +1 -0
  120. package/lib/types/index.d.ts +13 -0
  121. package/lib/types/index.d.ts.map +1 -0
  122. package/lib/types/server/app-package.d.ts +4 -0
  123. package/lib/types/server/app-package.d.ts.map +1 -0
  124. package/lib/types/server/content-types.d.ts +4 -0
  125. package/lib/types/server/content-types.d.ts.map +1 -0
  126. package/lib/types/server/interactions.d.ts +4 -0
  127. package/lib/types/server/interactions.d.ts.map +1 -0
  128. package/lib/types/server/mcp.d.ts +4 -0
  129. package/lib/types/server/mcp.d.ts.map +1 -0
  130. package/lib/types/server/site.d.ts +4 -0
  131. package/lib/types/server/site.d.ts.map +1 -0
  132. package/lib/types/server/skills.d.ts +4 -0
  133. package/lib/types/server/skills.d.ts.map +1 -0
  134. package/lib/types/server/templates.d.ts +4 -0
  135. package/lib/types/server/templates.d.ts.map +1 -0
  136. package/lib/types/server/tools.d.ts +4 -0
  137. package/lib/types/server/tools.d.ts.map +1 -0
  138. package/lib/types/server/types.d.ts +93 -0
  139. package/lib/types/server/types.d.ts.map +1 -0
  140. package/lib/types/server/widgets.d.ts +4 -0
  141. package/lib/types/server/widgets.d.ts.map +1 -0
  142. package/lib/types/server.d.ts +27 -0
  143. package/lib/types/server.d.ts.map +1 -0
  144. package/lib/types/site/styles.d.ts +5 -0
  145. package/lib/types/site/styles.d.ts.map +1 -0
  146. package/lib/types/site/templates.d.ts +71 -0
  147. package/lib/types/site/templates.d.ts.map +1 -0
  148. package/lib/types/types.d.ts +294 -0
  149. package/lib/types/types.d.ts.map +1 -0
  150. package/lib/types/utils.d.ts +10 -0
  151. package/lib/types/utils.d.ts.map +1 -0
  152. package/package.json +4 -4
  153. package/src/ContentTypesCollection.ts +8 -8
  154. package/src/RenderingTemplateCollection.ts +51 -0
  155. package/src/SkillCollection.ts +11 -2
  156. package/src/ToolCollection.ts +9 -18
  157. package/src/ToolRegistry.ts +17 -56
  158. package/src/auth.ts +27 -0
  159. package/src/index.ts +1 -0
  160. package/src/server/app-package.ts +101 -43
  161. package/src/server/{conyent-types.ts → content-types.ts} +29 -11
  162. package/src/server/interactions.ts +11 -6
  163. package/src/server/site.ts +9 -0
  164. package/src/server/templates.ts +80 -0
  165. package/src/server/tools.ts +3 -22
  166. package/src/server/types.ts +14 -1
  167. package/src/server/widgets.ts +2 -6
  168. package/src/server.ts +5 -1
  169. package/src/site/templates.ts +179 -2
  170. package/src/types.ts +38 -1
  171. package/src/utils.ts +15 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/site/templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toPathName = toPathName;
4
+ exports.kebabCaseToTitle = kebabCaseToTitle;
5
+ exports.makeScriptUrl = makeScriptUrl;
6
+ exports.join = join;
7
+ /**
8
+ * Convert a name to a URL-safe path segment.
9
+ * If the name contains spaces or underscores, convert to PascalCase.
10
+ * Otherwise return as-is. Any characters not in [a-zA-Z0-9$_\-@] are replaced with '-'.
11
+ */
12
+ function toPathName(name) {
13
+ let result = name;
14
+ if (result.includes(' ') || result.includes('_')) {
15
+ result = result.split(/[\s_]+/).map(w => w.charAt(0).toUpperCase() + w.slice(1)).join('');
16
+ }
17
+ return result.replace(/[^a-zA-Z0-9$_\-@]/g, '-');
18
+ }
19
+ function kebabCaseToTitle(name) {
20
+ return name.split('-').map(p => p[0].toUpperCase() + p.substring(1)).join(' ');
21
+ }
22
+ function makeScriptUrl(origin, script) {
23
+ return join(origin, join("/scripts", script));
24
+ }
25
+ function join(left, right) {
26
+ if (left.endsWith('/')) {
27
+ if (right.startsWith('/')) {
28
+ return left + right.slice(1);
29
+ }
30
+ else {
31
+ return left + right;
32
+ }
33
+ }
34
+ else if (right.startsWith('/')) {
35
+ return left + right;
36
+ }
37
+ else if (right.startsWith('./')) {
38
+ return left + '/' + right.slice(2);
39
+ }
40
+ else {
41
+ return left + '/' + right;
42
+ }
43
+ }
44
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;AAKA,gCAMC;AAED,4CAEC;AAED,sCAEC;AAED,oBAcC;AAnCD;;;;GAIG;AACH,SAAgB,UAAU,CAAC,IAAY;IACnC,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,gBAAgB,CAAC,IAAY;IACzC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnF,CAAC;AAED,SAAgB,aAAa,CAAC,MAAc,EAAE,MAAc;IACxD,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,IAAI,CAAC,IAAY,EAAE,KAAa;IAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,GAAG,KAAK,CAAC;QACxB,CAAC;IACL,CAAC;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,GAAG,KAAK,CAAC;IACxB,CAAC;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACJ,OAAO,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;IAC9B,CAAC;AACL,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { kebabCaseToTitle } from "./utils.js";
2
+ export class ContentTypesCollection {
3
+ types;
4
+ name;
5
+ title;
6
+ icon;
7
+ description;
8
+ constructor({ name, title, icon, description, types }) {
9
+ this.name = name;
10
+ this.title = title || kebabCaseToTitle(name);
11
+ this.icon = icon;
12
+ this.description = description;
13
+ this.types = types;
14
+ }
15
+ getContentTypes() {
16
+ return this.types;
17
+ }
18
+ [Symbol.iterator]() {
19
+ let index = 0;
20
+ const types = this.types;
21
+ return {
22
+ next() {
23
+ if (index < types.length) {
24
+ return { value: types[index++], done: false };
25
+ }
26
+ else {
27
+ return { done: true, value: undefined };
28
+ }
29
+ }
30
+ };
31
+ }
32
+ map(callback) {
33
+ return this.types.map(callback);
34
+ }
35
+ getTypeByName(name) {
36
+ return this.types.find(type => type.name === name);
37
+ }
38
+ }
39
+ //# sourceMappingURL=ContentTypesCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentTypesCollection.js","sourceRoot":"","sources":["../../src/ContentTypesCollection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9C,MAAM,OAAO,sBAAsB;IAC/B,KAAK,CAAmB;IACxB,IAAI,CAAS;IACb,KAAK,CAAU;IACf,IAAI,CAAU;IACd,WAAW,CAAU;IACrB,YAAY,EACR,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EACX;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,eAAe;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACb,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAEzB,OAAO;YACH,IAAI;gBACA,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBACvB,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAC5C,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED,GAAG,CAAI,QAAoD;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACvD,CAAC;CAEJ"}
@@ -0,0 +1,39 @@
1
+ import { kebabCaseToTitle } from "./utils.js";
2
+ export class InteractionCollection {
3
+ interactions;
4
+ name;
5
+ title;
6
+ icon;
7
+ description;
8
+ constructor({ name, title, icon, description, interactions }) {
9
+ this.name = name;
10
+ this.title = title || kebabCaseToTitle(name);
11
+ this.icon = icon;
12
+ this.description = description;
13
+ this.interactions = interactions;
14
+ }
15
+ getInteractions() {
16
+ return this.interactions;
17
+ }
18
+ [Symbol.iterator]() {
19
+ let index = 0;
20
+ const interactions = this.interactions;
21
+ return {
22
+ next() {
23
+ if (index < interactions.length) {
24
+ return { value: interactions[index++], done: false };
25
+ }
26
+ else {
27
+ return { done: true, value: undefined };
28
+ }
29
+ }
30
+ };
31
+ }
32
+ map(callback) {
33
+ return this.interactions.map(callback);
34
+ }
35
+ getInteractionByName(name) {
36
+ return this.interactions.find(interaction => interaction.name === name);
37
+ }
38
+ }
39
+ //# sourceMappingURL=InteractionCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InteractionCollection.js","sourceRoot":"","sources":["../../src/InteractionCollection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9C,MAAM,OAAO,qBAAqB;IAC9B,YAAY,CAAoB;IAChC,IAAI,CAAS;IACb,KAAK,CAAU;IACf,IAAI,CAAU;IACd,WAAW,CAAU;IACrB,YAAY,EACR,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EACnB;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,eAAe;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACb,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAEvC,OAAO;YACH,IAAI;gBACA,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;oBAC9B,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAC5C,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED,GAAG,CAAI,QAA4D;QAC/D,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,oBAAoB,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC5E,CAAC;CACJ"}
@@ -0,0 +1,39 @@
1
+ import { kebabCaseToTitle } from "./utils.js";
2
+ export class RenderingTemplateCollection {
3
+ templates;
4
+ name;
5
+ title;
6
+ icon;
7
+ description;
8
+ constructor({ name, title, icon, description, templates }) {
9
+ this.name = name;
10
+ this.title = title || kebabCaseToTitle(name);
11
+ this.icon = icon;
12
+ this.description = description;
13
+ this.templates = templates;
14
+ }
15
+ getTemplateDefinitions() {
16
+ return this.templates;
17
+ }
18
+ getTemplate(name) {
19
+ return this.templates.find(t => t.name === name);
20
+ }
21
+ [Symbol.iterator]() {
22
+ let index = 0;
23
+ const templates = this.templates;
24
+ return {
25
+ next() {
26
+ if (index < templates.length) {
27
+ return { value: templates[index++], done: false };
28
+ }
29
+ else {
30
+ return { done: true, value: undefined };
31
+ }
32
+ }
33
+ };
34
+ }
35
+ map(callback) {
36
+ return this.templates.map(callback);
37
+ }
38
+ }
39
+ //# sourceMappingURL=RenderingTemplateCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderingTemplateCollection.js","sourceRoot":"","sources":["../../src/RenderingTemplateCollection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAM9C,MAAM,OAAO,2BAA2B;IACpC,SAAS,CAAgC;IACzC,IAAI,CAAS;IACb,KAAK,CAAU;IACf,IAAI,CAAU;IACd,WAAW,CAAU;IAErB,YAAY,EACR,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EACV;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,sBAAsB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,WAAW,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACb,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjC,OAAO;YACH,IAAI;gBACA,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;oBAC3B,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;gBACtD,CAAC;qBAAM,CAAC;oBACJ,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;gBAC5C,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED,GAAG,CAAI,QAAqE;QACxE,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;CACJ"}
@@ -0,0 +1,377 @@
1
+ import { existsSync, readdirSync, readFileSync, statSync } from "fs";
2
+ import { HTTPException } from "hono/http-exception";
3
+ import { join } from "path";
4
+ import { kebabCaseToTitle } from "./utils.js";
5
+ /**
6
+ * Implements a skills collection endpoint.
7
+ * Skills provide contextual instructions to agents.
8
+ * They can be static (markdown) or dynamic (JST templates).
9
+ */
10
+ export class SkillCollection {
11
+ /**
12
+ * A kebab case collection name
13
+ */
14
+ name;
15
+ /**
16
+ * Optional title for UI display
17
+ */
18
+ title;
19
+ /**
20
+ * Optional icon for UI display
21
+ */
22
+ icon;
23
+ /**
24
+ * A short description
25
+ */
26
+ description;
27
+ /**
28
+ * The skills in this collection
29
+ */
30
+ skills;
31
+ constructor({ name, title, icon, description, skills }) {
32
+ this.name = name;
33
+ this.title = title || kebabCaseToTitle(name);
34
+ this.icon = icon;
35
+ this.description = description;
36
+ this.skills = new Map(skills.map(s => [s.name, s]));
37
+ }
38
+ [Symbol.iterator]() {
39
+ return this.skills.values();
40
+ }
41
+ map(callback) {
42
+ return Array.from(this.skills.values()).map(callback);
43
+ }
44
+ /**
45
+ * Get a skill by name
46
+ */
47
+ getSkill(name) {
48
+ return this.skills.get(name);
49
+ }
50
+ /**
51
+ * Get all skill definitions
52
+ */
53
+ getSkillDefinitions() {
54
+ return Array.from(this.skills.values());
55
+ }
56
+ /**
57
+ * Get skills exposed as tool definitions.
58
+ * This allows skills to appear alongside regular tools.
59
+ * When called, they return rendered instructions.
60
+ * Includes related_tools for dynamic tool discovery.
61
+ */
62
+ getToolDefinitions(filterContext) {
63
+ const defaultSchema = {
64
+ type: 'object',
65
+ properties: {
66
+ context: {
67
+ type: "string",
68
+ description: "Additional context or specific requirements for this task"
69
+ }
70
+ }
71
+ };
72
+ let skills = Array.from(this.skills.values());
73
+ if (filterContext) {
74
+ skills = skills.filter(skill => {
75
+ return skill.isEnabled ? skill.isEnabled(filterContext) : true;
76
+ });
77
+ }
78
+ return skills.map(skill => {
79
+ // Build description with related tools info if available
80
+ let description = `[Skill] ${skill.description}. Returns contextual instructions for this task.`;
81
+ if (skill.related_tools && skill.related_tools.length > 0) {
82
+ description += ` Unlocks tools: ${skill.related_tools.join(', ')}.`;
83
+ }
84
+ return {
85
+ url: `skills/${this.name}`,
86
+ name: `learn_${skill.name}`,
87
+ description,
88
+ input_schema: skill.input_schema || defaultSchema,
89
+ related_tools: skill.related_tools,
90
+ category: this.name,
91
+ };
92
+ });
93
+ }
94
+ /**
95
+ * Get as a tool collection definition (for listing alongside tools)
96
+ */
97
+ getAsToolCollection(baseUrl) {
98
+ return {
99
+ title: this.title || this.name,
100
+ description: this.description || `Skills: ${this.name}`,
101
+ src: `${baseUrl}/api/skills/${this.name}`,
102
+ tools: this.getToolDefinitions()
103
+ };
104
+ }
105
+ getWidgets() {
106
+ const out = [];
107
+ for (const skill of this.skills.values()) {
108
+ if (skill.widgets) {
109
+ for (const widget of skill.widgets) {
110
+ out.push({
111
+ name: widget,
112
+ skill: skill.name,
113
+ });
114
+ }
115
+ }
116
+ }
117
+ return Array.from(out);
118
+ }
119
+ /**
120
+ * Execute a skill - accepts standard tool execution payload.
121
+ * Returns rendered instructions in tool result format.
122
+ *
123
+ * @param ctx - Hono context
124
+ * @param preParsedPayload - Optional pre-parsed payload (used when routing from root endpoint)
125
+ */
126
+ async execute(ctx, preParsedPayload) {
127
+ const toolCtx = ctx;
128
+ let payload = preParsedPayload;
129
+ try {
130
+ if (!payload) {
131
+ // Check if body was already parsed and validated by middleware
132
+ if (toolCtx.payload) {
133
+ payload = toolCtx.payload;
134
+ }
135
+ else {
136
+ throw new HTTPException(400, {
137
+ message: 'Invalid or missing skill execution payload. Expected { tool_use: { id, tool_name, tool_input? }, metadata? }'
138
+ });
139
+ }
140
+ }
141
+ const toolName = payload.tool_use.tool_name;
142
+ // Extract skill name from tool name (remove "learn_" prefix if present)
143
+ const skillName = toolName.startsWith('learn_')
144
+ ? toolName.replace('learn_', '')
145
+ : toolName;
146
+ const skill = this.skills.get(skillName);
147
+ if (!skill) {
148
+ console.warn("[SkillCollection] Skill not found", {
149
+ collection: this.name,
150
+ requestedSkill: skillName,
151
+ toolName,
152
+ availableSkills: Array.from(this.skills.keys()),
153
+ });
154
+ throw new HTTPException(404, {
155
+ message: `Skill not found: ${skillName}`
156
+ });
157
+ }
158
+ const data = payload.tool_use.tool_input || {};
159
+ const result = await this.renderSkill(skill, data);
160
+ // TODO: If skill.execution is set, run via Daytona
161
+ // Return in tool result format
162
+ return ctx.json({
163
+ tool_use_id: payload.tool_use.id,
164
+ is_error: false,
165
+ content: result.instructions,
166
+ meta: {
167
+ skill_name: skill.name,
168
+ content_type: skill.content_type,
169
+ execution: skill.execution,
170
+ }
171
+ });
172
+ }
173
+ catch (err) {
174
+ const status = err.status || 500;
175
+ const toolName = payload?.tool_use?.tool_name;
176
+ const toolUseId = payload?.tool_use?.id;
177
+ if (status >= 500) {
178
+ console.error("[SkillCollection] Skill execution failed", {
179
+ collection: this.name,
180
+ skill: toolName,
181
+ toolUseId,
182
+ error: err.message,
183
+ status,
184
+ toolInput: payload?.tool_use?.tool_input,
185
+ stack: err.stack,
186
+ });
187
+ }
188
+ return ctx.json({
189
+ tool_use_id: toolUseId || "unknown",
190
+ is_error: true,
191
+ content: err.message || "Error executing skill",
192
+ }, status);
193
+ }
194
+ }
195
+ /**
196
+ * Render skill instructions (static or dynamic)
197
+ */
198
+ async renderSkill(skill, _data) {
199
+ const instructions = skill.instructions;
200
+ if (skill.content_type === 'jst') {
201
+ // JST templates are not currently supported
202
+ throw new HTTPException(501, {
203
+ message: `JST templates are not currently supported. Use 'md' content type instead.`
204
+ });
205
+ }
206
+ return {
207
+ name: skill.name,
208
+ instructions,
209
+ };
210
+ }
211
+ }
212
+ /**
213
+ * Parse a SKILL.md or SKILL.jst file content into a SkillDefinition.
214
+ *
215
+ * Format:
216
+ * ```
217
+ * ---
218
+ * name: skill-name
219
+ * description: Short description
220
+ * keywords: [keyword1, keyword2]
221
+ * tools: [tool1, tool2]
222
+ * language: python
223
+ * packages: [numpy, pandas]
224
+ * ---
225
+ *
226
+ * # Instructions
227
+ *
228
+ * Your markdown/jst content here...
229
+ * ```
230
+ */
231
+ export function parseSkillFile(content, contentType) {
232
+ // Parse YAML frontmatter
233
+ const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
234
+ if (!frontmatterMatch) {
235
+ throw new Error("Invalid skill file: missing YAML frontmatter");
236
+ }
237
+ const [, yamlContent, body] = frontmatterMatch;
238
+ const frontmatter = parseYamlFrontmatter(yamlContent);
239
+ const instructions = body.trim();
240
+ if (!frontmatter.name) {
241
+ throw new Error("Skill file missing required 'name' field");
242
+ }
243
+ if (!frontmatter.description) {
244
+ throw new Error("Skill file missing required 'description' field");
245
+ }
246
+ const skill = {
247
+ name: frontmatter.name,
248
+ title: frontmatter.title,
249
+ description: frontmatter.description,
250
+ instructions,
251
+ content_type: contentType,
252
+ widgets: frontmatter.widgets || undefined,
253
+ scripts: frontmatter.scripts || undefined,
254
+ };
255
+ // Build context triggers
256
+ if (frontmatter.keywords || frontmatter.tools || frontmatter.data_patterns) {
257
+ skill.context_triggers = {
258
+ keywords: frontmatter.keywords,
259
+ tool_names: frontmatter.tools,
260
+ data_patterns: frontmatter.data_patterns,
261
+ };
262
+ }
263
+ // Build execution config
264
+ if (frontmatter.language) {
265
+ skill.execution = {
266
+ language: frontmatter.language,
267
+ packages: frontmatter.packages,
268
+ system_packages: frontmatter.system_packages,
269
+ };
270
+ // Extract code template from instructions if present
271
+ const codeBlockMatch = instructions.match(/```(?:python|javascript|typescript|js|ts|py)\n([\s\S]*?)```/);
272
+ if (codeBlockMatch) {
273
+ skill.execution.template = codeBlockMatch[1].trim();
274
+ }
275
+ }
276
+ // Related tools from frontmatter
277
+ if (frontmatter.tools) {
278
+ skill.related_tools = frontmatter.tools;
279
+ }
280
+ return skill;
281
+ }
282
+ /**
283
+ * Simple YAML frontmatter parser (handles basic key: value and arrays)
284
+ */
285
+ function parseYamlFrontmatter(yaml) {
286
+ const result = {};
287
+ const lines = yaml.split('\n');
288
+ for (const line of lines) {
289
+ const trimmed = line.trim();
290
+ if (!trimmed || trimmed.startsWith('#'))
291
+ continue;
292
+ const colonIndex = trimmed.indexOf(':');
293
+ if (colonIndex === -1)
294
+ continue;
295
+ const key = trimmed.slice(0, colonIndex).trim();
296
+ let value = trimmed.slice(colonIndex + 1).trim();
297
+ // Handle array syntax: [item1, item2]
298
+ if (value.startsWith('[') && value.endsWith(']')) {
299
+ const items = value.slice(1, -1).split(',').map(s => s.trim());
300
+ result[key] = items.filter(s => s.length > 0);
301
+ }
302
+ else {
303
+ // Remove quotes if present
304
+ if ((value.startsWith('"') && value.endsWith('"')) ||
305
+ (value.startsWith("'") && value.endsWith("'"))) {
306
+ value = value.slice(1, -1);
307
+ }
308
+ result[key] = value;
309
+ }
310
+ }
311
+ return result;
312
+ }
313
+ /**
314
+ * Helper to load skill from file path (for Node.js usage)
315
+ */
316
+ export async function loadSkillFromFile(filePath, fs) {
317
+ const content = await fs.readFile(filePath, 'utf-8');
318
+ const contentType = filePath.endsWith('.jst') ? 'jst' : 'md';
319
+ return parseSkillFile(content, contentType);
320
+ }
321
+ /**
322
+ * Load all skills from a directory.
323
+ * Scans for subdirectories containing SKILL.md files.
324
+ *
325
+ * Directory structure:
326
+ * ```
327
+ * skills/
328
+ * nagare/
329
+ * fund-onboarding/
330
+ * SKILL.md
331
+ * monte-carlo/
332
+ * SKILL.md
333
+ * ```
334
+ *
335
+ * @param dirPath - Path to the skills collection directory
336
+ * @returns Array of parsed skill definitions
337
+ */
338
+ export function loadSkillsFromDirectory(dirPath) {
339
+ const skills = [];
340
+ let entries;
341
+ try {
342
+ entries = readdirSync(dirPath);
343
+ }
344
+ catch {
345
+ console.warn(`Could not read skills directory: ${dirPath}`);
346
+ return skills;
347
+ }
348
+ for (const entry of entries) {
349
+ const entryPath = join(dirPath, entry);
350
+ try {
351
+ const stat = statSync(entryPath);
352
+ if (!stat.isDirectory())
353
+ continue;
354
+ // Look for SKILL.md or SKILL.jst
355
+ const mdPath = join(entryPath, "SKILL.md");
356
+ const jstPath = join(entryPath, "SKILL.jst");
357
+ let content;
358
+ let contentType = 'md';
359
+ if (existsSync(mdPath)) {
360
+ content = readFileSync(mdPath, "utf-8");
361
+ contentType = 'md';
362
+ }
363
+ else if (existsSync(jstPath)) {
364
+ content = readFileSync(jstPath, "utf-8");
365
+ contentType = 'jst';
366
+ }
367
+ if (content) {
368
+ skills.push(parseSkillFile(content, contentType));
369
+ }
370
+ }
371
+ catch (err) {
372
+ console.warn(`Error loading skill from ${entryPath}:`, err);
373
+ }
374
+ }
375
+ return skills;
376
+ }
377
+ //# sourceMappingURL=SkillCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkillCollection.js","sourceRoot":"","sources":["../../src/SkillCollection.ts"],"names":[],"mappings":"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"}