{"record":{"id":"e930399be09642cd","repo":"zed-industries/zed","slug":"terminal-not-yet-supported-for-collaborative-proje","errorCode":null,"errorMessage":"terminal not yet supported for collaborative projects","messagePattern":"terminal not yet supported for collaborative projects","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/terminal_view/src/terminal_panel.rs","lineNumber":877,"sourceCode":"        window: &mut Window,\n        cx: &mut Context<Self>,\n    ) -> Task<Result<WeakEntity<Terminal>>> {\n        self.add_terminal_shell_internal(true, None, reveal_strategy, window, cx)\n    }\n\n    fn add_terminal_shell_internal(\n        &mut self,\n        force_local: bool,\n        cwd: Option<PathBuf>,\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\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 collaborative 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 = if force_local {\n                project\n                    .update(cx, |project, cx| project.create_local_terminal(cx))\n                    .await\n            } else {\n                project\n                    .update(cx, |project, cx| project.create_terminal_shell(cwd, cx))\n                    .await\n            };\n\n            match terminal {\n                Ok(terminal) => {","sourceCodeStart":859,"sourceCodeEnd":895,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/terminal_view/src/terminal_panel.rs#L859-L895","documentation":"Explicit capability guard in add_center_terminal: the workspace is a collaborative (shared) project and local terminals are not supported for collaboration participants, so the request is rejected rather than spawning a terminal that others cannot see correctly.","triggerScenarios":"Thrown at crates/terminal_view/src/terminal_panel.rs:877 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Open the project locally instead of via collaboration sharing","Use a shared task or channel instead of a terminal for collaboration"],"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-14T05:17:10.506Z"}