@vertesia/tools-sdk 1.0.0-dev.20260128.144200 → 1.0.0-dev.20260225.024852Z
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.
- package/lib/cjs/ContentTypesCollection.js +43 -0
- package/lib/cjs/ContentTypesCollection.js.map +1 -0
- package/lib/cjs/InteractionCollection.js +0 -121
- package/lib/cjs/InteractionCollection.js.map +1 -1
- package/lib/cjs/SkillCollection.js +10 -2
- package/lib/cjs/SkillCollection.js.map +1 -1
- package/lib/cjs/ToolCollection.js +6 -13
- package/lib/cjs/ToolCollection.js.map +1 -1
- package/lib/cjs/ToolRegistry.js +16 -32
- package/lib/cjs/ToolRegistry.js.map +1 -1
- package/lib/cjs/index.js +1 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/server/app-package.js +130 -0
- package/lib/cjs/server/app-package.js.map +1 -0
- package/lib/cjs/server/content-types.js +73 -0
- package/lib/cjs/server/content-types.js.map +1 -0
- package/lib/cjs/server/interactions.js +26 -3
- package/lib/cjs/server/interactions.js.map +1 -1
- package/lib/cjs/server/site.js +7 -1
- package/lib/cjs/server/site.js.map +1 -1
- package/lib/cjs/server/tools.js +2 -19
- package/lib/cjs/server/tools.js.map +1 -1
- package/lib/cjs/server/widgets.js.map +1 -1
- package/lib/cjs/server.js +4 -0
- package/lib/cjs/server.js.map +1 -1
- package/lib/cjs/site/styles.js +55 -0
- package/lib/cjs/site/styles.js.map +1 -1
- package/lib/cjs/site/templates.js +104 -85
- package/lib/cjs/site/templates.js.map +1 -1
- package/lib/cjs/utils.js +13 -0
- package/lib/cjs/utils.js.map +1 -1
- package/lib/esm/ContentTypesCollection.js +39 -0
- package/lib/esm/ContentTypesCollection.js.map +1 -0
- package/lib/esm/InteractionCollection.js +0 -86
- package/lib/esm/InteractionCollection.js.map +1 -1
- package/lib/esm/SkillCollection.js +10 -2
- package/lib/esm/SkillCollection.js.map +1 -1
- package/lib/esm/ToolCollection.js +7 -14
- package/lib/esm/ToolCollection.js.map +1 -1
- package/lib/esm/ToolRegistry.js +16 -32
- package/lib/esm/ToolRegistry.js.map +1 -1
- package/lib/esm/index.js +1 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/server/app-package.js +127 -0
- package/lib/esm/server/app-package.js.map +1 -0
- package/lib/esm/server/content-types.js +70 -0
- package/lib/esm/server/content-types.js.map +1 -0
- package/lib/esm/server/interactions.js +26 -3
- package/lib/esm/server/interactions.js.map +1 -1
- package/lib/esm/server/site.js +8 -2
- package/lib/esm/server/site.js.map +1 -1
- package/lib/esm/server/tools.js +2 -19
- package/lib/esm/server/tools.js.map +1 -1
- package/lib/esm/server/widgets.js.map +1 -1
- package/lib/esm/server.js +4 -0
- package/lib/esm/server.js.map +1 -1
- package/lib/esm/site/styles.js +55 -0
- package/lib/esm/site/styles.js.map +1 -1
- package/lib/esm/site/templates.js +103 -85
- package/lib/esm/site/templates.js.map +1 -1
- package/lib/esm/utils.js +12 -0
- package/lib/esm/utils.js.map +1 -1
- package/lib/types/ContentTypesCollection.d.ts +18 -0
- package/lib/types/ContentTypesCollection.d.ts.map +1 -0
- package/lib/types/InteractionCollection.d.ts +1 -31
- package/lib/types/InteractionCollection.d.ts.map +1 -1
- package/lib/types/SkillCollection.d.ts +3 -2
- package/lib/types/SkillCollection.d.ts.map +1 -1
- package/lib/types/ToolCollection.d.ts +5 -10
- package/lib/types/ToolCollection.d.ts.map +1 -1
- package/lib/types/ToolRegistry.d.ts +5 -24
- package/lib/types/ToolRegistry.d.ts.map +1 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/server/app-package.d.ts +4 -0
- package/lib/types/server/app-package.d.ts.map +1 -0
- package/lib/types/server/content-types.d.ts +4 -0
- package/lib/types/server/content-types.d.ts.map +1 -0
- package/lib/types/server/interactions.d.ts.map +1 -1
- package/lib/types/server/site.d.ts.map +1 -1
- package/lib/types/server/tools.d.ts.map +1 -1
- package/lib/types/server/types.d.ts +22 -0
- package/lib/types/server/types.d.ts.map +1 -1
- package/lib/types/server/widgets.d.ts +0 -5
- package/lib/types/server/widgets.d.ts.map +1 -1
- package/lib/types/server.d.ts.map +1 -1
- package/lib/types/site/styles.d.ts +1 -1
- package/lib/types/site/styles.d.ts.map +1 -1
- package/lib/types/site/templates.d.ts +5 -0
- package/lib/types/site/templates.d.ts.map +1 -1
- package/lib/types/types.d.ts +29 -16
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/utils.d.ts +6 -0
- package/lib/types/utils.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/ContentTypesCollection.ts +51 -0
- package/src/InteractionCollection.ts +1 -94
- package/src/SkillCollection.ts +13 -3
- package/src/ToolCollection.ts +11 -18
- package/src/ToolRegistry.ts +22 -55
- package/src/index.ts +1 -0
- package/src/server/app-package.ts +147 -0
- package/src/server/content-types.ts +89 -0
- package/src/server/interactions.ts +29 -3
- package/src/server/site.ts +9 -0
- package/src/server/tools.ts +3 -22
- package/src/server/types.ts +26 -0
- package/src/server/widgets.ts +2 -6
- package/src/server.ts +5 -0
- package/src/site/styles.ts +55 -0
- package/src/site/templates.ts +107 -84
- package/src/types.ts +33 -16
- package/src/utils.ts +15 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContentTypesCollection = void 0;
|
|
4
|
+
const utils_js_1 = require("./utils.js");
|
|
5
|
+
class ContentTypesCollection {
|
|
6
|
+
types;
|
|
7
|
+
name;
|
|
8
|
+
title;
|
|
9
|
+
icon;
|
|
10
|
+
description;
|
|
11
|
+
constructor({ name, title, icon, description, types }) {
|
|
12
|
+
this.name = name;
|
|
13
|
+
this.title = title || (0, utils_js_1.kebabCaseToTitle)(name);
|
|
14
|
+
this.icon = icon;
|
|
15
|
+
this.description = description;
|
|
16
|
+
this.types = types;
|
|
17
|
+
}
|
|
18
|
+
getContentTypes() {
|
|
19
|
+
return this.types;
|
|
20
|
+
}
|
|
21
|
+
[Symbol.iterator]() {
|
|
22
|
+
let index = 0;
|
|
23
|
+
const types = this.types;
|
|
24
|
+
return {
|
|
25
|
+
next() {
|
|
26
|
+
if (index < types.length) {
|
|
27
|
+
return { value: types[index++], done: false };
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return { done: true, value: undefined };
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
map(callback) {
|
|
36
|
+
return this.types.map(callback);
|
|
37
|
+
}
|
|
38
|
+
getTypeByName(name) {
|
|
39
|
+
return this.types.find(type => type.name === name);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.ContentTypesCollection = ContentTypesCollection;
|
|
43
|
+
//# sourceMappingURL=ContentTypesCollection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContentTypesCollection.js","sourceRoot":"","sources":["../../src/ContentTypesCollection.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAK9C,MAAa,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,IAAA,2BAAgB,EAAC,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;AA3CD,wDA2CC"}
|
|
@@ -1,44 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.InteractionCollection = void 0;
|
|
37
|
-
exports.loadInteractionsFromDirectory = loadInteractionsFromDirectory;
|
|
38
|
-
exports.readPromptFile = readPromptFile;
|
|
39
|
-
const fs_1 = require("fs");
|
|
40
|
-
const path_1 = require("path");
|
|
41
|
-
const url_1 = require("url");
|
|
42
4
|
const utils_js_1 = require("./utils.js");
|
|
43
5
|
class InteractionCollection {
|
|
44
6
|
interactions;
|
|
@@ -53,9 +15,6 @@ class InteractionCollection {
|
|
|
53
15
|
this.description = description;
|
|
54
16
|
this.interactions = interactions;
|
|
55
17
|
}
|
|
56
|
-
addInteraction(interaction) {
|
|
57
|
-
this.interactions.push(interaction);
|
|
58
|
-
}
|
|
59
18
|
getInteractions() {
|
|
60
19
|
return this.interactions;
|
|
61
20
|
}
|
|
@@ -81,84 +40,4 @@ class InteractionCollection {
|
|
|
81
40
|
}
|
|
82
41
|
}
|
|
83
42
|
exports.InteractionCollection = InteractionCollection;
|
|
84
|
-
/**
|
|
85
|
-
* Load all interactions from a directory.
|
|
86
|
-
* Scans for subdirectories containing index.ts/index.js files.
|
|
87
|
-
*
|
|
88
|
-
* Directory structure:
|
|
89
|
-
* ```
|
|
90
|
-
* interactions/
|
|
91
|
-
* nagare/
|
|
92
|
-
* extract-fund-actuals/
|
|
93
|
-
* index.ts # exports default InteractionSpec
|
|
94
|
-
* prompt.jst # prompt template (read via readPromptFile helper)
|
|
95
|
-
* parse-fund-document/
|
|
96
|
-
* index.ts
|
|
97
|
-
* prompt.md
|
|
98
|
-
* ```
|
|
99
|
-
*
|
|
100
|
-
* @param interactionsDir - Path to the interactions collection directory
|
|
101
|
-
* @returns Promise resolving to array of InteractionSpec objects
|
|
102
|
-
*/
|
|
103
|
-
async function loadInteractionsFromDirectory(interactionsDir) {
|
|
104
|
-
const interactions = [];
|
|
105
|
-
if (!(0, fs_1.existsSync)(interactionsDir)) {
|
|
106
|
-
console.warn(`Interactions directory not found: ${interactionsDir}`);
|
|
107
|
-
return interactions;
|
|
108
|
-
}
|
|
109
|
-
let entries;
|
|
110
|
-
try {
|
|
111
|
-
entries = (0, fs_1.readdirSync)(interactionsDir);
|
|
112
|
-
}
|
|
113
|
-
catch {
|
|
114
|
-
console.warn(`Could not read interactions directory: ${interactionsDir}`);
|
|
115
|
-
return interactions;
|
|
116
|
-
}
|
|
117
|
-
for (const entry of entries) {
|
|
118
|
-
// Skip hidden files and index files
|
|
119
|
-
if (entry.startsWith('.'))
|
|
120
|
-
continue;
|
|
121
|
-
if (entry === 'index.ts' || entry === 'index.js')
|
|
122
|
-
continue;
|
|
123
|
-
const entryPath = (0, path_1.join)(interactionsDir, entry);
|
|
124
|
-
try {
|
|
125
|
-
const stat = (0, fs_1.statSync)(entryPath);
|
|
126
|
-
if (!stat.isDirectory())
|
|
127
|
-
continue;
|
|
128
|
-
// Look for index.ts or index.js in the subdirectory
|
|
129
|
-
const indexTs = (0, path_1.join)(entryPath, 'index.ts');
|
|
130
|
-
const indexJs = (0, path_1.join)(entryPath, 'index.js');
|
|
131
|
-
const indexPath = (0, fs_1.existsSync)(indexTs) ? indexTs : (0, fs_1.existsSync)(indexJs) ? indexJs : null;
|
|
132
|
-
if (!indexPath) {
|
|
133
|
-
continue; // No index file, skip
|
|
134
|
-
}
|
|
135
|
-
// Dynamic import
|
|
136
|
-
const fileUrl = (0, url_1.pathToFileURL)(indexPath).href;
|
|
137
|
-
const module = await Promise.resolve(`${fileUrl}`).then(s => __importStar(require(s)));
|
|
138
|
-
const interaction = module.default || module.interaction;
|
|
139
|
-
if (interaction && typeof interaction.name === 'string') {
|
|
140
|
-
interactions.push(interaction);
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
console.warn(`No valid InteractionSpec export found in ${entry}/index`);
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
catch (err) {
|
|
147
|
-
console.warn(`Error loading interaction from ${entry}:`, err);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return interactions;
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Helper to read a prompt file from the same directory as the interaction.
|
|
154
|
-
* Use this in interaction index.ts files to load prompt templates.
|
|
155
|
-
*
|
|
156
|
-
* @param dirname - Pass __dirname or dirname(fileURLToPath(import.meta.url))
|
|
157
|
-
* @param filename - Prompt filename (e.g., 'prompt.jst' or 'prompt.md')
|
|
158
|
-
* @returns File contents as string
|
|
159
|
-
*/
|
|
160
|
-
function readPromptFile(dirname, filename) {
|
|
161
|
-
const filePath = (0, path_1.join)(dirname, filename);
|
|
162
|
-
return (0, fs_1.readFileSync)(filePath, 'utf-8');
|
|
163
|
-
}
|
|
164
43
|
//# sourceMappingURL=InteractionCollection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionCollection.js","sourceRoot":"","sources":["../../src/InteractionCollection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InteractionCollection.js","sourceRoot":"","sources":["../../src/InteractionCollection.ts"],"names":[],"mappings":";;;AAEA,yCAA8C;AAK9C,MAAa,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,IAAA,2BAAgB,EAAC,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;AA1CD,sDA0CC"}
|
|
@@ -65,7 +65,7 @@ class SkillCollection {
|
|
|
65
65
|
* When called, they return rendered instructions.
|
|
66
66
|
* Includes related_tools for dynamic tool discovery.
|
|
67
67
|
*/
|
|
68
|
-
getToolDefinitions() {
|
|
68
|
+
getToolDefinitions(filterContext) {
|
|
69
69
|
const defaultSchema = {
|
|
70
70
|
type: 'object',
|
|
71
71
|
properties: {
|
|
@@ -75,17 +75,25 @@ class SkillCollection {
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
};
|
|
78
|
-
|
|
78
|
+
let skills = Array.from(this.skills.values());
|
|
79
|
+
if (filterContext) {
|
|
80
|
+
skills = skills.filter(skill => {
|
|
81
|
+
return skill.isEnabled ? skill.isEnabled(filterContext) : true;
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
return skills.map(skill => {
|
|
79
85
|
// Build description with related tools info if available
|
|
80
86
|
let description = `[Skill] ${skill.description}. Returns contextual instructions for this task.`;
|
|
81
87
|
if (skill.related_tools && skill.related_tools.length > 0) {
|
|
82
88
|
description += ` Unlocks tools: ${skill.related_tools.join(', ')}.`;
|
|
83
89
|
}
|
|
84
90
|
return {
|
|
91
|
+
url: `skills/${this.name}`,
|
|
85
92
|
name: `learn_${skill.name}`,
|
|
86
93
|
description,
|
|
87
94
|
input_schema: skill.input_schema || defaultSchema,
|
|
88
95
|
related_tools: skill.related_tools,
|
|
96
|
+
category: this.name,
|
|
89
97
|
};
|
|
90
98
|
});
|
|
91
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillCollection.js","sourceRoot":"","sources":["../../src/SkillCollection.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"SkillCollection.js","sourceRoot":"","sources":["../../src/SkillCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,9 +36,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.ToolCollection = void 0;
|
|
37
37
|
exports.loadToolsFromDirectory = loadToolsFromDirectory;
|
|
38
38
|
const fs_1 = require("fs");
|
|
39
|
+
const http_exception_1 = require("hono/http-exception");
|
|
39
40
|
const path_1 = require("path");
|
|
40
41
|
const url_1 = require("url");
|
|
41
|
-
const http_exception_1 = require("hono/http-exception");
|
|
42
42
|
const auth_js_1 = require("./auth.js");
|
|
43
43
|
const ToolRegistry_js_1 = require("./ToolRegistry.js");
|
|
44
44
|
const utils_js_1 = require("./utils.js");
|
|
@@ -74,7 +74,8 @@ class ToolCollection {
|
|
|
74
74
|
this.title = title || (0, utils_js_1.kebabCaseToTitle)(name);
|
|
75
75
|
this.icon = icon;
|
|
76
76
|
this.description = description;
|
|
77
|
-
|
|
77
|
+
// we add the collection name info
|
|
78
|
+
this.tools = new ToolRegistry_js_1.ToolRegistry(name, tools);
|
|
78
79
|
}
|
|
79
80
|
[Symbol.iterator]() {
|
|
80
81
|
let index = 0;
|
|
@@ -137,19 +138,11 @@ class ToolCollection {
|
|
|
137
138
|
}
|
|
138
139
|
/**
|
|
139
140
|
* Get tool definitions with optional filtering.
|
|
140
|
-
* @param options -
|
|
141
|
+
* @param options - context for filtering
|
|
141
142
|
* @returns Filtered tool definitions
|
|
142
143
|
*/
|
|
143
|
-
getToolDefinitions(
|
|
144
|
-
return this.tools.getDefinitions(
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Get tools that are in reserve (default: false and not unlocked).
|
|
148
|
-
* @param unlockedTools - List of tool names that are unlocked
|
|
149
|
-
* @returns Tool definitions for reserve tools
|
|
150
|
-
*/
|
|
151
|
-
getReserveTools(unlockedTools = []) {
|
|
152
|
-
return this.tools.getReserveTools(unlockedTools);
|
|
144
|
+
getToolDefinitions(context) {
|
|
145
|
+
return this.tools.getDefinitions(context);
|
|
153
146
|
}
|
|
154
147
|
}
|
|
155
148
|
exports.ToolCollection = ToolCollection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCollection.js","sourceRoot":"","sources":["../../src/ToolCollection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ToolCollection.js","sourceRoot":"","sources":["../../src/ToolCollection.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/ToolRegistry.js
CHANGED
|
@@ -3,8 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ToolNotFoundError = exports.ToolRegistry = void 0;
|
|
4
4
|
const http_exception_1 = require("hono/http-exception");
|
|
5
5
|
class ToolRegistry {
|
|
6
|
+
// The category name usinfg this registry
|
|
7
|
+
category;
|
|
6
8
|
registry = {};
|
|
7
|
-
constructor(tools = []) {
|
|
9
|
+
constructor(category, tools = []) {
|
|
10
|
+
this.category = category;
|
|
8
11
|
for (const tool of tools) {
|
|
9
12
|
this.registry[tool.name] = tool;
|
|
10
13
|
}
|
|
@@ -14,41 +17,22 @@ class ToolRegistry {
|
|
|
14
17
|
* @param options - Filtering options
|
|
15
18
|
* @returns Filtered tool definitions
|
|
16
19
|
*/
|
|
17
|
-
getDefinitions(
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
return Object.values(this.registry)
|
|
21
|
-
.filter(tool => {
|
|
22
|
-
// If not filtering by default, include all tools
|
|
23
|
-
if (!defaultOnly)
|
|
24
|
-
return true;
|
|
25
|
-
// Include if tool is default (default !== false) or is in unlocked list
|
|
26
|
-
const isDefault = tool.default !== false;
|
|
27
|
-
const isUnlocked = unlockedSet.has(tool.name);
|
|
28
|
-
return isDefault || isUnlocked;
|
|
29
|
-
})
|
|
30
|
-
.map(tool => ({
|
|
20
|
+
getDefinitions(context) {
|
|
21
|
+
const mapTool = (tool) => ({
|
|
22
|
+
url: `tools/${this.category}`,
|
|
31
23
|
name: tool.name,
|
|
32
24
|
description: tool.description,
|
|
33
25
|
input_schema: tool.input_schema,
|
|
26
|
+
category: this.category,
|
|
34
27
|
default: tool.default,
|
|
35
|
-
})
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
const unlockedSet = new Set(unlockedTools);
|
|
44
|
-
return Object.values(this.registry)
|
|
45
|
-
.filter(tool => tool.default === false && !unlockedSet.has(tool.name))
|
|
46
|
-
.map(tool => ({
|
|
47
|
-
name: tool.name,
|
|
48
|
-
description: tool.description,
|
|
49
|
-
input_schema: tool.input_schema,
|
|
50
|
-
default: tool.default,
|
|
51
|
-
}));
|
|
28
|
+
});
|
|
29
|
+
let tools = Object.values(this.registry);
|
|
30
|
+
if (context) {
|
|
31
|
+
tools = tools.filter(tool => {
|
|
32
|
+
return tool.isEnabled ? tool.isEnabled(context) : true;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return tools.map(mapTool);
|
|
52
36
|
}
|
|
53
37
|
getTool(name) {
|
|
54
38
|
const tool = this.registry[name];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolRegistry.js","sourceRoot":"","sources":["../../src/ToolRegistry.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ToolRegistry.js","sourceRoot":"","sources":["../../src/ToolRegistry.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/index.js
CHANGED
|
@@ -18,6 +18,7 @@ exports.copyRuntimeAssets = exports.AuthSession = exports.authorize = void 0;
|
|
|
18
18
|
var auth_js_1 = require("./auth.js");
|
|
19
19
|
Object.defineProperty(exports, "authorize", { enumerable: true, get: function () { return auth_js_1.authorize; } });
|
|
20
20
|
Object.defineProperty(exports, "AuthSession", { enumerable: true, get: function () { return auth_js_1.AuthSession; } });
|
|
21
|
+
__exportStar(require("./ContentTypesCollection.js"), exports);
|
|
21
22
|
var copy_assets_js_1 = require("./copy-assets.js");
|
|
22
23
|
Object.defineProperty(exports, "copyRuntimeAssets", { enumerable: true, get: function () { return copy_assets_js_1.copyRuntimeAssets; } });
|
|
23
24
|
__exportStar(require("./InteractionCollection.js"), exports);
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAmD;AAA1C,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAC/B,mDAAqD;AAA5C,mHAAA,iBAAiB,OAAA;AAC1B,6DAA2C;AAC3C,8CAA4B;AAC5B,oDAAkC;AAClC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAmD;AAA1C,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAC/B,8DAA4C;AAC5C,mDAAqD;AAA5C,mHAAA,iBAAiB,OAAA;AAC1B,6DAA2C;AAC3C,8CAA4B;AAC5B,oDAAkC;AAClC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,oDAAkC;AAClC,6CAA2B"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPackageRoute = createPackageRoute;
|
|
4
|
+
function getRequestPayload(c) {
|
|
5
|
+
return c.req.method === "POST" ? c.req.json() : Promise.resolve(undefined);
|
|
6
|
+
}
|
|
7
|
+
const builders = {
|
|
8
|
+
async tools(pkg, config, c) {
|
|
9
|
+
const { tools: toolCollections = [], skills: skillCollections = [] } = config;
|
|
10
|
+
const filterContext = await getRequestPayload(c);
|
|
11
|
+
// Aggregate all tools from all collections
|
|
12
|
+
const allTools = toolCollections.flatMap(collection => collection.getToolDefinitions(filterContext));
|
|
13
|
+
// same for skills
|
|
14
|
+
const allSkills = skillCollections.flatMap(collection => collection.getToolDefinitions(filterContext));
|
|
15
|
+
// Deduplicate by tool name (skills listed first take priority)
|
|
16
|
+
const seen = new Set();
|
|
17
|
+
const combined = allSkills.concat(allTools);
|
|
18
|
+
pkg.tools = combined.filter(tool => {
|
|
19
|
+
if (seen.has(tool.name)) {
|
|
20
|
+
console.warn(`[app-package] Duplicate tool name "${tool.name}", skipping`);
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
seen.add(tool.name);
|
|
24
|
+
return true;
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
async interactions(pkg, config) {
|
|
28
|
+
const allInteractions = [];
|
|
29
|
+
for (const coll of (config.interactions || [])) {
|
|
30
|
+
for (const inter of coll.interactions) {
|
|
31
|
+
allInteractions.push({
|
|
32
|
+
type: "app",
|
|
33
|
+
id: coll.name + ":" + inter.name,
|
|
34
|
+
name: inter.name,
|
|
35
|
+
title: inter.title || inter.name,
|
|
36
|
+
description: inter.description,
|
|
37
|
+
tags: inter.tags || [],
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
pkg.interactions = allInteractions;
|
|
42
|
+
},
|
|
43
|
+
async types(pkg, config) {
|
|
44
|
+
const allTypes = [];
|
|
45
|
+
for (const coll of config.types || []) {
|
|
46
|
+
for (const type of coll.types) {
|
|
47
|
+
allTypes.push({
|
|
48
|
+
...type,
|
|
49
|
+
id: coll.name + ":" + type.name
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
pkg.types = allTypes;
|
|
54
|
+
},
|
|
55
|
+
async widgets(pkg, config) {
|
|
56
|
+
const { skills: skillCollections = [] } = config;
|
|
57
|
+
const widgets = {};
|
|
58
|
+
for (const coll of skillCollections) {
|
|
59
|
+
for (const skill of coll.getSkillDefinitions()) {
|
|
60
|
+
if (skill.widgets && skill.widgets.length > 0) {
|
|
61
|
+
widgets[skill.name] = {
|
|
62
|
+
skill: skill.name,
|
|
63
|
+
collection: coll.name,
|
|
64
|
+
url: `/widgets/${skill.widgets[0]}.js`
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
pkg.widgets = widgets;
|
|
70
|
+
},
|
|
71
|
+
async ui(pkg, config, c) {
|
|
72
|
+
if (config.uiConfig) {
|
|
73
|
+
pkg.ui = { ...config.uiConfig };
|
|
74
|
+
const origin = new URL(c.req.url).origin;
|
|
75
|
+
pkg.ui.src = new URL(pkg.ui.src, origin).toString();
|
|
76
|
+
if (!pkg.ui.isolation) {
|
|
77
|
+
pkg.ui.isolation = "shadow";
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
async settings(pkg, config) {
|
|
82
|
+
if (config.settings) {
|
|
83
|
+
pkg.settings_schema = { ...config.settings };
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
async function handlePackageRequest(c, config) {
|
|
88
|
+
const scope = c.req.query('scope') || 'all';
|
|
89
|
+
const pkg = {};
|
|
90
|
+
const scopes = new Set(scope.split(','));
|
|
91
|
+
// TODO build pkg based on the query param scope
|
|
92
|
+
if (scopes.has('all')) {
|
|
93
|
+
await builders.tools(pkg, config, c);
|
|
94
|
+
await builders.interactions(pkg, config, c);
|
|
95
|
+
await builders.types(pkg, config, c);
|
|
96
|
+
await builders.widgets(pkg, config, c);
|
|
97
|
+
await builders.ui(pkg, config, c);
|
|
98
|
+
await builders.settings(pkg, config, c);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
if (scopes.has('tools')) {
|
|
102
|
+
await builders.tools(pkg, config, c);
|
|
103
|
+
}
|
|
104
|
+
if (scopes.has('interactions')) {
|
|
105
|
+
await builders.interactions(pkg, config, c);
|
|
106
|
+
}
|
|
107
|
+
if (scopes.has('types')) {
|
|
108
|
+
await builders.types(pkg, config, c);
|
|
109
|
+
}
|
|
110
|
+
if (scopes.has('widgets')) {
|
|
111
|
+
await builders.widgets(pkg, config, c);
|
|
112
|
+
}
|
|
113
|
+
if (scopes.has('ui')) {
|
|
114
|
+
await builders.ui(pkg, config, c);
|
|
115
|
+
}
|
|
116
|
+
if (scopes.has('settings')) {
|
|
117
|
+
builders.settings(pkg, config, c);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return c.json(pkg);
|
|
121
|
+
}
|
|
122
|
+
function createPackageRoute(app, basePath, config) {
|
|
123
|
+
app.get(basePath, (c) => {
|
|
124
|
+
return handlePackageRequest(c, config);
|
|
125
|
+
});
|
|
126
|
+
app.post(basePath, (c) => {
|
|
127
|
+
return handlePackageRequest(c, config);
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=app-package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-package.js","sourceRoot":"","sources":["../../../src/server/app-package.ts"],"names":[],"mappings":"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"}
|