browser-devtools-mcp 0.1.4 → 0.1.6

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.
Files changed (56) hide show
  1. package/README.md +554 -7
  2. package/SECURITY.md +136 -0
  3. package/dist/cli.js +1847 -0
  4. package/dist/cli.js.map +1 -0
  5. package/dist/config.js +5 -1
  6. package/dist/config.js.map +1 -1
  7. package/dist/context.js +7 -7
  8. package/dist/context.js.map +1 -1
  9. package/dist/daemon-server.js +338 -0
  10. package/dist/daemon-server.js.map +1 -0
  11. package/dist/index.js +3 -260
  12. package/dist/index.js.map +1 -1
  13. package/dist/mcp-server.js +401 -0
  14. package/dist/mcp-server.js.map +1 -0
  15. package/dist/tools/a11y/take-aria-snapshot.js.map +1 -1
  16. package/dist/tools/a11y/take-ax-tree-snapshot.js.map +1 -1
  17. package/dist/tools/content/get-as-html.js.map +1 -1
  18. package/dist/tools/content/get-as-text.js.map +1 -1
  19. package/dist/tools/content/save-as-pdf.js.map +1 -1
  20. package/dist/tools/content/take-screenshot.js.map +1 -1
  21. package/dist/tools/figma/compare-page-with-design.js.map +1 -1
  22. package/dist/tools/interaction/click.js.map +1 -1
  23. package/dist/tools/interaction/drag.js.map +1 -1
  24. package/dist/tools/interaction/fill.js.map +1 -1
  25. package/dist/tools/interaction/hover.js.map +1 -1
  26. package/dist/tools/interaction/press-key.js.map +1 -1
  27. package/dist/tools/interaction/resize-viewport.js.map +1 -1
  28. package/dist/tools/interaction/resize-window.js.map +1 -1
  29. package/dist/tools/interaction/scroll.js.map +1 -1
  30. package/dist/tools/interaction/select.js.map +1 -1
  31. package/dist/tools/navigation/go-back.js.map +1 -1
  32. package/dist/tools/navigation/go-forward.js.map +1 -1
  33. package/dist/tools/navigation/go-to.js.map +1 -1
  34. package/dist/tools/navigation/reload.js.map +1 -1
  35. package/dist/tools/o11y/get-console-messages.js.map +1 -1
  36. package/dist/tools/o11y/get-http-requests.js.map +1 -1
  37. package/dist/tools/o11y/get-trace-id.js.map +1 -1
  38. package/dist/tools/o11y/get-web-vitals.js.map +1 -1
  39. package/dist/tools/o11y/new-trace-id.js.map +1 -1
  40. package/dist/tools/o11y/set-trace-id.js.map +1 -1
  41. package/dist/tools/react/get-component-for-element.js.map +1 -1
  42. package/dist/tools/react/get-element-for-component.js.map +1 -1
  43. package/dist/tools/run/js-in-browser.js.map +1 -1
  44. package/dist/tools/run/js-in-sandbox.js.map +1 -1
  45. package/dist/tools/stub/clear.js.map +1 -1
  46. package/dist/tools/stub/intercept-http-request.js.map +1 -1
  47. package/dist/tools/stub/list.js.map +1 -1
  48. package/dist/tools/stub/mock-http-response.js.map +1 -1
  49. package/dist/tools/sync/wait-for-network-idle.js.map +1 -1
  50. package/dist/tools/tool-executor.js +1 -1
  51. package/dist/tools/tool-executor.js.map +1 -1
  52. package/dist/utils/cli-utils.js +253 -0
  53. package/dist/utils/cli-utils.js.map +1 -0
  54. package/package.json +6 -3
  55. package/dist/server.js +0 -154
  56. package/dist/server.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FIGMA_API_BASE_URL = exports.FIGMA_ACCESS_TOKEN = exports.AMAZON_BEDROCK_VISION_MODEL_ID = exports.AMAZON_BEDROCK_TEXT_EMBED_MODEL_ID = exports.AMAZON_BEDROCK_IMAGE_EMBED_MODEL_ID = exports.AMAZON_BEDROCK_ENABLE = exports.AWS_PROFILE = exports.AWS_REGION = exports.OTEL_EXPORTER_HTTP_HEADERS = exports.OTEL_EXPORTER_HTTP_URL = exports.OTEL_EXPORTER_TYPE = exports.OTEL_INSTRUMENTATION_USER_INTERACTION_EVENTS = exports.OTEL_ASSETS_DIR = exports.OTEL_SERVICE_VERSION = exports.OTEL_SERVICE_NAME = exports.OTEL_ENABLE = exports.BROWSER_EXECUTABLE_PATH = exports.BROWSER_USE_INSTALLED_ON_SYSTEM = exports.BROWSER_PERSISTENT_USER_DATA_DIR = exports.BROWSER_PERSISTENT_ENABLE = exports.BROWSER_HEADLESS_ENABLE = exports.HTTP_REQUESTS_BUFFER_SIZE = exports.CONSOLE_MESSAGES_BUFFER_SIZE = exports.SESSION_CLOSE_ON_SOCKET_CLOSE = exports.SESSION_IDLE_CHECK_SECONDS = exports.SESSION_IDLE_SECONDS = exports.PORT = void 0;
