- Launcher is a compiled Python/PyInstaller Launcher.exe (retires update.ps1
and install_local.ps1)
- portable: extract to any writable dir; InstallRoot = Launcher.exe's folder,
no longer tied to %LOCALAPPDATA%
- user data moves to ~/.cmbot (%USERPROFILE%\.cmbot): always writable, per-user,
survives program updates; get_data_dir() three-tier (env -> ~/.cmbot -> dev root)
- writability check now applies to the program dir only; first-run seeds default
templates from app\config into ~/.cmbot
- docs/10 §3/§4/§5/§8/§9/§11/§16 updated; tasks 17.19 added (docs done, code TODO)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>