diff --git a/src/core/prompts/instructions/create-mode.ts b/src/core/prompts/instructions/create-mode.ts index ea99a66901..0b6abb4ea6 100644 --- a/src/core/prompts/instructions/create-mode.ts +++ b/src/core/prompts/instructions/create-mode.ts @@ -2,11 +2,13 @@ import * as path from "path" import * as vscode from "vscode" import { GlobalFileNames } from "../../../shared/globalFileNames" +import { getSettingsDirectoryPath } from "../../../utils/storage" export async function createModeInstructions(context: vscode.ExtensionContext | undefined): Promise { if (!context) throw new Error("Missing VSCode Extension Context") - const settingsDir = path.join(context.globalStorageUri.fsPath, "settings") + // Use getSettingsDirectoryPath to honor custom storage path setting + const settingsDir = await getSettingsDirectoryPath(context.globalStorageUri.fsPath) const customModesPath = path.join(settingsDir, GlobalFileNames.customModes) return ` diff --git a/src/utils/globalContext.ts b/src/utils/globalContext.ts index 882501850d..f4dfdb3162 100644 --- a/src/utils/globalContext.ts +++ b/src/utils/globalContext.ts @@ -1,13 +1,13 @@ -import { mkdir } from "fs/promises" -import { join } from "path" import { ExtensionContext } from "vscode" +import { getSettingsDirectoryPath } from "./storage" export async function getGlobalFsPath(context: ExtensionContext): Promise { return context.globalStorageUri.fsPath } export async function ensureSettingsDirectoryExists(context: ExtensionContext): Promise { - const settingsDir = join(context.globalStorageUri.fsPath, "settings") - await mkdir(settingsDir, { recursive: true }) + // Use getSettingsDirectoryPath to honor custom storage path setting + const settingsDir = await getSettingsDirectoryPath(context.globalStorageUri.fsPath) + // getSettingsDirectoryPath already creates the directory, so no need to call mkdir return settingsDir } diff --git a/src/utils/migrateSettings.ts b/src/utils/migrateSettings.ts index 0ddd553610..143cc9d7db 100644 --- a/src/utils/migrateSettings.ts +++ b/src/utils/migrateSettings.ts @@ -3,6 +3,7 @@ import * as path from "path" import * as fs from "fs/promises" import { fileExistsAtPath } from "./fs" import { GlobalFileNames } from "../shared/globalFileNames" +import { getSettingsDirectoryPath } from "./storage" import * as yaml from "yaml" const deprecatedCustomModesJSONFilename = "custom_modes.json" @@ -26,7 +27,8 @@ export async function migrateSettings( ] try { - const settingsDir = path.join(context.globalStorageUri.fsPath, "settings") + // Use getSettingsDirectoryPath to honor custom storage path setting + const settingsDir = await getSettingsDirectoryPath(context.globalStorageUri.fsPath) // Check if settings directory exists first if (!(await fileExistsAtPath(settingsDir))) {