@easynet/agent-tool-hub 1.0.6

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 (42) hide show
  1. package/README.md +132 -0
  2. package/dist/N8nLocalAdapter-6RKQJXJP.js +4 -0
  3. package/dist/N8nLocalAdapter-6RKQJXJP.js.map +1 -0
  4. package/dist/N8nLocalAdapter-MDWME5ZG.cjs +13 -0
  5. package/dist/N8nLocalAdapter-MDWME5ZG.cjs.map +1 -0
  6. package/dist/chunk-57LVNNHL.js +19 -0
  7. package/dist/chunk-57LVNNHL.js.map +1 -0
  8. package/dist/chunk-6QTWECRD.cjs +23 -0
  9. package/dist/chunk-6QTWECRD.cjs.map +1 -0
  10. package/dist/chunk-HPDQEW2P.js +5251 -0
  11. package/dist/chunk-HPDQEW2P.js.map +1 -0
  12. package/dist/chunk-MHEFFZBB.js +134 -0
  13. package/dist/chunk-MHEFFZBB.js.map +1 -0
  14. package/dist/chunk-NTTBDQUF.cjs +118 -0
  15. package/dist/chunk-NTTBDQUF.cjs.map +1 -0
  16. package/dist/chunk-TIKHPRMB.cjs +5313 -0
  17. package/dist/chunk-TIKHPRMB.cjs.map +1 -0
  18. package/dist/chunk-X53WXBKX.cjs +136 -0
  19. package/dist/chunk-X53WXBKX.cjs.map +1 -0
  20. package/dist/chunk-YSYEED4K.js +114 -0
  21. package/dist/chunk-YSYEED4K.js.map +1 -0
  22. package/dist/cli.cjs +194 -0
  23. package/dist/cli.cjs.map +1 -0
  24. package/dist/cli.d.cts +10 -0
  25. package/dist/cli.d.ts +10 -0
  26. package/dist/cli.js +186 -0
  27. package/dist/cli.js.map +1 -0
  28. package/dist/index.cjs +592 -0
  29. package/dist/index.cjs.map +1 -0
  30. package/dist/index.d.cts +552 -0
  31. package/dist/index.d.ts +552 -0
  32. package/dist/index.js +358 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/toolhub-runtime-CQkP4QVW.d.cts +1564 -0
  35. package/dist/toolhub-runtime-CQkP4QVW.d.ts +1564 -0
  36. package/dist/toolhub-runtime.cjs +30 -0
  37. package/dist/toolhub-runtime.cjs.map +1 -0
  38. package/dist/toolhub-runtime.d.cts +4 -0
  39. package/dist/toolhub-runtime.d.ts +4 -0
  40. package/dist/toolhub-runtime.js +5 -0
  41. package/dist/toolhub-runtime.js.map +1 -0
  42. package/package.json +77 -0
