@tyvm/knowhow 0.0.63 → 0.0.65

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 (73) hide show
  1. package/package.json +2 -1
  2. package/src/chat/modules/AgentModule.ts +18 -2
  3. package/src/cli.ts +5 -4
  4. package/src/clients/anthropic.ts +68 -5
  5. package/src/config.ts +7 -0
  6. package/src/processors/Base64ImageDetector.ts +193 -40
  7. package/src/processors/index.ts +1 -1
  8. package/src/services/AgentSynchronization.ts +27 -10
  9. package/src/types.ts +11 -0
  10. package/src/worker.ts +145 -8
  11. package/src/workers/tools/index.ts +10 -0
  12. package/src/workers/tools/listAllowedPorts.ts +30 -0
  13. package/tests/plugins/language/languagePlugin-content-triggers.test.ts +5 -1
  14. package/tests/plugins/language/languagePlugin.test.ts +5 -1
  15. package/tests/processors/Base64ImageDetector.test.ts +263 -70
  16. package/tests/services/Tools.test.ts +6 -4
  17. package/ts_build/package.json +2 -1
  18. package/ts_build/src/chat/modules/AgentModule.js +12 -2
  19. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  20. package/ts_build/src/cli.js +5 -4
  21. package/ts_build/src/cli.js.map +1 -1
  22. package/ts_build/src/clients/anthropic.d.ts +9 -0
  23. package/ts_build/src/clients/anthropic.js +61 -5
  24. package/ts_build/src/clients/anthropic.js.map +1 -1
  25. package/ts_build/src/config.js +6 -0
  26. package/ts_build/src/config.js.map +1 -1
  27. package/ts_build/src/processors/Base64ImageDetector.d.ts +7 -3
  28. package/ts_build/src/processors/Base64ImageDetector.js +147 -27
  29. package/ts_build/src/processors/Base64ImageDetector.js.map +1 -1
  30. package/ts_build/src/processors/index.d.ts +1 -1
  31. package/ts_build/src/processors/index.js +2 -2
  32. package/ts_build/src/processors/index.js.map +1 -1
  33. package/ts_build/src/services/AgentSynchronization.d.ts +2 -0
  34. package/ts_build/src/services/AgentSynchronization.js +20 -10
  35. package/ts_build/src/services/AgentSynchronization.js.map +1 -1
  36. package/ts_build/src/types.d.ts +11 -0
  37. package/ts_build/src/types.js +1 -0
  38. package/ts_build/src/types.js.map +1 -1
  39. package/ts_build/src/worker/handlers/proxyHandler.d.ts +2 -0
  40. package/ts_build/src/worker/handlers/proxyHandler.js +41 -0
  41. package/ts_build/src/worker/handlers/proxyHandler.js.map +1 -0
  42. package/ts_build/src/worker/tools/index.d.ts +1 -0
  43. package/ts_build/src/worker/tools/index.js +18 -0
  44. package/ts_build/src/worker/tools/index.js.map +1 -0
  45. package/ts_build/src/worker/tools/portForwarding.d.ts +49 -0
  46. package/ts_build/src/worker/tools/portForwarding.js +173 -0
  47. package/ts_build/src/worker/tools/portForwarding.js.map +1 -0
  48. package/ts_build/src/worker/types/proxy.d.ts +18 -0
  49. package/ts_build/src/worker/types/proxy.js +3 -0
  50. package/ts_build/src/worker/types/proxy.js.map +1 -0
  51. package/ts_build/src/worker.js +119 -3
  52. package/ts_build/src/worker.js.map +1 -1
  53. package/ts_build/src/workers/tools/index.d.ts +9 -0
  54. package/ts_build/src/workers/tools/index.js +23 -0
  55. package/ts_build/src/workers/tools/index.js.map +1 -0
  56. package/ts_build/src/workers/tools/listAllowedPorts.d.ts +3 -0
  57. package/ts_build/src/workers/tools/listAllowedPorts.js +25 -0
  58. package/ts_build/src/workers/tools/listAllowedPorts.js.map +1 -0
  59. package/ts_build/src/workers/tools/listForwardedPorts.d.ts +10 -0
  60. package/ts_build/src/workers/tools/listForwardedPorts.js +22 -0
  61. package/ts_build/src/workers/tools/listForwardedPorts.js.map +1 -0
  62. package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js +5 -1
  63. package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js.map +1 -1
  64. package/ts_build/tests/plugins/language/languagePlugin.test.js +5 -1
  65. package/ts_build/tests/plugins/language/languagePlugin.test.js.map +1 -1
  66. package/ts_build/tests/processors/Base64ImageDetector.test.js +221 -59
  67. package/ts_build/tests/processors/Base64ImageDetector.test.js.map +1 -1
  68. package/ts_build/tests/services/Tools.test.js +3 -3
  69. package/ts_build/tests/services/Tools.test.js.map +1 -1
  70. package/ts_build/tests/worker/handlers/proxyHandler.test.d.ts +1 -0
  71. package/ts_build/tests/worker/handlers/proxyHandler.test.js +170 -0
  72. package/ts_build/tests/worker/handlers/proxyHandler.test.js.map +1 -0
  73. package/tsconfig.json +1 -1
