Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemssetFollowSymlinks() controls whether Puppeteer follows symlinks for file operations; it does not choose the browser-cache directory. To change where Puppeteer stores browser downloads, configure cacheDirectory or set PUPPETEER_CACHE_DIR. These are separate controls, and mixing them up can make Puppeteer look for a browser in the wrong place.
What does Puppeteer setFollowSymlinks() do?
The PuppeteerNode API describes setFollowSymlinks(followSymlinks) as defining “whether Puppeteer should follow symlinks for file operations.” The method is listed on the PuppeteerNode class, not as a browser-cache configuration property. The accessible API reference does not specify which individual file operations or paths it affects, nor does it establish a default value. See the PuppeteerNode API reference.
Do not use this method to relocate the browser cache or assume that disabling symlink following fixes a missing-browser error. For an exact symlink-related behavior, check the documentation for the Puppeteer version used by your project.
How to configure Puppeteer’s browser-cache directory
Puppeteer’s Configuration interface exposes cacheDirectory for selecting the directory used to cache browsers. Its current documented default is path.join(os.homedir(), '.cache', 'puppeteer'). The troubleshooting guide notes that Puppeteer began storing browsers in ~/.cache/puppeteer starting with v19.0.0. The current API Configuration page displays Puppeteer v25.12.0; defaults and guidance can change between versions. See the Configuration API and troubleshooting guide.
#1 Best Overall
- Get NVMe solid state performance with up to 1050MB/s read and 1000MB/s write speeds in a portable, high-capacity drive(1) (Based on internal testing; performance may be lower depending on host device & other factors. 1MB=1,000,000 bytes.)
- Up to 3-meter drop protection and IP65 water and dust resistance mean this tough drive can take a beating(3) (Previously rated for 2-meter drop protection and IP55 rating. Now qualified for the higher, stated specs.)
- Use the handy carabiner loop to secure it to your belt loop or backpack for extra peace of mind.
- Help keep private content private with the included password protection featuring 256‐bit AES hardware encryption.(3)
- Easily manage files and automatically free up space with the SanDisk Memory Zone app.(5). Non-Operating Temperature -20°C to 85°C
Option 1: Set cacheDirectory in a configuration file
The official guide recommends using a Puppeteer configuration file. For a project-local cache, create puppeteer.config.js in the project root:
import {join} from 'path';
export default {
cacheDirectory: join(import.meta.dirname, '.cache', 'puppeteer'),
};
This example is an ES module configuration. Use a configuration filename and module format supported by the Puppeteer version in your project. The Puppeteer configuration guide documents supported configuration options and files.
Rank #2
- Capacity Display Variance: 250GB external ssd often appears as around 232GB on Windows. MacOS can show full 250 GB capacity. This is binary calculation difference and doesn’t affect SSD hard drive actual physical storage
- 1050 MB/s Speed: Instantly access to your files with blazing-fast 10Gbps external SSD read up to 1050MB/s and write up to 1000MB/s. LED Light indicates USB SSD instant activity
- Data Security: Solid state drives S.M.A.R.T. health diagnostics and adaptive TRIM optimizing data block management ensures consistent write speeds and extends the longevity of the portable SSD
- USB-C & USB-A Cable: Both cables featuring rapid USB 3.2 Gen2, this USB SSD effortlessly bridges devices, enabling seamless cross-platform file transfers and backup between computers, smartphones, tablets and iPhone
- Always Fast: No slowdowns for large file transfers. With SLC caching (25% of current available capacity allocated as high-speed cache), this external SSD delivers steady 10Gbps for transfers within the cache capacity
Option 2: Set PUPPETEER_CACHE_DIR
Set the environment variable in the context where Puppeteer installs or locates its browser. For example, on a Unix-like shell:
export PUPPETEER_CACHE_DIR="$PWD/.cache/puppeteer"
npx puppeteer browsers install
The first line selects the cache directory; the second explicitly installs a browser using Puppeteer’s browser-install command. On Windows, set the environment variable using the shell or deployment platform’s environment-variable settings. Ensure the install process and the application runtime use the same value and have access to that path. Puppeteer documents PUPPETEER_CACHE_DIR as the environment-variable counterpart to cacheDirectory.
Recommended Free Tools
Rank #3
- 【Plug-and-Play Expandability】 With no software to install, just plug it in and the drive is ready to use in Windows(For Mac,first format the drive and select the ExFat format.
- 【Fast Data Transfers 】The external hard drives with the USB 3.0 cable to provide super fast transfer speed. The theoretical read speed is as high as 110MB/s-133MB/s, and the write speed is as high as 103MB/s.
- 【High capacity in a small enclosure 】The small, lightweight design offers up to 500GB capacity, offering ample space for storing large files, multimedia content, and backups with ease. Weighing only 0.35 Lbs, it's easy to carry "
- 【Wide Compatibility】Supports PS4 5/xbox one/Windows/Linux/Mac and other operating systems, ensuring seamless integration with game consoles,various laptops and desktops .
- Important Notes for PS/Xbox Gaming Devices: You can play last-gen games (PS4 / Xbox One) directly from an external hard drive. However, to play current-gen games (PS5 / Xbox Series X|S), you must copy them to the console's internal SSD first. The external drive is great for keeping your library on hand, but it can't run the new games.
How the symlink and cache settings differ
| Control | Purpose | Where it is configured | Use it when |
|---|---|---|---|
setFollowSymlinks(followSymlinks) |
Defines whether Puppeteer follows symlinks for file operations; the accessible method reference does not detail affected operations or a default. | PuppeteerNode method | You need to control documented symlink-following behavior, after checking the method details for your installed version. |
cacheDirectory |
Selects the directory Puppeteer uses for browser caching. | Puppeteer configuration file | You want the browser cache in a chosen location, such as a project-local or deployment-accessible directory. |
PUPPETEER_CACHE_DIR |
Selects the browser cache directory through an environment variable. | Environment for install/runtime | You need to set the cache path through a shell, container, or deployment environment. |
The method and the cache-path settings are not interchangeable: changing symlink behavior does not specify a cache location.
Package differences that affect configuration
puppeteerdownloads a browser by default. Its configuration file and environment variables can control browser setup, including the cache path.puppeteer-coredoes not download Chrome. It is intended for setups where you manage the browser yourself or connect to a remote browser. Puppeteer configuration files and environment variables do not apply topuppeteer-core.
If you use puppeteer-core, manage the browser binary and connection details through your own deployment or browser-management setup rather than expecting PUPPETEER_CACHE_DIR to configure it. See the configuration guide and installation guide.
Rank #4
- MADE FOR THE MAKERS: Create; Explore; Store; The T7 Portable SSD delivers fast speeds and durable features to back up any endeavor; Build your video editing empire, file your photographs or back up your blogs all in an instant
- SHARE IDEAS IN A FLASH: Don’t waste a second waiting and spend more time doing; The T7 is embedded with PCIe NVMe technology that brings fast read and write speeds up to 1,050/1,000 MB/s¹, making it almost twice as fast as the T5
- ALWAYS MAKE THE SAVE: Compact design with massive capacity; With capacities up to 4TB, save exactly what you need to your drive – from large working files to game data and everything in between
- ADAPTS TO EVERY NEED: Whether using a PC or mobile phone, count on the T7 for extensive compatibility²; It’s a true team player when it comes to heavy-duty application usage or file-saving
- HI RESOLUTION VIDEO RECORDING: Record Ultra High Resolution (4K 60fs) videos directly onto the T7 Portable SSD with your favorite camera or mobile devices; Supports iPhone 15 Pro Res 4K at 60fps video and more³
Apply cache changes and install the browser
- Choose the package. Confirm whether the project uses
puppeteerorpuppeteer-core. The latter does not download a browser and ignores Puppeteer configuration files and environment variables. - Set the path. Configure
cacheDirectoryin a supported configuration file, or setPUPPETEER_CACHE_DIRfor the relevant installation and runtime environments. - Rerun installation when required. After changing cache configuration, follow Puppeteer’s reinstall instruction so the new location takes effect. If you change browser download options, rerun the browser installation or postinstall behavior as directed by the configuration guide.
- Install explicitly if install scripts were skipped. The installation guide recommends running
npx puppeteer browsers installmanually when a package manager blocks install scripts, or allowing Puppeteer’s install script to run. - Check the runtime path. Confirm the running application can access the same cache directory used during browser installation.
See the official configuration guide, installation guide, and troubleshooting guide for version-specific instructions.
Troubleshoot “cannot find browser” errors
Puppeteer cannot find the expected local browser
- Cause: The browser was installed in a different cache directory, or the application runtime cannot access the path used during installation.
- Fix: Verify the installed package, compare the install-time and runtime values of
cacheDirectoryorPUPPETEER_CACHE_DIR, and ensure the directory is available to the running process. Reinstall after changing cache configuration.
No browser was downloaded during installation
- Cause: The project uses
puppeteer-core, or the package manager blocked Puppeteer’s install script. - Fix: With
puppeteer-core, provide and manage a browser separately. If the install script was blocked, allow it or runnpx puppeteer browsers installas documented in Puppeteer’s installation guide.
A symlink appears related to the problem
- Cause: The method name suggests a relationship to file paths, but the accessible API description only says it governs symlink following for file operations; it does not identify the operations or connect the setting to browser-cache lookup.
- Fix: Diagnose the cache directory and browser installation first. Consult the method documentation for the exact Puppeteer version before changing symlink behavior; do not rely on an assumed default or a presumed cache-specific effect.
Capture a page screenshot without managing a local browser
If your goal is capturing website screenshots rather than controlling a local Puppeteer installation, ScreenshotNeo provides a screenshot API and MCP server for developers. A single GET request returns a PNG, JPEG, WebP, or PDF. For example, using cURL:
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Best Value
- Capacity Display Variance: 500GB external ssd often appears as around 465GB on Windows. MacOS can show full 500 GB capacity. This is binary calculation difference and doesn’t affect SSD hard drive actual physical storage
- 1050 MB/s Speed: Instantly access to your files with blazing-fast 10Gbps external SSD read up to 1050MB/s and write up to 1000MB/s. LED Light indicates USB SSD instant activity
- Data Security: Solid state drives S.M.A.R.T. health diagnostics and adaptive TRIM optimizing data block management ensures consistent write speeds and extends the longevity of the portable SSD
- USB-C & USB-A Cable: Both cables featuring rapid USB 3.2 Gen2, this USB SSD effortlessly bridges devices, enabling seamless cross-platform file transfers and backup between computers, smartphones, tablets and iPhone
- Always Fast: No slowdowns for large file transfers. With SLC caching (25% of current available capacity allocated as high-speed cache), this external SSD delivers steady 10Gbps for transfers within the cache capacity
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for request parameters and response details. This is an alternative for taking screenshots, not a way to configure Puppeteer’s cache or symlink behavior.
Or skip the browser setup
ScreenshotNeo accepts cookie and consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each step can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits cost nothing, and responses report the page verdict and billing status in headers. Its MCP server offers take_screenshot, get_page_info, and capture_pdf tools for AI agents. The Free plan includes 1,000 screenshots per month without a card; paid plans start at $5 for 3,000 shots. Use the one-call example above, or sign up free for 1,000 screenshots a month with no card.
Frequently Asked Questions
Does setFollowSymlinks() set the Puppeteer cache directory?
No. Use cacheDirectory or PUPPETEER_CACHE_DIR to select the browser-cache path.
Do Puppeteer configuration files work with puppeteer-core?
No. Puppeteer configuration files and environment variables do not apply to puppeteer-core.
Free tools Windows power users keep installed
One-click scans. No signup required.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

