autokap 1.3.12 → 1.3.13

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 (2) hide show
  1. package/dist/browser.js +13 -10
  2. package/package.json +1 -1
package/dist/browser.js CHANGED
@@ -826,21 +826,24 @@ export class Browser {
826
826
  // backend is OpenGL on macOS, which is far slower than Metal for the
827
827
  // compositor (measured 4 FPS vs 32 FPS at 2880×1800 on a heavy React UI).
828
828
  // Same story on Windows where D3D11 is the native fast path. Cloud Run
829
- // L4 routes through Vulkan the most stable backend Chromium supports
830
- // on Linux + NVIDIA, with hardware-accelerated rasterization and video.
829
+ // L4 routes through ANGLE→OpenGL using NVIDIA's libGL/libEGL (mounted at
830
+ // /usr/local/nvidia/lib64). We tried `--use-angle=vulkan` first but
831
+ // Cloud Run does not bind-mount the NVIDIA Vulkan ICD, so vulkaninfo
832
+ // resolves to llvmpipe (software fallback). The OpenGL path goes through
833
+ // the EGL/GLX libs that ARE mounted, hitting the L4 directly.
831
834
  const angleArg = process.platform === 'darwin' ? '--use-angle=metal'
832
835
  : process.platform === 'win32' ? '--use-angle=d3d11'
833
- : isLinuxWithGpu ? '--use-angle=vulkan'
836
+ : isLinuxWithGpu ? '--use-angle=gl'
834
837
  : null;
835
- // Cloud Run NVIDIA L4: explicit Vulkan + GPU rasterization opt-ins.
836
- // `--ignore-gpu-blocklist` bypasses Chromium's hardcoded driver blocklist
837
- // (it doesn't know about Cloud Run's mounted NVIDIA driver). Skia GPU
838
- // rasterization + zero-copy texture upload are the throughput wins for
839
- // backdrop-filter, blur, and full-viewport repaints (the modal-open
840
- // scenario that defeats software rasterization at ~1 fps).
838
+ // Cloud Run NVIDIA L4: GPU rasterization + zero-copy upload via the GL
839
+ // backend. `--ignore-gpu-blocklist` bypasses Chromium's hardcoded driver
840
+ // blocklist (it doesn't know about Cloud Run's mounted NVIDIA driver).
841
+ // These flags target the throughput wins for backdrop-filter, blur, and
842
+ // full-viewport repaints the modal-open scenario that defeats software
843
+ // rasterization at ~1 fps.
841
844
  const cloudGpuArgs = isLinuxWithGpu
842
845
  ? [
843
- '--enable-features=Vulkan',
846
+ '--use-gl=angle',
844
847
  '--ignore-gpu-blocklist',
845
848
  '--enable-gpu-rasterization',
846
849
  '--enable-zero-copy',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "autokap",
3
- "version": "1.3.12",
3
+ "version": "1.3.13",
4
4
  "description": "AI-powered CLI tool for capturing clean screenshots of websites",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",