Pins not working in the Cursor Web UI

Where does the bug appear (feature/product)?

Cloud Agent (GitHub, Slack, Web, Linear)

Describe the Bug

In the Web UI, when I ctrl-click a cloud agent, then click the “Pin” button, nothing happens! The expectation is that the affected thread will be moved up to the “Pinned” section at the top.

Some of my older Pinned threads still work.

Note that the Pinned threads seem to work in the Cursor application itself, but they are not synced with the Web UI.

Steps to Reproduce

  1. Open the Cursor Web UI
  2. Spawn a new Cloud agent.
  3. Right-click/ctrl-click the cloud agent
  4. Click “Pin”
  5. Observe that nothing happens

Expected Behavior

The expectation is that the affected thread will be moved up to the “Pinned” section at the top.

Screenshots / Screen Recordings

Operating System

MacOS

Version Information

Web application

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hi @David_Wang, thanks for the detailed report and the recording. Pinning is stored locally in the browser, with a limit of 50 pins. Older pin entries can stay in that list even after those agents are no longer in the sidebar, so Pin can quietly do nothing while the threads that are already pinned still show up.

You can check this quickly on cursor.com/agents:

  1. Open the browser console (in Chrome: View > Developer > JavaScript Console, or Option+Command+J).
  2. Run:
JSON.parse(localStorage.getItem('pinned-agents') || '[]').length

If that prints 50, that’s the issue.

Workaround: clear the stored pin list, refresh, then re-pin the threads you still want:

localStorage.removeItem('pinned-agents')

If you still have pinned items under Archived, unpinning those there can also free slots without clearing everything.

We’ve let the team know, and this is an issue we’re tracking. I’ll post here when there’s an update.

On pins not matching the desktop app: that’s expected today. Each surface keeps its own pin list, so web and the app don’t sync. Let me know any follow-up questions!

Thanks Kevin! That seems to have worked. For what it’s worth, my expected behavior is that archived threads would be unpinned automatically.