@@ -0,0 +1,173 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.listAllowedPorts = exports.listAllowedPortsTool = exports.forwardRequest = exports.portForwardingRequestTool = void 0;
27
+ const http = __importStar(require("http"));
28
+ const https = __importStar(require("https"));
29
+ const config_1 = require("../../config");
30
+ const forwardingSessions = new Map();
31
+ exports.portForwardingRequestTool = {
32
+ type: "function",
33
+ function: {
34
+ name: "forwardRequest",
35
+ description: "Forward an HTTP request to a local port that is allowed in the worker configuration. This enables remote access to local services running on the worker machine.",
36
+ parameters: {
37
+ type: "object",
38
+ positional: true,
39
+ properties: {
40
+ port: {
41
+ type: "number",
42
+ description: "The local port to forward the request to",
43
+ },
44
+ method: {
45
+ type: "string",
46
+ description: "HTTP method (GET, POST, PUT, DELETE, etc.)",
47
+ },
48
+ path: {
49
+ type: "string",
50
+ description: "URL path to request (e.g., /api/data)",
51
+ },
52
+ headers: {
53
+ type: "object",
54
+ description: "HTTP headers to include in the request",
55
+ },
56
+ body: {
57
+ type: "string",
58
+ description: "Request body (for POST, PUT, etc.)",
59
+ },
60
+ },
61
+ required: ["port", "method", "path"],
62
+ },
63
+ },
64
+ };
65
+ function isPortAllowed(port, allowedPorts) {
66
+ return allowedPorts.includes(port);
67
+ }
68
+ async function forwardRequest(port, method, path, headers, body) {
69
+ try {
70
+ const config = await (0, config_1.getConfig)();
71
+ const allowedPorts = config.worker?.allowedPorts || [];
72
+ if (!isPortAllowed(port, allowedPorts)) {
73
+ throw new Error(`Port ${port} is not allowed in worker configuration. Allowed ports: ${allowedPorts.join(", ")}`);
74
+ }
75
+ const isInsideDocker = process.env.KNOWHOW_DOCKER === "true";
76
+ let targetPort = port;
77
+ if (isInsideDocker && config.worker?.portMappings) {
78
+ const mapping = config.worker.portMappings.find((m) => {
79
+ const [hostPort, containerPort] = m.split(":").map(Number);
80
+ return containerPort === port;
81
+ });
82
+ if (mapping) {
83
+ const [hostPort, containerPort] = mapping.split(":").map(Number);
84
+ targetPort = containerPort;
85
+ console.log(`Port mapping found: ${hostPort} (host) -> ${containerPort} (container)`);
86
+ }
87
+ }
88
+ const result = await makeHttpRequest(targetPort, method, path, headers || {}, body);
89
+ return JSON.stringify({
90
+ success: true,
91
+ statusCode: result.statusCode,
92
+ headers: result.headers,
93
+ body: result.body,
94
+ });
95
+ }
96
+ catch (error) {
97
+ return JSON.stringify({
98
+ success: false,
99
+ error: error.message,
100
+ });
101
+ }
102
+ }
103
+ exports.forwardRequest = forwardRequest;
104
+ function makeHttpRequest(port, method, path, headers, body) {
105
+ return new Promise((resolve, reject) => {
106
+ const options = {
107
+ hostname: "localhost",
108
+ port,
109
+ path,
110
+ method: method.toUpperCase(),
111
+ headers: {
112
+ ...headers,
113
+ "User-Agent": "knowhow-worker-port-forwarder",
114
+ },
115
+ };
116
+ if (body) {
117
+ options.headers["Content-Length"] = Buffer.byteLength(body);
118
+ }
119
+ const protocol = port === 443 ? https : http;
120
+ const req = protocol.request(options, (res) => {
121
+ let data = "";
122
+ res.on("data", (chunk) => {
123
+ data += chunk;
124
+ });
125
+ res.on("end", () => {
126
+ resolve({
127
+ statusCode: res.statusCode || 0,
128
+ headers: res.headers,
129
+ body: data,
130
+ });
131
+ });
132
+ });
133
+ req.on("error", (error) => {
134
+ reject(error);
135
+ });
136
+ if (body) {
137
+ req.write(body);
138
+ }
139
+ req.end();
140
+ });
141
+ }
142
+ exports.listAllowedPortsTool = {
143
+ type: "function",
144
+ function: {
145
+ name: "listAllowedPorts",
146
+ description: "List all ports that are allowed for port forwarding in the worker configuration",
147
+ parameters: {
148
+ type: "object",
149
+ positional: true,
150
+ properties: {},
151
+ required: [],
152
+ },
153
+ },
154
+ };
155
+ async function listAllowedPorts() {
156
+ try {
157
+ const config = await (0, config_1.getConfig)();
158
+ const allowedPorts = config.worker?.allowedPorts || [];
159
+ const portMappings = config.worker?.portMappings || [];
160
+ return JSON.stringify({
161
+ allowedPorts,
162
+ portMappings,
163
+ isDocker: process.env.KNOWHOW_DOCKER === "true",
164
+ });
165
+ }
166
+ catch (error) {
167
+ return JSON.stringify({
168
+ error: error.message,
169
+ });
170
+ }
171
+ }
172
+ exports.listAllowedPorts = listAllowedPorts;
173
+ //# sourceMappingURL=portForwarding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portForwarding.js","sourceRoot":"","sources":["../../../../src/worker/tools/portForwarding.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,6CAA+B;AAE/B,yCAAyC;AAQzC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAe,CAAC;AAKrC,QAAA,yBAAyB,GAAG;IACvC,IAAI,EAAE,UAAmB;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,kKAAkK;QACpK,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0CAA0C;iBACxD;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uCAAuC;iBACrD;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,wCAAwC;iBACtD;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oCAAoC;iBAClD;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;SACrC;KACF;CACF,CAAC;AAKF,SAAS,aAAa,CAAC,IAAY,EAAE,YAAsB;IACzD,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAKM,KAAK,UAAU,cAAc,CAClC,IAAY,EACZ,MAAc,EACd,IAAY,EACZ,OAAgC,EAChC,IAAa;IAEb,IAAI;QAEF,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QACjC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;QAGvD,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE;YACtC,MAAM,IAAI,KAAK,CACb,QAAQ,IAAI,2DAA2D,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjG,CAAC;SACH;QAGD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM,CAAC;QAC7D,IAAI,UAAU,GAAG,IAAI,CAAC;QAEtB,IAAI,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE;YAEjD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE;gBAC5D,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAC3D,OAAO,aAAa,KAAK,IAAI,CAAC;YAChC,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE;gBACX,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACjE,UAAU,GAAG,aAAa,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,cAAc,aAAa,cAAc,CAAC,CAAC;aACvF;SACF;QAGD,MAAM,MAAM,GAAG,MAAM,eAAe,CAClC,UAAU,EACV,MAAM,EACN,IAAI,EACJ,OAAO,IAAI,EAAE,EACb,IAAI,CACL,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC,CAAC;KACJ;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,CAAC,OAAO;SACrB,CAAC,CAAC;KACJ;AACH,CAAC;AA1DD,wCA0DC;AAKD,SAAS,eAAe,CACtB,IAAY,EACZ,MAAc,EACd,IAAY,EACZ,OAA+B,EAC/B,IAAa;IAMb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,OAAO,GAAwB;YACnC,QAAQ,EAAE,WAAW;YACrB,IAAI;YACJ,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,OAAO,EAAE;gBACP,GAAG,OAAO;gBACV,YAAY,EAAE,+BAA+B;aAC9C;SACF,CAAC;QAGF,IAAI,IAAI,EAAE;YACR,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SAC7D;QAED,MAAM,QAAQ,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC5C,IAAI,IAAI,GAAG,EAAE,CAAC;YAEd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBACvB,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACjB,OAAO,CAAC;oBACN,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;oBAC/B,OAAO,EAAE,GAAG,CAAC,OAA4C;oBACzD,IAAI,EAAE,IAAI;iBACX,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QAGH,IAAI,IAAI,EAAE;YACR,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACjB;QAED,GAAG,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC;AAKY,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,UAAmB;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iFAAiF;QACnF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC;AAKK,KAAK,UAAU,gBAAgB;IACpC,IAAI;QAEF,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QACjC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;QACvD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;QAEvD,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,YAAY;YACZ,YAAY;YACZ,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,MAAM;SAChD,CAAC,CAAC;KACJ;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,KAAK,EAAE,KAAK,CAAC,OAAO;SACrB,CAAC,CAAC;KACJ;AACH,CAAC;AAjBD,4CAiBC"}
@@ -0,0 +1,18 @@
1
+ export interface ProxyHttpRequest {
2
+ type: 'proxy_http_request';
3
+ requestId: string;
4
+ port: number;
5
+ method: string;
6
+ path: string;
7
+ headers: Record<string, string>;
8
+ body?: string;
9
+ }
10
+ export interface ProxyHttpResponse {
11
+ type: 'proxy_http_response';
12
+ requestId: string;
13
+ statusCode: number;
14
+ headers: Record<string, string | string[]>;
15
+ body: string;
16
+ error?: string;
17
+ }
18
+ export type ProxyMessage = ProxyHttpRequest | ProxyHttpResponse;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../../src/worker/types/proxy.ts"],"names":[],"mappings":""}
@@ -1,4 +1,27 @@
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 (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
27
  };
