Skip to content

Sessions

Chats in the Cursor Agent Suite tab are stored per Burp project. Switching projects loads that project’s chat list; chats do not form one global pool across all projects.

What is scoped where

DataScope
Chat list, transcripts, pins, drafts, unread, ACP session idsBurp project (extensionData)
Launch, permissions, MCP, Rules, Memories, attach/page/send/resume settingsHost user preferences

Moving chats between projects is done with Export / Import, not by sharing a single chat list.

Burp’s visible transcript is not the same as a Cursor IDE Composer chat. The two do not sync.

New chat

  • Sidebar New chat (also on the collapsed rail).
  • Empty drafts stay hidden until the first message.
  • Creating again reuses an unused blank draft instead of stacking empties.
  • Default title: General Chat.

Titles

While the title is still a placeholder (General Chat, or legacy New chat):

  1. The first user prompt can set a short title (from the first line).
  2. Cursor Agent may also suggest a title via ACP — only while still a placeholder.

After that, reload / process recreate will not overwrite your title.

  • Manual Rename (sidebar) → dialog, no Allow gate.
  • Agent rename via a burpai-rename fence → always asks Allow / Keep name, even under Allow all.

Pins, drafts, unread

  • Pin / Unpin from the sidebar menu. Pinned chats sort under Pinned, then Chats.
  • Each chat keeps its own composer draft when you switch away.
  • Unread (blue ●): a turn finished while you were on another chat.
  • Running (green ●): that chat’s Agent turn is busy.

Fork

ActionWhat happens
Sidebar ForkCopies the full transcript into a new chat
Fork icon on an assistant replyCopies through that reply (Fork chat from this reply)

Forks get a fresh chat id and no ACP session id (next send starts a new Agent session). Titles become Title, Title (1), ….

The fork is not selected automatically. Dialog Fork created:

ChoiceResult
Open forkSwitch to the new chat
Check laterKeep the fork; stay on the current chat
Discard forkDelete the new chat

Closing the dialog without discarding keeps the fork (same idea as Check later).

Clear vs delete

ActionEffect
ClearWipe messages and drop the stored ACP id; stop that chat’s Agent connection; keep the sidebar entry
DeleteRemove the chat from project prefs and stop its connection; the UI always keeps at least one session

Both ask for confirmation.

Copy, export, import

  • Copy Transcript — markdown of the visible chat.
  • Export… — JSON (burp-cursor-agent.session.v1). Live ACP process state is not exported; import clears any ACP id so the next send creates a fresh Agent session.
  • Import session — footer / rail. Imported chats land in the current Burp project.

Use export then import to move a chat into another Burp project.

  • Collapse sidebar → thin rail (New chat / Import still available); Expand sidebar restores the list.
  • List page size (Settings → General, 3–20, default 10) paginates unpinned chats. Pinned chats stay above the pager.

While a reply is running

  • Busy is per chat. Switching chats does not cancel a sibling’s turn.
  • On the busy chat, Send becomes Stop; a second send on that chat is ignored until the turn ends.
  • You can still draft the next prompt in the composer.
  • Settings form is disabled while a turn is busy.

Transcript auto-follows when you’re scrolled to the bottom. Scroll up to read history; new output grows below. Jump to latest re-arms follow.

Reload, project switch, resume

Unloading the extension or restarting Burp stops Agent processes. Project-scoped transcripts remain.

On the next send the extension tries to resume the saved ACP session. If that fails, it creates a new ACP session, inserts a system notice, and can brief the Agent from the Burp transcript (Settings → Resume briefing: compact or full). Use Resume on the notice/error strip to re-brief anytime.

Switching Burp projects (same extension instance) stops all Agent processes and reloads chats for the new project.

Details: launch.md · troubleshooting.md.