UNPKG

@wonderwhy-er/desktop-commander

Version:

MCP server for terminal operations and file editing

30 lines (29 loc) 1.25 kB
import { MCPDevice } from '../remote-device/device.js'; import os from 'os'; export async function runRemote() { const persistSession = process.argv.includes('--persist-session'); const disableNoSleep = process.argv.includes('--disable-no-sleep'); const verbose = process.argv.includes('--debug'); console.debug('[DEBUG] Verbose mode: ', verbose); // Override console.debug based on verbose flag // When --debug is not provided, console.debug becomes a no-op if (!verbose) { console.debug = () => { }; } console.debug('[DEBUG] Platform:', os.platform()); // Start caffeinate on macOS (unless disabled) // Caffeinate will monitor this process and automatically exit when it terminates if (!disableNoSleep && os.platform() === 'darwin') { try { console.debug('[DEBUG] Start caffeinate', process.pid); const { default: caffeinate } = await import('caffeinate'); caffeinate({ pid: process.pid }); console.log('☕ No sleep mode enabled'); } catch (error) { console.warn('⚠️ Failed to start caffeinate:', error); } } const device = new MCPDevice({ persistSession }); await device.start(); }