6
+ exports.DAEMON_SESSION_IDLE_CHECK_SECONDS = exports.DAEMON_SESSION_IDLE_SECONDS = exports.DAEMON_PORT = exports.FIGMA_API_BASE_URL = exports.FIGMA_ACCESS_TOKEN = exports.AMAZON_BEDROCK_VISION_MODEL_ID = exports.AMAZON_BEDROCK_TEXT_EMBED_MODEL_ID = exports.AMAZON_BEDROCK_IMAGE_EMBED_MODEL_ID = exports.AMAZON_BEDROCK_ENABLE = exports.AWS_PROFILE = exports.AWS_REGION = exports.OTEL_EXPORTER_HTTP_HEADERS = exports.OTEL_EXPORTER_HTTP_URL = exports.OTEL_EXPORTER_TYPE = exports.OTEL_INSTRUMENTATION_USER_INTERACTION_EVENTS = exports.OTEL_ASSETS_DIR = exports.OTEL_SERVICE_VERSION = exports.OTEL_SERVICE_NAME = exports.OTEL_ENABLE = exports.BROWSER_EXECUTABLE_PATH = exports.BROWSER_USE_INSTALLED_ON_SYSTEM = exports.BROWSER_PERSISTENT_USER_DATA_DIR = exports.BROWSER_PERSISTENT_ENABLE = exports.BROWSER_HEADLESS_ENABLE = exports.HTTP_REQUESTS_BUFFER_SIZE = exports.CONSOLE_MESSAGES_BUFFER_SIZE = exports.SESSION_CLOSE_ON_SOCKET_CLOSE = exports.SESSION_IDLE_CHECK_SECONDS = exports.SESSION_IDLE_SECONDS = exports.PORT = void 0;
7
7
  const path_1 = __importDefault(require("path"));
