Agent‑initiated “New Chat” (open as new tab)

Feature request for product/service

Cursor IDE

Describe the request

Priority: High
Goal: Allow the agent to programmatically create a new chat and open it as a new tab (optionally in a specific column and with/without focus).

Problem
The agent cannot create a new chat and open it as a tab. This blocks parallel workstreams (e.g., Implementation in Chat A, Debug in Chat B, Research in Chat C) and increases context switching.

User Stories
As a user, when a new task starts, the agent can create a “New Chat” and immediately open it in a new tab.
As a user, I can choose whether the new chat steals focus or opens in the background.
As a user, I want the agent to set chat title and seed context (e.g., selected files, branch, initial instruction).

Minimal API
chat.create({ title?, contextPaths?, seedMessage?, templateId? }): Promise<{ chatId }>
ide.openChat({ chatId, preserveFocus?, column? }): Promise<{ viewId, result }>
preserveFocus default: false; column: active | 1 | 2 | 3
Convenience:
chat.createAndOpen({ title?, contextPaths?, seedMessage?, templateId?, preserveFocus?, column? })

UX/Governance
Setting: “Agent can create/open chats” [Off | Prompt | On] (default: Prompt).
First‑use prompt: “Agent wants to open new chat ‘Refactor Tests’ in Right column — Allow? [Always | Once | Deny]”
Toast: “New chat opened: ‘Refactor Tests’ — Undo”
Safety
Workspace‑scoped context only (no external file system access).
Rate limit (e.g., max 3 chat creations/minute).
No auto‑closing or reordering of existing chats.
Telemetry (anonymous, opt‑out)
Created/denied chats, undo rate, time‑to‑first‑message, completion time with multi‑chat flows.
Success criteria: faster iteration, fewer context switches, higher satisfaction.

Rationale
Enables clean parallelization of tasks and preserves context per objective, improving throughput and organization with minimal surface area and strong user control.

Operating System (if it applies)

Windows 10/11