{"record":{"id":"35e54613a59d8a4a","repo":"zed-industries/zed","slug":"terminal-not-yet-supported-for-remote-projects","errorCode":null,"errorMessage":"terminal not yet supported for remote projects","messagePattern":"terminal not yet supported for remote projects","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/terminal_view/src/terminal_panel.rs","lineNumber":798,"sourceCode":"                    window,\n                    cx,\n                );\n            })?;\n            Ok(terminal.downgrade())\n        })\n    }\n\n    pub fn add_terminal_task(\n        &mut self,\n        task: SpawnInTerminal,\n        reveal_strategy: RevealStrategy,\n        window: &mut Window,\n        cx: &mut Context<Self>,\n    ) -> Task<Result<WeakEntity<Terminal>>> {\n        let workspace = self.workspace.clone();\n        cx.spawn_in(window, async move |terminal_panel, cx| {\n            if workspace.update(cx, |workspace, cx| !is_enabled_in_workspace(workspace, cx))? {\n                anyhow::bail!(\"terminal not yet supported for remote projects\");\n            }\n            let pane = terminal_panel.update(cx, |terminal_panel, _| {\n                terminal_panel.pending_terminals_to_add += 1;\n                terminal_panel.active_pane.clone()\n            })?;\n            let project = workspace.read_with(cx, |workspace, _| workspace.project().clone())?;\n            let terminal = project\n                .update(cx, |project, cx| project.create_terminal_task(task, cx))\n                .await?;\n            let result = workspace.update_in(cx, |workspace, window, cx| {\n                let terminal_view = Box::new(cx.new(|cx| {\n                    TerminalView::new(\n                        terminal.clone(),\n                        workspace.weak_handle(),\n                        workspace.database_id(),\n                        workspace.project().downgrade(),\n                        window,\n                        cx,","sourceCodeStart":780,"sourceCodeEnd":816,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/terminal_view/src/terminal_panel.rs#L780-L816","documentation":"Explicit capability guard in terminals_for_task: the project is remote (SSH/WSL) and spawning a task terminal is not yet implemented there, so the operation returns an error instead of opening a broken terminal.","triggerScenarios":"Thrown at crates/terminal_view/src/terminal_panel.rs:798 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Run the task on a local project instead","Open a remote terminal manually and run the task command there","Await/upgrade to a Zed version with remote task-terminal support"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}