@@ -6,9 +29,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
29
  exports.worker = void 0;
7
30
  const os_1 = __importDefault(require("os"));
8
31
  const ws_1 = require("ws");
32
+ const knowhow_tunnel_1 = require("@tyvm/knowhow-tunnel");
33
+ const list_1 = require("./agents/tools/list");
9
34
  const login_1 = require("./login");
10
35
  const services_1 = require("./services");
11
36
  const Mcp_1 = require("./services/Mcp");
37
+ const allTools = __importStar(require("./agents/tools"));
38
+ const tools_1 = __importDefault(require("./workers/tools"));
12
39
  const utils_1 = require("./utils");
13
40
  const config_1 = require("./config");
14
41
  const KnowhowClient_1 = require("./services/KnowhowClient");
@@ -111,6 +138,9 @@ async function worker(options) {
111
138
  return runWorkerInSandbox(options, config);
112
139
  }
113
140
  const { Tools } = (0, services_1.services)();
141
+ const combinedTools = { ...allTools, ...tools_1.default.tools };
142
+ Tools.defineTools(list_1.includedTools, combinedTools);
143
+ Tools.defineTools(tools_1.default.definitions, tools_1.default.tools);
114
144
  const mcpServer = new Mcp_1.McpServerService(Tools);
115
145
  const clientName = "knowhow-worker";
