Frequently asked questions
Project terminology and answers to the questions that come up most.
Terminology
- What is Wisely?
- Wisely is an open-source PowerShell CLI tool that dynamically manages your WSL2 resource profiles — RAM, CPU, swap.
- What is .wslconfig?
- WSL2's global configuration file, stored in your Windows user profile. It's the file Wisely generates and backs up on your behalf every time you switch profiles.
- What is profiles.json?
- The external source of truth listing every resource profile you have — web, data science, minimal, or any custom ones you've created. Editing it requires no changes to the tool's code.
- What is vmmem?
- The Windows process Wisely uses as a heuristic to measure how much RAM WSL2 is consuming, as part of its background monitoring.
Other questions
- Does Wisely work with WSL1?
- No. Wisely specifically manages the memory, CPU, and swap settings in .wslconfig, a mechanism unique to WSL2. WSL1 doesn't share that virtual machine model, so it isn't affected.
- Is it safe to run Wisely alongside other tools that touch .wslconfig?
- Wisely backs up .wslconfig before every write and validates the file right afterward, with automatic rollback if anything looks wrong. That said, another tool editing the file between two switches could still create conflicts — if in doubt, check the file's contents after any outside change.
- Does Wisely require administrator rights?
- Not for everyday use — switching profiles, rolling back, or viewing history all work without them. Starting or stopping background RAM monitoring (-Monitor start / -Monitor stop) does require administrator rights, since it creates a Windows scheduled task.
- What happens if I lose power mid-switch?
- .wslconfig is backed up before any write happens, and a post-write validation step triggers an automatic rollback if the resulting file turns out invalid. If power is lost during the write itself, run wisely -Rollback afterward to restore the last known-good state.
- Can I create my own profile without hand-editing JSON?
- Yes. The wisely -NewProfile command creates a full profile from the CLI in a single line, with validation of the key, the RAM format, and the CPU count.
- How can I test a profile safely before actually applying it?
- Add the -DryRun flag to any switch: wisely <profile> -DryRun simulates the whole operation end to end without writing anything to the system.
- How is Wisely different from wsl --shutdown?
- wsl --shutdown restarts the WSL2 virtual machine so an already-edited .wslconfig takes effect — it doesn't choose or remember any resource values. Wisely writes the RAM, CPU, and swap values for the chosen profile, backs up .wslconfig before writing, calls wsl --shutdown for you, and keeps a history so the switch can be rolled back.