From ef4453ebf5b394f461c006b825d57f779587311e Mon Sep 17 00:00:00 2001 From: Tom Boucher Date: Fri, 20 Mar 2026 17:08:50 -0400 Subject: [PATCH] fix: respect HOME env var in workspace init functions for Windows compat On Windows, os.homedir() reads USERPROFILE, not HOME. Tests pass HOME override for sandboxing. Use process.env.HOME with os.homedir() fallback so tests work cross-platform. Co-Authored-By: Claude Opus 4.6 --- get-shit-done/bin/lib/init.cjs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/get-shit-done/bin/lib/init.cjs b/get-shit-done/bin/lib/init.cjs index 6871fd5b1..5b8d5b8f2 100644 --- a/get-shit-done/bin/lib/init.cjs +++ b/get-shit-done/bin/lib/init.cjs @@ -922,7 +922,7 @@ function detectChildRepos(dir) { } function cmdInitNewWorkspace(cwd, raw) { - const homedir = require('os').homedir(); + const homedir = process.env.HOME || require('os').homedir(); const defaultBase = path.join(homedir, 'gsd-workspaces'); // Detect child git repos for interactive selection @@ -948,7 +948,7 @@ function cmdInitNewWorkspace(cwd, raw) { } function cmdInitListWorkspaces(cwd, raw) { - const homedir = require('os').homedir(); + const homedir = process.env.HOME || require('os').homedir(); const defaultBase = path.join(homedir, 'gsd-workspaces'); const workspaces = []; @@ -994,7 +994,7 @@ function cmdInitListWorkspaces(cwd, raw) { } function cmdInitRemoveWorkspace(cwd, name, raw) { - const homedir = require('os').homedir(); + const homedir = process.env.HOME || require('os').homedir(); const defaultBase = path.join(homedir, 'gsd-workspaces'); if (!name) {