fastbrowser_cli 1.0.8 → 1.0.10
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/fastbrowser_cli/fastbrowser_cli.js +103 -48
- package/dist/fastbrowser_cli/fastbrowser_cli.js.map +1 -1
- package/dist/fastbrowser_mcp/fastbrowser_mcp.js +4 -2
- package/dist/fastbrowser_mcp/fastbrowser_mcp.js.map +1 -1
- package/package.json +2 -1
- package/skills/fastbrowser/SKILL.md +38 -2
- package/src/fastbrowser_cli/fastbrowser_cli.ts +110 -44
- package/src/fastbrowser_mcp/fastbrowser_mcp.ts +4 -2
|
@@ -9,9 +9,15 @@ const node_fs_1 = __importDefault(require("node:fs"));
|
|
|
9
9
|
const node_path_1 = __importDefault(require("node:path"));
|
|
10
10
|
// npm imports
|
|
11
11
|
const commander_1 = require("commander");
|
|
12
|
+
const string_argv_1 = __importDefault(require("string-argv"));
|
|
12
13
|
// local imports
|
|
13
14
|
const http_client_js_1 = require("./libs/http-client.js");
|
|
14
15
|
const server_manager_js_1 = require("./libs/server-manager.js");
|
|
16
|
+
class SilentExitError extends Error {
|
|
17
|
+
constructor() {
|
|
18
|
+
super('silent-exit');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
15
21
|
function getServerFromCmd(cmd) {
|
|
16
22
|
const globalOpts = cmd.optsWithGlobals();
|
|
17
23
|
return http_client_js_1.HttpClient.getServerUrl(globalOpts.server);
|
|
@@ -22,18 +28,11 @@ function getAutostartFromCmd(cmd) {
|
|
|
22
28
|
}
|
|
23
29
|
async function runTool(cmd, routeName, body) {
|
|
24
30
|
const server = getServerFromCmd(cmd);
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
await server_manager_js_1.ServerManager.ensureRunning(server);
|
|
28
|
-
}
|
|
29
|
-
const response = await http_client_js_1.HttpClient.postTool(server, routeName, body);
|
|
30
|
-
http_client_js_1.HttpClient.printResponse(response);
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
34
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
35
|
-
process.exit(1);
|
|
31
|
+
if (getAutostartFromCmd(cmd) === true) {
|
|
32
|
+
await server_manager_js_1.ServerManager.ensureRunning(server);
|
|
36
33
|
}
|
|
34
|
+
const response = await http_client_js_1.HttpClient.postTool(server, routeName, body);
|
|
35
|
+
http_client_js_1.HttpClient.printResponse(response);
|
|
37
36
|
}
|
|
38
37
|
///////////////////////////////////////////////////////////////////////////////
|
|
39
38
|
///////////////////////////////////////////////////////////////////////////////
|
|
@@ -144,28 +143,14 @@ async function main() {
|
|
|
144
143
|
.description('Start the fastbrowser HTTP server as a detached daemon')
|
|
145
144
|
.action(async (_opts, cmd) => {
|
|
146
145
|
const server = getServerFromCmd(cmd);
|
|
147
|
-
|
|
148
|
-
await server_manager_js_1.ServerManager.start(server);
|
|
149
|
-
}
|
|
150
|
-
catch (err) {
|
|
151
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
152
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
153
|
-
process.exit(1);
|
|
154
|
-
}
|
|
146
|
+
await server_manager_js_1.ServerManager.start(server);
|
|
155
147
|
});
|
|
156
148
|
serverCmd
|
|
157
149
|
.command('stop')
|
|
158
150
|
.description('Stop the fastbrowser HTTP server')
|
|
159
151
|
.action(async (_opts, cmd) => {
|
|
160
152
|
const server = getServerFromCmd(cmd);
|
|
161
|
-
|
|
162
|
-
await server_manager_js_1.ServerManager.stop(server);
|
|
163
|
-
}
|
|
164
|
-
catch (err) {
|
|
165
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
166
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
167
|
-
process.exit(1);
|
|
168
|
-
}
|
|
153
|
+
await server_manager_js_1.ServerManager.stop(server);
|
|
169
154
|
});
|
|
170
155
|
serverCmd
|
|
171
156
|
.command('status')
|
|
@@ -175,7 +160,7 @@ async function main() {
|
|
|
175
160
|
const state = await server_manager_js_1.ServerManager.status(server);
|
|
176
161
|
console.log(`fastbrowser server at ${server}: ${state}`);
|
|
177
162
|
if (state === 'stopped')
|
|
178
|
-
|
|
163
|
+
throw new SilentExitError();
|
|
179
164
|
});
|
|
180
165
|
program
|
|
181
166
|
.command('list_pages')
|
|
@@ -197,8 +182,7 @@ async function main() {
|
|
|
197
182
|
.action(async (opts, cmd) => {
|
|
198
183
|
const pageId = Number.parseInt(opts.pageId, 10);
|
|
199
184
|
if (Number.isNaN(pageId) === true) {
|
|
200
|
-
|
|
201
|
-
process.exit(1);
|
|
185
|
+
throw new Error(`Invalid --page-id: ${opts.pageId}`);
|
|
202
186
|
}
|
|
203
187
|
await runTool(cmd, 'close_page', { pageId });
|
|
204
188
|
});
|
|
@@ -220,7 +204,7 @@ async function main() {
|
|
|
220
204
|
.command('fill_form')
|
|
221
205
|
.description('Fill a form field by its accessibility selector')
|
|
222
206
|
.requiredOption('-s, --selector <selector>', 'Accessibility selector (e.g. "#1_3" or \'textbox[name="Email"]\')')
|
|
223
|
-
.requiredOption('--value <value>', 'Value to fill')
|
|
207
|
+
.requiredOption('-v, --value <value>', 'Value to fill')
|
|
224
208
|
.action(async (opts, cmd) => {
|
|
225
209
|
await runTool(cmd, 'fill_form', {
|
|
226
210
|
elements: [{ selector: opts.selector, value: opts.value }],
|
|
@@ -238,14 +222,7 @@ async function main() {
|
|
|
238
222
|
.option('--no-with-ancestors', 'Exclude ancestor nodes')
|
|
239
223
|
.option('--selectors-json <json>', 'JSON array of {selector,limit,withAncestors} for per-selector control')
|
|
240
224
|
.action(async (opts, cmd) => {
|
|
241
|
-
|
|
242
|
-
try {
|
|
243
|
-
body = buildQuerySelectorsBody(opts);
|
|
244
|
-
}
|
|
245
|
-
catch (err) {
|
|
246
|
-
console.error(`fastbrowser-cli error: ${err.message}`);
|
|
247
|
-
process.exit(1);
|
|
248
|
-
}
|
|
225
|
+
const body = buildQuerySelectorsBody(opts);
|
|
249
226
|
await runTool(cmd, 'query_selectors_all', body);
|
|
250
227
|
});
|
|
251
228
|
program
|
|
@@ -259,14 +236,7 @@ async function main() {
|
|
|
259
236
|
.option('--no-with-ancestors', 'Exclude ancestor nodes')
|
|
260
237
|
.option('--selectors-json <json>', 'JSON array of {selector,withAncestors} for per-selector control')
|
|
261
238
|
.action(async (opts, cmd) => {
|
|
262
|
-
|
|
263
|
-
try {
|
|
264
|
-
body = buildQuerySelectorFirstBody(opts);
|
|
265
|
-
}
|
|
266
|
-
catch (err) {
|
|
267
|
-
console.error(`fastbrowser-cli error: ${err.message}`);
|
|
268
|
-
process.exit(1);
|
|
269
|
-
}
|
|
239
|
+
const body = buildQuerySelectorFirstBody(opts);
|
|
270
240
|
await runTool(cmd, 'query_selectors', body);
|
|
271
241
|
});
|
|
272
242
|
program
|
|
@@ -282,7 +252,92 @@ async function main() {
|
|
|
282
252
|
.action(async (opts, cmd) => {
|
|
283
253
|
await runTool(cmd, 'press_keys', { keys: opts.keys });
|
|
284
254
|
});
|
|
285
|
-
|
|
255
|
+
program
|
|
256
|
+
.command('batch [file]')
|
|
257
|
+
.description('Run multiple commands from a file, piped stdin, or an inline --script string (one command per line, # comments allowed)')
|
|
258
|
+
.option('--script <script>', 'Inline multi-line script (overrides [file] and stdin)')
|
|
259
|
+
.option('--no-stop-on-error', 'Continue running subsequent lines after a failure (default: stop on first error)')
|
|
260
|
+
.action(async (file, opts, cmd) => {
|
|
261
|
+
const source = await readBatchSource(file, opts.script);
|
|
262
|
+
await runBatch(program, source, opts.stopOnError !== false, cmd);
|
|
263
|
+
});
|
|
264
|
+
program.exitOverride();
|
|
265
|
+
try {
|
|
266
|
+
await program.parseAsync(process.argv);
|
|
267
|
+
}
|
|
268
|
+
catch (err) {
|
|
269
|
+
if (err instanceof SilentExitError) {
|
|
270
|
+
process.exit(1);
|
|
271
|
+
}
|
|
272
|
+
if (err instanceof commander_1.CommanderError) {
|
|
273
|
+
process.exit(err.exitCode === undefined ? 1 : err.exitCode);
|
|
274
|
+
}
|
|
275
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
276
|
+
console.error(`fastbrowser-cli error: ${message}`);
|
|
277
|
+
process.exit(1);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
async function readBatchSource(file, inlineScript) {
|
|
281
|
+
if (inlineScript !== undefined && inlineScript !== '') {
|
|
282
|
+
return inlineScript;
|
|
283
|
+
}
|
|
284
|
+
if (file !== undefined && file !== '') {
|
|
285
|
+
return await node_fs_1.default.promises.readFile(file, 'utf-8');
|
|
286
|
+
}
|
|
287
|
+
if (process.stdin.isTTY === true) {
|
|
288
|
+
throw new Error('batch: no input. Provide a file path, --script, or pipe commands on stdin.');
|
|
289
|
+
}
|
|
290
|
+
return await readStdinToString();
|
|
291
|
+
}
|
|
292
|
+
async function readStdinToString() {
|
|
293
|
+
const chunks = [];
|
|
294
|
+
return await new Promise((resolve, reject) => {
|
|
295
|
+
process.stdin.on('data', (chunk) => chunks.push(chunk));
|
|
296
|
+
process.stdin.on('end', () => resolve(Buffer.concat(chunks).toString('utf-8')));
|
|
297
|
+
process.stdin.on('error', (err) => reject(err));
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
async function runBatch(program, source, stopOnError, batchCmd) {
|
|
301
|
+
const globalOpts = batchCmd.optsWithGlobals();
|
|
302
|
+
const globalFlags = [];
|
|
303
|
+
if (globalOpts.server !== undefined) {
|
|
304
|
+
globalFlags.push('--server', globalOpts.server);
|
|
305
|
+
}
|
|
306
|
+
if (globalOpts.autostart === false) {
|
|
307
|
+
globalFlags.push('--no-autostart');
|
|
308
|
+
}
|
|
309
|
+
const lines = source.split('\n');
|
|
310
|
+
let ok = 0;
|
|
311
|
+
let failed = 0;
|
|
312
|
+
for (const rawLine of lines) {
|
|
313
|
+
const line = rawLine.trim();
|
|
314
|
+
if (line === '' || line.startsWith('#') === true)
|
|
315
|
+
continue;
|
|
316
|
+
const argv = (0, string_argv_1.default)(line);
|
|
317
|
+
if (argv.length === 0)
|
|
318
|
+
continue;
|
|
319
|
+
console.log(`> ${line}`);
|
|
320
|
+
try {
|
|
321
|
+
await program.parseAsync([...globalFlags, ...argv], { from: 'user' });
|
|
322
|
+
ok += 1;
|
|
323
|
+
}
|
|
324
|
+
catch (err) {
|
|
325
|
+
failed += 1;
|
|
326
|
+
if (err instanceof SilentExitError === false && err instanceof commander_1.CommanderError === false) {
|
|
327
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
328
|
+
console.error(`fastbrowser-cli error: ${message}`);
|
|
329
|
+
}
|
|
330
|
+
if (stopOnError === true) {
|
|
331
|
+
throw new SilentExitError();
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
if (stopOnError === false) {
|
|
336
|
+
console.log(`batch: ${ok} ok, ${failed} failed`);
|
|
337
|
+
}
|
|
338
|
+
if (failed > 0) {
|
|
339
|
+
throw new SilentExitError();
|
|
340
|
+
}
|
|
286
341
|
}
|
|
287
342
|
void main();
|
|
288
343
|
//# sourceMappingURL=fastbrowser_cli.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastbrowser_cli.js","sourceRoot":"","sources":["../../src/fastbrowser_cli/fastbrowser_cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fastbrowser_cli.js","sourceRoot":"","sources":["../../src/fastbrowser_cli/fastbrowser_cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -310,8 +310,10 @@ class MainHelper {
|
|
|
310
310
|
}
|
|
311
311
|
}
|
|
312
312
|
console.error("Keys to send:", keysToSend);
|
|
313
|
-
//
|
|
314
|
-
|
|
313
|
+
// chrome-devtools-mcp's 'press_key' tool accepts a single 'key' per call — loop through the sequence
|
|
314
|
+
for (const key of keysToSend) {
|
|
315
|
+
await mcpClient.callTool('press_key', { key });
|
|
316
|
+
}
|
|
315
317
|
// return a response indicating which keys were pressed
|
|
316
318
|
return {
|
|
317
319
|
content: [{ type: "text", text: `Pressed keys: ${keysToSend.join(', ')}` }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fastbrowser_cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.10",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/fastbrowser_cli/fastbrowser_cli.js",
|
|
6
6
|
"bin": {
|
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
"a11y_parse": "^1.0.1",
|
|
26
26
|
"commander": "^12.1.0",
|
|
27
27
|
"express": "^4.21.2",
|
|
28
|
+
"string-argv": "^0.3.2",
|
|
28
29
|
"typescript": "^6.0.3",
|
|
29
30
|
"zod": "^4.3.6",
|
|
30
31
|
"zod-from-json-schema": "^0.5.2"
|
|
@@ -6,9 +6,9 @@ description: >
|
|
|
6
6
|
|
|
7
7
|
# fastbrowser Skill
|
|
8
8
|
|
|
9
|
-
`fastbrowser-cli` is a command-line client for the
|
|
9
|
+
`fastbrowser-cli` is a command-line client for the FastBrowser HTTP server, which keeps a persistent
|
|
10
10
|
MCP connection to a Chrome browser alive so commands incur minimal latency. Each command
|
|
11
|
-
maps 1-to-1 to a
|
|
11
|
+
maps 1-to-1 to a FastBrowser tool and returns the tool's response on stdout.
|
|
12
12
|
|
|
13
13
|
## Invocation
|
|
14
14
|
|
|
@@ -190,6 +190,41 @@ npx fastbrowser_cli press_keys --keys "Tab, Tab, Enter"
|
|
|
190
190
|
npx fastbrowser_cli press_keys --keys "Hello, Tab, Enter"
|
|
191
191
|
```
|
|
192
192
|
|
|
193
|
+
## Batch Execution
|
|
194
|
+
|
|
195
|
+
Run several commands from one invocation — each line is parsed and executed like a standalone command, reusing the persistent HTTP server session.
|
|
196
|
+
|
|
197
|
+
Syntax rules:
|
|
198
|
+
- One command per line, same syntax as the standalone CLI (e.g. `click -s '...'`)
|
|
199
|
+
- Shell-style quoting (single and double quotes)
|
|
200
|
+
- Blank lines are ignored
|
|
201
|
+
- Lines starting with `#` are comments
|
|
202
|
+
|
|
203
|
+
By default, the batch stops at the first failing line (shell `set -e` semantics). Pass `--no-stop-on-error` to log failures and continue; the process still exits non-zero at the end if any line failed.
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
# From a file
|
|
207
|
+
npx fastbrowser_cli batch ./demo.fbs
|
|
208
|
+
|
|
209
|
+
# Piped on stdin
|
|
210
|
+
cat demo.fbs | npx fastbrowser_cli batch
|
|
211
|
+
|
|
212
|
+
# Inline script
|
|
213
|
+
npx fastbrowser_cli batch --script $'press_keys --keys "Enter"\nclick -s \'button[name^="Tout effacer"]\''
|
|
214
|
+
|
|
215
|
+
# Continue through failures
|
|
216
|
+
npx fastbrowser_cli batch --no-stop-on-error ./demo.fbs
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
Example `demo.fbs`:
|
|
220
|
+
|
|
221
|
+
```
|
|
222
|
+
# open a page and interact
|
|
223
|
+
new_page --url https://example.com
|
|
224
|
+
fill_form -s 'textbox[name="Email"]' --value 'hello@example.com'
|
|
225
|
+
press_keys --keys "Tab, Enter"
|
|
226
|
+
```
|
|
227
|
+
|
|
193
228
|
## Command Reference
|
|
194
229
|
|
|
195
230
|
| Command | Purpose | Required flags |
|
|
@@ -204,6 +239,7 @@ npx fastbrowser_cli press_keys --keys "Hello, Tab, Enter"
|
|
|
204
239
|
| `click` | Click an element by accessibility selector | `--selector` / `-s` |
|
|
205
240
|
| `fill_form` | Fill a form field by accessibility selector | `--selector` / `-s`, `--value` |
|
|
206
241
|
| `press_keys` | Press a comma-separated key sequence | `--keys` |
|
|
242
|
+
| `batch` | Run multiple commands from a file, piped stdin, or `--script` inline | one of: `<file>`, `--script`, or piped stdin |
|
|
207
243
|
| `server start` | Start the HTTP server daemon | — |
|
|
208
244
|
| `server status` | Report server running/stopped | — |
|
|
209
245
|
| `server stop` | Stop the HTTP server | — |
|
|
@@ -5,7 +5,8 @@ import fs from 'node:fs';
|
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
|
|
7
7
|
// npm imports
|
|
8
|
-
import { Command } from 'commander';
|
|
8
|
+
import { Command, CommanderError } from 'commander';
|
|
9
|
+
import stringArgv from 'string-argv';
|
|
9
10
|
|
|
10
11
|
// local imports
|
|
11
12
|
import { HttpClient } from './libs/http-client.js';
|
|
@@ -24,6 +25,12 @@ type GlobalOpts = {
|
|
|
24
25
|
autostart?: boolean;
|
|
25
26
|
};
|
|
26
27
|
|
|
28
|
+
class SilentExitError extends Error {
|
|
29
|
+
constructor() {
|
|
30
|
+
super('silent-exit');
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
27
34
|
function getServerFromCmd(cmd: Command): string {
|
|
28
35
|
const globalOpts = cmd.optsWithGlobals<GlobalOpts>();
|
|
29
36
|
return HttpClient.getServerUrl(globalOpts.server);
|
|
@@ -36,17 +43,11 @@ function getAutostartFromCmd(cmd: Command): boolean {
|
|
|
36
43
|
|
|
37
44
|
async function runTool(cmd: Command, routeName: string, body: unknown): Promise<void> {
|
|
38
45
|
const server = getServerFromCmd(cmd);
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
await ServerManager.ensureRunning(server);
|
|
42
|
-
}
|
|
43
|
-
const response = await HttpClient.postTool(server, routeName, body);
|
|
44
|
-
HttpClient.printResponse(response);
|
|
45
|
-
} catch (err) {
|
|
46
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
47
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
48
|
-
process.exit(1);
|
|
46
|
+
if (getAutostartFromCmd(cmd) === true) {
|
|
47
|
+
await ServerManager.ensureRunning(server);
|
|
49
48
|
}
|
|
49
|
+
const response = await HttpClient.postTool(server, routeName, body);
|
|
50
|
+
HttpClient.printResponse(response);
|
|
50
51
|
}
|
|
51
52
|
|
|
52
53
|
///////////////////////////////////////////////////////////////////////////////
|
|
@@ -179,13 +180,7 @@ async function main(): Promise<void> {
|
|
|
179
180
|
.description('Start the fastbrowser HTTP server as a detached daemon')
|
|
180
181
|
.action(async (_opts, cmd: Command) => {
|
|
181
182
|
const server = getServerFromCmd(cmd);
|
|
182
|
-
|
|
183
|
-
await ServerManager.start(server);
|
|
184
|
-
} catch (err) {
|
|
185
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
186
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
187
|
-
process.exit(1);
|
|
188
|
-
}
|
|
183
|
+
await ServerManager.start(server);
|
|
189
184
|
});
|
|
190
185
|
|
|
191
186
|
serverCmd
|
|
@@ -193,13 +188,7 @@ async function main(): Promise<void> {
|
|
|
193
188
|
.description('Stop the fastbrowser HTTP server')
|
|
194
189
|
.action(async (_opts, cmd: Command) => {
|
|
195
190
|
const server = getServerFromCmd(cmd);
|
|
196
|
-
|
|
197
|
-
await ServerManager.stop(server);
|
|
198
|
-
} catch (err) {
|
|
199
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
200
|
-
console.error(`fastbrowser-cli error: ${message}`);
|
|
201
|
-
process.exit(1);
|
|
202
|
-
}
|
|
191
|
+
await ServerManager.stop(server);
|
|
203
192
|
});
|
|
204
193
|
|
|
205
194
|
serverCmd
|
|
@@ -209,7 +198,7 @@ async function main(): Promise<void> {
|
|
|
209
198
|
const server = getServerFromCmd(cmd);
|
|
210
199
|
const state = await ServerManager.status(server);
|
|
211
200
|
console.log(`fastbrowser server at ${server}: ${state}`);
|
|
212
|
-
if (state === 'stopped')
|
|
201
|
+
if (state === 'stopped') throw new SilentExitError();
|
|
213
202
|
});
|
|
214
203
|
|
|
215
204
|
program
|
|
@@ -234,8 +223,7 @@ async function main(): Promise<void> {
|
|
|
234
223
|
.action(async (opts: { pageId: string }, cmd: Command) => {
|
|
235
224
|
const pageId = Number.parseInt(opts.pageId, 10);
|
|
236
225
|
if (Number.isNaN(pageId) === true) {
|
|
237
|
-
|
|
238
|
-
process.exit(1);
|
|
226
|
+
throw new Error(`Invalid --page-id: ${opts.pageId}`);
|
|
239
227
|
}
|
|
240
228
|
await runTool(cmd, 'close_page', { pageId });
|
|
241
229
|
});
|
|
@@ -260,7 +248,7 @@ async function main(): Promise<void> {
|
|
|
260
248
|
.command('fill_form')
|
|
261
249
|
.description('Fill a form field by its accessibility selector')
|
|
262
250
|
.requiredOption('-s, --selector <selector>', 'Accessibility selector (e.g. "#1_3" or \'textbox[name="Email"]\')')
|
|
263
|
-
.requiredOption('--value <value>', 'Value to fill')
|
|
251
|
+
.requiredOption('-v, --value <value>', 'Value to fill')
|
|
264
252
|
.action(async (opts: { selector: string; value: string }, cmd: Command) => {
|
|
265
253
|
await runTool(cmd, 'fill_form', {
|
|
266
254
|
elements: [{ selector: opts.selector, value: opts.value }],
|
|
@@ -284,13 +272,7 @@ async function main(): Promise<void> {
|
|
|
284
272
|
withAncestors?: boolean;
|
|
285
273
|
selectorsJson?: string;
|
|
286
274
|
}, cmd: Command) => {
|
|
287
|
-
|
|
288
|
-
try {
|
|
289
|
-
body = buildQuerySelectorsBody(opts);
|
|
290
|
-
} catch (err) {
|
|
291
|
-
console.error(`fastbrowser-cli error: ${(err as Error).message}`);
|
|
292
|
-
process.exit(1);
|
|
293
|
-
}
|
|
275
|
+
const body = buildQuerySelectorsBody(opts);
|
|
294
276
|
await runTool(cmd, 'query_selectors_all', body);
|
|
295
277
|
});
|
|
296
278
|
|
|
@@ -309,13 +291,7 @@ async function main(): Promise<void> {
|
|
|
309
291
|
withAncestors?: boolean;
|
|
310
292
|
selectorsJson?: string;
|
|
311
293
|
}, cmd: Command) => {
|
|
312
|
-
|
|
313
|
-
try {
|
|
314
|
-
body = buildQuerySelectorFirstBody(opts);
|
|
315
|
-
} catch (err) {
|
|
316
|
-
console.error(`fastbrowser-cli error: ${(err as Error).message}`);
|
|
317
|
-
process.exit(1);
|
|
318
|
-
}
|
|
294
|
+
const body = buildQuerySelectorFirstBody(opts);
|
|
319
295
|
await runTool(cmd, 'query_selectors', body);
|
|
320
296
|
});
|
|
321
297
|
|
|
@@ -334,7 +310,97 @@ async function main(): Promise<void> {
|
|
|
334
310
|
await runTool(cmd, 'press_keys', { keys: opts.keys });
|
|
335
311
|
});
|
|
336
312
|
|
|
337
|
-
|
|
313
|
+
program
|
|
314
|
+
.command('batch [file]')
|
|
315
|
+
.description('Run multiple commands from a file, piped stdin, or an inline --script string (one command per line, # comments allowed)')
|
|
316
|
+
.option('--script <script>', 'Inline multi-line script (overrides [file] and stdin)')
|
|
317
|
+
.option('--no-stop-on-error', 'Continue running subsequent lines after a failure (default: stop on first error)')
|
|
318
|
+
.action(async (file: string | undefined, opts: { script?: string; stopOnError: boolean }, cmd: Command) => {
|
|
319
|
+
const source = await readBatchSource(file, opts.script);
|
|
320
|
+
await runBatch(program, source, opts.stopOnError !== false, cmd);
|
|
321
|
+
});
|
|
322
|
+
|
|
323
|
+
program.exitOverride();
|
|
324
|
+
|
|
325
|
+
try {
|
|
326
|
+
await program.parseAsync(process.argv);
|
|
327
|
+
} catch (err) {
|
|
328
|
+
if (err instanceof SilentExitError) {
|
|
329
|
+
process.exit(1);
|
|
330
|
+
}
|
|
331
|
+
if (err instanceof CommanderError) {
|
|
332
|
+
process.exit(err.exitCode === undefined ? 1 : err.exitCode);
|
|
333
|
+
}
|
|
334
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
335
|
+
console.error(`fastbrowser-cli error: ${message}`);
|
|
336
|
+
process.exit(1);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
async function readBatchSource(file: string | undefined, inlineScript: string | undefined): Promise<string> {
|
|
341
|
+
if (inlineScript !== undefined && inlineScript !== '') {
|
|
342
|
+
return inlineScript;
|
|
343
|
+
}
|
|
344
|
+
if (file !== undefined && file !== '') {
|
|
345
|
+
return await fs.promises.readFile(file, 'utf-8');
|
|
346
|
+
}
|
|
347
|
+
if (process.stdin.isTTY === true) {
|
|
348
|
+
throw new Error('batch: no input. Provide a file path, --script, or pipe commands on stdin.');
|
|
349
|
+
}
|
|
350
|
+
return await readStdinToString();
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
async function readStdinToString(): Promise<string> {
|
|
354
|
+
const chunks: Buffer[] = [];
|
|
355
|
+
return await new Promise((resolve, reject) => {
|
|
356
|
+
process.stdin.on('data', (chunk) => chunks.push(chunk as Buffer));
|
|
357
|
+
process.stdin.on('end', () => resolve(Buffer.concat(chunks).toString('utf-8')));
|
|
358
|
+
process.stdin.on('error', (err) => reject(err));
|
|
359
|
+
});
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
async function runBatch(program: Command, source: string, stopOnError: boolean, batchCmd: Command): Promise<void> {
|
|
363
|
+
const globalOpts = batchCmd.optsWithGlobals<GlobalOpts>();
|
|
364
|
+
const globalFlags: string[] = [];
|
|
365
|
+
if (globalOpts.server !== undefined) {
|
|
366
|
+
globalFlags.push('--server', globalOpts.server);
|
|
367
|
+
}
|
|
368
|
+
if (globalOpts.autostart === false) {
|
|
369
|
+
globalFlags.push('--no-autostart');
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
const lines = source.split('\n');
|
|
373
|
+
let ok = 0;
|
|
374
|
+
let failed = 0;
|
|
375
|
+
for (const rawLine of lines) {
|
|
376
|
+
const line = rawLine.trim();
|
|
377
|
+
if (line === '' || line.startsWith('#') === true) continue;
|
|
378
|
+
|
|
379
|
+
const argv = stringArgv(line);
|
|
380
|
+
if (argv.length === 0) continue;
|
|
381
|
+
|
|
382
|
+
console.log(`> ${line}`);
|
|
383
|
+
try {
|
|
384
|
+
await program.parseAsync([...globalFlags, ...argv], { from: 'user' });
|
|
385
|
+
ok += 1;
|
|
386
|
+
} catch (err) {
|
|
387
|
+
failed += 1;
|
|
388
|
+
if (err instanceof SilentExitError === false && err instanceof CommanderError === false) {
|
|
389
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
390
|
+
console.error(`fastbrowser-cli error: ${message}`);
|
|
391
|
+
}
|
|
392
|
+
if (stopOnError === true) {
|
|
393
|
+
throw new SilentExitError();
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
if (stopOnError === false) {
|
|
399
|
+
console.log(`batch: ${ok} ok, ${failed} failed`);
|
|
400
|
+
}
|
|
401
|
+
if (failed > 0) {
|
|
402
|
+
throw new SilentExitError();
|
|
403
|
+
}
|
|
338
404
|
}
|
|
339
405
|
|
|
340
406
|
void main();
|
|
@@ -343,8 +343,10 @@ class MainHelper {
|
|
|
343
343
|
}
|
|
344
344
|
}
|
|
345
345
|
console.error("Keys to send:", keysToSend);
|
|
346
|
-
//
|
|
347
|
-
|
|
346
|
+
// chrome-devtools-mcp's 'press_key' tool accepts a single 'key' per call — loop through the sequence
|
|
347
|
+
for (const key of keysToSend) {
|
|
348
|
+
await mcpClient.callTool('press_key', { key });
|
|
349
|
+
}
|
|
348
350
|
|
|
349
351
|
// return a response indicating which keys were pressed
|
|
350
352
|
return {
|