8
8
  function _envStr(name) {
9
9
  const v = process.env[name];
@@ -89,4 +89,8 @@ exports.AMAZON_BEDROCK_VISION_MODEL_ID = _envStr('AMAZON_BEDROCK_VISION_MODEL_ID
89
89
  // Figma Configs
90
90
  exports.FIGMA_ACCESS_TOKEN = _envStr('FIGMA_ACCESS_TOKEN') ?? '';
91
91
  exports.FIGMA_API_BASE_URL = _envStr('FIGMA_API_BASE_URL') ?? 'https://api.figma.com/v1';
92
+ // Daemon Configs
93
+ exports.DAEMON_PORT = _envInt('DAEMON_PORT') ?? 2020;
94
+ exports.DAEMON_SESSION_IDLE_SECONDS = _envInt('DAEMON_SESSION_IDLE_SECONDS') ?? 300;
95
+ exports.DAEMON_SESSION_IDLE_CHECK_SECONDS = _envInt('DAEMON_SESSION_IDLE_CHECK_SECONDS') ?? 30;
92
96
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/context.js CHANGED
@@ -33,14 +33,14 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.McpSessionContext = void 0;
36
+ exports.ToolSessionContext = void 0;
37
37
  const browser_1 = require("./browser");
38
38
  const config_1 = require("./config");
39
39
  const logger = __importStar(require("./logger"));
40
40
  const otel_controller_1 = require("./otel/otel-controller");
41
41
  const types_1 = require("./types");
42
42
  const utils_1 = require("./utils");
43
- class McpSessionContext {
43
+ class ToolSessionContext {
44
44
  _sessionId;
45
45
  options;
46
46
  otelController;
@@ -277,22 +277,22 @@ class McpSessionContext {
277
277
  if (this.closed) {
278
278
  return false;
279
279
  }
280
- logger.debug(`Closing OTEL controller of the MCP session with id ${this._sessionId} ...`);
280
+ logger.debug(`Closing OTEL controller of the session with id ${this._sessionId} ...`);
281
281
  await this.otelController.close();
282
282
  // Page(s) owned by browser context are already closed by the browser context itself
283
283
  try {
284
- logger.debug(`Closing browser context of the MCP session with id ${this._sessionId} ...`);
284
+ logger.debug(`Closing browser context of the session with id ${this._sessionId} ...`);
285
285
  await (0, browser_1.closeBrowserContext)(this.browserContext);
286
286
  }
287
287
  catch (err) {
288
- logger.debug(`Error occurred while closing browser context of the MCP session with id ${this._sessionId} ...`, err);
288
+ logger.debug(`Error occurred while closing browser context of the session with id ${this._sessionId} ...`, err);
289
289
  }
290
290
  this.consoleMessages.length = 0;
291
291
  this.httpRequests.length = 0;
292
- // We are not closing browser here as it is shared between sessions, so it should be closed on MCP server close/shutdown
292
+ // We are not closing browser here as it is shared between sessions, so it should be closed on server close/shutdown
293
293
  this.closed = true;
294
294
  return true;
295
295
  }
296
296
  }
297
- exports.McpSessionContext = McpSessionContext;
297
+ exports.ToolSessionContext = ToolSessionContext;
298
298
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,338 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.startDaemonHTTPServer = startDaemonHTTPServer;
37
+ const config = __importStar(require("./config"));
38
+ const logger = __importStar(require("./logger"));
39
+ const tools_1 = require("./tools");
40
+ const node_server_1 = require("@hono/node-server");
41
+ const hono_1 = require("hono");
42
+ const cors_1 = require("hono/cors");
43
+ const zod_1 = require("zod");
44
+ let daemonStartTime = 0;
45
+ let daemonPort = 0;
46
+ const app = new hono_1.Hono();
47
+ const sessions = new Map();
48
+ const DEFAULT_SESSION_ID = '#default';
49
+ const ERRORS = {
50
+ get sessionNotFound() {
51
+ return _buildErrorResponse(404, 'Session Not Found');
52
+ },
53
+ get toolNotFound() {
54
+ return _buildErrorResponse(404, 'Tool Not Found');
55
+ },
56
+ get internalServerError() {
57
+ return _buildErrorResponse(500, 'Internal Server Error');
58
+ },
59
+ };
60
+ function _buildErrorResponse(code, message) {
61
+ return {
62
+ error: {
63
+ code: code,
64
+ message: message,
65
+ },
66
+ };
67
+ }
68
+ async function _closeSession(session) {
69
+ session.closed = true;
70
+ if (session.context) {
71
+ try {
72
+ await session.context.close();
73
+ logger.debug('Closed MCP session context');
74
+ }
75
+ catch (err) {
76
+ logger.error('Error occurred while closing MCP session context', err);
77
+ }
78
+ }
79
+ sessions.delete(session.id);
80
+ }
81
+ function _createSession(ctx, sessionId) {
82
+ const now = Date.now();
83
+ const session = {
84
+ id: sessionId,
85
+ toolExecutor: new tools_1.ToolExecutor(() => sessionId),
86
+ closed: false,
87
+ createdAt: now,
88
+ lastActiveAt: now,
89
+ };
90
+ logger.debug(`Created session with id ${sessionId}`);
91
+ return session;
92
+ }
93
+ function _getSessionInfo(session) {
94
+ const now = Date.now();
95
+ return {
96
+ id: session.id,
97
+ createdAt: session.createdAt,
98
+ lastActiveAt: session.lastActiveAt,
99
+ idleSeconds: Math.floor((now - session.lastActiveAt) / 1000),
100
+ };
101
+ }
102
+ async function _getSession(ctx) {
103
+ const sessionId = ctx.req.header('session-id') || DEFAULT_SESSION_ID;
104
+ return sessions.get(sessionId);
105
+ }
106
+ async function _getOrCreateSession(ctx) {
107
+ const sessionId = ctx.req.header('session-id') || DEFAULT_SESSION_ID;
108
+ let session = sessions.get(sessionId);
109
+ if (session) {
110
+ logger.debug(`Reusing session with id ${sessionId}`);
111
+ }
112
+ else {
113
+ logger.debug(`No session could be found with id ${sessionId}`);
114
+ session = _createSession(ctx, sessionId);
115
+ sessions.set(sessionId, session);
116
+ }
117
+ return session;
118
+ }
119
+ function _scheduleIdleSessionCheck() {
120
+ let noActiveSession = false;
121
+ const sessionCheck = () => {
122
+ const currentTime = Date.now();
123
+ if (noActiveSession && sessions.size === 0) {
124
+ // There is no active session from last check and still there is no active session
125
+ logger.info('No active session found, so terminating daemon server');
126
+ process.exit(0);
127
+ }
128
+ for (const [sessionId, session] of sessions) {
129
+ logger.debug(`Checking whether session with id ${sessionId} is idle or not ...`);
130
+ if (currentTime - session.lastActiveAt >
131
+ config.DAEMON_SESSION_IDLE_SECONDS * 1000) {
132
+ logger.debug(`Session with id ${sessionId} is idle, so it will be closing ...`);
133
+ _closeSession(session)
134
+ .then(() => {
135
+ logger.debug(`Session with id ${sessionId} was idle, so it has been closed`);
136
+ })
137
+ .catch((err) => {
138
+ logger.error(`Unable to delete idle session with id ${sessionId}`, err);
139
+ });
140
+ }
141
+ }
142
+ noActiveSession = sessions.size === 0;
143
+ };
144
+ setInterval(sessionCheck, config.DAEMON_SESSION_IDLE_CHECK_SECONDS * 1000);
145
+ }
146
+ async function _logRequest(ctx) {
147
+ const reqClone = ctx.req.raw.clone();
148
+ logger.debug(`Got request: ${await reqClone.json()}`);
149
+ }
150
+ async function startDaemonHTTPServer(port) {
151
+ const toolMap = Object.fromEntries(tools_1.tools.map((tool) => [tool.name(), tool]));
152
+ // Global CORS
153
+ app.use('*', (0, cors_1.cors)({
154
+ origin: '*',
155
+ allowMethods: ['GET', 'POST', 'DELETE', 'OPTIONS'],
156
+ allowHeaders: ['Content-Type', 'Authorization', 'session-id'],
157
+ }));
158
+ // Store daemon port and start time
159
+ daemonPort = port;
160
+ daemonStartTime = Date.now();
161
+ // Graceful shutdown handler
162
+ const gracefulShutdown = async (signal) => {
163
+ logger.info(`Received ${signal}, initiating graceful shutdown...`);
164
+ // Close all sessions
165
+ const closePromises = [];
166
+ for (const session of sessions.values()) {
167
+ closePromises.push(_closeSession(session));
168
+ }
169
+ await Promise.allSettled(closePromises);
170
+ logger.info('All sessions closed, exiting...');
171
+ process.exit(0);
172
+ };
173
+ process.on('SIGTERM', () => gracefulShutdown('SIGTERM'));
174
+ process.on('SIGINT', () => gracefulShutdown('SIGINT'));
175
+ // Handle uncaught errors to prevent crashes
176
+ process.on('uncaughtException', (err) => {
177
+ logger.error('Uncaught exception', err);
178
+ });
179
+ process.on('unhandledRejection', (reason) => {
180
+ logger.error('Unhandled rejection', reason);
181
+ });
182
+ // MCP Health
183
+ app.get('/health', (ctx) => ctx.json({ status: 'ok' }));
184
+ // Daemon info
185
+ app.get('/info', (ctx) => {
186
+ const info = {
187
+ version: require('../package.json').version,
188
+ uptime: Math.floor((Date.now() - daemonStartTime) / 1000),
189
+ sessionCount: sessions.size,
190
+ port: daemonPort,
191
+ };
192
+ return ctx.json(info);
193
+ });
194
+ // List all sessions
195
+ app.get('/sessions', (ctx) => {
196
+ const sessionList = [];
197
+ for (const session of sessions.values()) {
198
+ sessionList.push(_getSessionInfo(session));
199
+ }
200
+ return ctx.json({ sessions: sessionList });
201
+ });
202
+ // Get session info
203
+ app.get('/session', async (ctx) => {
204
+ const session = await _getSession(ctx);
205
+ if (!session) {
206
+ return ctx.json(ERRORS.sessionNotFound, 404);
207
+ }
208
+ return ctx.json(_getSessionInfo(session));
209
+ });
210
+ // Shutdown daemon server
211
+ app.post('/shutdown', async (ctx) => {
212
+ logger.info('Shutdown request received, closing all sessions...');
213
+ // Close all sessions
214
+ const closePromises = [];
215
+ for (const session of sessions.values()) {
216
+ closePromises.push(_closeSession(session));
217
+ }
218
+ await Promise.allSettled(closePromises);
219
+ logger.info('All sessions closed, shutting down daemon server...');
220
+ // Schedule process exit after response is sent
221
+ setTimeout(() => {
222
+ process.exit(0);
223
+ }, 500);
224
+ return ctx.json({ status: 'shutting_down' }, 200);
225
+ });
226
+ // Call message
227
+ app.post('/call', async (ctx) => {
228
+ try {
229
+ if (logger.isDebugEnabled()) {
230
+ await _logRequest(ctx);
231
+ }
232
+ const session = await _getOrCreateSession(ctx);
233
+ session.lastActiveAt = Date.now();
234
+ const toolCallRequest = (await ctx.req.json());
235
+ const tool = toolMap[toolCallRequest.toolName];
236
+ if (!tool) {
237
+ return ctx.json(ERRORS.toolNotFound, 404);
238
+ }
239
+ let toolInput;
240
+ try {
241
+ const schema = zod_1.z.object(tool.inputSchema());
242
+ toolInput = schema.parse(toolCallRequest.toolInput);
243
+ }
244
+ catch (err) {
245
+ // Return validation error with details
246
+ const errorMessage = err.errors && Array.isArray(err.errors)
247
+ ? err.errors
248
+ .map((e) => `${e.path?.join('.') || 'input'}: ${e.message}`)
249
+ .join('; ')
250
+ : 'Invalid tool input';
251
+ return ctx.json(_buildErrorResponse(400, `Invalid Tool Request: ${errorMessage}`), 400);
252
+ }
253
+ try {
254
+ const toolOutput = await session.toolExecutor.executeTool(tool, toolInput);
255
+ const toolCallResponse = {
256
+ toolOutput,
257
+ };
258
+ return ctx.json(toolCallResponse, 200);
259
+ }
260
+ catch (err) {
261
+ const toolCallResponse = {
262
+ toolError: {
263
+ code: err.code,
264
+ message: err.message,
265
+ },
266
+ };
267
+ return ctx.json(toolCallResponse, 500);
268
+ }
269
+ }
270
+ catch (err) {
271
+ logger.error('Error occurred while handling tool call request', err);
272
+ return ctx.json(ERRORS.internalServerError, 500);
273
+ }
274
+ });
275
+ // Delete session
276
+ app.delete('/session', async (ctx) => {
277
+ try {
278
+ const session = await _getSession(ctx);
279
+ if (!session) {
280
+ return ctx.json(ERRORS.sessionNotFound, 404);
281
+ }
282
+ await _closeSession(session);
283
+ return ctx.json({ ok: true }, 200);
284
+ }
285
+ catch (err) {
286
+ logger.error('Error occurred while deleting session', err);
287
+ return ctx.json(ERRORS.internalServerError, 500);
288
+ }
289
+ });
290
+ // Global error handler
291
+ app.onError((err, ctx) => {
292
+ logger.error('Unhandled error in request handler', err);
293
+ return ctx.json({
294
+ error: {
295
+ code: 500,
296
+ message: 'Internal Server Error',
297
+ },
298
+ }, 500);
299
+ });
300
+ // 404
301
+ app.notFound((ctx) => ctx.json({ error: 'Not Found', status: 404 }, 404));
302
+ // Listener for Node
303
+ (0, node_server_1.serve)({
304
+ fetch: app.fetch,
305
+ port,
306
+ }, () => logger.info(`Listening on port ${port}`));
307
+ // Schedule background task to check (and remove) idle sessions
308
+ _scheduleIdleSessionCheck();
309
+ }
310
+ // Main entry point when run directly
311
+ if (require.main === module) {
312
+ const { Command, InvalidOptionArgumentError, Option, } = require('commander');
313
+ function parsePort(value) {
314
+ const n = Number(value);
315
+ if (!Number.isInteger(n) || n < 1 || n > 65535) {
316
+ throw new InvalidOptionArgumentError('port must be an integer between 1 and 65535');
317
+ }
318
+ return n;
319
+ }
320
+ const program = new Command()
321
+ .addOption(new Option('--port <number>', 'port for daemon HTTP server')
322
+ .argParser(parsePort)
323
+ .default(config.DAEMON_PORT))
324
+ .allowUnknownOption()
325
+ .parse(process.argv);
326
+ const options = program.opts();
327
+ logger.enable();
328
+ logger.info('Starting daemon HTTP server...');
329
+ startDaemonHTTPServer(options.port)
330
+ .then(() => {
331
+ logger.info('Daemon HTTP server started');
332
+ })
333
+ .catch((err) => {
334
+ logger.error('Failed to start daemon HTTP server', err);
335
+ process.exit(1);
336
+ });
337
+ }
338
+ //# sourceMappingURL=daemon-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-server.js","sourceRoot":"","sources":["../src/daemon-server.ts"],"names":[],"mappings":"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"}