package/README.md ADDED
@@ -0,0 +1,132 @@
1
+ # Agent Tool Hub
2
+
3
+ **One registry, many protocols** — discover and run tools from MCP, LangChain, n8n, ComfyUI, and SKILL through a single PTC runtime.
4
+
5
+ Define tools with simple, familiar formats: drop a folder under a configured root and use the protocol you like. One tool can be exposed in multiple protocols in the same folder.
6
+
7
+ ---
8
+
9
+ ### SKILL
10
+
11
+ Markdown spec + JS handler. Put under `skill/`:
12
+
13
+ ```yaml
14
+ # skill/SKILL.md
15
+ ---
16
+ name: my-tool
17
+ description: What your tool does.
18
+ ---
19
+ ```
20
+
21
+ ```js
22
+ // skill/handler.js
23
+ async function handler(args) {
24
+ const { x, y } = args ?? {};
25
+ return { result: { sum: Number(x) + Number(y) } };
26
+ }
27
+ export default handler;
28
+ ```
29
+
30
+ ---
31
+
32
+ ### LangChain
33
+
34
+ Export a LangChain tool (e.g. `StructuredTool`). Put under `langchain/`:
35
+
36
+ ```js
37
+ // langchain/calculator.js
38
+ import { StructuredTool } from "@langchain/core/tools";
39
+ import { z } from "zod";
40
+
41
+ class CalculatorTool extends StructuredTool {
42
+ name = "calculator";
43
+ description = "Evaluates arithmetic expressions";
44
+ schema = z.object({ expression: z.string() });
45
+ async _call({ expression }) {
46
+ return String(Function(`"use strict"; return (${expression})`)());
47
+ }
48
+ }
49
+ export default new CalculatorTool();
50
+ ```
51
+
52
+ ---
53
+
54
+ ### MCP
55
+
56
+ Declare MCP server in JSON. Put under `mcp/`; the server process is started by the hub:
57
+
58
+ ```json
59
+ // mcp/mcp.json
60
+ {
61
+ "mcpServers": {
62
+ "calculator": {
63
+ "command": "node",
64
+ "args": ["./server.js"]
65
+ }
66
+ }
67
+ }
68
+ ```
69
+
70
+ ---
71
+
72
+ ### n8n
73
+
74
+ Drop an n8n workflow JSON. Put under `n8n/`; the hub runs it (local or via API):
75
+
76
+ ```json
77
+ // n8n/workflow.json
78
+ {
79
+ "name": "My Workflow",
80
+ "nodes": [
81
+ {
82
+ "id": "webhook",
83
+ "type": "n8n-nodes-base.webhook",
84
+ "parameters": { "path": "my-tool", "httpMethod": "POST" }
85
+ }
86
+ ],
87
+ "connections": {}
88
+ }
89
+ ```
90
+
91
+ ---
92
+
93
+
94
+ ## Install
95
+
96
+ ```bash
97
+ npm install @easynet/agent-tool-hub
98
+ ```
99
+
100
+ Node 18+ required.
101
+
102
+ ---
103
+
104
+ ## Use
105
+
106
+ ### CLI
107
+
108
+ Add a `toolhub.yaml` in your project, then:
109
+
110
+ ```bash
111
+ npx agent-tool-hub scan # load tools from configured roots
112
+ npx agent-tool-hub verify # scan and exit 1 on errors
113
+ npx agent-tool-hub list # list discovered tools
114
+ ```
115
+
116
+ ### In code
117
+
118
+ Load from config, init, then invoke:
119
+
120
+ ```ts
121
+ import { createToolHubAndInitFromConfig } from "@easynet/agent-tool-hub";
122
+
123
+ const hub = await createToolHubAndInitFromConfig("toolhub.yaml");
124
+ const result = await hub.invokeTool("utils.calculator", { expression: "1 + 2" });
125
+ // result.ok, result.data, result.error, etc.
126
+ ```
127
+
128
+ Or build the hub yourself: `createToolHub(options)` → `await hub.initAllTools()`; run tools with `hub.invokeTool(name, args, options)`.
129
+
130
+ ---
131
+
132
+ See `toolhub.yaml` for config and `examples/` for full tool layouts.
@@ -0,0 +1,4 @@
1
+ export { N8nLocalAdapter } from './chunk-MHEFFZBB.js';
2
+ import './chunk-YSYEED4K.js';
3
+ //# sourceMappingURL=N8nLocalAdapter-6RKQJXJP.js.map
4
+ //# sourceMappingURL=N8nLocalAdapter-6RKQJXJP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"N8nLocalAdapter-6RKQJXJP.js"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var chunkX53WXBKX_cjs = require('./chunk-X53WXBKX.cjs');
4
+ require('./chunk-NTTBDQUF.cjs');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "N8nLocalAdapter", {
9
+ enumerable: true,
10
+ get: function () { return chunkX53WXBKX_cjs.N8nLocalAdapter; }
11
+ });
12
+ //# sourceMappingURL=N8nLocalAdapter-MDWME5ZG.cjs.map
13
+ //# sourceMappingURL=N8nLocalAdapter-MDWME5ZG.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"N8nLocalAdapter-MDWME5ZG.cjs"}
@@ -0,0 +1,19 @@
1
+ import { createToolHub, loadToolHubConfig } from './chunk-HPDQEW2P.js';
2
+
3
+ // src/toolhub-runtime.ts
4
+ async function createToolHubAndInit(options) {
5
+ const hub = createToolHub(options);
6
+ await hub.initAllTools();
7
+ return hub;
8
+ }
9
+ async function createToolHubAndInitFromConfig(configPath) {
10
+ const { options } = await loadToolHubConfig(configPath);
11
+ return createToolHubAndInit(options);
12
+ }
13
+ async function createAgentToolHub(configPath) {
14
+ return createToolHubAndInitFromConfig(configPath);
15
+ }
16
+
17
+ export { createAgentToolHub, createToolHubAndInit, createToolHubAndInitFromConfig };
18
+ //# sourceMappingURL=chunk-57LVNNHL.js.map
19
+ //# sourceMappingURL=chunk-57LVNNHL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/toolhub-runtime.ts"],"names":[],"mappings":";;;AAKA,eAAsB,qBACpB,OAAA,EACA;AACA,EAAA,MAAM,GAAA,GAAM,cAAc,OAAO,CAAA;AACjC,EAAA,MAAM,IAAI,YAAA,EAAa;AACvB,EAAA,OAAO,GAAA;AACT;AAEA,eAAsB,+BAA+B,UAAA,EAAoB;AACvE,EAAA,MAAM,EAAE,OAAA,EAAQ,GAAI,MAAM,kBAAkB,UAAU,CAAA;AACtD,EAAA,OAAO,qBAAqB,OAAO,CAAA;AACrC;AAEA,eAAsB,mBAAmB,UAAA,EAAoB;AAC3D,EAAA,OAAO,+BAA+B,UAAU,CAAA;AAClD","file":"chunk-57LVNNHL.js","sourcesContent":["import { ToolHub, createToolHub } from \"./tool-hub/ToolHub.js\";\nimport { loadToolHubConfig } from \"./config/ToolHubConfig.js\";\nexport { ToolHub, createToolHub };\nexport type { ToolHubInitOptions, InvokeOptions } from \"./tool-hub/ToolHub.js\";\n\nexport async function createToolHubAndInit(\n options: import(\"./tool-hub/ToolHub.js\").ToolHubInitOptions,\n) {\n const hub = createToolHub(options);\n await hub.initAllTools();\n return hub;\n}\n\nexport async function createToolHubAndInitFromConfig(configPath: string) {\n const { options } = await loadToolHubConfig(configPath);\n return createToolHubAndInit(options);\n}\n\nexport async function createAgentToolHub(configPath: string) {\n return createToolHubAndInitFromConfig(configPath);\n}\n"]}
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ var chunkTIKHPRMB_cjs = require('./chunk-TIKHPRMB.cjs');
4
+
5
+ // src/toolhub-runtime.ts
6
+ async function createToolHubAndInit(options) {
7
+ const hub = chunkTIKHPRMB_cjs.createToolHub(options);
8
+ await hub.initAllTools();
9
+ return hub;
10
+ }
11
+ async function createToolHubAndInitFromConfig(configPath) {
12
+ const { options } = await chunkTIKHPRMB_cjs.loadToolHubConfig(configPath);
13
+ return createToolHubAndInit(options);
14
+ }
15
+ async function createAgentToolHub(configPath) {
16
+ return createToolHubAndInitFromConfig(configPath);
17
+ }
18
+
19
+ exports.createAgentToolHub = createAgentToolHub;
20
+ exports.createToolHubAndInit = createToolHubAndInit;
21
+ exports.createToolHubAndInitFromConfig = createToolHubAndInitFromConfig;
22
+ //# sourceMappingURL=chunk-6QTWECRD.cjs.map
23
+ //# sourceMappingURL=chunk-6QTWECRD.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/toolhub-runtime.ts"],"names":["createToolHub","loadToolHubConfig"],"mappings":";;;;;AAKA,eAAsB,qBACpB,OAAA,EACA;AACA,EAAA,MAAM,GAAA,GAAMA,gCAAc,OAAO,CAAA;AACjC,EAAA,MAAM,IAAI,YAAA,EAAa;AACvB,EAAA,OAAO,GAAA;AACT;AAEA,eAAsB,+BAA+B,UAAA,EAAoB;AACvE,EAAA,MAAM,EAAE,OAAA,EAAQ,GAAI,MAAMC,oCAAkB,UAAU,CAAA;AACtD,EAAA,OAAO,qBAAqB,OAAO,CAAA;AACrC;AAEA,eAAsB,mBAAmB,UAAA,EAAoB;AAC3D,EAAA,OAAO,+BAA+B,UAAU,CAAA;AAClD","file":"chunk-6QTWECRD.cjs","sourcesContent":["import { ToolHub, createToolHub } from \"./tool-hub/ToolHub.js\";\nimport { loadToolHubConfig } from \"./config/ToolHubConfig.js\";\nexport { ToolHub, createToolHub };\nexport type { ToolHubInitOptions, InvokeOptions } from \"./tool-hub/ToolHub.js\";\n\nexport async function createToolHubAndInit(\n options: import(\"./tool-hub/ToolHub.js\").ToolHubInitOptions,\n) {\n const hub = createToolHub(options);\n await hub.initAllTools();\n return hub;\n}\n\nexport async function createToolHubAndInitFromConfig(configPath: string) {\n const { options } = await loadToolHubConfig(configPath);\n return createToolHubAndInit(options);\n}\n\nexport async function createAgentToolHub(configPath: string) {\n return createToolHubAndInitFromConfig(configPath);\n}\n"]}