@easynet/agent-tool 1.0.56 → 1.0.58

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.
@@ -1 +1 @@
1
- {"version":3,"file":"openapiHttp.d.ts","sourceRoot":"","sources":["../../../src/api/expose/openapiHttp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,eAAe,EAAuB,MAAM,WAAW,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAIpE,MAAM,WAAW,wBAAwB;IACvC,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,WAAW,CAAC;CAC5D;AAqED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,OAAO,GAAE,wBAA6B,GACrC,OAAO,WAAW,EAAE,MAAM,CAsG5B;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,OAAO,WAAW,EAAE,MAAM,EAClC,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7C,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAWzC;AAED,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,MAAM,EAAE,OAAO,WAAW,EAAE,MAAM,CAAC;IACnC,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,8CAA8C;IAC9C,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjG;AAED,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE9B;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"openapiHttp.d.ts","sourceRoot":"","sources":["../../../src/api/expose/openapiHttp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,eAAe,EAAuB,MAAM,WAAW,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAIpE,MAAM,WAAW,wBAAwB;IACvC,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,WAAW,CAAC;CAC5D;AA+GD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,UAAU,EACnB,OAAO,GAAE,wBAA6B,GACrC,OAAO,WAAW,EAAE,MAAM,CAyH5B;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,OAAO,WAAW,EAAE,MAAM,EAClC,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7C,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAWzC;AAED,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,MAAM,EAAE,OAAO,WAAW,EAAE,MAAM,CAAC;IACnC,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,8CAA8C;IAC9C,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjG;AAED,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE9B;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAAC"}
package/dist/api/main.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunk4WI5ZZNC_cjs = require('../chunk-4WI5ZZNC.cjs');
4
- var chunkDLKEAJ7S_cjs = require('../chunk-DLKEAJ7S.cjs');
3
+ var chunkMUBZV65R_cjs = require('../chunk-MUBZV65R.cjs');
4
+ var chunkJXYANBTH_cjs = require('../chunk-JXYANBTH.cjs');
5
5
  require('../chunk-WQMHMPNC.cjs');
6
6
  require('../chunk-QEJF3KDV.cjs');
7
7
  require('../chunk-UUNG3GL3.cjs');
@@ -10,47 +10,47 @@ require('../chunk-UUNG3GL3.cjs');
10
10
 
11
11
  Object.defineProperty(exports, "createAgentTools", {
12
12
  enumerable: true,
13
- get: function () { return chunk4WI5ZZNC_cjs.createAgentTools; }
13
+ get: function () { return chunkMUBZV65R_cjs.createAgentTools; }
14
14
  });
15
15
  Object.defineProperty(exports, "createLangChainToolsAsync", {
16
16
  enumerable: true,
17
- get: function () { return chunk4WI5ZZNC_cjs.createLangChainToolsAsync; }
17
+ get: function () { return chunkMUBZV65R_cjs.createLangChainToolsAsync; }
18
18
  });
19
19
  Object.defineProperty(exports, "PTCRuntime", {
20
20
  enumerable: true,
21
- get: function () { return chunkDLKEAJ7S_cjs.PTCRuntime; }
21
+ get: function () { return chunkJXYANBTH_cjs.PTCRuntime; }
22
22
  });
23
23
  Object.defineProperty(exports, "createHttpService", {
24
24
  enumerable: true,
25
- get: function () { return chunkDLKEAJ7S_cjs.createHttpService; }
25
+ get: function () { return chunkJXYANBTH_cjs.createHttpService; }
26
26
  });
27
27
  Object.defineProperty(exports, "createMCPServer", {
28
28
  enumerable: true,
29
- get: function () { return chunkDLKEAJ7S_cjs.createMCPServer; }
29
+ get: function () { return chunkJXYANBTH_cjs.createMCPServer; }
30
30
  });
31
31
  Object.defineProperty(exports, "createMCPServerStreamableHttp", {
32
32
  enumerable: true,
33
- get: function () { return chunkDLKEAJ7S_cjs.createMCPServerStreamableHttp; }
33
+ get: function () { return chunkJXYANBTH_cjs.createMCPServerStreamableHttp; }
34
34
  });
35
35
  Object.defineProperty(exports, "createMCPStreamableHttpHandler", {
36
36
  enumerable: true,
37
- get: function () { return chunkDLKEAJ7S_cjs.createMCPStreamableHttpHandler; }
37
+ get: function () { return chunkJXYANBTH_cjs.createMCPStreamableHttpHandler; }
38
38
  });
39
39
  Object.defineProperty(exports, "createOpenAPIServer", {
40
40
  enumerable: true,
41
- get: function () { return chunkDLKEAJ7S_cjs.createHttpService; }
41
+ get: function () { return chunkJXYANBTH_cjs.createHttpService; }
42
42
  });
43
43
  Object.defineProperty(exports, "createRuntimeFromConfig", {
44
44
  enumerable: true,
45
- get: function () { return chunkDLKEAJ7S_cjs.createRuntimeFromConfig; }
45
+ get: function () { return chunkJXYANBTH_cjs.createRuntimeFromConfig; }
46
46
  });
47
47
  Object.defineProperty(exports, "createRuntimeFromConfigSync", {
48
48
  enumerable: true,
49
- get: function () { return chunkDLKEAJ7S_cjs.createRuntimeFromConfigSync; }
49
+ get: function () { return chunkJXYANBTH_cjs.createRuntimeFromConfigSync; }
50
50
  });
51
51
  Object.defineProperty(exports, "runMCPServerOverStdio", {
52
52
  enumerable: true,
53
- get: function () { return chunkDLKEAJ7S_cjs.runMCPServerOverStdio; }
53
+ get: function () { return chunkJXYANBTH_cjs.runMCPServerOverStdio; }
54
54
  });
55
55
  //# sourceMappingURL=main.cjs.map
56
56
  //# sourceMappingURL=main.cjs.map
package/dist/api/main.js CHANGED
@@ -1,5 +1,5 @@
1
- export { createAgentTools, createLangChainToolsAsync } from '../chunk-DXF3AMN6.js';
2
- export { PTCRuntime, createHttpService, createMCPServer, createMCPServerStreamableHttp, createMCPStreamableHttpHandler, createHttpService as createOpenAPIServer, createRuntimeFromConfig, createRuntimeFromConfigSync, runMCPServerOverStdio } from '../chunk-3JO3SOJC.js';
1
+ export { createAgentTools, createLangChainToolsAsync } from '../chunk-IWM5B5DU.js';
2
+ export { PTCRuntime, createHttpService, createMCPServer, createMCPServerStreamableHttp, createMCPStreamableHttpHandler, createHttpService as createOpenAPIServer, createRuntimeFromConfig, createRuntimeFromConfigSync, runMCPServerOverStdio } from '../chunk-A5C2MUNA.js';
3
3
  import '../chunk-FCYBA7PR.js';
4
4
  import '../chunk-ODEHUAR4.js';
5
5
  import '../chunk-NTWOVFEY.js';
@@ -3911,6 +3911,37 @@ var DEFAULT_CTX = {
3911
3911
  "danger:destructive"
3912
3912
  ]
3913
3913
  };
3914
+ function safeParseToolArgs(raw) {
3915
+ const text = String(raw ?? "").trim();
3916
+ const firstBrace = text.indexOf("{");
3917
+ if (firstBrace === -1) {
3918
+ return {
3919
+ ok: false,
3920
+ hint: 'Tool arguments must be a single JSON object. Do not prepend explanations. Example: itermRunCommandInSession({"command":"df -h"})'
3921
+ };
3922
+ }
3923
+ let jsonText = text.slice(firstBrace);
3924
+ const lastBrace = jsonText.lastIndexOf("}");
3925
+ if (lastBrace !== -1) {
3926
+ jsonText = jsonText.slice(0, lastBrace + 1);
3927
+ }
3928
+ try {
3929
+ return { ok: true, value: JSON.parse(jsonText) };
3930
+ } catch {
3931
+ return {
3932
+ ok: false,
3933
+ hint: "Tool arguments must be valid JSON: double-quoted keys/strings, no comments or trailing commas."
3934
+ };
3935
+ }
3936
+ }
3937
+ var BodyParseError = class extends Error {
3938
+ hint;
3939
+ constructor(message, hint) {
3940
+ super(message);
3941
+ this.name = "BodyParseError";
3942
+ this.hint = hint;
3943
+ }
3944
+ };
3914
3945
  function parseBody(req) {
3915
3946
  return new Promise((resolve10, reject) => {
3916
3947
  const chunks = [];
@@ -3921,11 +3952,12 @@ function parseBody(req) {
3921
3952
  resolve10({});
3922
3953
  return;
3923
3954
  }
3924
- try {
3925
- resolve10(JSON.parse(raw));
3926
- } catch {
3927
- reject(new Error("Invalid JSON body"));
3955
+ const parsed = safeParseToolArgs(raw);
3956
+ if (parsed.ok) {
3957
+ resolve10(parsed.value);
3958
+ return;
3928
3959
  }
3960
+ reject(new BodyParseError("Invalid JSON body", parsed.hint));
3929
3961
  });
3930
3962
  req.on("error", reject);
3931
3963
  });
@@ -4002,7 +4034,19 @@ function createOpenAPIHttpServer(runtime, options = {}) {
4002
4034
  return;
4003
4035
  }
4004
4036
  if (req.method === "POST" && norm === "/invoke") {
4005
- const body = await parseBody(req);
4037
+ let body;
4038
+ try {
4039
+ body = await parseBody(req);
4040
+ } catch (err) {
4041
+ const hint = err instanceof BodyParseError ? err.hint : void 0;
4042
+ sendJson(res, 400, {
4043
+ ok: false,
4044
+ error: "Invalid JSON body",
4045
+ kind: "BAD_REQUEST",
4046
+ ...hint ? { hint } : {}
4047
+ });
4048
+ return;
4049
+ }
4006
4050
  const tool = body?.tool;
4007
4051
  const args = body?.args ?? {};
4008
4052
  if (typeof tool !== "string" || !tool.trim()) {
@@ -4029,10 +4073,17 @@ function createOpenAPIHttpServer(runtime, options = {}) {
4029
4073
  const slug = norm.slice("/invoke/".length);
4030
4074
  const toolName = slugToToolName(slug);
4031
4075
  let args;
4076
+ let hint;
4032
4077
  try {
4033
4078
  args = await parseBody(req);
4034
- } catch {
4035
- sendJson(res, 400, { error: "Invalid JSON body", kind: "BAD_REQUEST" });
4079
+ } catch (err) {
4080
+ hint = err instanceof BodyParseError ? err.hint : void 0;
4081
+ sendJson(res, 400, {
4082
+ ok: false,
4083
+ error: "Invalid JSON body",
4084
+ kind: "BAD_REQUEST",
4085
+ ...hint ? { hint } : {}
4086
+ });
4036
4087
  return;
4037
4088
  }
4038
4089
  const ctx = ctxFactory(req);
@@ -4219,5 +4270,5 @@ async function runMCPServerOverStdio(runtime, options = {}) {
4219
4270
  }
4220
4271
 
4221
4272
  export { FUNCTION_KIND, LANGCHAIN_KIND, N8N_KIND, PTCRuntime, SKILL_KIND, createHttpService, createMCPServer, createMCPServerStreamableHttp, createMCPStreamableHttpHandler, createRuntimeFromConfig, createRuntimeFromConfigSync, discoverTools, expandToolDescriptorsToRegistryNames, fileDescriptorToPackagePrefix, findAndLoadToolConfig, getDisplayScope, isBarePackageDescriptor, loadToolConfig, npmDescriptorToPackagePrefixWithVersion, resolveSandboxedPath, resolveSandboxedPath2, resolveToolDescriptor, runMCPServerOverStdio, scan, scanForTools, setSandboxValidationEnabled };
4222
- //# sourceMappingURL=chunk-3JO3SOJC.js.map
4223
- //# sourceMappingURL=chunk-3JO3SOJC.js.map
4273
+ //# sourceMappingURL=chunk-A5C2MUNA.js.map
4274
+ //# sourceMappingURL=chunk-A5C2MUNA.js.map