Claude Code Switcher is a Free Windows program in the Developer Tools category, developed by Fanis Hatzidakis. The current version is 0.3.2; you can download it safely from its official source with the download button above.
A fast, native Windows utility for switching between Claude Code projects. Shows all your Claude Code projects in a popup dialog sorted by most recently used, with fuzzy search filtering.
✨ Features
claudeclaude-codedeveloper-toolswindows-terminal
📝 Release notes (0.3.2)
Added
- Cut Release GitHub Actions workflow: cut a full release from the GitHub web UI (tests, version stamping in main.go/README.md/CHANGELOG.md, release commit, tag, push) mirroring the workstation procedure
Fixed
- Crash when pressing Enter while the search matched no projects (LB_ERR from LB_GETCURSEL was not detected on 64-bit)
- Fuzzy search now matches non-ASCII project names correctly (rune-based matching instead of byte-based)
- Ctrl+Backspace in the search box no longer mangles text containing non-ASCII characters (UTF-16 aware word deletion)
- Data races between the GUI thread and the background update check on the shared config and dialog state
- Settings dialog no longer leaks a permanent callback on every open, closes without waiting for the next input message, and no longer swallows an in-flight quit message
- Header controls, window minimum size, and the initial window size now scale with display DPI (previously only fonts and list items scaled)
- Config file writes are atomic (temp file + rename); a corrupt config is preserved as config.json.corrupt instead of being silently overwritten
- Error dialog shown if the main window cannot be created (previously hung invisibly)
- Down arrow with no selection now selects the first item
- Bold/small fonts and background brushes are released on exit; the Settings button is disabled during launch like the other controls
Changed
- Renamed LICENCE.md to LICENSE.md so packaging tools detect it automatically
- Chocolatey package no longer bundles the binary: it is downloaded at install time from the official GitHub release with a SHA256 checksum, and a VERIFICATION.txt is included describing how to verify it
- Removed the unused internal/process package (its process enumeration could never return results) and other dead code (update.ShouldNotify, unused Win32 constants)
- Shared Win32 helpers consolidated into a new internal/win32 package; internal/gui split into focused files
- List item drawing reuses cached brushes and package-level procs instead of re-creating them on every paint; search strings are precomputed instead of rebuilt per keystroke
- Filesystem probing in the encoded-path decoder is capped to avoid pathological startup delays
- internal/projects tests are now Windows-only (they assert Windows path separators)
SHA-256: F8DC0A61CFA21BD362B8D584E95352166CA2580F5F38E0ABE39ECC88BF5B2E83