@ai-jshook/mcp 0.1.6 → 0.1.8
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/.env.example +16 -1
- package/dist/modules/collector/CodeCollector.d.ts +13 -0
- package/dist/modules/collector/CodeCollector.d.ts.map +1 -1
- package/dist/modules/collector/CodeCollector.js +272 -30
- package/dist/modules/collector/CodeCollector.js.map +1 -1
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +89 -7
- package/dist/utils/config.js.map +1 -1
- package/package.json +1 -1
- package/.npm-cache/_cacache/content-v2/sha512/1e/d1/168b583afafd2ea61626a6a093168f62ac229c5dd33fc684ded516523e88516bd8534281cda479883b2fe15aacf54d1ed53d6797cd5f20077afb2d945e0e +0 -1
- package/.npm-cache/_cacache/content-v2/sha512/91/7d/40cd5c038ce53f2b06fc56228a9edeb6b230422345ce4bef406bcfd02a7cafd9c9ee5c2b5b847dbfea4aa613a5bce2e627a1d49da3a384778dfb449a5556 +0 -1
- package/.npm-cache/_cacache/index-v5/15/d9/194d43eab35f6c6ae53f97fdefb37d458017cbde3674961cf93f341001ad +0 -2
- package/.npm-cache/_cacache/index-v5/9a/5d/18b734f038b4b4e0f36a1c1d9c852b951409916ab3205e88ac3cab28e02b +0 -2
- package/.npm-cache/_update-notifier-last-checked +0 -0
package/.env.example
CHANGED
|
@@ -13,6 +13,22 @@ DEFAULT_LLM_PROVIDER=openai
|
|
|
13
13
|
# Puppeteer配置
|
|
14
14
|
PUPPETEER_HEADLESS=true
|
|
15
15
|
PUPPETEER_TIMEOUT=30000
|
|
16
|
+
PUPPETEER_ARGS=
|
|
17
|
+
PUPPETEER_VIEWPORT=
|
|
18
|
+
PUPPETEER_USER_AGENT=
|
|
19
|
+
PUPPETEER_MAX_COLLECTED_URLS=10000
|
|
20
|
+
PUPPETEER_MAX_FILES_PER_COLLECT=200
|
|
21
|
+
PUPPETEER_MAX_TOTAL_CONTENT_SIZE=524288
|
|
22
|
+
PUPPETEER_MAX_SINGLE_FILE_SIZE=204800
|
|
23
|
+
|
|
24
|
+
# External browser connection (reuse local login state)
|
|
25
|
+
USE_EXTERNAL_BROWSER=false
|
|
26
|
+
REMOTE_DEBUGGING_URL=http://127.0.0.1:9222
|
|
27
|
+
AUTO_LAUNCH_EXTERNAL_BROWSER=false
|
|
28
|
+
EXTERNAL_BROWSER_PATH=
|
|
29
|
+
EXTERNAL_BROWSER_ARGS=
|
|
30
|
+
PUPPETEER_USER_DATA_DIR=
|
|
31
|
+
PUPPETEER_PROFILE_DIRECTORY=
|
|
16
32
|
|
|
17
33
|
# MCP服务器配置
|
|
18
34
|
MCP_SERVER_NAME=jshook-reverse-tool
|
|
@@ -33,4 +49,3 @@ MAX_CODE_SIZE_MB=10
|
|
|
33
49
|
|
|
34
50
|
# 验证码检测配置
|
|
35
51
|
CAPTCHA_SCREENSHOT_DIR=./screenshots
|
|
36
|
-
|
|
@@ -5,6 +5,9 @@ import { CodeCompressor } from './CodeCompressor.js';
|
|
|
5
5
|
export declare class CodeCollector {
|
|
6
6
|
private config;
|
|
7
7
|
private browser;
|
|
8
|
+
private browserProcess;
|
|
9
|
+
private autoLaunchedExternalBrowser;
|
|
10
|
+
private managedPage;
|
|
8
11
|
private collectedUrls;
|
|
9
12
|
private readonly MAX_COLLECTED_URLS;
|
|
10
13
|
private readonly MAX_FILES_PER_COLLECT;
|
|
@@ -52,6 +55,16 @@ export declare class CodeCollector {
|
|
|
52
55
|
getCache(): CodeCache;
|
|
53
56
|
getCompressor(): CodeCompressor;
|
|
54
57
|
private cleanupCollectedUrls;
|
|
58
|
+
private registerBrowserDisconnectHandler;
|
|
59
|
+
private getNormalizedRemoteDebuggingUrl;
|
|
60
|
+
private getRemoteDebuggingPort;
|
|
61
|
+
private findExecutableInPath;
|
|
62
|
+
private detectBrowserExecutable;
|
|
63
|
+
private waitForExternalBrowserReady;
|
|
64
|
+
private launchExternalBrowserProcess;
|
|
65
|
+
private connectExternalBrowser;
|
|
66
|
+
private prepareManagedPage;
|
|
67
|
+
private ensureManagedPage;
|
|
55
68
|
init(): Promise<void>;
|
|
56
69
|
close(): Promise<void>;
|
|
57
70
|
getActivePage(): Promise<Page>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeCollector.d.ts","sourceRoot":"","sources":["../../../src/modules/collector/CodeCollector.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAc,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeCollector.d.ts","sourceRoot":"","sources":["../../../src/modules/collector/CodeCollector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import puppeteer from 'puppeteer-extra';
|
|
2
2
|
import StealthPlugin from 'puppeteer-extra-plugin-stealth';
|
|
3
|
+
import { spawn } from 'child_process';
|
|
4
|
+
import { existsSync } from 'fs';
|
|
5
|
+
import { delimiter, join } from 'path';
|
|
6
|
+
import { URL } from 'url';
|
|
3
7
|
import { logger } from '../../utils/logger.js';
|
|
4
8
|
import { CodeCache } from './CodeCache.js';
|
|
5
9
|
import { SmartCodeCollector } from './SmartCodeCollector.js';
|
|
@@ -8,6 +12,9 @@ puppeteer.use(StealthPlugin());
|
|
|
8
12
|
export class CodeCollector {
|
|
9
13
|
config;
|
|
10
14
|
browser = null;
|
|
15
|
+
browserProcess = null;
|
|
16
|
+
autoLaunchedExternalBrowser = false;
|
|
17
|
+
managedPage = null;
|
|
11
18
|
collectedUrls = new Set();
|
|
12
19
|
MAX_COLLECTED_URLS;
|
|
13
20
|
MAX_FILES_PER_COLLECT;
|
|
@@ -84,13 +91,242 @@ export class CodeCollector {
|
|
|
84
91
|
urls.slice(-Math.floor(this.MAX_COLLECTED_URLS / 2)).forEach(url => this.collectedUrls.add(url));
|
|
85
92
|
}
|
|
86
93
|
}
|
|
94
|
+
registerBrowserDisconnectHandler() {
|
|
95
|
+
if (!this.browser) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
this.browser.on('disconnected', () => {
|
|
99
|
+
logger.warn('Browser disconnected');
|
|
100
|
+
this.browser = null;
|
|
101
|
+
this.managedPage = null;
|
|
102
|
+
if (this.cdpSession) {
|
|
103
|
+
this.cdpSession = null;
|
|
104
|
+
this.cdpListeners = {};
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
getNormalizedRemoteDebuggingUrl() {
|
|
109
|
+
const fallback = 'http://127.0.0.1:9222';
|
|
110
|
+
const rawUrl = (this.config.remoteDebuggingUrl || fallback).trim();
|
|
111
|
+
try {
|
|
112
|
+
const parsed = new URL(rawUrl);
|
|
113
|
+
if (!parsed.port) {
|
|
114
|
+
parsed.port = '9222';
|
|
115
|
+
}
|
|
116
|
+
parsed.pathname = '';
|
|
117
|
+
parsed.search = '';
|
|
118
|
+
parsed.hash = '';
|
|
119
|
+
const normalized = parsed.toString();
|
|
120
|
+
return normalized.endsWith('/') ? normalized.slice(0, -1) : normalized;
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
return fallback;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
getRemoteDebuggingPort() {
|
|
127
|
+
const parsed = new URL(this.getNormalizedRemoteDebuggingUrl());
|
|
128
|
+
const port = parseInt(parsed.port, 10);
|
|
129
|
+
return Number.isNaN(port) ? 9222 : port;
|
|
130
|
+
}
|
|
131
|
+
findExecutableInPath(commands) {
|
|
132
|
+
const pathValue = process.env.PATH || '';
|
|
133
|
+
if (!pathValue) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
const pathDirs = pathValue.split(delimiter).filter((dir) => dir.length > 0);
|
|
137
|
+
const extCandidates = process.platform === 'win32'
|
|
138
|
+
? (process.env.PATHEXT || '.EXE;.CMD;.BAT').split(';').filter((ext) => ext.length > 0)
|
|
139
|
+
: [''];
|
|
140
|
+
for (const dir of pathDirs) {
|
|
141
|
+
for (const command of commands) {
|
|
142
|
+
if (process.platform === 'win32') {
|
|
143
|
+
const hasExt = /\.[a-z0-9]+$/i.test(command);
|
|
144
|
+
if (hasExt) {
|
|
145
|
+
const candidate = join(dir, command);
|
|
146
|
+
if (existsSync(candidate)) {
|
|
147
|
+
return candidate;
|
|
148
|
+
}
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
for (const ext of extCandidates) {
|
|
153
|
+
const candidate = join(dir, `${command}${ext}`);
|
|
154
|
+
if (existsSync(candidate)) {
|
|
155
|
+
return candidate;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
detectBrowserExecutable() {
|
|
163
|
+
if (this.config.externalBrowserPath) {
|
|
164
|
+
if (existsSync(this.config.externalBrowserPath)) {
|
|
165
|
+
return this.config.externalBrowserPath;
|
|
166
|
+
}
|
|
167
|
+
logger.warn(`Configured EXTERNAL_BROWSER_PATH not found: ${this.config.externalBrowserPath}`);
|
|
168
|
+
}
|
|
169
|
+
if (process.platform === 'win32') {
|
|
170
|
+
const programFiles = process.env.PROGRAMFILES || 'C:\\Program Files';
|
|
171
|
+
const programFilesX86 = process.env['PROGRAMFILES(X86)'] || 'C:\\Program Files (x86)';
|
|
172
|
+
const localAppData = process.env.LOCALAPPDATA || '';
|
|
173
|
+
const baseCandidates = [
|
|
174
|
+
`${programFiles}\\Google\\Chrome\\Application\\chrome.exe`,
|
|
175
|
+
`${programFilesX86}\\Google\\Chrome\\Application\\chrome.exe`,
|
|
176
|
+
`${programFiles}\\Microsoft\\Edge\\Application\\msedge.exe`,
|
|
177
|
+
`${programFilesX86}\\Microsoft\\Edge\\Application\\msedge.exe`,
|
|
178
|
+
localAppData ? `${localAppData}\\Google\\Chrome\\Application\\chrome.exe` : '',
|
|
179
|
+
localAppData ? `${localAppData}\\Microsoft\\Edge\\Application\\msedge.exe` : '',
|
|
180
|
+
].filter((item) => item.length > 0);
|
|
181
|
+
for (const candidate of baseCandidates) {
|
|
182
|
+
if (existsSync(candidate)) {
|
|
183
|
+
return candidate;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
const driveLetters = 'CDEFGHIJKLMNOPQRSTUVWXYZ'.split('');
|
|
187
|
+
const relativeCandidates = [
|
|
188
|
+
'Program Files\\Google\\Chrome\\Application\\chrome.exe',
|
|
189
|
+
'Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe',
|
|
190
|
+
'Program Files\\Microsoft\\Edge\\Application\\msedge.exe',
|
|
191
|
+
'Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe',
|
|
192
|
+
];
|
|
193
|
+
for (const drive of driveLetters) {
|
|
194
|
+
for (const relativePath of relativeCandidates) {
|
|
195
|
+
const candidate = `${drive}:\\${relativePath}`;
|
|
196
|
+
if (existsSync(candidate)) {
|
|
197
|
+
return candidate;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
else if (process.platform === 'darwin') {
|
|
203
|
+
const macCandidates = [
|
|
204
|
+
'/Applications/Google Chrome.app/Contents/MacOS/Google Chrome',
|
|
205
|
+
'/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge',
|
|
206
|
+
'/Applications/Chromium.app/Contents/MacOS/Chromium',
|
|
207
|
+
];
|
|
208
|
+
for (const candidate of macCandidates) {
|
|
209
|
+
if (existsSync(candidate)) {
|
|
210
|
+
return candidate;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
const linuxCandidates = [
|
|
216
|
+
'/usr/bin/google-chrome',
|
|
217
|
+
'/usr/bin/google-chrome-stable',
|
|
218
|
+
'/usr/bin/microsoft-edge',
|
|
219
|
+
'/usr/bin/microsoft-edge-stable',
|
|
220
|
+
'/usr/bin/chromium',
|
|
221
|
+
'/usr/bin/chromium-browser',
|
|
222
|
+
];
|
|
223
|
+
for (const candidate of linuxCandidates) {
|
|
224
|
+
if (existsSync(candidate)) {
|
|
225
|
+
return candidate;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return this.findExecutableInPath([
|
|
230
|
+
'msedge',
|
|
231
|
+
'microsoft-edge',
|
|
232
|
+
'google-chrome',
|
|
233
|
+
'google-chrome-stable',
|
|
234
|
+
'chromium',
|
|
235
|
+
'chromium-browser',
|
|
236
|
+
'chrome',
|
|
237
|
+
'msedge.exe',
|
|
238
|
+
'chrome.exe',
|
|
239
|
+
]);
|
|
240
|
+
}
|
|
241
|
+
async waitForExternalBrowserReady(timeoutMs) {
|
|
242
|
+
const remoteDebuggingUrl = this.getNormalizedRemoteDebuggingUrl();
|
|
243
|
+
const startedAt = Date.now();
|
|
244
|
+
while (Date.now() - startedAt < timeoutMs) {
|
|
245
|
+
try {
|
|
246
|
+
const probe = await puppeteer.connect({ browserURL: remoteDebuggingUrl });
|
|
247
|
+
probe.disconnect();
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
catch {
|
|
251
|
+
await new Promise((resolve) => setTimeout(resolve, 400));
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
throw new Error(`External browser did not become ready within ${timeoutMs}ms: ${remoteDebuggingUrl}`);
|
|
255
|
+
}
|
|
256
|
+
async launchExternalBrowserProcess() {
|
|
257
|
+
const browserExecutable = this.detectBrowserExecutable();
|
|
258
|
+
if (!browserExecutable) {
|
|
259
|
+
throw new Error('Cannot find browser executable. Set EXTERNAL_BROWSER_PATH or install Chrome/Edge.');
|
|
260
|
+
}
|
|
261
|
+
const remotePort = this.getRemoteDebuggingPort();
|
|
262
|
+
const launchArgs = [
|
|
263
|
+
`--remote-debugging-port=${remotePort}`,
|
|
264
|
+
'--no-first-run',
|
|
265
|
+
'--no-default-browser-check',
|
|
266
|
+
...(this.config.userDataDir ? [`--user-data-dir=${this.config.userDataDir}`] : []),
|
|
267
|
+
...(this.config.profileDirectory ? [`--profile-directory=${this.config.profileDirectory}`] : []),
|
|
268
|
+
...(this.config.externalBrowserArgs || []),
|
|
269
|
+
];
|
|
270
|
+
logger.info(`Launching external browser: ${browserExecutable}`);
|
|
271
|
+
this.browserProcess = spawn(browserExecutable, launchArgs, {
|
|
272
|
+
detached: true,
|
|
273
|
+
stdio: 'ignore',
|
|
274
|
+
});
|
|
275
|
+
this.browserProcess.unref();
|
|
276
|
+
this.autoLaunchedExternalBrowser = true;
|
|
277
|
+
}
|
|
278
|
+
async connectExternalBrowser() {
|
|
279
|
+
const remoteDebuggingUrl = this.getNormalizedRemoteDebuggingUrl();
|
|
280
|
+
try {
|
|
281
|
+
logger.info(`Connecting to external browser: ${remoteDebuggingUrl}`);
|
|
282
|
+
return await puppeteer.connect({ browserURL: remoteDebuggingUrl });
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
logger.warn(`Failed to connect to external browser: ${remoteDebuggingUrl}`, error);
|
|
286
|
+
if (!this.config.autoLaunchExternalBrowser) {
|
|
287
|
+
throw new Error(`Cannot connect to external browser at ${remoteDebuggingUrl}. ` +
|
|
288
|
+
'Please start browser with remote debugging, then retry.');
|
|
289
|
+
}
|
|
290
|
+
await this.launchExternalBrowserProcess();
|
|
291
|
+
await this.waitForExternalBrowserReady(20000);
|
|
292
|
+
return await puppeteer.connect({ browserURL: remoteDebuggingUrl });
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
async prepareManagedPage(page) {
|
|
296
|
+
this.managedPage = page;
|
|
297
|
+
page.on('close', () => {
|
|
298
|
+
if (this.managedPage === page) {
|
|
299
|
+
this.managedPage = null;
|
|
300
|
+
}
|
|
301
|
+
});
|
|
302
|
+
await page.setUserAgent(this.userAgent);
|
|
303
|
+
await this.applyAntiDetection(page);
|
|
304
|
+
}
|
|
305
|
+
async ensureManagedPage() {
|
|
306
|
+
if (!this.browser) {
|
|
307
|
+
await this.init();
|
|
308
|
+
}
|
|
309
|
+
if (this.managedPage && !this.managedPage.isClosed()) {
|
|
310
|
+
return this.managedPage;
|
|
311
|
+
}
|
|
312
|
+
const page = await this.browser.newPage();
|
|
313
|
+
await this.prepareManagedPage(page);
|
|
314
|
+
return page;
|
|
315
|
+
}
|
|
87
316
|
async init() {
|
|
88
317
|
if (this.browser) {
|
|
89
318
|
return;
|
|
90
319
|
}
|
|
320
|
+
if (this.config.useExternalBrowser) {
|
|
321
|
+
this.browser = await this.connectExternalBrowser();
|
|
322
|
+
this.registerBrowserDisconnectHandler();
|
|
323
|
+
await this.ensureManagedPage();
|
|
324
|
+
logger.success('Connected to external browser');
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
91
327
|
logger.info('Initializing browser with anti-detection...');
|
|
92
328
|
const isHeadless = this.config.headless;
|
|
93
|
-
const
|
|
329
|
+
const launchArgs = [
|
|
94
330
|
'--no-sandbox',
|
|
95
331
|
'--disable-setuid-sandbox',
|
|
96
332
|
'--disable-dev-shm-usage',
|
|
@@ -99,53 +335,59 @@ export class CodeCollector {
|
|
|
99
335
|
'--disable-features=IsolateOrigins,site-per-process',
|
|
100
336
|
'--ignore-certificate-errors',
|
|
101
337
|
];
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
338
|
+
if (isHeadless) {
|
|
339
|
+
launchArgs.push(`--window-size=${this.viewport.width},${this.viewport.height}`);
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
launchArgs.push('--start-maximized');
|
|
343
|
+
}
|
|
105
344
|
this.browser = await puppeteer.launch({
|
|
106
345
|
headless: isHeadless,
|
|
107
|
-
args: [...(this.config.args || []), ...
|
|
346
|
+
args: [...(this.config.args || []), ...launchArgs],
|
|
108
347
|
defaultViewport: isHeadless ? this.viewport : null,
|
|
109
348
|
});
|
|
110
|
-
this.
|
|
111
|
-
logger.warn('⚠️ Browser disconnected');
|
|
112
|
-
this.browser = null;
|
|
113
|
-
if (this.cdpSession) {
|
|
114
|
-
this.cdpSession = null;
|
|
115
|
-
this.cdpListeners = {};
|
|
116
|
-
}
|
|
117
|
-
});
|
|
349
|
+
this.registerBrowserDisconnectHandler();
|
|
118
350
|
logger.success('Browser initialized with enhanced anti-detection');
|
|
119
351
|
}
|
|
120
352
|
async close() {
|
|
121
353
|
await this.clearAllData();
|
|
122
|
-
if (this.browser) {
|
|
123
|
-
|
|
354
|
+
if (!this.browser) {
|
|
355
|
+
return;
|
|
356
|
+
}
|
|
357
|
+
if (this.config.useExternalBrowser) {
|
|
358
|
+
if (this.managedPage && !this.managedPage.isClosed()) {
|
|
359
|
+
try {
|
|
360
|
+
await this.managedPage.close();
|
|
361
|
+
}
|
|
362
|
+
catch (error) {
|
|
363
|
+
logger.debug('Failed to close managed page during disconnect', error);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
this.managedPage = null;
|
|
367
|
+
this.browser.disconnect();
|
|
124
368
|
this.browser = null;
|
|
125
|
-
|
|
369
|
+
if (this.autoLaunchedExternalBrowser || this.browserProcess) {
|
|
370
|
+
logger.info('Auto-launched external browser is left running for session reuse.');
|
|
371
|
+
}
|
|
372
|
+
this.autoLaunchedExternalBrowser = false;
|
|
373
|
+
this.browserProcess = null;
|
|
374
|
+
logger.info('Disconnected from external browser; browser process left running.');
|
|
375
|
+
return;
|
|
126
376
|
}
|
|
377
|
+
await this.browser.close();
|
|
378
|
+
this.browser = null;
|
|
379
|
+
this.managedPage = null;
|
|
380
|
+
logger.info('Browser closed and all data cleared');
|
|
127
381
|
}
|
|
128
382
|
async getActivePage() {
|
|
129
|
-
|
|
130
|
-
await this.init();
|
|
131
|
-
}
|
|
132
|
-
const pages = await this.browser.pages();
|
|
133
|
-
if (pages.length === 0) {
|
|
134
|
-
return await this.browser.newPage();
|
|
135
|
-
}
|
|
136
|
-
const lastPage = pages[pages.length - 1];
|
|
137
|
-
if (!lastPage) {
|
|
138
|
-
throw new Error('Failed to get active page');
|
|
139
|
-
}
|
|
140
|
-
return lastPage;
|
|
383
|
+
return await this.ensureManagedPage();
|
|
141
384
|
}
|
|
142
385
|
async createPage(url) {
|
|
143
386
|
if (!this.browser) {
|
|
144
387
|
await this.init();
|
|
145
388
|
}
|
|
146
389
|
const page = await this.browser.newPage();
|
|
147
|
-
await
|
|
148
|
-
await this.applyAntiDetection(page);
|
|
390
|
+
await this.prepareManagedPage(page);
|
|
149
391
|
if (url) {
|
|
150
392
|
await page.goto(url, {
|
|
151
393
|
waitUntil: 'networkidle2',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeCollector.js","sourceRoot":"","sources":["../../../src/modules/collector/CodeCollector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CodeCollector.js","sourceRoot":"","sources":["../../../src/modules/collector/CodeCollector.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -31,6 +31,13 @@ export interface PuppeteerConfig {
|
|
|
31
31
|
maxFilesPerCollect?: number;
|
|
32
32
|
maxTotalContentSize?: number;
|
|
33
33
|
maxSingleFileSize?: number;
|
|
34
|
+
useExternalBrowser?: boolean;
|
|
35
|
+
remoteDebuggingUrl?: string;
|
|
36
|
+
autoLaunchExternalBrowser?: boolean;
|
|
37
|
+
externalBrowserPath?: string;
|
|
38
|
+
externalBrowserArgs?: string[];
|
|
39
|
+
userDataDir?: string;
|
|
40
|
+
profileDirectory?: string;
|
|
34
41
|
}
|
|
35
42
|
export interface MCPConfig {
|
|
36
43
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAI/C,MAAM,WAAW,MAAM;IACrB,GAAG,EAAE,SAAS,CAAC;IACf,SAAS,EAAE,eAAe,CAAC;IAC3B,GAAG,EAAE,SAAS,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,iBAAiB,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC;IACjC,MAAM,CAAC,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,SAAS,CAAC,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;CACvB;AAID,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAGvB,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,MAAM,CAAC;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,gBAAgB,GAAG,YAAY,CAAC;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,EAAE,eAAe,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,OAAO,CAAC;QACvB,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;QACxB,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;CACvC;AAID,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,eAAe,GACvB,uBAAuB,GACvB,SAAS,GACT,QAAQ,GACR,eAAe,GACf,gBAAgB,GAChB,mBAAmB,GACnB,yBAAyB,GACzB,uBAAuB,GACvB,qBAAqB,GACrB,mBAAmB,GACnB,QAAQ,GACR,UAAU,GACV,UAAU,GACV,QAAQ,GACR,kBAAkB,GAClB,iBAAiB,GACjB,cAAc,GACd,YAAY,GACZ,YAAY,GACZ,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC;CACvD;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,aAAa,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IAErB,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,iBAAiB,CAAC,EAAE;QAClB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,eAAe,EAAE;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,aAAa,CAAC;CAC7C;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,UAAU,EAAE,SAAS,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACrD,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,eAAe,GAAG,OAAO,CAAC;IACjF,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CAClC;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,KAAK,GAAG,eAAe,GAAG,MAAM,GAAG,gBAAgB,GAAG,OAAO,CAAC;IACpE,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,eAAe,CAAC;IACxG,MAAM,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;IAC9C,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;CACtB;AAID,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAID,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;CACtB;AAOD,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAKD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAKD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAKD,MAAM,WAAW,yBAAyB;IAExC,iBAAiB,EAAE,4BAA4B,CAAC;IAGhD,aAAa,EAAE,aAAa,CAAC;IAG7B,WAAW,EAAE,UAAU,EAAE,CAAC;IAG1B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAGtC,eAAe,EAAE,MAAM,EAAE,CAAC;IAG1B,KAAK,EAAE;QACL,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,uBAAuB,EAAE,MAAM,CAAC;KACjC,CAAC;IAGF,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAOD,MAAM,MAAM,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAKpF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAK/F,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAKxD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,eAAe,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAKD,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAKD,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAKD,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD,MAAM,WAAW,uBAAuB;IAEtC,OAAO,EAAE,OAAO,CAAC;IAGjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,UAAU,CAAC,EAAE,UAAU,CAAC;IAGxB,YAAY,CAAC,EAAE,aAAa,EAAE,CAAC;IAG/B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,UAAU,EAAE,MAAM,CAAC;IAGnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IAGnB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IAGnC,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAOD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IAClG,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAKD,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,UAAU,EAAE,GAAG,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAKxF,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,KAAK,CAAC;QACjB,QAAQ,EAAE;YACR,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,UAAU,EAAE,MAAM,CAAC;YACnB,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC,CAAC;IACH,iBAAiB,EAAE,MAAM,GAAG,UAAU,GAAG,KAAK,CAAC;IAC/C,QAAQ,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAKD,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAKD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAClC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAChC,EAAE,EAAE,MAAM,CAAC;YACX,SAAS,EAAE,MAAM,CAAC;YAClB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC,CAAC;KACJ;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAkGhD,wBAAgB,SAAS,IAAI,MAAM,CAuElC;AAKD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CA2BnF"}
|
package/dist/utils/config.js
CHANGED
|
@@ -18,14 +18,82 @@ else {
|
|
|
18
18
|
console.error(`[Config] Project root: ${projectRoot}`);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
+
const TRUTHY_VALUES = new Set(['1', 'true', 'yes', 'on']);
|
|
22
|
+
function parseBoolean(value, defaultValue) {
|
|
23
|
+
if (value === undefined) {
|
|
24
|
+
return defaultValue;
|
|
25
|
+
}
|
|
26
|
+
return TRUTHY_VALUES.has(value.trim().toLowerCase());
|
|
27
|
+
}
|
|
28
|
+
function parseInteger(value, defaultValue) {
|
|
29
|
+
if (value === undefined || value.trim() === '') {
|
|
30
|
+
return defaultValue;
|
|
31
|
+
}
|
|
32
|
+
const parsed = parseInt(value, 10);
|
|
33
|
+
return Number.isNaN(parsed) ? defaultValue : parsed;
|
|
34
|
+
}
|
|
35
|
+
function parseNumber(value) {
|
|
36
|
+
if (value === undefined || value.trim() === '') {
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
const parsed = Number(value);
|
|
40
|
+
return Number.isNaN(parsed) ? undefined : parsed;
|
|
41
|
+
}
|
|
42
|
+
function parseList(value) {
|
|
43
|
+
if (!value) {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
const tokens = value
|
|
47
|
+
.split(/[\r\n,;]+/)
|
|
48
|
+
.map((token) => token.trim())
|
|
49
|
+
.filter((token) => token.length > 0);
|
|
50
|
+
return tokens.length > 0 ? tokens : undefined;
|
|
51
|
+
}
|
|
52
|
+
function parseViewport(value) {
|
|
53
|
+
if (!value) {
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
const parts = value.toLowerCase().split('x').map((part) => part.trim());
|
|
57
|
+
if (parts.length !== 2 || !parts[0] || !parts[1]) {
|
|
58
|
+
return undefined;
|
|
59
|
+
}
|
|
60
|
+
const width = parseInt(parts[0], 10);
|
|
61
|
+
const height = parseInt(parts[1], 10);
|
|
62
|
+
if (Number.isNaN(width) || Number.isNaN(height)) {
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
return { width, height };
|
|
66
|
+
}
|
|
67
|
+
function parseLLMProvider(value) {
|
|
68
|
+
if (value === 'openai' || value === 'anthropic') {
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
return 'openai';
|
|
72
|
+
}
|
|
21
73
|
export function getConfig() {
|
|
22
74
|
const cacheDir = process.env.CACHE_DIR || '.cache';
|
|
23
75
|
const absoluteCacheDir = cacheDir.startsWith('/') || cacheDir.match(/^[A-Za-z]:/)
|
|
24
76
|
? cacheDir
|
|
25
77
|
: join(projectRoot, cacheDir);
|
|
78
|
+
const headless = parseBoolean(process.env.PUPPETEER_HEADLESS, false);
|
|
79
|
+
const timeout = parseInteger(process.env.PUPPETEER_TIMEOUT, 30000);
|
|
80
|
+
const args = parseList(process.env.PUPPETEER_ARGS);
|
|
81
|
+
const viewport = parseViewport(process.env.PUPPETEER_VIEWPORT);
|
|
82
|
+
const userAgent = process.env.PUPPETEER_USER_AGENT;
|
|
83
|
+
const maxCollectedUrls = parseNumber(process.env.PUPPETEER_MAX_COLLECTED_URLS);
|
|
84
|
+
const maxFilesPerCollect = parseNumber(process.env.PUPPETEER_MAX_FILES_PER_COLLECT);
|
|
85
|
+
const maxTotalContentSize = parseNumber(process.env.PUPPETEER_MAX_TOTAL_CONTENT_SIZE);
|
|
86
|
+
const maxSingleFileSize = parseNumber(process.env.PUPPETEER_MAX_SINGLE_FILE_SIZE);
|
|
87
|
+
const useExternalBrowser = parseBoolean(process.env.USE_EXTERNAL_BROWSER, false);
|
|
88
|
+
const remoteDebuggingUrl = process.env.REMOTE_DEBUGGING_URL || 'http://127.0.0.1:9222';
|
|
89
|
+
const autoLaunchExternalBrowser = parseBoolean(process.env.AUTO_LAUNCH_EXTERNAL_BROWSER, false);
|
|
90
|
+
const externalBrowserPath = process.env.EXTERNAL_BROWSER_PATH || undefined;
|
|
91
|
+
const externalBrowserArgs = parseList(process.env.EXTERNAL_BROWSER_ARGS);
|
|
92
|
+
const userDataDir = process.env.PUPPETEER_USER_DATA_DIR || undefined;
|
|
93
|
+
const profileDirectory = process.env.PUPPETEER_PROFILE_DIRECTORY || undefined;
|
|
26
94
|
return {
|
|
27
95
|
llm: {
|
|
28
|
-
provider: process.env.DEFAULT_LLM_PROVIDER
|
|
96
|
+
provider: parseLLMProvider(process.env.DEFAULT_LLM_PROVIDER),
|
|
29
97
|
openai: {
|
|
30
98
|
apiKey: process.env.OPENAI_API_KEY || '',
|
|
31
99
|
model: process.env.OPENAI_MODEL || 'gpt-4-turbo-preview',
|
|
@@ -37,21 +105,35 @@ export function getConfig() {
|
|
|
37
105
|
},
|
|
38
106
|
},
|
|
39
107
|
puppeteer: {
|
|
40
|
-
headless
|
|
41
|
-
timeout
|
|
108
|
+
headless,
|
|
109
|
+
timeout,
|
|
110
|
+
args,
|
|
111
|
+
viewport,
|
|
112
|
+
userAgent,
|
|
113
|
+
maxCollectedUrls,
|
|
114
|
+
maxFilesPerCollect,
|
|
115
|
+
maxTotalContentSize,
|
|
116
|
+
maxSingleFileSize,
|
|
117
|
+
useExternalBrowser,
|
|
118
|
+
remoteDebuggingUrl,
|
|
119
|
+
autoLaunchExternalBrowser,
|
|
120
|
+
externalBrowserPath,
|
|
121
|
+
externalBrowserArgs,
|
|
122
|
+
userDataDir,
|
|
123
|
+
profileDirectory,
|
|
42
124
|
},
|
|
43
125
|
mcp: {
|
|
44
126
|
name: process.env.MCP_SERVER_NAME || 'jshook-reverse-tool',
|
|
45
127
|
version: process.env.MCP_SERVER_VERSION || '0.1.0',
|
|
46
128
|
},
|
|
47
129
|
cache: {
|
|
48
|
-
enabled: process.env.ENABLE_CACHE
|
|
130
|
+
enabled: parseBoolean(process.env.ENABLE_CACHE, false),
|
|
49
131
|
dir: absoluteCacheDir,
|
|
50
|
-
ttl:
|
|
132
|
+
ttl: parseInteger(process.env.CACHE_TTL, 3600),
|
|
51
133
|
},
|
|
52
134
|
performance: {
|
|
53
|
-
maxConcurrentAnalysis:
|
|
54
|
-
maxCodeSizeMB:
|
|
135
|
+
maxConcurrentAnalysis: parseInteger(process.env.MAX_CONCURRENT_ANALYSIS, 3),
|
|
136
|
+
maxCodeSizeMB: parseInteger(process.env.MAX_CODE_SIZE_MB, 10),
|
|
55
137
|
},
|
|
56
138
|
};
|
|
57
139
|
}
|
package/dist/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMhD,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvD,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAChD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAIrD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAG/C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,OAAO,CAAC,KAAK,CAAC,mDAAmD,OAAO,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACvE,CAAC;KAAM,CAAC;IAEN,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,2CAA2C,OAAO,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,KAAK,CAAC,uCAAuC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,SAAS;IAEvB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,QAAQ,CAAC;IACnD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;QAC/E,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAEhC,OAAO;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-jshook/mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking",
|
|
5
5
|
"mcpName": "io.github.wuji1/jshook-reverse-tool",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"_id":"@ai-jshook/mcp","_rev":"5-586ef3216df888d8bc7111e8d28cbc67","name":"@ai-jshook/mcp","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.1":{"name":"@ai-jshook/mcp","version":"0.1.1","keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"author":{"url":"https://github.com/715494637","name":"op要喝op果奶"},"license":"MIT","_id":"@ai-jshook/mcp@0.1.1","maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"homepage":"https://github.com/715494637/jshook-reverse-tool#readme","bugs":{"url":"https://github.com/715494637/jshook-reverse-tool/issues"},"bin":{"ai-jshook-mcp":"dist/index.js"},"dist":{"shasum":"e10fc99a8ba69e1c1ea79485bfd3aac81fac0039","tarball":"https://registry.npmjs.org/@ai-jshook/mcp/-/mcp-0.1.1.tgz","fileCount":271,"integrity":"sha512-oUtQFgn2UCSdJezXK7E21U7t1L/+JcVxjCMxTyPTAGQHvmLkiqqGcbGQURLOPdJ/3K09bSCVpBo1yeAw8WIPlw==","signatures":[{"sig":"MEYCIQC1pN0QXwYxdnrEMAnzEoWQSxORTO7I0khZ8gDBxe+w4wIhALkap3jM1yGD1xItkkT9Q1413vgPUNsU6s2z3ZwmnAcg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2155823},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"bcf27c5fe3fcc51258d95b9c6109e4fac42167ff","mcpName":"io.github.715494637/ai-jshook","scripts":{"dev":"tsx watch src/index.ts","lint":"eslint src --ext .ts","test":"jest","build":"tsc","check":"npm run lint && npm run build && npm run verify","start":"node dist/index.js","format":"prettier --write \"src/**/*.ts\"","verify":"tsx scripts/verify-modules.ts","package":"npm run build && npm pack","test:watch":"jest --watch","verify:build":"npm run build && npm run verify","test:integration":"jest tests/integration"},"_npmUser":{"name":"opooo1830","email":"dypbing2@outlook.com"},"repository":{"url":"git+https://github.com/715494637/jshook-reverse-tool.git","type":"git"},"_npmVersion":"10.9.3","description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"ora":"^8.1.1","chalk":"^5.4.1","dotenv":"^16.4.7","openai":"^4.73.0","commander":"^12.1.0","puppeteer":"^23.10.4","@babel/types":"^7.26.3","@babel/parser":"^7.26.3","@babel/traverse":"^7.26.5","puppeteer-extra":"^3.3.6","@babel/generator":"^7.26.5","@anthropic-ai/sdk":"^0.32.1","@modelcontextprotocol/sdk":"^1.0.4","puppeteer-extra-plugin-stealth":"^2.11.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","jest":"^29.7.0","eslint":"^9.17.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.2","@types/babel__traverse":"^7.20.6","@types/babel__generator":"^7.6.8","@typescript-eslint/parser":"^8.19.1","@typescript-eslint/eslint-plugin":"^8.19.1"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.1_1770052408283_0.5220915907496415","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@ai-jshook/mcp","version":"0.1.2","keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"author":{"url":"https://github.com/wuji1","name":"wuji1"},"license":"MIT","_id":"@ai-jshook/mcp@0.1.2","maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"homepage":"https://github.com/wuji1/jshook-reverse-tool#readme","bugs":{"url":"https://github.com/wuji1/jshook-reverse-tool/issues"},"bin":{"ai-jshook-mcp":"dist/index.js"},"dist":{"shasum":"20fcf33691ea0e4aacdd07c1678dabd83934fb24","tarball":"https://registry.npmjs.org/@ai-jshook/mcp/-/mcp-0.1.2.tgz","fileCount":269,"integrity":"sha512-Az9O83hyLbat/q52HoDMUdY68a324mapSqTaENChJhTZlY86jZDgF+oRLwFOx8CMoIjZx7nQ7UO3lkdlaSCFHA==","signatures":[{"sig":"MEYCIQDoTd6/ErENS5NjYtbNgARmJGljKvqarliyqlMegKPnUAIhAJCFHY2YXBk1YikYdhlsFkFipHHWVd9XQCFcyq/4dMrw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1980608},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"mcpName":"io.github.wuji1/jshook-reverse-tool","scripts":{"dev":"tsx watch src/index.ts","lint":"eslint src --ext .ts","test":"jest","build":"node ./node_modules/typescript/bin/tsc","check":"npm run lint && npm run build && npm run verify","start":"node dist/index.js","format":"prettier --write \"src/**/*.ts\"","verify":"tsx scripts/verify-modules.ts","package":"npm run build && npm pack","prepare":"npm run build","test:watch":"jest --watch","verify:build":"npm run build && npm run verify","prepublishOnly":"npm run build","test:integration":"jest tests/integration"},"_npmUser":{"name":"opooo1830","email":"dypbing2@outlook.com"},"repository":{"url":"git+https://github.com/wuji1/jshook-reverse-tool.git","type":"git"},"_npmVersion":"10.9.3","description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"ora":"^8.1.1","chalk":"^5.4.1","dotenv":"^16.4.7","openai":"^4.73.0","commander":"^12.1.0","puppeteer":"^23.10.4","@babel/types":"^7.26.3","@babel/parser":"^7.26.3","@babel/traverse":"^7.26.5","puppeteer-extra":"^3.3.6","@babel/generator":"^7.26.5","@anthropic-ai/sdk":"^0.32.1","@modelcontextprotocol/sdk":"^1.0.4","puppeteer-extra-plugin-stealth":"^2.11.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","jest":"^29.7.0","eslint":"^9.17.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.2","@types/babel__traverse":"^7.20.6","@types/babel__generator":"^7.6.8","@typescript-eslint/parser":"^8.19.1","@typescript-eslint/eslint-plugin":"^8.19.1"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.2_1772120997684_0.26648400528341765","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@ai-jshook/mcp","version":"0.1.3","keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"author":{"url":"https://www.npmjs.com/~opooo1830","name":"opooo1830"},"license":"MIT","_id":"@ai-jshook/mcp@0.1.3","maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"homepage":"https://github.com/715494637/jshook-reverse-tool#readme","bugs":{"url":"https://github.com/715494637/jshook-reverse-tool/issues"},"bin":{"ai-jshook-mcp":"dist/index.js"},"dist":{"shasum":"5a4e9c7f0296804078d6fbb21aa009c6bf52528f","tarball":"https://registry.npmjs.org/@ai-jshook/mcp/-/mcp-0.1.3.tgz","fileCount":269,"integrity":"sha512-Pbs4os9JX4g5WaS6ihSRa8c3ZUp5GRjrJp6v3KMd4fQqZtjeXxkvp/8+Sdsg2BGuEf6lgMbbC9Exq0RCvgzGPg==","signatures":[{"sig":"MEYCIQDs1ACf5yX/fr6NQA9heTuQsJ73F/lU4tRQddYul6EnlAIhANJutusmyf0N2kJZ3JuSVs4SE8t7dDmhlv3qUfDAiKVh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1980351},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"mcpName":"io.github.ai-jshook.mcp","scripts":{"dev":"tsx watch src/index.ts","lint":"eslint src --ext .ts","test":"jest","build":"node ./node_modules/typescript/bin/tsc","check":"npm run lint && npm run build && npm run verify","start":"node dist/index.js","format":"prettier --write \"src/**/*.ts\"","verify":"tsx scripts/verify-modules.ts","package":"npm run build && npm pack","prepare":"npm run build","test:watch":"jest --watch","verify:build":"npm run build && npm run verify","prepublishOnly":"npm run build","test:integration":"jest tests/integration"},"_npmUser":{"name":"opooo1830","email":"dypbing2@outlook.com"},"repository":{"url":"git+https://github.com/715494637/jshook-reverse-tool.git","type":"git"},"_npmVersion":"10.9.3","description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"ora":"^8.1.1","chalk":"^5.4.1","dotenv":"^16.4.7","openai":"^4.73.0","commander":"^12.1.0","puppeteer":"^23.10.4","@babel/types":"^7.26.3","@babel/parser":"^7.26.3","@babel/traverse":"^7.26.5","puppeteer-extra":"^3.3.6","@babel/generator":"^7.26.5","@anthropic-ai/sdk":"^0.32.1","@modelcontextprotocol/sdk":"^1.0.4","puppeteer-extra-plugin-stealth":"^2.11.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","jest":"^29.7.0","eslint":"^9.17.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.2","@types/babel__traverse":"^7.20.6","@types/babel__generator":"^7.6.8","@typescript-eslint/parser":"^8.19.1","@typescript-eslint/eslint-plugin":"^8.19.1"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.3_1772121329947_0.7653262708012505","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@ai-jshook/mcp","version":"0.1.4","keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"author":{"url":"https://www.npmjs.com/~opooo1830","name":"opooo1830"},"license":"MIT","_id":"@ai-jshook/mcp@0.1.4","maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"homepage":"https://github.com/715494637/jshook-reverse-tool#readme","bugs":{"url":"https://github.com/715494637/jshook-reverse-tool/issues"},"bin":{"ai-jshook-mcp":"dist/index.js"},"dist":{"shasum":"1159098f9eeb298762522d075e71bac37280e983","tarball":"https://registry.npmjs.org/@ai-jshook/mcp/-/mcp-0.1.4.tgz","fileCount":269,"integrity":"sha512-WbEVKf1bxk+tgUo543jKpbRdsqk6/CZWbxNnnMqpilQPYeyfPLw8dMaAKyDnp8xNT88M1RTL5EM4aTEc8Ha5WA==","signatures":[{"sig":"MEYCIQDSZe5n0KzGuBvYOp+sSh2R3iQMzK/zXwe+PpHx6pDKGAIhAP6upoC5ifhG3AYK85ecAX56Pl73dkdmzkxCR77ge2qy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1976777},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"5e6c46e08d008405facfe05420faf614aa3c7470","mcpName":"io.github.ai-jshook.mcp","scripts":{"dev":"tsx watch src/index.ts","lint":"eslint src --ext .ts","test":"jest","build":"node ./node_modules/typescript/lib/tsc.js","check":"npm run lint && npm run build && npm run verify","start":"node dist/index.js","format":"prettier --write \"src/**/*.ts\"","verify":"tsx scripts/verify-modules.ts","package":"npm run build && npm pack","prepare":"npm run build","test:watch":"jest --watch","verify:build":"npm run build && npm run verify","prepublishOnly":"npm run build","test:integration":"jest tests/integration"},"_npmUser":{"name":"opooo1830","email":"dypbing2@outlook.com"},"repository":{"url":"git+https://github.com/715494637/jshook-reverse-tool.git","type":"git"},"_npmVersion":"10.9.3","description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","directories":{},"_nodeVersion":"22.19.0","dependencies":{"ora":"^8.1.1","chalk":"^5.4.1","dotenv":"^16.4.7","openai":"^4.73.0","commander":"^12.1.0","puppeteer":"^23.10.4","@babel/types":"^7.26.3","@babel/parser":"^7.26.3","@babel/traverse":"^7.26.5","puppeteer-extra":"^3.3.6","@babel/generator":"^7.26.5","@anthropic-ai/sdk":"^0.32.1","@modelcontextprotocol/sdk":"^1.0.4","puppeteer-extra-plugin-stealth":"^2.11.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.6","jest":"^29.7.0","eslint":"^9.17.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","prettier":"^3.4.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.2","@types/babel__traverse":"^7.20.6","@types/babel__generator":"^7.6.8","@typescript-eslint/parser":"^8.19.1","@typescript-eslint/eslint-plugin":"^8.19.1"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.4_1772279722300_0.10094111033585573","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@ai-jshook/mcp","version":"0.1.5","description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","mcpName":"io.github.ai-jshook.mcp","main":"dist/index.js","type":"module","bin":{"ai-jshook-mcp":"dist/index.js"},"repository":{"type":"git","url":"git+https://github.com/715494637/jshook-reverse-tool.git"},"bugs":{"url":"https://github.com/715494637/jshook-reverse-tool/issues"},"homepage":"https://github.com/715494637/jshook-reverse-tool#readme","scripts":{"build":"node ./node_modules/typescript/lib/tsc.js","dev":"tsx watch src/index.ts","start":"node dist/index.js","test":"jest","test:integration":"jest tests/integration","test:watch":"jest --watch","verify":"tsx scripts/verify-modules.ts","verify:build":"npm run build && npm run verify","lint":"eslint src --ext .ts","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","check":"npm run lint && npm run build && npm run verify","package":"npm run build && npm pack","prepublishOnly":"npm run build"},"keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"author":{"name":"opooo1830","url":"https://www.npmjs.com/~opooo1830"},"license":"MIT","dependencies":{"@anthropic-ai/sdk":"^0.32.1","@babel/generator":"^7.26.5","@babel/parser":"^7.26.3","@babel/traverse":"^7.26.5","@babel/types":"^7.26.3","@modelcontextprotocol/sdk":"^1.0.4","chalk":"^5.4.1","commander":"^12.1.0","dotenv":"^16.4.7","openai":"^4.73.0","ora":"^8.1.1","puppeteer":"^23.10.4","puppeteer-extra":"^3.3.6","puppeteer-extra-plugin-user-preferences":"^2.4.1","puppeteer-extra-plugin-stealth":"^2.11.2"},"devDependencies":{"@types/babel__generator":"^7.6.8","@types/babel__traverse":"^7.20.6","@types/jest":"^29.5.14","@types/node":"^22.10.2","@typescript-eslint/eslint-plugin":"^8.19.1","@typescript-eslint/parser":"^8.19.1","eslint":"^9.17.0","jest":"^29.7.0","nodemon":"^3.1.9","prettier":"^3.4.2","ts-jest":"^29.2.5","tsx":"^4.20.6","typescript":"^5.7.2"},"engines":{"node":">=18.0.0"},"types":"./dist/index.d.ts","_id":"@ai-jshook/mcp@0.1.5","gitHead":"5e6c46e08d008405facfe05420faf614aa3c7470","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-NmzU5cHjOEg8AuRZ+3kWm/gr0mK0TnVTiSXQyYfcP0FvFkv4h75tzCoDm/my5q6OdZSHglhHwh6GcXldzbd2GQ==","shasum":"93c99d68c797e747c5b0bb31c132d1eb48e53396","tarball":"https://registry.npmjs.org/@ai-jshook/mcp/-/mcp-0.1.5.tgz","fileCount":269,"unpackedSize":1976838,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDLZZ9Av8qymcZgIJFaG3X06ZGvovUfODil9MSPmgzbwAIgJDoJw3ZF2IiERRwqEoE5rMptctqBdMsDCOFXyVwF4Sk="}]},"_npmUser":{"name":"opooo1830","email":"dypbing2@outlook.com"},"directories":{},"maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.1.5_1772282816766_0.6603868553255527"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-02T17:13:28.175Z","modified":"2026-02-28T12:46:57.141Z","0.1.1":"2026-02-02T17:13:28.497Z","0.1.2":"2026-02-26T15:49:57.895Z","0.1.3":"2026-02-26T15:55:30.336Z","0.1.4":"2026-02-28T11:55:22.488Z","0.1.5":"2026-02-28T12:46:57.015Z"},"bugs":{"url":"https://github.com/715494637/jshook-reverse-tool/issues"},"author":{"name":"opooo1830","url":"https://www.npmjs.com/~opooo1830"},"license":"MIT","homepage":"https://github.com/715494637/jshook-reverse-tool#readme","keywords":["mcp","model-context-protocol","javascript","reverse-engineering","hook","hooking","deobfuscation","ai","claude","puppeteer","chrome-devtools","debugger","web-scraping","anti-detection","captcha","browser-automation","network-monitoring","ast","obfuscation","cryptography-detection","code-analysis"],"repository":{"type":"git","url":"git+https://github.com/715494637/jshook-reverse-tool.git"},"description":"AI-powered JavaScript reverse engineering tool with 80+ MCP tools for browser automation, debugging, network monitoring, and intelligent hooking","maintainers":[{"name":"opooo1830","email":"dypbing2@outlook.com"}],"readme":"# JSHook Reverse Tool\n\n<div align=\"center\">\n\n** AI-Powered JavaScript Reverse Engineering Tool**\n\n让 AI 助手成为你的浏览器逆向专家 | Let AI be your browser reverse engineering expert\n\n[](https://www.npmjs.com/package/@ai-jshook/mcp)\n[](https://www.npmjs.com/package/@ai-jshook/mcp)\n[](https://registry.modelcontextprotocol.io/servers/io.github.ai-jshook.mcp)\n[](https://opensource.org/licenses/MIT)\n[](https://nodejs.org/)\n[](https://www.typescriptlang.org/)\n[](https://modelcontextprotocol.io/)\n\n[快速开始](#快速开始) • [核心功能](#核心功能) • [使用场景](#使用场景) • [文档](#文档)\n\n</div>\n\n---\n\n## ⚡ 一键安装\n\n### 从 npm 安装\n\n```bash\n# 使用 npx(无需安装)\nnpx -y @ai-jshook/mcp\n\n# 或全局安装\nnpm install -g @ai-jshook/mcp\n```\n\n### 从 MCP Registry 安装(推荐)\n\n本工具已发布到 [MCP 官方注册表](https://registry.modelcontextprotocol.io/servers/io.github.ai-jshook.mcp),支持 Claude Desktop 等 MCP 客户端直接发现和安装。\n\n在支持 MCP Registry 的客户端中搜索 `ai-jshook-mcp` 即可找到并安装。\n\n配置 Claude Desktop 后即可使用 80+ 专业逆向工具 → [查看配置教程](#快速开始)\n\n---\n\n## 什么是 JSHook?\n\nJSHook 是一个基于 **MCP (Model Context Protocol)** 的 JavaScript 逆向工程工具,通过 **80+ 个专业工具**,让 Claude、ChatGPT 等 AI 助手能够自动化完成复杂的网页分析、调试和逆向任务。\n\n### 为什么选择 JSHook?\n\n- **AI 原生设计** - 专为 AI 助手优化,自然语言即可操作\n- **反检测能力** - 集成 2024-2025 最新反爬虫技术\n- **深度调试** - Chrome DevTools Protocol 完整集成\n- **网络拦截** - 捕获所有 HTTP 请求/响应\n- **智能 Hook** - AI 自动生成 Hook 代码\n- **验证码识别** - AI 视觉识别各类验证码\n\n---\n\n## 核心功能\n\n### 1. 浏览器自动化 (35 个工具)\n\n完整的浏览器控制能力,从页面导航到 DOM 操作,从截图到设备模拟。\n\n```javascript\n// 示例:自动化登录流程\nbrowser_launch()\nstealth_inject() // 注入反检测脚本\npage_navigate(url=\"https://example.com/login\")\npage_type(selector=\"#username\", text=\"user@example.com\")\npage_type(selector=\"#password\", text=\"********\")\npage_click(selector=\"#loginBtn\")\n```\n\n**亮点功能**:\n- ✅ 2024-2025 最新反检测技术(隐藏 webdriver、Canvas指纹处理)\n- ✅ AI 视觉验证码识别(滑块/图形/reCAPTCHA)\n- ✅ 智能等待和自动重试\n- ✅ 移动设备模拟\n\n### 2. 专业调试器 (38 个工具)\n\n基于 Chrome DevTools Protocol,提供 IDE 级别的调试能力。\n\n```javascript\n// 示例:调试加密算法\ndebugger_enable()\n\n// 在所有加密API调用处暂停\nxhr_breakpoint_set(urlPattern=\"*/api/sign*\")\nevent_breakpoint_set(eventName=\"fetch\")\n\n// 监控关键变量\nwatch_add(expression=\"window.crypto_params\", name=\"加密参数\")\n\n// 等待断点命中\ndebugger_wait_for_paused()\nget_call_stack() // 查看调用栈\nwatch_evaluate_all() // 查看所有监控变量\n```\n\n**亮点功能**:\n- ✅ 代码断点、条件断点、异常断点\n- ✅ XHR/Fetch 断点(拦截网络请求)\n- ✅ 事件断点(点击、定时器、WebSocket)\n- ✅ Watch 表达式、调用栈分析\n- ✅ Blackboxing(屏蔽第三方库)\n- ✅ 调试会话保存/加载\n\n### 3. 网络监控 (6 个工具)\n\n捕获和分析所有 HTTP 流量,支持请求过滤和响应解析。\n\n```javascript\n// 示例:分析 API 请求\nnetwork_enable()\npage_navigate(url=\"https://api.example.com\")\n\n// 过滤包含 \"api\" 的请求\nnetwork_get_requests(url=\"api\", method=\"POST\")\n\n// 查看响应体\nnetwork_get_response_body(requestId=\"xxx\")\n\n// 统计分析\nnetwork_get_stats()\n```\n\n**亮点功能**:\n- ✅ 捕获请求头、POST 数据、响应体\n- ✅ 智能过滤(URL、方法、类型)\n- ✅ 统计分析(请求数、失败率、耗时)\n\n### 4. AI Hook 生成器 (7 个工具)\n\n用自然语言描述需求,AI 自动生成专业的 Hook 代码。\n\n```javascript\n// 示例:Hook Fetch API\nai_hook_generate({\n description: \"监控所有 API 请求,记录 URL 和参数\",\n target: { type: \"api\", name: \"fetch\" },\n behavior: {\n captureArgs: true,\n captureReturn: true,\n logToConsole: true\n },\n condition: {\n urlPattern: \".*api.*\"\n }\n})\n\n// 注入 Hook(必须在页面加载前)\nai_hook_inject(hookId=\"fetch-hook\", method=\"evaluateOnNewDocument\")\n\n// 获取捕获的数据\nai_hook_get_data(hookId=\"fetch-hook\")\n```\n\n**支持的 Hook 类型**:\n- 🎯 函数 Hook(`btoa`, `atob`, `eval`)\n- 🎯 API Hook(`fetch`, `XMLHttpRequest`, `WebSocket`)\n- 🎯 对象方法(`crypto.subtle.encrypt`)\n- 🎯 属性拦截、事件监听\n\n### 5. 性能分析 (4 个工具)\n\nWeb Vitals 指标、代码覆盖率、内存快照。\n\n```javascript\nperformance_get_metrics(includeTimeline=true)\nperformance_start_coverage() // 启动覆盖率收集\n// ... 操作页面 ...\nperformance_stop_coverage() // 获取未使用的代码\nperformance_take_heap_snapshot() // 内存分析\n```\n\n### 6. 缓存与预算管理 (6 个工具)\n\n智能管理 Token 预算和缓存,防止上下文溢出。\n\n```javascript\nget_token_budget_stats() // 查看 Token 使用情况\nget_cache_stats() // 查看缓存统计\n\n// Token 使用率 > 80% 时\nmanual_token_cleanup() // 清理 Token\nsmart_cache_cleanup() // 智能清理缓存\n```\n\n---\n\n## 使用场景\n\n### 🔓 网页逆向\n\n- 分析混淆加密的 JavaScript 代码\n- 定位加密算法和签名生成逻辑\n- 提取 API 请求参数\n\n### 🕷️ 爬虫开发\n\n- 突破反爬虫检测(webdriver、Canvas指纹)\n- 自动处理验证码(滑块/图形/reCAPTCHA)\n- 捕获动态加载数据\n\n### 🛡️ 安全测试\n\n- 漏洞挖掘和渗透测试\n- XSS/CSRF 检测\n- API 安全分析\n\n### ⚡ 性能优化\n\n- 识别无用代码(代码覆盖率)\n- 分析加载性能(Web Vitals)\n- 内存泄漏检测\n\n---\n\n## 快速开始\n\n### 环境要求\n\n- **Node.js**: >= 18.0.0\n- **操作系统**: Windows / macOS / Linux\n- **LLM API**: OpenAI 或 Anthropic API Key\n\n### 安装方式\n\n#### 方式一:直接使用 npx(推荐)⭐\n\n无需安装,直接配置即可使用。编辑 Claude Desktop 配置文件 `claude_desktop_config.json`:\n\n```json\n{\n \"mcpServers\": {\n \"jshook\": {\n \"command\": \"npx\",\n \"args\": [\"-y\", \"@ai-jshook/mcp\"],\n \"env\": {\n \"OPENAI_API_KEY\": \"sk-...\",\n \"DEFAULT_LLM_PROVIDER\": \"openai\"\n }\n }\n }\n}\n```\n\n#### 方式二:全局安装\n\n```bash\nnpm install -g @ai-jshook/mcp\n```\n\n配置文件:\n```json\n{\n \"mcpServers\": {\n \"jshook\": {\n \"command\": \"ai-jshook-mcp\",\n \"env\": {\n \"OPENAI_API_KEY\": \"sk-...\",\n \"DEFAULT_LLM_PROVIDER\": \"openai\"\n }\n }\n }\n}\n```\n\n#### 方式三:从源码安装(开发者)\n\n```bash\ngit clone https://github.com/715494637/jshook-reverse-tool.git\ncd jshook-reverse-tool\nnpm install\nnpm run build\n```\n\n配置文件:\n```json\n{\n \"mcpServers\": {\n \"jshook\": {\n \"command\": \"node\",\n \"args\": [\"C:/path/to/jshook/dist/index.js\"],\n \"env\": {\n \"OPENAI_API_KEY\": \"sk-...\",\n \"DEFAULT_LLM_PROVIDER\": \"openai\"\n }\n }\n }\n}\n```\n\n### 环境变量配置\n\n在 MCP 配置的 `env` 字段中设置以下变量:\n\n**必需配置**:\n```json\n{\n \"OPENAI_API_KEY\": \"sk-...\", // OpenAI API Key\n \"DEFAULT_LLM_PROVIDER\": \"openai\" // 使用 openai\n}\n```\n\n或使用 Anthropic:\n```json\n{\n \"ANTHROPIC_API_KEY\": \"sk-ant-...\", // Anthropic API Key\n \"DEFAULT_LLM_PROVIDER\": \"anthropic\" // 使用 anthropic\n}\n```\n\n**可选配置**:\n```json\n{\n \"PUPPETEER_HEADLESS\": \"false\", // 是否无头模式\n \"PUPPETEER_TIMEOUT\": \"30000\", // 超时时间(毫秒)\n \"ENABLE_CACHE\": \"true\", // 启用缓存\n \"LOG_LEVEL\": \"info\" // 日志级别\n}\n```\n\n### 启动使用\n\n重启 Claude Desktop,现在可以使用自然语言调用 JSHook 的所有工具了!\n\n```\n你:帮我分析 https://example.com 的加密算法\n\nClaude:\n1. 启动浏览器并注入反检测脚本\n2. 访问目标网站\n3. 获取所有脚本,查找加密相关代码\n4. 设置断点拦截加密函数调用\n5. 分析加密逻辑...\n```\n\n---\n\n## 典型工作流\n\n### 场景 1: 分析加密算法\n\n```\n用户:帮我分析 https://api.example.com 的签名算法\n\nAI 自动执行:\n1. browser_launch() + stealth_inject()\n2. network_enable() + debugger_enable()\n3. page_navigate(\"https://api.example.com\")\n4. get_all_scripts() → 找到可疑脚本\n5. xhr_breakpoint_set(urlPattern=\"*/api/*\") → 拦截 API 请求\n6. watch_add(\"window.signParams\") → 监控签名参数\n7. 触发请求 → debugger_wait_for_paused()\n8. 分析调用栈和变量 → 定位签名算法\n```\n\n### 场景 2: 验证码自动检测\n\n```\n用户:访问 https://login.example.com 并告诉我是否有验证码\n\nAI 自动执行:\n1. browser_launch()\n2. page_navigate(\"https://login.example.com\")\n3. captcha_detect() → AI 视觉识别\n → 返回: { detected: true, type: \"slider\", vendor: \"geetest\" }\n4. captcha_wait(timeout=300000) → 等待用户完成\n```\n\n### 场景 3: Hook API 调用\n\n```\n用户:监控所有 Fetch 请求,记录 URL 和参数\n\nAI 自动执行:\n1. ai_hook_generate({\n description: \"监控所有 Fetch 请求\",\n target: { type: \"api\", name: \"fetch\" },\n behavior: { captureArgs: true, captureReturn: true }\n })\n2. ai_hook_inject(method=\"evaluateOnNewDocument\")\n3. page_navigate(\"https://target.com\")\n4. 用户操作页面...\n5. ai_hook_get_data() → 获取所有捕获的请求\n```\n\n---\n\n## 项目结构\n\n```\njshook-reverse-tool/\n├── src/\n│ ├── index.ts # MCP 服务器入口\n│ ├── server/\n│ │ ├── MCPServer.ts # 主服务器类\n│ │ ├── *ToolDefinitions.ts # 工具定义\n│ │ └── *ToolHandlers.ts # 工具实现\n│ ├── modules/ # 核心模块\n│ │ ├── collector/ # 浏览器自动化\n│ │ ├── debugger/ # 调试器\n│ │ ├── hook/ # Hook 管理\n│ │ ├── crypto/ # 加密检测\n│ │ └── captcha/ # 验证码识别\n│ ├── services/\n│ │ └── LLMService.ts # AI 服务封装\n│ └── utils/ # 工具函数\n├── docs/ # 文档\n│ ├── MCP功能介绍.md # 完整功能文档\n│ ├── 技术文档.md # 技术实现细节\n│ └── 浏览器逆向实战教程.md # 实战案例\n├── test/ # 测试用例\n└── package.json\n```\n\n---\n\n## 开发命令\n\n```bash\n# 开发模式(自动重启)\nnpm run dev\n\n# 构建项目\nnpm run build\n\n# 运行测试\nnpm test\n\n# 代码检查\nnpm run lint\n\n# 格式化代码\nnpm run format\n\n# 完整检查(lint + build + verify)\nnpm run check\n```\n\n---\n\n## 文档\n\n- 📘 [MCP 功能介绍](./docs/MCP功能介绍.md) - 80+ 工具完整说明\n- 📗 [浏览器逆向实战教程](./docs/浏览器逆向实战教程.md) - 实战案例\n\n---\n\n## 常见问题\n\n### Q: 网络监控没有捕获到请求?\n\n**A**: 必须在 `page_navigate` **前**调用 `network_enable()`,或使用:\n```javascript\npage_navigate(url=\"...\", enableNetworkMonitoring=true)\n```\n\n### Q: 验证码检测失败?\n\n**A**: 确保使用支持 Vision API 的模型(GPT-4o、Claude 3.5 Sonnet)。如果使用不支持视觉的模型(如 DeepSeek),会返回截图让你手动分析。\n\n### Q: Token 用完了怎么办?\n\n**A**:\n```javascript\nmanual_token_cleanup() // 清理 Token\nsmart_cache_cleanup() // 智能清理缓存\nclear_all_caches() // 完全重置(慎用)\n```\n\n### Q: 如何跳过第三方库代码?\n\n**A**:\n```javascript\nblackbox_add_common() // 一键屏蔽常见库\n// 或手动添加\nblackbox_add(urlPattern=\"*jquery*\")\n```\n\n---\n\n## 安全与法律\n\nJSHook 是一个**合法的逆向工程和安全研究工具**。\n\n### ✅ 合法使用场景\n\n- 渗透测试授权项目\n- 安全研究和漏洞分析\n- CTF 竞赛和教育培训\n- 自己网站的性能优化\n- 爬虫开发和调试\n\n### ❌ 禁止用途\n\n- 未授权的攻击和破解\n- 大规模爬取他人数据\n- 绕过付费墙和版权保护\n- DoS 攻击和供应链投毒\n\n**使用本工具即表示你理解并遵守相关法律法规。**\n\n---\n\n## 技术栈\n\n- **运行时**: Node.js 18+, TypeScript 5.0+\n- **浏览器自动化**: Puppeteer, Chrome DevTools Protocol\n- **AI 集成**: OpenAI API, Anthropic API\n- **MCP 协议**: @modelcontextprotocol/sdk\n- **AST 处理**: @babel/parser, @babel/traverse\n- **测试**: Jest\n\n---\n\n## 贡献\n\n欢迎贡献代码、报告问题或提出建议!\n\n\n\n\n1. Fork 本仓库\n2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)\n3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)\n4. 推送到分支 (`git push origin feature/AmazingFeature`)\n5. 打开 Pull Request\n\n---\n\n## 许可证\n\n本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件\n\n---\n\n## 致谢\n\n- [Puppeteer](https://github.com/puppeteer/puppeteer) - 浏览器自动化\n- [Chrome DevTools Protocol](https://chromedevtools.github.io/devtools-protocol/) - 调试协议\n- [Model Context Protocol](https://modelcontextprotocol.io/) - AI 工具协议\n- [Babel](https://babeljs.io/) - JavaScript 编译器\n\n---\n\n<div align=\"center\">\n\n**如果这个项目对你有帮助,请给一个 ⭐ Star!**\n\nMade with ❤️ by JSHook Team\n\n</div>\n","readmeFilename":"README.md"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"username":"opooo1830"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
9048394b5c5b913313170efca8d0a16f79c60e5e {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/@ai-jshook%2fmcp","integrity":"sha512-HtEWi1g6+v0uphYmpqCTFo9irCKcXdM/xoTe1RZSPohRa9hTQoHNpHmIOy/hWqz1TR7VPWeXzV8gB3r7LZReDg==","time":1772289899767,"size":31871,"metadata":{"time":1772289898942,"url":"https://registry.npmjs.org/@ai-jshook%2fmcp","reqHeaders":{"accept":"application/json"},"resHeaders":{"cache-control":"public, max-age=300","content-encoding":"gzip","content-type":"application/json","date":"Sat, 28 Feb 2026 14:45:00 GMT","etag":"W/\"b7ed5cfa39ba817da927983214bc73b1\"","last-modified":"Sat, 28 Feb 2026 12:46:58 GMT","vary":"accept-encoding, accept"},"options":{"compress":true}}}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
e1771189aba05c5a533ae0e89fb5a9203b24ce1c {"key":"make-fetch-happen:request-cache:https://registry.npmjs.org/-/whoami","integrity":"sha512-kX1AzVwDjOU/Kwb8ViKKnt62sjBCI0XOS+9Aa8/QKnyv2cnuXCtbhH2/6kqmE6W84uYnodSdo6OEd437RJpVVg==","time":1772289899030,"size":24,"metadata":{"time":1772289899007,"url":"https://registry.npmjs.org/-/whoami","reqHeaders":{},"resHeaders":{"content-type":"application/json","date":"Sat, 28 Feb 2026 14:45:00 GMT","vary":"Accept-Encoding"},"options":{"compress":true}}}
|
|
File without changes
|