zan-browser 3.0.42 → 3.0.43
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/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +2 -0
- package/dist/session.js.map +1 -1
- package/dist/tools/network/analyze_network_logs.d.ts +8 -0
- package/dist/tools/network/analyze_network_logs.d.ts.map +1 -0
- package/dist/tools/network/analyze_network_logs.js +168 -0
- package/dist/tools/network/analyze_network_logs.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -29,4 +29,5 @@ export { FetchUrlTool } from "./tools/network/fetch_url";
|
|
|
29
29
|
export { DownloadFileTool } from "./tools/network/download_file";
|
|
30
30
|
export { ReadNetworkLogsTool } from "./tools/network/read_network_logs";
|
|
31
31
|
export { ExtractEndpointsTool } from "./tools/network/extract_endpoints";
|
|
32
|
+
export { AnalyzeNetworkLogsTool } from "./tools/network/analyze_network_logs";
|
|
32
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG9E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,EACd,aAAa,EACb,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,UAAU,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAGzD,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG9E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAC;AAG9B,YAAY,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,EACd,aAAa,EACb,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,UAAU,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,GACX,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// ─── Public API ──────────────────────────────────────────────────────────────
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.ExtractEndpointsTool = exports.ReadNetworkLogsTool = exports.DownloadFileTool = exports.FetchUrlTool = exports.WebSearchTool = exports.ExtractDomTool = exports.ScrapeTool = exports.ObserveTool = exports.ScreenshotTool = exports.EvalJsTool = exports.WaitTool = exports.NavigateTool = exports.ScrollTool = exports.FillTool = exports.ClickTool = exports.hasStructuredData = exports.isBlacklisted = exports.DiscoveryState = exports.AgentOrchestrator = exports.AgentLoop = exports.ToolRegistry = exports.Session = exports.RensanBrowser = void 0;
|
|
4
|
+
exports.AnalyzeNetworkLogsTool = exports.ExtractEndpointsTool = exports.ReadNetworkLogsTool = exports.DownloadFileTool = exports.FetchUrlTool = exports.WebSearchTool = exports.ExtractDomTool = exports.ScrapeTool = exports.ObserveTool = exports.ScreenshotTool = exports.EvalJsTool = exports.WaitTool = exports.NavigateTool = exports.ScrollTool = exports.FillTool = exports.ClickTool = exports.hasStructuredData = exports.isBlacklisted = exports.DiscoveryState = exports.AgentOrchestrator = exports.AgentLoop = exports.ToolRegistry = exports.Session = exports.RensanBrowser = void 0;
|
|
5
5
|
var browser_1 = require("./browser");
|
|
6
6
|
Object.defineProperty(exports, "RensanBrowser", { enumerable: true, get: function () { return browser_1.RensanBrowser; } });
|
|
7
7
|
var session_1 = require("./session");
|
|
@@ -49,4 +49,6 @@ var read_network_logs_1 = require("./tools/network/read_network_logs");
|
|
|
49
49
|
Object.defineProperty(exports, "ReadNetworkLogsTool", { enumerable: true, get: function () { return read_network_logs_1.ReadNetworkLogsTool; } });
|
|
50
50
|
var extract_endpoints_1 = require("./tools/network/extract_endpoints");
|
|
51
51
|
Object.defineProperty(exports, "ExtractEndpointsTool", { enumerable: true, get: function () { return extract_endpoints_1.ExtractEndpointsTool; } });
|
|
52
|
+
var analyze_network_logs_1 = require("./tools/network/analyze_network_logs");
|
|
53
|
+
Object.defineProperty(exports, "AnalyzeNetworkLogsTool", { enumerable: true, get: function () { return analyze_network_logs_1.AnalyzeNetworkLogsTool; } });
|
|
52
54
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;;;AAEhF,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AACtB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AACrB,uCAA0C;AAAjC,kGAAA,SAAS,OAAA;AAClB,qDAAyD;AAAhD,iHAAA,iBAAiB,OAAA;AAC1B,2DAAyD;AAAhD,iHAAA,cAAc,OAAA;AAkDvB,yCAA4C;AAAnC,0GAAA,aAAa,OAAA;AACtB,iDAAuD;AAA9C,+GAAA,iBAAiB,OAAA;AAE1B,+EAA+E;AAC/E,+CAAkD;AAAzC,kGAAA,SAAS,OAAA;AAClB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,iDAAoD;AAA3C,oGAAA,UAAU,OAAA;AACnB,qDAAwD;AAA/C,wGAAA,YAAY,OAAA;AACrB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,mDAAqD;AAA5C,qGAAA,UAAU,OAAA;AACnB,yDAA4D;AAAnD,4GAAA,cAAc,OAAA;AACvB,gDAAmD;AAA1C,sGAAA,WAAW,OAAA;AACpB,8CAAiD;AAAxC,oGAAA,UAAU,OAAA;AACnB,wDAA0D;AAAjD,6GAAA,cAAc,OAAA;AACvB,yDAA2D;AAAlD,2GAAA,aAAa,OAAA;AACtB,uDAAyD;AAAhD,yGAAA,YAAY,OAAA;AACrB,+DAAiE;AAAxD,iHAAA,gBAAgB,OAAA;AACzB,uEAAwE;AAA/D,wHAAA,mBAAmB,OAAA;AAC5B,uEAAyE;AAAhE,yHAAA,oBAAoB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;;;AAEhF,qCAA0C;AAAjC,wGAAA,aAAa,OAAA;AACtB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,uCAA0C;AAAjC,wGAAA,YAAY,OAAA;AACrB,uCAA0C;AAAjC,kGAAA,SAAS,OAAA;AAClB,qDAAyD;AAAhD,iHAAA,iBAAiB,OAAA;AAC1B,2DAAyD;AAAhD,iHAAA,cAAc,OAAA;AAkDvB,yCAA4C;AAAnC,0GAAA,aAAa,OAAA;AACtB,iDAAuD;AAA9C,+GAAA,iBAAiB,OAAA;AAE1B,+EAA+E;AAC/E,+CAAkD;AAAzC,kGAAA,SAAS,OAAA;AAClB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,iDAAoD;AAA3C,oGAAA,UAAU,OAAA;AACnB,qDAAwD;AAA/C,wGAAA,YAAY,OAAA;AACrB,6CAAgD;AAAvC,gGAAA,QAAQ,OAAA;AACjB,mDAAqD;AAA5C,qGAAA,UAAU,OAAA;AACnB,yDAA4D;AAAnD,4GAAA,cAAc,OAAA;AACvB,gDAAmD;AAA1C,sGAAA,WAAW,OAAA;AACpB,8CAAiD;AAAxC,oGAAA,UAAU,OAAA;AACnB,wDAA0D;AAAjD,6GAAA,cAAc,OAAA;AACvB,yDAA2D;AAAlD,2GAAA,aAAa,OAAA;AACtB,uDAAyD;AAAhD,yGAAA,YAAY,OAAA;AACrB,+DAAiE;AAAxD,iHAAA,gBAAgB,OAAA;AACzB,uEAAwE;AAA/D,wHAAA,mBAAmB,OAAA;AAC5B,uEAAyE;AAAhE,yHAAA,oBAAoB,OAAA;AAC7B,6EAA8E;AAArE,8HAAA,sBAAsB,OAAA"}
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG3D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AA0BzD,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGrC,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,OAAO,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM;IAiCZ,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWtE,IAAI,GAAG,IAAI,MAAM,CAEhB;IAIK,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;IAWvC,mBAAmB,IAAI,eAAe,EAAE;IAIxC,iBAAiB,CAAC,QAAQ,SAAI,GAAG,eAAe,EAAE;IAM5C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAc5E,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,iBAAiB;IAOrD,8EAA8E;IAC9E,iBAAiB,IAAI,IAAI;IAMzB,WAAW,IAAI,YAAY;IAI3B,cAAc,IAAI,WAAW;IAMvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAO/B,OAAO,CAAC,oBAAoB;CAuB7B"}
|
package/dist/session.js
CHANGED
|
@@ -29,6 +29,7 @@ const fetch_url_1 = require("./tools/network/fetch_url");
|
|
|
29
29
|
const download_file_1 = require("./tools/network/download_file");
|
|
30
30
|
const read_network_logs_1 = require("./tools/network/read_network_logs");
|
|
31
31
|
const extract_endpoints_1 = require("./tools/network/extract_endpoints");
|
|
32
|
+
const analyze_network_logs_1 = require("./tools/network/analyze_network_logs");
|
|
32
33
|
class Session {
|
|
33
34
|
page;
|
|
34
35
|
browserHandle;
|
|
@@ -155,6 +156,7 @@ class Session {
|
|
|
155
156
|
this.registry.register(new download_file_1.DownloadFileTool());
|
|
156
157
|
this.registry.register(new read_network_logs_1.ReadNetworkLogsTool());
|
|
157
158
|
this.registry.register(new extract_endpoints_1.ExtractEndpointsTool());
|
|
159
|
+
this.registry.register(new analyze_network_logs_1.AnalyzeNetworkLogsTool());
|
|
158
160
|
}
|
|
159
161
|
}
|
|
160
162
|
exports.Session = Session;
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,gFAAgF;AAChF,yEAAyE;;;AAIzE,+CAA4C;AAC5C,yCAAsC;AACtC,yCAA0C;AAE1C,yCAA0C;AAE1C,uDAAyD;AACzD,6DAAyD;AACzD,uDAA2D;AAE3D,gFAAgF;AAChF,iDAAkD;AAClD,+CAAgD;AAChD,mDAAoD;AACpD,uDAAwD;AACxD,+CAAgD;AAChD,qDAAqD;AACrD,2DAA4D;AAE5D,gFAAgF;AAChF,kDAAmD;AACnD,gDAAiD;AACjD,0DAA0D;AAE1D,+EAA+E;AAC/E,2DAA2D;AAC3D,yDAAyD;AACzD,iEAAiE;AACjE,yEAAwE;AACxE,yEAAyE;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Tool, ToolContext, ToolResult, JSONSchema } from "../base";
|
|
2
|
+
export declare class AnalyzeNetworkLogsTool implements Tool {
|
|
3
|
+
name: string;
|
|
4
|
+
description: string;
|
|
5
|
+
inputSchema: JSONSchema;
|
|
6
|
+
execute(params: Record<string, unknown>, ctx: ToolContext): Promise<ToolResult>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=analyze_network_logs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyze_network_logs.d.ts","sourceRoot":"","sources":["../../../src/tools/network/analyze_network_logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AA+CzE,qBAAa,sBAAuB,YAAW,IAAI;IACjD,IAAI,SAA0B;IAC9B,WAAW,SAA0N;IAErO,WAAW,EAAE,UAAU,CASrB;IAEI,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;CAsHtF"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AnalyzeNetworkLogsTool = void 0;
|
|
4
|
+
const MAX_RESULTS = 20;
|
|
5
|
+
const MAX_BODY_PREVIEW = 2000;
|
|
6
|
+
const BASE64_RE = /^[A-Za-z0-9+/]{20,}={0,2}$/;
|
|
7
|
+
function tryDecodeBase64(val) {
|
|
8
|
+
if (!BASE64_RE.test(val))
|
|
9
|
+
return null;
|
|
10
|
+
try {
|
|
11
|
+
const decoded = Buffer.from(val, "base64").toString("utf-8");
|
|
12
|
+
// Check if it's valid UTF-8 (no replacement chars from binary)
|
|
13
|
+
if (decoded.includes("\uFFFD") || /[\x00-\x08\x0E-\x1F]/.test(decoded))
|
|
14
|
+
return null;
|
|
15
|
+
try {
|
|
16
|
+
return JSON.parse(decoded);
|
|
17
|
+
}
|
|
18
|
+
catch { /* not JSON */ }
|
|
19
|
+
return decoded.length > 5 ? decoded : null;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function decodeFormBody(body) {
|
|
26
|
+
if (!body.includes("="))
|
|
27
|
+
return null;
|
|
28
|
+
try {
|
|
29
|
+
const params = new URLSearchParams(body);
|
|
30
|
+
const result = {};
|
|
31
|
+
let count = 0;
|
|
32
|
+
for (const [key, value] of params) {
|
|
33
|
+
result[key] = value;
|
|
34
|
+
count++;
|
|
35
|
+
}
|
|
36
|
+
return count > 0 ? result : null;
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
class AnalyzeNetworkLogsTool {
|
|
43
|
+
name = "analyze_network_logs";
|
|
44
|
+
description = "Deep programmatic analysis of captured network requests. Extracts operationNames, decodes base64 params, URL-decodes form bodies. Use when read_network_logs shows interesting requests that need deeper inspection.";
|
|
45
|
+
inputSchema = {
|
|
46
|
+
type: "object",
|
|
47
|
+
properties: {
|
|
48
|
+
pattern: { type: "string", description: "Filter requests where URL or body contains this string (case-insensitive)" },
|
|
49
|
+
decode_base64: { type: "string", description: "Decode base64 values in URL params and bodies", enum: ["true", "false"], default: "false" },
|
|
50
|
+
show_bodies: { type: "string", description: "Include response body previews (up to 2000 chars)", enum: ["true", "false"], default: "false" },
|
|
51
|
+
min_score: { type: "number", description: "Minimum score filter (default 0)", default: 0 },
|
|
52
|
+
},
|
|
53
|
+
required: [],
|
|
54
|
+
};
|
|
55
|
+
async execute(params, ctx) {
|
|
56
|
+
const { interceptor } = ctx;
|
|
57
|
+
if (!interceptor) {
|
|
58
|
+
return { success: false, summary: "analyze_network_logs failed: no interceptor", error: "missing interceptor" };
|
|
59
|
+
}
|
|
60
|
+
const pattern = params.pattern ? String(params.pattern).toLowerCase() : undefined;
|
|
61
|
+
const decodeBase64 = String(params.decode_base64) === "true";
|
|
62
|
+
const showBodies = String(params.show_bodies) === "true";
|
|
63
|
+
const minScore = Number(params.min_score) || 0;
|
|
64
|
+
let requests = interceptor.getAll().filter((r) => r.score >= minScore);
|
|
65
|
+
if (pattern) {
|
|
66
|
+
requests = requests.filter((r) => {
|
|
67
|
+
const urlMatch = r.url.toLowerCase().includes(pattern);
|
|
68
|
+
const bodyMatch = r.responseBody?.toLowerCase().includes(pattern) ?? false;
|
|
69
|
+
const reqBodyMatch = r.requestBody?.toLowerCase().includes(pattern) ?? false;
|
|
70
|
+
return urlMatch || bodyMatch || reqBodyMatch;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
requests = requests.slice(0, MAX_RESULTS);
|
|
74
|
+
if (requests.length === 0) {
|
|
75
|
+
return { success: true, summary: `No requests matched${pattern ? ` pattern "${pattern}"` : ""} with score >= ${minScore}`, data: [] };
|
|
76
|
+
}
|
|
77
|
+
const analyzed = [];
|
|
78
|
+
for (const r of requests) {
|
|
79
|
+
const entry = {
|
|
80
|
+
url: r.url,
|
|
81
|
+
method: r.method,
|
|
82
|
+
status: r.status,
|
|
83
|
+
score: r.score,
|
|
84
|
+
contentType: r.contentType,
|
|
85
|
+
};
|
|
86
|
+
// Extract operationName from URL
|
|
87
|
+
try {
|
|
88
|
+
const urlObj = new URL(r.url);
|
|
89
|
+
const opName = urlObj.searchParams.get("operationName");
|
|
90
|
+
if (opName)
|
|
91
|
+
entry.operationName = opName;
|
|
92
|
+
}
|
|
93
|
+
catch { /* ignore */ }
|
|
94
|
+
// Decode base64 query params
|
|
95
|
+
if (decodeBase64) {
|
|
96
|
+
try {
|
|
97
|
+
const urlObj = new URL(r.url);
|
|
98
|
+
const decoded = {};
|
|
99
|
+
let hasDecoded = false;
|
|
100
|
+
for (const [key, value] of urlObj.searchParams) {
|
|
101
|
+
const result = tryDecodeBase64(value);
|
|
102
|
+
if (result !== null) {
|
|
103
|
+
decoded[key] = result;
|
|
104
|
+
hasDecoded = true;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
if (hasDecoded)
|
|
108
|
+
entry.decodedParams = decoded;
|
|
109
|
+
}
|
|
110
|
+
catch { /* ignore */ }
|
|
111
|
+
// Decode base64 in request body
|
|
112
|
+
if (r.requestBody) {
|
|
113
|
+
const result = tryDecodeBase64(r.requestBody);
|
|
114
|
+
if (result !== null) {
|
|
115
|
+
entry.decodedBody = typeof result === "object" && result !== null
|
|
116
|
+
? result
|
|
117
|
+
: { value: result };
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
// URL-decode form body if not already decoded via base64
|
|
122
|
+
if (!entry.decodedBody && r.requestBody && r.requestBody.includes("=")) {
|
|
123
|
+
const formDecoded = decodeFormBody(r.requestBody);
|
|
124
|
+
if (formDecoded)
|
|
125
|
+
entry.decodedBody = formDecoded;
|
|
126
|
+
}
|
|
127
|
+
// Try parsing requestBody as JSON
|
|
128
|
+
if (!entry.decodedBody && r.requestBody) {
|
|
129
|
+
try {
|
|
130
|
+
const parsed = JSON.parse(r.requestBody);
|
|
131
|
+
if (typeof parsed === "object" && parsed !== null) {
|
|
132
|
+
entry.decodedBody = parsed;
|
|
133
|
+
if (parsed.operationName && !entry.operationName) {
|
|
134
|
+
entry.operationName = String(parsed.operationName);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
catch { /* not JSON */ }
|
|
139
|
+
}
|
|
140
|
+
if (showBodies && r.responseBody) {
|
|
141
|
+
entry.bodyPreview = r.responseBody.slice(0, MAX_BODY_PREVIEW);
|
|
142
|
+
}
|
|
143
|
+
analyzed.push(entry);
|
|
144
|
+
}
|
|
145
|
+
// Build summary
|
|
146
|
+
const lines = analyzed.map((a) => {
|
|
147
|
+
const marker = a.score >= 50 ? "★" : " ";
|
|
148
|
+
let line = `${marker} [${a.score}] ${a.method} ${a.url.slice(0, 120)}`;
|
|
149
|
+
if (a.operationName)
|
|
150
|
+
line += ` op=${a.operationName}`;
|
|
151
|
+
if (a.decodedParams)
|
|
152
|
+
line += ` decoded_params=${JSON.stringify(a.decodedParams).slice(0, 150)}`;
|
|
153
|
+
if (a.decodedBody)
|
|
154
|
+
line += ` decoded_body=${JSON.stringify(a.decodedBody).slice(0, 150)}`;
|
|
155
|
+
if (a.bodyPreview)
|
|
156
|
+
line += `\n body: ${a.bodyPreview.slice(0, 300)}${a.bodyPreview.length > 300 ? "..." : ""}`;
|
|
157
|
+
return line;
|
|
158
|
+
});
|
|
159
|
+
const summary = `Analyzed ${requests.length} requests${pattern ? ` matching "${pattern}"` : ""}:\n${lines.join("\n")}`;
|
|
160
|
+
return {
|
|
161
|
+
success: true,
|
|
162
|
+
summary,
|
|
163
|
+
data: analyzed,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
exports.AnalyzeNetworkLogsTool = AnalyzeNetworkLogsTool;
|
|
168
|
+
//# sourceMappingURL=analyze_network_logs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analyze_network_logs.js","sourceRoot":"","sources":["../../../src/tools/network/analyze_network_logs.ts"],"names":[],"mappings":"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"}
|