116
146
  const clientVersion = "1.1.1";
@@ -133,13 +163,63 @@ async function worker(options) {
133
163
  const toolsToUse = Tools.getToolsByNames(config.worker.allowedTools);
134
164
  mcpServer.createServer(clientName, clientVersion).withTools(toolsToUse);
135
165
  let connected = false;
166
+ let tunnelHandler = null;
167
+ let tunnelWs = null;
168
+ const tunnelEnabled = config.worker?.tunnel?.enabled ?? false;
169
+ let tunnelLocalHost = config.worker?.tunnel?.localHost;
170
+ if (!tunnelLocalHost) {
171
+ if (isInsideDocker) {
172
+ tunnelLocalHost = "host.docker.internal";
173
+ console.log("🐳 Docker detected: tunnel will use host.docker.internal to reach host services");
174
+ }
175
+ else {
176
+ tunnelLocalHost = "127.0.0.1";
177
+ }
178
+ }
179
+ const portMapping = config.worker?.tunnel?.portMapping || {};
180
+ if (Object.keys(portMapping).length > 0) {
181
+ console.log("🔀 Port mapping configured:");
182
+ for (const [containerPort, hostPort] of Object.entries(portMapping)) {
183
+ console.log(` Container port ${containerPort} → Host port ${hostPort}`);
184
+ }
185
+ }
186
+ if (tunnelEnabled) {
187
+ const tunnelPorts = config.worker?.tunnel?.allowedPorts || [];
188
+ if (tunnelPorts.length === 0) {
189
+ console.warn("⚠️ Tunnel enabled but no allowedPorts configured. Add tunnel.allowedPorts to knowhow.json");
190
+ }
191
+ else {
192
+ console.log(`🌐 Tunnel enabled for ports: ${tunnelPorts.join(", ")}`);
193
+ }
194
+ }
195
+ else {
196
+ console.log("🚫 Tunnel disabled (enable in knowhow.json: worker.tunnel.enabled = true)");
197
+ }
198
+ function extractTunnelDomain(apiUrl) {
199
+ try {
200
+ const url = new URL(apiUrl);
201
+ const useHttps = url.protocol === "https:";
202
+ if (url.hostname === "localhost" || url.hostname === "127.0.0.1") {
203
+ return {
204
+ domain: `worker.${url.hostname}:${url.port || "80"}`,
205
+ useHttps,
206
+ };
207
+ }
208
+ return { domain: `worker.${url.hostname}`, useHttps };
209
+ }
210
+ catch (err) {
211
+ console.error("Failed to parse API_URL for tunnel domain:", err);
212
+ return { domain: "worker.localhost:4000", useHttps: false };
213
+ }
214
+ }
136
215
  async function connectWebSocket() {
137
216
  const jwt = await (0, login_1.loadJwt)();
138
217
  console.log(`Connecting to ${API_URL}`);
139
218
  const dir = process.cwd();
140
219
  const homedir = os_1.default.homedir();
141
220
  const hostname = process.env.WORKER_HOSTNAME || os_1.default.hostname();
142
- const root = process.env.WORKER_ROOT || (dir === homedir ? "~" : dir.replace(homedir, "~"));
221
+ const root = process.env.WORKER_ROOT ||
222
+ (dir === homedir ? "~" : dir.replace(homedir, "~"));
143
223
  const headers = {
144
224
  Authorization: `Bearer ${jwt}`,
145
225
  "User-Agent": `${clientName}/${clientVersion}/${hostname}`,
@@ -156,23 +236,59 @@ async function worker(options) {
156
236
  else {
157
237
  console.log("🔒 Worker is private (only you can use it)");
158
238
  }
239
+ const { domain: tunnelDomain, useHttps: tunnelUseHttps } = extractTunnelDomain(API_URL);
159
240
  const ws = new ws_1.WebSocket(`${API_URL}/ws/worker`, {
160
241
  headers,
161
242
  });
243
+ let tunnelConnection = null;
244
+ if (tunnelEnabled) {
245
+ tunnelConnection = new ws_1.WebSocket(`${API_URL}/ws/tunnel`, {
246
+ headers,
247
+ });
248
+ tunnelConnection.on("open", () => {
249
+ console.log("Tunnel WebSocket connected");
250
+ tunnelHandler = (0, knowhow_tunnel_1.createTunnelHandler)(tunnelConnection, {
251
+ allowedPorts: config.worker?.tunnel?.allowedPorts || [],
252
+ maxConcurrentStreams: config.worker?.tunnel?.maxConcurrentStreams || 50,
253
+ localHost: tunnelLocalHost,
254
+ tunnelDomain,
255
+ tunnelUseHttps,
256
+ enableUrlRewriting: config.worker?.tunnel?.enableUrlRewriting !== false,
257
+ portMapping,
258
+ logLevel: "info",
259
+ });
260
+ console.log("🌐 Tunnel handler initialized");
261
+ });
262
+ tunnelConnection.on("close", (code, reason) => {
263
+ console.log(`Tunnel WebSocket closed. Code: ${code}, Reason: ${reason.toString()}`);
264
+ if (tunnelHandler) {
265
+ tunnelHandler.cleanup();
266
+ tunnelHandler = null;
267
+ }
268
+ tunnelWs = null;
269
+ });
270
+ tunnelConnection.on("error", (error) => {
271
+ console.error("Tunnel WebSocket error:", error);
272
+ });
273
+ tunnelWs = tunnelConnection;
274
+ }
162
275
  ws.on("open", () => {
163
- console.log("Connected to the server");
276
+ console.log("Worker WebSocket connected");
164
277
  connected = true;
165
278
  });
166
279
  ws.on("close", async (code, reason) => {
167
280
  console.log(`WebSocket closed. Code: ${code}, Reason: ${reason.toString()}`);
168
281
  console.log("Attempting to reconnect...");
282
+ if (tunnelHandler) {
283
+ tunnelHandler = null;
284
+ }
169
285
  connected = false;
170
286
  });
171
287
  ws.on("error", (error) => {
172
288
  console.error("WebSocket error:", error);
173
289
  });
174
290
  mcpServer.runWsServer(ws);
175
- return { ws, mcpServer };
291
+ return { ws, mcpServer, tunnelWs };
176
292
  }
177
293
  while (true) {
178
294
  let connection = null;
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/worker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from "./listAllowedPorts";
2
+ import { listAllowedPorts } from "./listAllowedPorts";
3
+ declare const _default: {
4
+ tools: {
5
+ listAllowedPorts: typeof listAllowedPorts;
6
+ };
7
+ definitions: import("../../clients").Tool[];
8
+ };
9
+ export default _default;
@@ -0,0 +1,23 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./listAllowedPorts"), exports);
18
+ const listAllowedPorts_1 = require("./listAllowedPorts");
19
+ exports.default = {
20
+ tools: { listAllowedPorts: listAllowedPorts_1.listAllowedPorts },
21
+ definitions: [listAllowedPorts_1.listAllowedPortsDefinition],
22
+ };
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/workers/tools/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,yDAG4B;AAE5B,kBAAe;IACb,KAAK,EAAE,EAAE,gBAAgB,EAAhB,mCAAgB,EAAE;IAC3B,WAAW,EAAE,CAAC,6CAA0B,CAAC;CAC1C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Tool } from "../../clients/types";
2
+ export declare function listAllowedPorts(): Promise<number[]>;
3
+ export declare const listAllowedPortsDefinition: Tool;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listAllowedPortsDefinition = exports.listAllowedPorts = void 0;
4
+ const config_1 = require("../../config");
5
+ async function listAllowedPorts() {
6
+ const config = await (0, config_1.getConfig)();
7
+ if (!config.worker?.tunnel?.enabled) {
8
+ return [];
9
+ }
10
+ return config.worker.tunnel.allowedPorts || [];
11
+ }
12
+ exports.listAllowedPorts = listAllowedPorts;
13
+ exports.listAllowedPortsDefinition = {
14
+ type: "function",
15
+ function: {
16
+ name: "listAllowedPorts",
17
+ description: "List all ports that are being forwarded through the worker tunnel. Returns an array of port numbers that can be accessed via the tunnel system.",
18
+ parameters: {
19
+ type: "object",
20
+ properties: {},
21
+ required: [],
22
+ },
23
+ },
24
+ };
25
+ //# sourceMappingURL=listAllowedPorts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listAllowedPorts.js","sourceRoot":"","sources":["../../../../src/workers/tools/listAllowedPorts.ts"],"names":[],"mappings":";;;AAAA,yCAAyC;AAOlC,KAAK,UAAU,gBAAgB;IACpC,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IAEjC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;QACnC,OAAO,EAAE,CAAC;KACX;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;AACjD,CAAC;AARD,4CAQC;AAEY,QAAA,0BAA0B,GAAS;IAC9C,IAAI,EAAE,UAAmB;IACzB,QAAQ,EAAE;QACR,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iJAAiJ;QACnJ,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare function listAllowedPorts(): Promise<number[]>;
2
+ export declare const listForwardedPortsDefinition: {
3
+ name: string;
4
+ description: string;
5
+ parameters: {
6
+ type: string;
7
+ properties: {};
8
+ required: any[];
9
+ };
10
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listForwardedPortsDefinition = exports.listAllowedPorts = void 0;
4
+ const config_1 = require("../../config");
5
+ async function listAllowedPorts() {
6
+ const config = await (0, config_1.getConfig)();
7
+ if (!config.worker?.tunnel?.enabled) {
8
+ return [];
9
+ }
10
+ return config.worker.tunnel.allowedPorts || [];
11
+ }
12
+ exports.listAllowedPorts = listAllowedPorts;
13
+ exports.listForwardedPortsDefinition = {
14
+ name: "listAllowedPorts",
15
+ description: "List all ports that are being forwarded through the worker tunnel. Returns an array of port numbers that can be accessed via the tunnel system.",
16
+ parameters: {
17
+ type: "object",
18
+ properties: {},
19
+ required: [],
20
+ },
21
+ };
22
+ //# sourceMappingURL=listForwardedPorts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listForwardedPorts.js","sourceRoot":"","sources":["../../../../src/workers/tools/listForwardedPorts.ts"],"names":[],"mappings":";;;AAAA,yCAAyC;AAMlC,KAAK,UAAU,gBAAgB;IACpC,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IAEjC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;QACnC,OAAO,EAAE,CAAC;KACX;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;AACjD,CAAC;AARD,4CAQC;AAEY,QAAA,4BAA4B,GAAG;IAC1C,IAAI,EAAE,kBAAkB;IACxB,WAAW,EACT,iJAAiJ;IACnJ,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;CACF,CAAC"}
@@ -29,7 +29,11 @@ const config_1 = require("../../../src/config");
29
29
  jest.mock("../../../src/utils", () => ({
30
30
  readFile: jest.fn(),
31
31
  fileExists: jest.fn().mockReturnValue(true),
32
- fileStat: jest.fn(),
32
+ fileStat: jest.fn().mockResolvedValue({
33
+ isDirectory: jest.fn().mockReturnValue(false),
34
+ isFile: jest.fn().mockReturnValue(true),
35
+ size: 1024,
36
+ }),
33
37
  }));
34
38
  jest.mock("../../../src/services/EventService", () => ({
35
39
  EventService: jest.fn().mockImplementation(() => ({
@@ -1 +1 @@
1
- {"version":3,"file":"languagePlugin-content-triggers.test.js","sourceRoot":"","sources":["../../../../tests/plugins/language/languagePlugin-content-triggers.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"languagePlugin-content-triggers.test.js","sourceRoot":"","sources":["../../../../tests/plugins/language/languagePlugin-content-triggers.test.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  jest.mock("../../../src/utils", () => ({
27
27
  readFile: jest.fn().mockReturnValue(Buffer.from("test")),
28
28
  fileExists: jest.fn().mockReturnValue(true),
29
- fileStat: jest.fn(),
29
+ fileStat: jest.fn().mockResolvedValue({
30
+ isDirectory: jest.fn().mockReturnValue(false),
31
+ isFile: jest.fn().mockReturnValue(true),
32
+ size: 1024,
33
+ }),
30
34
  }));
31
35
  jest.mock("../../../src/services/EventService", () => ({
32
36
  EventService: jest.fn().mockImplementation(() => ({