cerevox 0.1.1 → 0.1.2
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/cli/cerevox-mcp.d.ts +3 -0
- package/dist/cli/cerevox-mcp.d.ts.map +1 -0
- package/dist/cli/cerevox-mcp.js +414 -0
- package/dist/cli/cerevox-mcp.js.map +1 -0
- package/dist/cli/cerevox-run.js +1 -1
- package/dist/cli/cerevox-run.js.map +1 -1
- package/dist/core/cerevox.d.ts.map +1 -1
- package/dist/core/cerevox.js +6 -3
- package/dist/core/cerevox.js.map +1 -1
- package/dist/core/code-runner.d.ts +7 -7
- package/dist/core/code-runner.d.ts.map +1 -1
- package/dist/core/code-runner.js +76 -21
- package/dist/core/code-runner.js.map +1 -1
- package/dist/core/session.d.ts +1 -0
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +12 -5
- package/dist/core/session.js.map +1 -1
- package/dist/core/terminal.d.ts +0 -1
- package/dist/core/terminal.d.ts.map +1 -1
- package/dist/core/terminal.js +9 -2
- package/dist/core/terminal.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cerevox-mcp.d.ts","sourceRoot":"","sources":["../../src/cli/cerevox-mcp.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
/*
|
|
4
|
+
* MCP Server
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
11
|
+
const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
12
|
+
const zod_1 = require("zod");
|
|
13
|
+
const index_1 = __importDefault(require("../index"));
|
|
14
|
+
const open_1 = __importDefault(require("open"));
|
|
15
|
+
/* Configuration
|
|
16
|
+
{
|
|
17
|
+
"mcpServers": {
|
|
18
|
+
"cerevox-run-code": {
|
|
19
|
+
"command": "npx",
|
|
20
|
+
"args": ["-y", "cerevox-mcp"],
|
|
21
|
+
"env": {
|
|
22
|
+
"CEREVOX_API_KEY": "ck-**************"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
*/
|
|
28
|
+
// Create an MCP server
|
|
29
|
+
const server = new mcp_js_1.McpServer({
|
|
30
|
+
name: 'Cerevox Server',
|
|
31
|
+
version: '0.4.1',
|
|
32
|
+
});
|
|
33
|
+
const cerevox = new index_1.default({
|
|
34
|
+
apiKey: process.env.CEREVOX_API_KEY || '',
|
|
35
|
+
logLevel: 'error',
|
|
36
|
+
});
|
|
37
|
+
let session = null;
|
|
38
|
+
let liveviewOpened = false;
|
|
39
|
+
server.tool('cerevox-launch', 'Launch a new Cerevox session with a Chromium browser instance.', async () => {
|
|
40
|
+
session = await cerevox.launch({
|
|
41
|
+
browser: {
|
|
42
|
+
liveview: true,
|
|
43
|
+
},
|
|
44
|
+
keepAliveMS: 10000,
|
|
45
|
+
timeoutMS: 3600000,
|
|
46
|
+
});
|
|
47
|
+
return {
|
|
48
|
+
content: [
|
|
49
|
+
{
|
|
50
|
+
type: 'text',
|
|
51
|
+
text: JSON.stringify({
|
|
52
|
+
sessionId: session.id,
|
|
53
|
+
}),
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
};
|
|
57
|
+
});
|
|
58
|
+
server.tool('cerevox-close', 'Close the current Cerevox session and release all resources.', async () => {
|
|
59
|
+
if (session) {
|
|
60
|
+
await session.close();
|
|
61
|
+
session = null;
|
|
62
|
+
liveviewOpened = false;
|
|
63
|
+
}
|
|
64
|
+
return {
|
|
65
|
+
content: [{ type: 'text', text: 'Cerevox session closed' }],
|
|
66
|
+
};
|
|
67
|
+
});
|
|
68
|
+
server.tool('cerevox-look-at-page', `Visually examine and analyze a web page by capturing a screenshot and gathering initial observations.
|
|
69
|
+
|
|
70
|
+
This is the first step in the three-phase workflow: Look → Plan → Action
|
|
71
|
+
|
|
72
|
+
**IMPORTANT: This tool returns a JSON object with format {screen: url} containing the screenshot URL.**
|
|
73
|
+
**You MUST first identify and analyze the image content to understand the target webpage structure before planning further steps.**
|
|
74
|
+
|
|
75
|
+
Purpose:
|
|
76
|
+
- Provide visual context and initial understanding of the target page
|
|
77
|
+
- Capture the current state and layout of the webpage
|
|
78
|
+
- Enable informed planning for subsequent automation tasks
|
|
79
|
+
- Serve as a foundation for strategic decision-making
|
|
80
|
+
|
|
81
|
+
Key characteristics:
|
|
82
|
+
- Non-intrusive observation - no interactions with page elements
|
|
83
|
+
- High-quality screenshot capture for visual analysis
|
|
84
|
+
- Returns screenshot URL in JSON format: {screen: "screenshot_url"}
|
|
85
|
+
- Quick page load assessment
|
|
86
|
+
- Foundation for the planning phase
|
|
87
|
+
|
|
88
|
+
Workflow:
|
|
89
|
+
1. Tool captures screenshot and returns {screen: url}
|
|
90
|
+
2. You must analyze the screenshot to understand page structure
|
|
91
|
+
3. Based on visual analysis, proceed to cerevox-code-plan for detailed strategy
|
|
92
|
+
|
|
93
|
+
Use this tool when:
|
|
94
|
+
- Starting any web automation workflow
|
|
95
|
+
- Need to understand page structure before planning
|
|
96
|
+
- Verifying page load status and visual state
|
|
97
|
+
- Gathering context for complex multi-step operations
|
|
98
|
+
|
|
99
|
+
After using this tool, always analyze the returned screenshot before proceeding to cerevox-code-plan.`, {
|
|
100
|
+
url: zod_1.z
|
|
101
|
+
.string()
|
|
102
|
+
.describe('The URL of the webpage to visually examine and capture.'),
|
|
103
|
+
}, async ({ url }) => {
|
|
104
|
+
if (!session) {
|
|
105
|
+
throw new Error('Cerevox session not initialized');
|
|
106
|
+
}
|
|
107
|
+
const host = await session.browser.getHost();
|
|
108
|
+
const id = Date.now();
|
|
109
|
+
const code = `import { chromium } from 'playwright';
|
|
110
|
+
import { setTimeout } from 'timers/promises';
|
|
111
|
+
import fs from 'fs';
|
|
112
|
+
|
|
113
|
+
const browser = await chromium.launch();
|
|
114
|
+
const context = browser.contexts()[0] || (await browser.newContext());
|
|
115
|
+
const page = await context.newPage();
|
|
116
|
+
await page.goto('${url}');
|
|
117
|
+
await setTimeout(5000);
|
|
118
|
+
const session = await context.newCDPSession(page);
|
|
119
|
+
const res = await session.send(
|
|
120
|
+
"Page.captureScreenshot",
|
|
121
|
+
{
|
|
122
|
+
"format": "jpeg",
|
|
123
|
+
"quality": 70,
|
|
124
|
+
"fromSurface": true,
|
|
125
|
+
"captureBeyondViewport": true,
|
|
126
|
+
},
|
|
127
|
+
);
|
|
128
|
+
fs.writeFileSync('/home/user/public/mcp-screenshot-${id}.jpg', Buffer.from(res.data, 'base64'));
|
|
129
|
+
page.close();
|
|
130
|
+
browser.close();`;
|
|
131
|
+
if (!liveviewOpened) {
|
|
132
|
+
const url = await session.browser.getLiveviewPageUrl();
|
|
133
|
+
if (url) {
|
|
134
|
+
(0, open_1.default)(url);
|
|
135
|
+
liveviewOpened = true;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
await session.codeRunner.run(code, {
|
|
139
|
+
inject: true,
|
|
140
|
+
syncDir: '/tmp/.cerevox/code-runner',
|
|
141
|
+
});
|
|
142
|
+
return {
|
|
143
|
+
content: [
|
|
144
|
+
{
|
|
145
|
+
// 本来这个应该是 type: image, data: result.stdout,但是 Tras 不认识这个格式
|
|
146
|
+
type: 'text',
|
|
147
|
+
text: JSON.stringify({
|
|
148
|
+
screenshot: `https://${host}/public/mcp-screenshot-${id}.jpg`,
|
|
149
|
+
}),
|
|
150
|
+
mimeType: 'image/jpeg',
|
|
151
|
+
},
|
|
152
|
+
],
|
|
153
|
+
};
|
|
154
|
+
});
|
|
155
|
+
// 共享的代码执行函数
|
|
156
|
+
async function executePlaywrightCode(code) {
|
|
157
|
+
try {
|
|
158
|
+
// 执行传入的 Playwright 代码
|
|
159
|
+
if (!session) {
|
|
160
|
+
throw new Error('Cerevox session not initialized');
|
|
161
|
+
}
|
|
162
|
+
const codeRunner = session.codeRunner;
|
|
163
|
+
if (!liveviewOpened) {
|
|
164
|
+
const url = await session.browser.getLiveviewPageUrl();
|
|
165
|
+
if (url) {
|
|
166
|
+
(0, open_1.default)(url);
|
|
167
|
+
liveviewOpened = true;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
const result = await codeRunner.run(code, {
|
|
171
|
+
inject: true,
|
|
172
|
+
syncDir: '/tmp/.cerevox/code-runner',
|
|
173
|
+
});
|
|
174
|
+
// 构建返回结果
|
|
175
|
+
let responseText = '';
|
|
176
|
+
if (result.exitCode === 0) {
|
|
177
|
+
responseText += '✅ 代码执行成功\n\n';
|
|
178
|
+
if (result.stdout) {
|
|
179
|
+
responseText += '📤 标准输出:\n```\n' + result.stdout + '\n```\n\n';
|
|
180
|
+
}
|
|
181
|
+
if (result.stderr) {
|
|
182
|
+
responseText += '⚠️ 警告信息:\n```\n' + result.stderr + '\n```\n\n';
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
responseText += '❌ 代码执行失败\n\n';
|
|
187
|
+
if (result.error) {
|
|
188
|
+
responseText += '🚨 错误信息:\n```\n' + result.error + '\n```\n\n';
|
|
189
|
+
}
|
|
190
|
+
if (result.stdout) {
|
|
191
|
+
responseText += '📤 标准输出:\n```\n' + result.stdout + '\n```\n\n';
|
|
192
|
+
}
|
|
193
|
+
if (result.stderr) {
|
|
194
|
+
responseText += '⚠️ 警告信息:\n```\n' + result.stderr + '\n```\n\n';
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return {
|
|
198
|
+
content: [{ type: 'text', text: responseText }],
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
catch (error) {
|
|
202
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
203
|
+
return {
|
|
204
|
+
content: [
|
|
205
|
+
{
|
|
206
|
+
type: 'text',
|
|
207
|
+
text: `❌ 执行过程中发生错误:\n\n🚨 错误详情:\n\`\`\`\n${errorMessage}\n\`\`\``,
|
|
208
|
+
},
|
|
209
|
+
],
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
server.tool('cerevox-code-plan', `Execute Playwright code for strategic analysis and action planning in a secure sandbox environment.
|
|
214
|
+
|
|
215
|
+
This is the second step in the three-phase workflow: Look → Plan → Action
|
|
216
|
+
|
|
217
|
+
Purpose:
|
|
218
|
+
- Conduct detailed reconnaissance and structural analysis of web pages
|
|
219
|
+
- Develop comprehensive understanding of page elements and interactions
|
|
220
|
+
- Formulate strategic plans for subsequent automation actions
|
|
221
|
+
- Identify optimal selectors, timing, and interaction patterns
|
|
222
|
+
- Validate assumptions and gather actionable intelligence
|
|
223
|
+
|
|
224
|
+
Key characteristics:
|
|
225
|
+
- Deep exploration and analysis without making assumptions
|
|
226
|
+
- Systematic extraction of page structure and element properties
|
|
227
|
+
- Strategic information gathering for informed decision making
|
|
228
|
+
- Comprehensive documentation of findings and observations
|
|
229
|
+
- Risk assessment and contingency planning
|
|
230
|
+
|
|
231
|
+
Planning activities:
|
|
232
|
+
- Mapping page layout and navigation structure
|
|
233
|
+
- Analyzing form fields, validation rules, and input requirements
|
|
234
|
+
- Identifying interactive elements and their behavioral patterns
|
|
235
|
+
- Testing element visibility, accessibility, and responsiveness
|
|
236
|
+
- Documenting optimal interaction sequences and timing
|
|
237
|
+
- Capturing reference screenshots for comparison
|
|
238
|
+
- Evaluating potential challenges and alternative approaches
|
|
239
|
+
|
|
240
|
+
The sandbox provides:
|
|
241
|
+
- Chromium browser with full JavaScript support
|
|
242
|
+
- Network access for web requests
|
|
243
|
+
- File system access for downloads/uploads
|
|
244
|
+
- Isolated execution environment for security
|
|
245
|
+
|
|
246
|
+
After planning, use cerevox-code-action to execute the formulated strategy.`, {
|
|
247
|
+
code: zod_1.z.string().describe(`JavaScript code using Playwright API for strategic page analysis and action planning.
|
|
248
|
+
|
|
249
|
+
Focus on systematic exploration and strategic analysis to formulate actionable plans.
|
|
250
|
+
The code should gather comprehensive intelligence, analyze element patterns, and develop
|
|
251
|
+
robust strategies for subsequent automation actions.
|
|
252
|
+
|
|
253
|
+
If the code includes any screenshots or downloads, **always save them to the \`./code-runner\` directory**.
|
|
254
|
+
|
|
255
|
+
Strategic planning patterns:
|
|
256
|
+
|
|
257
|
+
Example 1 - Page structure analysis:
|
|
258
|
+
\`\`\`typescript
|
|
259
|
+
import { chromium } from 'playwright';
|
|
260
|
+
|
|
261
|
+
const browser = await chromium.launch();
|
|
262
|
+
const page = await browser.newPage();
|
|
263
|
+
await page.goto('https://example.com');
|
|
264
|
+
|
|
265
|
+
// Analyze page structure
|
|
266
|
+
const title = await page.title();
|
|
267
|
+
const forms = await page.$$('form');
|
|
268
|
+
const buttons = await page.$$('button, input[type="submit"]');
|
|
269
|
+
|
|
270
|
+
console.log('Page Analysis:');
|
|
271
|
+
console.log('Title:', title);
|
|
272
|
+
console.log('Forms found:', forms.length);
|
|
273
|
+
console.log('Buttons found:', buttons.length);
|
|
274
|
+
|
|
275
|
+
// Take screenshot for visual analysis
|
|
276
|
+
await page.screenshot({ path: './code-runner/page_analysis.png' });
|
|
277
|
+
|
|
278
|
+
await browser.close();
|
|
279
|
+
\`\`\`
|
|
280
|
+
|
|
281
|
+
Example 2 - Form field discovery:
|
|
282
|
+
\`\`\`typescript
|
|
283
|
+
import { chromium } from 'playwright';
|
|
284
|
+
|
|
285
|
+
const browser = await chromium.launch();
|
|
286
|
+
const page = await browser.newPage();
|
|
287
|
+
await page.goto('https://example.com/form');
|
|
288
|
+
|
|
289
|
+
// Discover form fields
|
|
290
|
+
const inputs = await page.$$eval('input', inputs =>
|
|
291
|
+
inputs.map(input => ({
|
|
292
|
+
type: input.type,
|
|
293
|
+
name: input.name,
|
|
294
|
+
placeholder: input.placeholder,
|
|
295
|
+
required: input.required
|
|
296
|
+
}))
|
|
297
|
+
);
|
|
298
|
+
|
|
299
|
+
console.log('Form fields discovered:', JSON.stringify(inputs, null, 2));
|
|
300
|
+
|
|
301
|
+
await browser.close();
|
|
302
|
+
\`\`\`
|
|
303
|
+
|
|
304
|
+
Note: Always include browser.close() to properly cleanup resources.
|
|
305
|
+
Focus on gathering information rather than performing actions.`),
|
|
306
|
+
}, async ({ code }) => {
|
|
307
|
+
return await executePlaywrightCode(code);
|
|
308
|
+
});
|
|
309
|
+
server.tool('cerevox-code-action', `Execute Playwright code to perform precise actions and achieve specific automation goals.
|
|
310
|
+
|
|
311
|
+
This is the final step in the three-phase workflow: Look → Plan → Action
|
|
312
|
+
|
|
313
|
+
Purpose:
|
|
314
|
+
- Execute the strategic plan formulated in the planning phase
|
|
315
|
+
- Perform precise, goal-oriented automation tasks
|
|
316
|
+
- Complete complex workflows with confidence and accuracy
|
|
317
|
+
- Achieve specific objectives based on gathered intelligence
|
|
318
|
+
- Handle dynamic scenarios and edge cases effectively
|
|
319
|
+
|
|
320
|
+
Key characteristics:
|
|
321
|
+
- Action-oriented execution based on strategic planning
|
|
322
|
+
- Precise implementation of predetermined strategies
|
|
323
|
+
- Robust error handling and recovery mechanisms
|
|
324
|
+
- Goal-focused task completion with measurable outcomes
|
|
325
|
+
- Adaptive execution that responds to real-time conditions
|
|
326
|
+
|
|
327
|
+
Execution capabilities:
|
|
328
|
+
- Form filling with validated data and proper sequencing
|
|
329
|
+
- Strategic navigation and multi-step user journeys
|
|
330
|
+
- Complex interactions with dynamic page elements
|
|
331
|
+
- Transaction completion and workflow finalization
|
|
332
|
+
- Data extraction and result verification
|
|
333
|
+
- File downloads and content capture
|
|
334
|
+
- Authentication and session management
|
|
335
|
+
- Error recovery and alternative path execution
|
|
336
|
+
|
|
337
|
+
The sandbox provides:
|
|
338
|
+
- Chromium browser with full JavaScript support
|
|
339
|
+
- Network access for web requests
|
|
340
|
+
- File system access for downloads/uploads
|
|
341
|
+
- Isolated execution environment for security
|
|
342
|
+
|
|
343
|
+
This tool should only be used after thorough planning with cerevox-code-plan.
|
|
344
|
+
Code execution is asynchronous and results will include any console output,
|
|
345
|
+
errors, and return values from your Playwright script.`, {
|
|
346
|
+
code: zod_1.z.string().describe(`JavaScript code using Playwright API to execute strategic plans and achieve automation goals.
|
|
347
|
+
|
|
348
|
+
The code should implement the strategic plan developed in the planning phase,
|
|
349
|
+
executing precise actions with confidence and handling edge cases effectively.
|
|
350
|
+
Focus on goal achievement and robust execution based on gathered intelligence.
|
|
351
|
+
|
|
352
|
+
If the code includes any screenshots or downloads, **always save them to the \`./code-runner\` directory**.
|
|
353
|
+
|
|
354
|
+
Strategic execution patterns:
|
|
355
|
+
|
|
356
|
+
Example 1 - Form submission:
|
|
357
|
+
\`\`\`typescript
|
|
358
|
+
import { chromium } from 'playwright';
|
|
359
|
+
|
|
360
|
+
const browser = await chromium.launch();
|
|
361
|
+
const page = await browser.newPage();
|
|
362
|
+
await page.goto('https://example.com/form');
|
|
363
|
+
|
|
364
|
+
// Perform specific actions
|
|
365
|
+
await page.fill('input[name="email"]', 'user@example.com');
|
|
366
|
+
await page.fill('input[name="password"]', 'password123');
|
|
367
|
+
await page.click('button[type="submit"]');
|
|
368
|
+
|
|
369
|
+
// Wait for result and capture
|
|
370
|
+
await page.waitForNavigation();
|
|
371
|
+
await page.screenshot({ path: './code-runner/result.png' });
|
|
372
|
+
|
|
373
|
+
const result = await page.textContent('.success-message');
|
|
374
|
+
console.log('Action result:', result);
|
|
375
|
+
|
|
376
|
+
await browser.close();
|
|
377
|
+
\`\`\`
|
|
378
|
+
|
|
379
|
+
Example 2 - Data extraction after interaction:
|
|
380
|
+
\`\`\`typescript
|
|
381
|
+
import { chromium } from 'playwright';
|
|
382
|
+
|
|
383
|
+
const browser = await chromium.launch();
|
|
384
|
+
const page = await browser.newPage();
|
|
385
|
+
await page.goto('https://example.com');
|
|
386
|
+
|
|
387
|
+
// Perform search action
|
|
388
|
+
await page.fill('input[name="search"]', 'query');
|
|
389
|
+
await page.click('button[type="submit"]');
|
|
390
|
+
|
|
391
|
+
// Extract results
|
|
392
|
+
await page.waitForSelector('.results');
|
|
393
|
+
const results = await page.$$eval('.result-item', items =>
|
|
394
|
+
items.map(item => item.textContent)
|
|
395
|
+
);
|
|
396
|
+
|
|
397
|
+
console.log('Search results:', results);
|
|
398
|
+
|
|
399
|
+
await browser.close();
|
|
400
|
+
\`\`\`
|
|
401
|
+
|
|
402
|
+
Note: Always include browser.close() to properly cleanup resources.
|
|
403
|
+
Focus on completing specific tasks and achieving goals.`),
|
|
404
|
+
}, async ({ code }) => {
|
|
405
|
+
return await executePlaywrightCode(code);
|
|
406
|
+
});
|
|
407
|
+
async function main() {
|
|
408
|
+
// Start receiving messages on stdin and sending messages on stdout
|
|
409
|
+
const transport = new stdio_js_1.StdioServerTransport();
|
|
410
|
+
await server.connect(transport);
|
|
411
|
+
console.log('Server started');
|
|
412
|
+
}
|
|
413
|
+
main();
|
|
414
|
+
//# sourceMappingURL=cerevox-mcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cerevox-mcp.js","sourceRoot":"","sources":["../../src/cli/cerevox-mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/cerevox-run.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cerevox-run.js","sourceRoot":"","sources":["../../src/cli/cerevox-run.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cerevox-run.js","sourceRoot":"","sources":["../../src/cli/cerevox-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cerevox.d.ts","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,eAAe,CAAC;AAGvB,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,UAAU,GAAG,eAAe,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,QAAQ,CAAgD;gBAG9D,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KACrD;YAQM,QAAQ;YAYR,aAAa;
|
|
1
|
+
{"version":3,"file":"cerevox.d.ts","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,eAAe,CAAC;AAGvB,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,UAAU,GAAG,eAAe,CAAC;IACpC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,QAAQ,CAAgD;gBAG9D,OAAO,GAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KACrD;YAQM,QAAQ;YAYR,aAAa;YA0Bb,YAAY;IA8BpB,OAAO,CAAC,SAAS,EAAE,MAAM;IAkBzB,MAAM,CAAC,MAAM,GAAE,aAAkB;CAsDxC"}
|
package/dist/core/cerevox.js
CHANGED
|
@@ -33,7 +33,7 @@ class Cerevox {
|
|
|
33
33
|
this.token = res.data.token;
|
|
34
34
|
return this.token;
|
|
35
35
|
}
|
|
36
|
-
async createSession(session) {
|
|
36
|
+
async createSession(session, headless = true) {
|
|
37
37
|
let remoteScript = '/home/user/http-proxy.js';
|
|
38
38
|
const localPath = node_path_1.default.resolve(__dirname, `../../sandbox/http-proxy.js`);
|
|
39
39
|
const logger = session.getLogger();
|
|
@@ -42,7 +42,10 @@ class Cerevox {
|
|
|
42
42
|
logger.debug(`🗂️ Load local file: ${localPath}`);
|
|
43
43
|
await session.files.upload(localPath, remoteScript);
|
|
44
44
|
}
|
|
45
|
-
|
|
45
|
+
const command = headless
|
|
46
|
+
? `node ${remoteScript}`
|
|
47
|
+
: `xvfb-run -a node ${remoteScript}`;
|
|
48
|
+
session.process = await session.terminal.run(command);
|
|
46
49
|
if (this.debug) {
|
|
47
50
|
const serverLogger = logger.child({ class: 'Server' });
|
|
48
51
|
session.process.stdout.on('data', msg => {
|
|
@@ -145,7 +148,7 @@ class Cerevox {
|
|
|
145
148
|
},
|
|
146
149
|
logLevel: this.logLevel,
|
|
147
150
|
});
|
|
148
|
-
await this.createSession(session);
|
|
151
|
+
await this.createSession(session, browserConfig.headless);
|
|
149
152
|
this.waitForReady(session); // 不需要 await
|
|
150
153
|
return session;
|
|
151
154
|
}
|
package/dist/core/cerevox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cerevox.js","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":";;;;;;AAAA,8CAA0B;AAC1B,uCAAoC;AACpC,qCAAqC;AACrC,0DAA6B;AAC7B,mDAAkD;AAClD,uCAAqC;AACrC,yBAAuB;AACvB,wCAAuC;AAkBvC,MAAa,OAAO;IAOlB,YACE,UAII,EAAE;QAVA,UAAK,GAAW,EAAE,CAAC;QACnB,WAAM,GAAW,mBAAmB,CAAC;QACrC,UAAK,GAAY,KAAK,CAAC;QAU7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAC7B,0CAA0C;QAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAEO,KAAK,CAAC,QAAQ;QACpB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAA,aAAM,EAAC,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAAgB;
|
|
1
|
+
{"version":3,"file":"cerevox.js","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { CommandResult } from 'e2b';
|
|
2
2
|
import { BaseClass } from './base';
|
|
3
|
+
import { Session } from './session';
|
|
3
4
|
export declare class CodeRunner extends BaseClass {
|
|
4
|
-
protected sandbox: Sandbox;
|
|
5
5
|
private terminal;
|
|
6
|
-
private
|
|
6
|
+
private session;
|
|
7
7
|
/**
|
|
8
8
|
* 创建 CodeRunner 实例
|
|
9
9
|
* @param sandbox - E2B 沙箱实例
|
|
10
10
|
* @param envs - 环境变量配置
|
|
11
11
|
* @param logLevel - 日志级别
|
|
12
12
|
*/
|
|
13
|
-
constructor(
|
|
14
|
-
|
|
15
|
-
logLevel?: 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
16
|
-
});
|
|
13
|
+
constructor(session: Session);
|
|
14
|
+
private injectCode;
|
|
17
15
|
run(code: string, options?: {
|
|
18
16
|
timeout?: number;
|
|
17
|
+
syncDir?: string;
|
|
18
|
+
inject?: boolean;
|
|
19
19
|
}): Promise<CommandResult>;
|
|
20
20
|
}
|
|
21
21
|
//# sourceMappingURL=code-runner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-runner.d.ts","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"code-runner.d.ts","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAI3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBACa,UAAW,SAAQ,SAAS;IACvC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,OAAO,CAAU;IAEzB;;;;;OAKG;gBACS,OAAO,EAAE,OAAO;YASd,UAAU;IAuGlB,GAAG,CACP,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GACrE,OAAO,CAAC,aAAa,CAAC;CA0B1B"}
|
package/dist/core/code-runner.js
CHANGED
|
@@ -8,17 +8,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
12
|
exports.CodeRunner = void 0;
|
|
16
|
-
const e2b_1 = __importDefault(require("e2b"));
|
|
17
13
|
const base_1 = require("./base");
|
|
18
14
|
const uuid_1 = require("uuid");
|
|
19
|
-
const terminal_1 = require("./terminal");
|
|
20
15
|
const detect_code_1 = require("../utils/detect-code");
|
|
21
|
-
const
|
|
16
|
+
const session_1 = require("./session");
|
|
22
17
|
let CodeRunner = class CodeRunner extends base_1.BaseClass {
|
|
23
18
|
/**
|
|
24
19
|
* 创建 CodeRunner 实例
|
|
@@ -26,34 +21,94 @@ let CodeRunner = class CodeRunner extends base_1.BaseClass {
|
|
|
26
21
|
* @param envs - 环境变量配置
|
|
27
22
|
* @param logLevel - 日志级别
|
|
28
23
|
*/
|
|
29
|
-
constructor(
|
|
30
|
-
super(
|
|
31
|
-
this.
|
|
32
|
-
this.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
24
|
+
constructor(session) {
|
|
25
|
+
super(session.getSandbox(), session.getLogger().level);
|
|
26
|
+
this.terminal = session.terminal.create();
|
|
27
|
+
this.session = session;
|
|
28
|
+
}
|
|
29
|
+
async injectCode(code, type) {
|
|
30
|
+
const wsUrl = await this.session.browser.getEndpoint();
|
|
31
|
+
if (type === 'py') {
|
|
32
|
+
// 替换 python 调用
|
|
33
|
+
code = code.replace(/\.launch\s*\(/gm, `.connect_over_cdp('${wsUrl}',`);
|
|
34
|
+
code = code.replace(/\.launch_persistent_context\s*\(/gm, `.connect_over_cdp('${wsUrl}',`);
|
|
35
|
+
// 移除 launch_persistent_context 调用中的 user_data_dir 参数(位置参数)
|
|
36
|
+
code = code.replace(/\.connect_over_cdp\('([^']+)',\s*'[^']*',/gm, `.connect_over_cdp('$1',`);
|
|
37
|
+
code = code.replace(/\.connect_over_cdp\('([^']+)',\s*"[^"]*",/gm, `.connect_over_cdp('$1',`);
|
|
38
|
+
// 移除单独的位置参数(没有其他参数的情况)
|
|
39
|
+
code = code.replace(/\.connect_over_cdp\('([^']+)',\s*'[^']*'\s*\)/gm, `.connect_over_cdp('$1')`);
|
|
40
|
+
code = code.replace(/\.connect_over_cdp\('([^']+)',\s*"[^"]*"\s*\)/gm, `.connect_over_cdp('$1')`);
|
|
41
|
+
// 只保留 slow_mo 和 timeout 参数,其他所有具名参数都删除
|
|
42
|
+
const paramsToReserve = ['slow_mo', 'timeout'];
|
|
43
|
+
// 移除所有不在保留列表中的具名参数
|
|
44
|
+
// 使用通用正则表达式匹配所有具名参数,然后只保留指定的参数
|
|
45
|
+
code = code.replace(/\.connect_over_cdp\('([^']+)'([^)]*?)\)/gm, (match, url, params) => {
|
|
46
|
+
if (!params.trim()) {
|
|
47
|
+
return `.connect_over_cdp('${url}')`;
|
|
48
|
+
}
|
|
49
|
+
// 提取所有参数
|
|
50
|
+
const reservedParams = [];
|
|
51
|
+
paramsToReserve.forEach(param => {
|
|
52
|
+
// 匹配简单值参数
|
|
53
|
+
const simpleMatch = params.match(new RegExp(`\\b${param}\\s*=\\s*[^,)\\n{\\[]+`, 'g'));
|
|
54
|
+
if (simpleMatch) {
|
|
55
|
+
reservedParams.push(...simpleMatch);
|
|
56
|
+
}
|
|
57
|
+
// 匹配字典参数
|
|
58
|
+
const dictMatch = params.match(new RegExp(`\\b${param}\\s*=\\s*\\{[^}]*\\}`, 'g'));
|
|
59
|
+
if (dictMatch) {
|
|
60
|
+
reservedParams.push(...dictMatch);
|
|
61
|
+
}
|
|
62
|
+
// 匹配列表参数
|
|
63
|
+
const listMatch = params.match(new RegExp(`\\b${param}\\s*=\\s*\\[[^\\]]*\\]`, 'g'));
|
|
64
|
+
if (listMatch) {
|
|
65
|
+
reservedParams.push(...listMatch);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
// 构建结果字符串
|
|
69
|
+
let result;
|
|
70
|
+
if (reservedParams.length === 0) {
|
|
71
|
+
result = `.connect_over_cdp('${url}')`;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
result = `.connect_over_cdp('${url}', ${reservedParams.join(', ')})`;
|
|
75
|
+
}
|
|
76
|
+
// 只对当前匹配的函数调用进行清理,避免影响其他代码
|
|
77
|
+
result = result.replace(/,\s*\)/g, ')');
|
|
78
|
+
result = result.replace(/\(\s*,/g, '(');
|
|
79
|
+
result = result.replace(/,\s*,/g, ',');
|
|
80
|
+
// 处理只有路径参数的情况,移除多余的逗号
|
|
81
|
+
result = result.replace(/\.connect_over_cdp\('([^']+)',\s*\)/g, `.connect_over_cdp('$1')`);
|
|
82
|
+
return result;
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
// 替换 js 调用
|
|
87
|
+
code = code.replace(/\.launch\s*\(/gm, `.connectOverCDP('${wsUrl}',`);
|
|
88
|
+
code = code.replace(/\.launchPersistentContext\s*\([^,]*?,/gm, `.connectOverCDP('${wsUrl}',`);
|
|
89
|
+
}
|
|
90
|
+
return code;
|
|
40
91
|
}
|
|
41
92
|
async run(code, options = {}) {
|
|
42
93
|
const type = (0, detect_code_1.detectCodeType)(code);
|
|
94
|
+
if (options.inject) {
|
|
95
|
+
code = await this.injectCode(code, type);
|
|
96
|
+
}
|
|
43
97
|
const scriptId = (0, uuid_1.v4)();
|
|
44
98
|
const workDir = `/home/user/scripts/${scriptId}`;
|
|
45
|
-
await this.
|
|
99
|
+
await this.session.files.mkdir(workDir);
|
|
46
100
|
const scriptFile = `/home/user/scripts/script-${scriptId}.${type === 'esm' ? 'mjs' : type}`;
|
|
47
|
-
await this.
|
|
101
|
+
await this.session.files.write(scriptFile, code);
|
|
48
102
|
const terminal = this.terminal;
|
|
49
103
|
const timeout = options.timeout || 300000;
|
|
104
|
+
const syncDir = options.syncDir || './cerevox-output';
|
|
50
105
|
const cmd = `cd ${workDir} && ${type === 'py' ? 'python3' : 'node'} ${scriptFile}`;
|
|
51
106
|
const ret = await terminal.run(cmd, { timeoutMs: timeout });
|
|
52
107
|
ret.stdout.pipe(process.stdout);
|
|
53
108
|
ret.stderr.pipe(process.stderr);
|
|
54
109
|
return ret.json().then(async (result) => {
|
|
55
110
|
// fs.rmSync('./cerevox-output', { recursive: true });
|
|
56
|
-
await this.
|
|
111
|
+
await this.session.files.syncDownloadsDirectory(syncDir, workDir);
|
|
57
112
|
return result;
|
|
58
113
|
});
|
|
59
114
|
}
|
|
@@ -61,6 +116,6 @@ let CodeRunner = class CodeRunner extends base_1.BaseClass {
|
|
|
61
116
|
exports.CodeRunner = CodeRunner;
|
|
62
117
|
exports.CodeRunner = CodeRunner = __decorate([
|
|
63
118
|
(0, base_1.Logger)({ version: '0.1.0' }),
|
|
64
|
-
__metadata("design:paramtypes", [
|
|
119
|
+
__metadata("design:paramtypes", [session_1.Session])
|
|
65
120
|
], CodeRunner);
|
|
66
121
|
//# sourceMappingURL=code-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code-runner.js","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"code-runner.js","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"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"}
|
package/dist/core/session.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export declare class Session extends BaseClass {
|
|
|
19
19
|
envs?: Record<string, string>;
|
|
20
20
|
logLevel?: 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
21
21
|
});
|
|
22
|
+
getSandbox(): Sandbox;
|
|
22
23
|
private keepAlive;
|
|
23
24
|
_setConnectionMetaData(metaData: Record<string, string>): void;
|
|
24
25
|
isRunning(): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,CAAC;AAEpD,qBACa,OAAQ,SAAQ,SAAS;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IACxD,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAA+B;gBAGnD,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KACrD;IAYR,OAAO,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,CAAC;AAEpD,qBACa,OAAQ,SAAQ,SAAS;IACpC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IACxD,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAA+B;gBAGnD,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KACrD;IAYR,UAAU;IAIV,OAAO,CAAC,SAAS;IAejB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAiCjD,SAAS;IAIf,IAAI,EAAE,WAEL;IAED,SAAS;IAIT,OAAO,CAAC,IAAI,GAAE,MAAa;IAMrB,UAAU,CAAC,EAAE,EAAE,MAAM;IAIrB,KAAK,CAAC,WAAW,UAAQ;CAiBhC"}
|
package/dist/core/session.js
CHANGED
|
@@ -30,19 +30,25 @@ let Session = class Session extends base_1.BaseClass {
|
|
|
30
30
|
this.isClosed = false;
|
|
31
31
|
this.keepAliveTimer = null;
|
|
32
32
|
this.terminal = new terminal_1.Terminal(sandbox, options);
|
|
33
|
-
this.codeRunner = new code_runner_1.CodeRunner(sandbox, options);
|
|
34
33
|
this.files = new file_system_1.FileSystem(sandbox, {
|
|
35
34
|
logLevel: options.logLevel,
|
|
36
35
|
});
|
|
37
36
|
this.browser = new browser_1.Browser(sandbox);
|
|
37
|
+
this.codeRunner = new code_runner_1.CodeRunner(this);
|
|
38
38
|
exports.sessions[sandbox.sandboxId] = this;
|
|
39
39
|
}
|
|
40
|
+
getSandbox() {
|
|
41
|
+
return this.sandbox;
|
|
42
|
+
}
|
|
40
43
|
keepAlive() {
|
|
44
|
+
// 因为走的是 cloudflare,还不能用空的 ping/pong
|
|
41
45
|
const ws = this.ws;
|
|
42
46
|
if (ws.readyState === ws_1.default.OPEN) {
|
|
43
|
-
ws.ping();
|
|
47
|
+
// ws.ping();
|
|
48
|
+
ws.send(JSON.stringify({ type: 'heartbeat' }));
|
|
44
49
|
}
|
|
45
|
-
ws.once('
|
|
50
|
+
ws.once('message', data => {
|
|
51
|
+
// console.log('pong', data.toString());
|
|
46
52
|
this.keepAliveTimer = setTimeout(() => {
|
|
47
53
|
this.keepAlive();
|
|
48
54
|
}, 10000);
|
|
@@ -51,7 +57,8 @@ let Session = class Session extends base_1.BaseClass {
|
|
|
51
57
|
_setConnectionMetaData(metaData) {
|
|
52
58
|
this.connectionMetaData = metaData;
|
|
53
59
|
this.browser._setReady(metaData);
|
|
54
|
-
|
|
60
|
+
const wsUrl = this.connectionMetaData.wsUrl;
|
|
61
|
+
this.ws = new ws_1.default(wsUrl);
|
|
55
62
|
this.ws.on('open', () => {
|
|
56
63
|
if (!this.isClosed) {
|
|
57
64
|
this.keepAliveTimer = setTimeout(() => {
|
|
@@ -67,8 +74,8 @@ let Session = class Session extends base_1.BaseClass {
|
|
|
67
74
|
clearInterval(this.keepAliveTimer);
|
|
68
75
|
if (this.process) {
|
|
69
76
|
// 主进程,关掉 sandbox
|
|
70
|
-
this.process.kill();
|
|
71
77
|
try {
|
|
78
|
+
this.process.kill();
|
|
72
79
|
if (await this.sandbox.isRunning()) {
|
|
73
80
|
await this.sandbox.kill();
|
|
74
81
|
}
|
package/dist/core/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,8CAA0B;AAC1B,iCAA2C;AAC3C,yCAAiE;AACjE,+CAA2C;AAC3C,+CAA2C;AAC3C,4CAA2B;AAC3B,uCAAoC;AACvB,QAAA,QAAQ,GAA4B,EAAE,CAAC;AAG7C,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,gBAAS;IAWpC,YACE,OAAgB,EAChB,UAGI,EAAE;QAEN,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAb5B,YAAO,GAAqC,IAAI,CAAC;QAChD,uBAAkB,GAA2B,EAAE,CAAC;QAChD,OAAE,GAAqB,IAAI,CAAC;QAC5B,aAAQ,GAAG,KAAK,CAAC;QACjB,mBAAc,GAA0B,IAAI,CAAC;QAUnD,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/core/session.ts"],"names":[],"mappings":"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"}
|
package/dist/core/terminal.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/core/terminal.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,YAAY;IACZ,MAAM,EAAE,QAAQ,CAAC;IACjB,YAAY;IACZ,MAAM,EAAE,QAAQ,CAAC;IACjB,eAAe;IACf,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,aAAa;IACb,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,wBAAwB;IACxB,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,KAAK,WAAW,GAAG;IACjB,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBACa,QAAS,SAAQ,SAAS;IACrC,
|
|
1
|
+
{"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/core/terminal.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,YAAY;IACZ,MAAM,EAAE,QAAQ,CAAC;IACjB,YAAY;IACZ,MAAM,EAAE,QAAQ,CAAC;IACjB,eAAe;IACf,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,aAAa;IACb,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,wBAAwB;IACxB,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,KAAK,WAAW,GAAG;IACjB,WAAW;IACX,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBACa,QAAS,SAAQ,SAAS;IACrC,aAAa;IACb,OAAO,CAAC,GAAG,CAAc;IACzB,WAAW;IACX,OAAO,CAAC,IAAI,CAA8B;IAC1C,cAAc;IACd,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;gBAED,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QACP,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KACrD;IAWR;;;OAGG;IACG,MAAM;IAMZ;;;;OAIG;YACW,SAAS;IAcvB;;;OAGG;IACH,MAAM;IAeN;;;;;OAKG;IACG,GAAG,CACP,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,WAAW,GACjB,OAAO,CAAC,yBAAyB,CAAC;CA+FtC"}
|
package/dist/core/terminal.js
CHANGED
|
@@ -60,7 +60,6 @@ let Terminal = Terminal_1 = class Terminal extends base_1.BaseClass {
|
|
|
60
60
|
this.cwd = '';
|
|
61
61
|
/** 环境变量 */
|
|
62
62
|
this.envs = {};
|
|
63
|
-
this.sandbox = sandbox;
|
|
64
63
|
this.id = options.id || 'default0';
|
|
65
64
|
this.envs = options.envs || {};
|
|
66
65
|
this.logger.debug('Terminal 实例已创建', {
|
|
@@ -145,12 +144,20 @@ let Terminal = Terminal_1 = class Terminal extends base_1.BaseClass {
|
|
|
145
144
|
const res = await this.sandbox.commands.run(command, {
|
|
146
145
|
cwd,
|
|
147
146
|
...opts,
|
|
147
|
+
timeoutMs: opts?.timeoutMs || 0,
|
|
148
148
|
envs,
|
|
149
149
|
background: true,
|
|
150
150
|
onStderr,
|
|
151
151
|
onStdout,
|
|
152
152
|
});
|
|
153
|
-
|
|
153
|
+
// console.log({
|
|
154
|
+
// cwd,
|
|
155
|
+
// ...opts,
|
|
156
|
+
// timeoutMs: opts?.timeoutMs || 0,
|
|
157
|
+
// envs,
|
|
158
|
+
// background: true,
|
|
159
|
+
// });
|
|
160
|
+
this.logger.debug(`命令已启动: ${command.split(' && pwd')[0]}`, {
|
|
154
161
|
command: command.split(' && pwd')[0], // 只记录原始命令
|
|
155
162
|
terminalId: this.id,
|
|
156
163
|
cwd,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/core/terminal.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA6C;AAC7C,iCAA2C;AAC3C,6CAAuC;AACvC,+BAAoC;AA+BpC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEI,IAAM,QAAQ,gBAAd,MAAM,QAAS,SAAQ,gBAAS;
|
|
1
|
+
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../src/core/terminal.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cerevox",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "TypeScript SDK for browser automation and secure command execution in highly available and scalable micro computer environments",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|