Lines 720-760javascript
720 if (fs.existsSync(chromiumPath))
721 pass('Playwright Chromium browser installed');
723 warn('Playwright Chromium browser not installed', 'Run: npx playwright install chromium');
726 fail('Playwright is not ready', 'Run: npm install && npx playwright install chromium');
729 console.log(`\n${chalk_1.default.blue('Python and WebPilot engine')}`);
731 const { resolvePythonPath, hasBrowserUse, findCompatibleSystemPython } = require('../integrations/browser_use/PythonRuntime');
732 const py = resolvePythonPath();
733 const version = execSync(`"${py}" -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}')"`, { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
734 const [major, minor] = version.split('.').map(Number);
735 if (major > 3 || (major === 3 && minor >= 11))
736 pass(`Python ${version} (${py})`);
738 const compatiblePython = findCompatibleSystemPython();
739 if (compatiblePython) {
741 const candidateVersion = execSync(`${compatiblePython} -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}')"`, { encoding: 'utf8', stdio: ['pipe', 'pipe', 'pipe'], shell: true }).trim();
742 warn(`Current Python ${version} is too old, but ${compatiblePython} (${candidateVersion}) is available`, 'Run: webpilot setup');
745 warn(`Current Python ${version} is too old, but ${compatiblePython} is available`, 'Run: webpilot setup');
749 fail(`Python ${version} is too old`, 'Install Python 3.11+ and run: webpilot setup');
752 if (!hasBrowserUse(py)) {
753 warn(`browser_use not installed for ${py}`, 'Run: webpilot setup');
756 const installRoot = (0, ProjectContext_1.findCliInstallRoot)();
757 const source = execSync(`"${py}" -c "import browser_use; print(browser_use.__file__)"`, {