diff --git a/src/browser/components/Settings/sections/GeneralSection.tsx b/src/browser/components/Settings/sections/GeneralSection.tsx index a3eb595bb9..8e5a7aef2e 100644 --- a/src/browser/components/Settings/sections/GeneralSection.tsx +++ b/src/browser/components/Settings/sections/GeneralSection.tsx @@ -8,8 +8,6 @@ import { SelectValue, } from "@/browser/components/ui/select"; import { Input } from "@/browser/components/ui/input"; -import { Checkbox } from "@/browser/components/ui/checkbox"; -import { Tooltip, TooltipTrigger, TooltipContent } from "@/browser/components/ui/tooltip"; import { usePersistedState } from "@/browser/hooks/usePersistedState"; import { EDITOR_CONFIG_KEY, @@ -40,13 +38,6 @@ export function GeneralSection() { setEditorConfig((prev) => ({ ...prev, customCommand })); }; - const handleRemoteExtensionChange = (useRemoteExtension: boolean) => { - setEditorConfig((prev) => ({ ...prev, useRemoteExtension })); - }; - - // Remote-SSH is only supported for VS Code and Cursor - const supportsRemote = editorConfig.editor === "vscode" || editorConfig.editor === "cursor"; - return (
@@ -71,67 +62,41 @@ export function GeneralSection() {
-
-

Editor

-
-
-
-
Default Editor
-
Editor to open workspaces in
-
- -
- - {editorConfig.editor === "custom" && ( -
-
-
Custom Command
-
Command to run (path will be appended)
-
- ) => - handleCustomCommandChange(e.target.value) - } - placeholder="e.g., nvim" - className="border-border-medium bg-background-secondary h-9 w-40" - /> -
- )} - - {supportsRemote && ( -
-
-
Use Remote-SSH for SSH workspaces
- - - (?) - - - When enabled, opens SSH workspaces directly in the editor using the Remote-SSH - extension. Requires the Remote-SSH extension to be installed. - - -
- -
- )} +
+
+
Editor
+
Editor to open workspaces in
+
+ + {editorConfig.editor === "custom" && ( +
+
+
Custom Command
+
Command to run (path will be appended)
+
+ ) => + handleCustomCommandChange(e.target.value) + } + placeholder="e.g., nvim" + className="border-border-medium bg-background-secondary h-9 w-40" + /> +
+ )}
); } diff --git a/src/browser/hooks/useOpenInEditor.ts b/src/browser/hooks/useOpenInEditor.ts index 3595860400..5bb462893c 100644 --- a/src/browser/hooks/useOpenInEditor.ts +++ b/src/browser/hooks/useOpenInEditor.ts @@ -44,8 +44,8 @@ export function useOpenInEditor() { return { success: false, error: "Please configure a custom editor command in Settings" }; } - // For SSH workspaces, validate the editor supports remote - if (isSSH && editorConfig.useRemoteExtension) { + // For SSH workspaces, validate the editor supports Remote-SSH + if (isSSH) { if (editorConfig.editor === "zed") { return { success: false, error: "Zed does not support Remote-SSH for SSH workspaces" }; } @@ -57,14 +57,6 @@ export function useOpenInEditor() { } } - // For SSH workspaces without remote extension, we can't open - if (isSSH && !editorConfig.useRemoteExtension) { - return { - success: false, - error: "Enable 'Use Remote-SSH' in Settings to open SSH workspaces in editor", - }; - } - // Call the backend API const result = await api?.general.openWorkspaceInEditor({ workspaceId, diff --git a/src/common/constants/storage.ts b/src/common/constants/storage.ts index d2f995af26..8ce5b97982 100644 --- a/src/common/constants/storage.ts +++ b/src/common/constants/storage.ts @@ -168,12 +168,10 @@ export type EditorType = "vscode" | "cursor" | "zed" | "custom"; export interface EditorConfig { editor: EditorType; customCommand?: string; // Only when editor='custom' - useRemoteExtension: boolean; // For SSH workspaces, use Remote-SSH } export const DEFAULT_EDITOR_CONFIG: EditorConfig = { editor: "vscode", - useRemoteExtension: true, }; /** diff --git a/src/common/orpc/schemas/api.ts b/src/common/orpc/schemas/api.ts index 357ab9e04c..7b230ff4c5 100644 --- a/src/common/orpc/schemas/api.ts +++ b/src/common/orpc/schemas/api.ts @@ -416,7 +416,6 @@ const EditorTypeSchema = z.enum(["vscode", "cursor", "zed", "custom"]); const EditorConfigSchema = z.object({ editor: EditorTypeSchema, customCommand: z.string().optional(), - useRemoteExtension: z.boolean(), }); // General @@ -491,7 +490,7 @@ export const general = { }, /** * Open the workspace in the user's configured editor. - * For SSH workspaces with useRemoteExtension enabled, uses Remote-SSH extension. + * For SSH workspaces, uses Remote-SSH extension (VS Code/Cursor only). */ openWorkspaceInEditor: { input: z.object({ diff --git a/src/node/services/editorService.ts b/src/node/services/editorService.ts index 9bbdb30ea0..ddc784b1e5 100644 --- a/src/node/services/editorService.ts +++ b/src/node/services/editorService.ts @@ -6,7 +6,6 @@ import { log } from "@/node/services/log"; export interface EditorConfig { editor: string; customCommand?: string; - useRemoteExtension: boolean; } /** @@ -29,7 +28,7 @@ export class EditorService { /** * Open the workspace in the user's configured code editor. - * For SSH workspaces with Remote-SSH extension enabled, opens directly in the editor. + * For SSH workspaces, opens via Remote-SSH extension (VS Code/Cursor only). */ async openWorkspaceInEditor( workspaceId: string, @@ -63,15 +62,7 @@ export class EditorService { } if (isSSH) { - // SSH workspace handling - if (!editorConfig.useRemoteExtension) { - return { - success: false, - error: "Cannot open SSH workspace without Remote-SSH extension enabled", - }; - } - - // Only VS Code and Cursor support Remote-SSH + // SSH workspace handling - only VS Code and Cursor support Remote-SSH if (editorConfig.editor !== "vscode" && editorConfig.editor !== "cursor") { return { success: false,