diff --git a/dist/main/shell_handlers.js b/dist/main/shell_handlers.js index 8b624ed..ee1223b 100644 --- a/dist/main/shell_handlers.js +++ b/dist/main/shell_handlers.js @@ -224,65 +224,115 @@ end tell }); electron_1.ipcMain.handle('native:list-tools', async () => { return [ + // --- Config & Info --- + { + name: 'get_device_config', + description: 'Returns hydrated device config injected at startup from seed.json + API.', + params: {} + }, + { + name: 'get_device_info', + description: 'Returns OS metadata: platform, hostname, IPs, CPU count, free RAM, home/tmp paths.', + params: {} + }, + // --- File Cache --- + { + name: 'check_cache', + description: 'Checks if a file exists in the hashed cache. verify_hash:true re-hashes to confirm integrity.', + params: { cache_root: 'string', hash: 'string', hash_prefix_length: 'number (optional, default 2)', verify_hash: 'boolean (optional)' } + }, + { + name: 'download_to_cache', + description: 'Streams a file from the API into the hashed cache with SHA-256 integrity check. Cleans stale .tmp files older than 5 min.', + params: { url: 'string', cache_root: 'string', hash: 'string', api_key: 'string', account_id: 'string', hash_prefix_length: 'number (optional, default 2)' } + }, + { + name: 'copy_from_cache_to_temp', + description: 'Preferred primitive. Copies a cached file to temp with its original filename. Returns { success, path }. Caller decides what to do next.', + params: { cache_root: 'string', hash: 'string', temp_root: 'string', filename: 'string', hash_prefix_length: 'number (optional, default 2)' } + }, + { + name: 'launch_from_cache', + description: 'Combines copy_from_cache_to_temp + execute. Runs native_template after copying — AppleScript string with {{path}} placeholder, or "shell:" prefix. Returns error if native_template is null.', + params: { cache_root: 'string', hash: 'string', temp_root: 'string', filename: 'string', hash_prefix_length: 'number (optional)', native_template: 'string | null' } + }, + // --- Shell & OS --- { name: 'open_folder', - description: 'Opens a directory in the OS file explorer (Finder/Files/Explorer).', + description: 'Opens a directory in the OS file explorer (Finder on macOS).', params: { path: 'string' } }, { name: 'run_cmd', - description: 'Executes an asynchronous shell command with a timeout.', - params: { cmd: 'string', timeout: 'number (optional)' } + description: 'Async shell command execution with timeout.', + params: { cmd: 'string', timeout: 'number (optional, default 30000ms)' } }, { name: 'run_cmd_sync', - description: 'Executes a synchronous shell command.', + description: 'Synchronous shell command execution.', params: { cmd: 'string' } }, { name: 'run_osascript', - description: 'Executes a raw AppleScript string (macOS only).', + description: 'Hardened AppleScript executor — writes to temp .scpt file, handles multi-line scripts and paths with special characters. macOS only.', params: { script: 'string' } }, { name: 'kill_processes', - description: 'Forcefully terminates processes by name.', + description: 'Terminates processes by name. macOS/Linux: pkill -f. Windows: taskkill /F.', params: { process_name_li: 'string[]' } }, { name: 'open_local_file_v2', - description: 'Opens a local file using the default OS handler.', - params: { filePath: 'string' } + description: 'Opens a file with its default OS application via shell.openPath.', + params: { path: 'string' } }, + { + name: 'open_external', + description: 'Opens a URL in Chrome, Firefox, or the system default browser.', + params: { url: 'string', app: 'chrome | firefox | default (optional)' } + }, + // --- Presentations --- { name: 'launch_presentation', - description: 'Phase 5: Specialized launcher for PowerPoint, Keynote, and LibreOffice with auto-focus.', - params: { path: 'string', app: 'default|powerpoint|keynote' } + description: 'Platform-aware launcher for PowerPoint, Keynote, LibreOffice. Resolves [home]/[tmp] placeholders. Hardened AppleScript (2026-05-11). Prefer copy_from_cache_to_temp + run_osascript for new flows.', + params: { path: 'string', app: 'default | powerpoint | keynote (optional)', os_platform: 'string (optional)' } }, { name: 'control_presentation', - description: 'Phase 5: Remote navigation for active slideshows.', - params: { app: 'powerpoint|keynote', action: 'next|prev|start|stop' } + description: 'Slide navigation for active PowerPoint or Keynote via AppleScript. macOS only.', + params: { app: 'powerpoint | keynote', action: 'next | prev | start | stop' } + }, + // --- System Management --- + { + name: 'set_wallpaper', + description: 'Sets desktop wallpaper. Downloads from url (cached to ~/Library/Caches/OSIT/wallpaper/) or applies local path. url_external targets projector/second display separately. macOS only in production.', + params: { path: 'string (optional)', url: 'string (optional)', url_external: 'string (optional)', display: 'all | primary | external (optional, default all)', api_key: 'string (optional)', account_id: 'string (optional)' } }, { - name: 'check_cache', - description: 'Checks if a file exists in the local organized cache.', - params: { cache_root: 'string', hash: 'string', hash_prefix_length: 'number' } + name: 'set_display_layout', + description: 'Mirror or extend displays via bundled displayplacer. macOS only. Auto-detects displays when no configStr given; configStr is an optional manual override.', + params: { mode: 'mirror | extend', configStr: 'string (optional)' } }, { - name: 'download_to_cache', - description: 'Downloads a file from the API directly into the native cache.', - params: { url: 'string', cache_root: 'string', hash: 'string', api_key: 'string', account_id: 'string' } + name: 'window_control', + description: 'Electron window management.', + params: { action: 'maximize | unmaximize | minimize | restore | close | fullscreen | kiosk | devtools | reload', value: 'boolean (optional, used by fullscreen/kiosk/devtools)' } }, { - name: 'launch_from_cache', - description: 'Atomic operation: Copies file from cache to temp with original name and launches via specialized handler.', - params: { cache_root: 'string', hash: 'string', temp_root: 'string', filename: 'string' } + name: 'power_control', + description: 'Shutdown, reboot, or sleep the host machine. macOS + Linux. May require sudo for shutdown/reboot.', + params: { action: 'shutdown | reboot | sleep' } }, { - name: 'get_device_info', - description: 'Returns hardware and OS metadata (CPUs, RAM, IP addresses, Hostname).', - params: {} + name: 'manage_recording', + description: 'Screen recording via bundled aperture binary. macOS only.', + params: { action: 'start | stop | status', options: '{ fps?, audioDeviceId?, output? } (optional)' } + }, + { + name: 'update_app', + description: 'STUB: Downloads update package but does not install. Not functional.', + params: { source: 'url | file', url: 'string (optional)', path: 'string (optional)' } } ]; }); diff --git a/dist/main/shell_handlers.js.map b/dist/main/shell_handlers.js.map index b254a80..fef063c 100644 --- a/dist/main/shell_handlers.js.map +++ b/dist/main/shell_handlers.js.map @@ -1 +1 @@ -{"version":3,"file":"shell_handlers.js","sourceRoot":"","sources":["../../src/main/shell_handlers.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"shell_handlers.js","sourceRoot":"","sources":["../../src/main/shell_handlers.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/main/system_handlers.js b/dist/main/system_handlers.js index 45c4894..19faac5 100644 --- a/dist/main/system_handlers.js +++ b/dist/main/system_handlers.js @@ -361,32 +361,68 @@ function registerSystemHandlers() { return { success: false, error: 'Unknown action' }; }); // 6. Set Display Layout (Displayplacer) + // Auto-detects connected displays via `displayplacer list` when no explicit configStr is given. + // mirror: secondary display(s) mirror the primary. + // extend: displays shown side-by-side; un-mirrors if currently mirrored. electron_1.ipcMain.handle('native:set-display-layout', async (event, { mode, configStr }) => { if (os.platform() !== 'darwin') return { success: false, error: 'Display control only supported on macOS' }; const binPath = electron_1.app.isPackaged ? path.join(process.resourcesPath, 'bin', 'displayplacer') : path.join(__dirname, '../../resources/bin/displayplacer'); - let cmd = ''; + // Explicit config string always takes priority — allows manual override per device. + if (configStr) { + return await runExec(`"${binPath}" ${configStr}`); + } + // Auto-detect: `displayplacer list` emits a ready-to-run command line at the bottom. + // We parse the quoted display strings from that line and modify them for the requested mode. + const list_result = await runExec(`"${binPath}" list`); + if (!list_result.success || !list_result.stdout) { + return { success: false, error: `displayplacer list failed: ${list_result.error ?? 'no output'}` }; + } + // The command line looks like: displayplacer "id:xxx res:... origin:(0,0) ..." "id:yyy ..." + const cmd_line = list_result.stdout.split('\n').find(l => l.trim().startsWith('displayplacer "')); + if (!cmd_line) { + return { success: false, error: 'Only one display connected or displayplacer list output unrecognised' }; + } + const display_strings = [...cmd_line.matchAll(/"([^"]+)"/g)].map(m => m[1]); + if (display_strings.length < 2) { + return { success: false, error: 'Only one display found; cannot change layout' }; + } if (mode === 'mirror') { - // This usually requires querying current IDs, which is complex. - // If configStr is provided (output of 'displayplacer list'), use it. - if (configStr) { - cmd = `"${binPath}" ${configStr}`; + const primary_id_match = display_strings[0].match(/\bid:([^\s]+)/); + if (!primary_id_match) { + return { success: false, error: 'Could not parse primary display ID from displayplacer output' }; } - else { - return { success: false, error: 'Config string required for now' }; + const primary_id = primary_id_match[1]; + // Primary display unchanged; secondary display(s) get mirror:. + const mirror_args = display_strings.map((s, i) => { + if (i === 0) + return `"${s}"`; + const without_existing_mirror = s.replace(/\s*mirror:\S+/g, '').trim(); + return `"${without_existing_mirror} mirror:${primary_id}"`; + }).join(' '); + return await runExec(`"${binPath}" ${mirror_args}`); + } + if (mode === 'extend') { + const any_mirrored = display_strings.some(s => /\bmirror:\S+/.test(s)); + if (!any_mirrored) { + // Already extended — re-apply current layout to ensure it is active. + return await runExec(`"${binPath}" ${display_strings.map(s => `"${s}"`).join(' ')}`); } + // Remove mirror keys and compute side-by-side origins from each display's resolution. + let x_offset = 0; + const extend_args = display_strings.map((s) => { + const without_mirror = s.replace(/\s*mirror:\S+/g, '').trim(); + const res_match = without_mirror.match(/\bres:(\d+)x\d+/); + const width = res_match ? parseInt(res_match[1]) : 1920; + const updated = without_mirror.replace(/\borigin:\([^)]+\)/, `origin:(${x_offset},0)`); + x_offset += width; + return `"${updated}"`; + }).join(' '); + return await runExec(`"${binPath}" ${extend_args}`); } - else if (mode === 'extend') { - if (configStr) { - cmd = `"${binPath}" ${configStr}`; - } - } - if (cmd) { - return await runExec(cmd); - } - return { success: false, error: 'Invalid mode or missing config' }; + return { success: false, error: `Unsupported display mode: ${mode}` }; }); // 7. Update App electron_1.ipcMain.handle('native:update-app', async (event, { source, url, path: localPath }) => { diff --git a/dist/main/system_handlers.js.map b/dist/main/system_handlers.js.map index ff16e95..aea191c 100644 --- a/dist/main/system_handlers.js.map +++ b/dist/main/system_handlers.js.map @@ -1 +1 @@ -{"version":3,"file":"system_handlers.js","sourceRoot":"","sources":["../../src/main/system_handlers.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"system_handlers.js","sourceRoot":"","sources":["../../src/main/system_handlers.ts"],"names":[],"mappings":"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"} \ No newline at end of file