zed-industries/zed · error
Creating sibling threads is not supported in this environmen
Error message
Creating sibling threads is not supported in this environment
What it means
Default implementation of ThreadEnvironment::create_sibling_thread. Sibling threads are first-class sidebar threads; only environments wired to an agent panel (like NativeThreadEnvironment) support them, so the default returns this error.
Source
Thrown at crates/agent/src/thread.rs:789
_session_id: acp::SessionId,
_cx: &mut App,
) -> Result<Rc<dyn SubagentHandle>> {
Err(anyhow::anyhow!(
"Resuming subagent sessions is not supported"
))
}
/// Creates an independent sibling thread visible in the agent sidebar.
/// Unlike subagents, sibling threads are first-class threads that persist
/// and run in parallel without reporting results back to the parent.
fn create_sibling_thread(
&self,
request: SiblingThreadRequest,
cx: &mut AsyncApp,
) -> Task<Result<SiblingThreadInfo>> {
let _ = request;
let _ = cx;
Task::ready(Err(anyhow::anyhow!(
"Creating sibling threads is not supported in this environment"
)))
}
/// Lists the agents and models available for use with `create_sibling_thread`.
fn list_available_agents(&self, cx: &mut App) -> Result<AvailableAgents> {
let _ = cx;
Err(anyhow::anyhow!(
"Listing available agents is not supported in this environment"
))
}
}
/// A request to create a new sibling thread.
#[derive(Debug, Clone)]
pub struct SiblingThreadRequest {
/// A short title for the new thread, shown in the sidebar.
pub title: SharedString,View on GitHub (pinned to bc538def45)
Solutions
- Run under NativeThreadEnvironment (with the agent panel initialized) when sibling threads are needed.
- Implement create_sibling_thread in your ThreadEnvironment.
- Fall back to a subagent, which reports results back to the parent and needs no host.
Defensive patterns
Strategy: fallback
Try / catch
match environment.create_sibling_thread(request, cx).await {
Ok(info) => info,
Err(e) if e.to_string().contains("sibling threads is not supported") => {
// fall back to a subagent that reports back to the parent
environment.create_subagent(label, cx)?
}
Err(e) => return Err(e),
} Prevention
- Probe once at startup whether the environment supports sibling threads and cache the capability.
- Default to subagents in portable agent code; sibling threads need a native host.
When it happens
Trigger: A tool calling create_sibling_thread on a ThreadEnvironment that did not override it — any embedded, test, or non-native environment.
Common situations: Agent code running outside the Zed workspace UI; prompt tooling that assumes sidebar delegation is always available.
Related errors
- Listing available agents is not supported in this environmen
- Resuming subagent sessions is not supported
- not supported
- delete_session not supported
- delete_sessions not supported
AI-assisted analysis of zed-industries/zed@bc538def45 (2026-08-16).
Data as JSON: /api/errors/723ead2c99b7f939.
Report an issue: GitHub.