{"schemaVersion":"1.0","publication":{"slug":"pivot-cursor","name":"Cursor HQ","description":"Product updates and proven workflows for building software with Cursor.","audience":"Engineers and product teams using the Cursor editor.","geography":null},"edition":{"id":"b9d59ce1-d6ab-4caf-b183-0b9b47513f73","date":"2026-09-23","status":"locked","createdAt":"2026-09-22T17:45:23.512Z","storyCount":5,"newsletterSubject":"Team scaled Cursor agent to 2500 changes, Grok Bot users offload tasks to Cursor Cloud, Plan Mode drafts editable file change roadmap"},"updatedAt":"2026-09-22T22:00:24.790Z","stories":[{"id":"8cc0a736-740e-440a-a03e-84e17db8ec5b","title":"How one team scaled Cursor's coding agent to 2,500 code changes in a month","dek":"A walkthrough built for Cursor's Compile conference lays out the verification tools and correction system that let AI agents merge that many proposed code changes with far less manual review.","bodyMd":"One engineering team built an environment for Cursor's AI coding tool, Cursor Agent, that let it merge roughly 2,500 pull requests, proposed code changes that normally sit and wait for a person to review and approve, into production in a single month. A walkthrough of the approach, originally prepared for Cursor's Compile conference in London and later posted free on X, frames the number as a side effect. The real project was building a system the team could trust enough to let agents work with far less hand-holding.\n\nThe walkthrough opens with a concrete problem: performance regressions. Cursor's agent window moves fast enough that new pull requests arrived faster than a person could review each one for slowdowns by hand. The team's engineer used to open Chrome's own DevTools, pull a performance trace and a heap snapshot, and hunt down the slow part manually. Eventually that whole routine got written down as instructions an agent could follow itself: run the app, gather evidence, find the hot spot, keep improving it. The lesson drawn from that shift is blunt. The engineer had become the bottleneck, and the fix was turning personal judgment into something the environment could do on its own.\n\nThat produces a scaling rule. A handful of agents can be kept in line by a person correcting them as they go, but running many agents in parallel requires boundaries the agents cannot easily cross. Verification tools, code structure, static analysis, rules and reusable playbooks all cut down how much a human has to confirm before any single change ships. Running lots of agents at once does not by itself create trust, according to the walkthrough. Repeatable evidence and a system that is simply harder to get wrong does.\n\nThe team names four layers that do that work. A tool called Control Glass lets agents run the app themselves, through the command line and Chrome's DevTools Protocol, to capture real performance traces and memory snapshots rather than trusting that code compiles or taking an agent's word that a fix worked. A \"feature map\" stores where each feature lives in the app, what actions and screen elements it involves, directly in the codebase, so an agent can make sense of a vague bug screenshot and reproduce the exact scenario. A set of engineering playbooks, called pstack, writes down how a senior engineer debugs, builds features, prototypes and chases performance, so an agent inherits that judgment instead of guessing. And a tool called Dune enforces folder conventions, import dependency graphs and thread boundaries in the codebase itself, so the easiest path for an agent to take is also the correct one, and known bad patterns are blocked structurally rather than caught later.\n\nThe distinction the walkthrough draws is that verification only answers whether a feature actually works, while engineering quality also depends on architecture, performance limits and how maintainable the result is. Documentation for pstack states this as checking the real artifact directly: an agent working on a feature should walk it end to end, and work delegated to another agent should be checked against the actual code diff or how it runs, not against a summary of what happened.\n\nThe walkthrough also treats the codebase itself as the agent's memory. Agents tend to repeat whatever pattern they last read, so clean structure spreads and so do shortcuts and workarounds, which the team compares to tending a garden that needs regular weeding to keep a clear path through it. It ranks fixes from strongest to weakest: changes to the codebase and architecture itself, static analysis, rules and an automated review bot called BugBot, reusable skills, and finally a human simply pointing out a style issue. The first two are the most consistent and hardest to bypass, and the team's rule is that any time a person has to correct the same kind of mistake twice, that correction should get folded into a data structure, a dependency boundary, a lint rule or a test, so the next agent run starts from an already-improved environment.\n\nThe system ties together in an outer and inner loop. An internal automation called Grok Bot connects to Slack, Datadog, Sentry and PlanetScale and kicks off work based on events in those tools, while Cursor's automation and SDK handle the actual coding inside that loop. In the demo shown, a bug report enters the system, an agent reproduces it automatically, and a pull request, a proposed code change ready for a person to approve, comes out the other end, closing the loop from report to diagnosis to fix to verification.","status":"published","storyType":"news","category":"Workflow","clusterKey":"cursor-agent-scales-to-2500-prs-monthly","slug":"how-one-team-scaled-cursor-s-coding-agent-to-2-500-code-changes-in-a-mon-8cc0a7","url":"https://cursorhq.ai/news/how-one-team-scaled-cursor-s-coding-agent-to-2-500-code-changes-in-a-mon-8cc0a7/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/8cc0a736-740e-440a-a03e-84e17db8ec5b","role":"lead","position":0,"imageStatus":"ready","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/how-one-team-scaled-cursor-s-coding-agent-to-2-500-code-changes-in-a-mon-8cc0a7/5a63fb4160fec4d7-1f6215d421c727bb/web_hero.webp","imageAlt":"Editorial illustration accompanying “How one team scaled Cursor's coding agent to 2,500 code changes in a month”.","createdAt":"2026-09-22T21:34:46.624Z","updatedAt":"2026-09-22T22:00:24.790Z","sources":[{"role":"primary","title":"How Grok Bot Scaled to 2500 PRs Monthly Using Cursor Agent and Trust Systems","url":"https://x.com/shao__meng/status/2102200837749825655","sourceName":"meng shao","author":"meng shao","publishedAt":"2026-09-22T00:58:31Z"},{"role":"supporting","title":"here's how i shipped 2,500 PRs last month to production this was originally supposed to be for Cursor Compile in London.","url":"https://x.com/poteto/status/2102050467505430555","sourceName":"@kloss_xyz","author":"poteto","publishedAt":"2026-09-21T15:01:00Z"}]},{"id":"b0a1cdc4-4b9c-4b4a-9f55-94e67fc3e6cb","title":"Grok Bot users offload complex tasks to Cursor Cloud agents running Fable 5.1","dek":"Grok Bot, xAI's always-on assistant, can't switch its own underlying model, so builders are having it forward tougher jobs, including a live fix to a broken GPS file mid-bike-ride, to Cursor's cloud coding agents instead.","bodyMd":"Grok Bot, the AI assistant built into xAI's Grok app, has no setting to switch which model answers a request. Builders have found a workaround anyway: when a task needs more horsepower, they have Grok Bot hand it off to Cursor Cloud, Cursor's cloud-based agent platform, where a different model can take over. One builder's post laid out the trick plainly this week, noting that since Grok Bot won't let you change models, tasks that need more intelligence get routed to Cursor Cloud instead, and pointing to Fable 5.1 drafting a complicated letter that needed heavy evidentiary support, not code at all.\n\nThe clearest demonstration played out mid-bike-ride. One builder discovered that a GPX file, the GPS track format cycling apps use to plot a route, that Grok Bot had generated was broken. Rather than stop riding, the builder pulled out a phone, opened Grok Voice, tucked the phone back into a cycling jersey, and talked through a pair of Shokz open-ear headphones: fix the file and send it to a Cursor Cloud agent running Fable 5.1. The agent repaired the GPX file and re-uploaded it to Ride with GPS, a route-planning service, and the fix had synced to a Garmin bike computer by the time the ride ended. In a longer recap posted a couple of days later, the same builder called Grok Bot's native Cursor integration totally seamless.\n\nThe same routing shows up outside of coding, too. Beyond the letter and the GPX fix, one builder's account says sending work through Cursor Cloud to Fable 5.1 also covers /ce-plan requests and HyperFrames video tasks, suggesting the trick applies anywhere Grok Bot's fixed model runs short, not just on code.\n\nThe pattern lines up with how Cursor's cloud agents get pitched against a personal-assistant bot like Grok Bot. A recent video comparing the two describes Cursor Projects, Cursor's cloud-hosted agent workspace, as an always-on layer built for software work: agents keep running after a laptop closes, carry their context, skills and MCP tool connections between sessions, and can be checked on from a phone. Grok Bot, in that framing, handles admin and research work, inbox triage, call prep, social monitoring, while Cursor builds and fixes. The suggested workflow is to let Grok Bot gather and summarize, then hand the resulting task to a Cursor agent to execute.\n\nThat division is already changing what people pay for. One builder downgraded a SuperGrok subscription to its standard tier while keeping a separate Cursor subscription just to reach Cursor Cloud's model lineup, and said the hope is for the two products to fold into a single subscription within a few weeks. Until that happens, getting the full benefit of Grok Bot means paying for both.","status":"published","storyType":"news","category":"Workflow","clusterKey":"grok-bot-delegates-to-cursor-cloud-agents","slug":"grok-bot-users-offload-complex-tasks-to-cursor-cloud-agents-running-fabl-b0a1cd","url":"https://cursorhq.ai/news/grok-bot-users-offload-complex-tasks-to-cursor-cloud-agents-running-fabl-b0a1cd/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/b0a1cdc4-4b9c-4b4a-9f55-94e67fc3e6cb","role":"item","position":1,"imageStatus":"ready","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/grok-bot-users-offload-complex-tasks-to-cursor-cloud-agents-running-fabl-b0a1cd/7b2cf34979c41ad1-6e4d81ca549d0e28/web_hero.webp","imageAlt":"A modular hardware adapter with two connected units; one unit funnels data into a second unit containing five stacked, metal cartridges, one of which is partially extended.","createdAt":"2026-09-22T21:04:08.047Z","updatedAt":"2026-09-22T21:30:20.113Z","sources":[{"role":"primary","title":"Builder Fixes GPX Files Hands-Free Using Grok Voice and Cursor Cloud Agent","url":"https://x.com/mikepat711/status/2101358398696505727","sourceName":"Mike P","author":"Mike P","publishedAt":"2026-09-19T17:10:58Z"},{"role":"supporting","title":"How Grok Bot's Native Cursor Integration Fixes Code Mid-Activity","url":"https://x.com/mikepat711/status/2101847245360402748","sourceName":"Mike P","author":"Mike P","publishedAt":"2026-09-21T01:33:28Z"},{"role":"supporting","title":"Grok Bot Now Pairs With Cursor Agents for Multi-LLM Coding Workflows","url":"https://x.com/mikepat711/status/2101702520414368041","sourceName":"Mike P","author":"Mike P","publishedAt":"2026-09-20T15:58:23Z"},{"role":"supporting","title":"Route Grok Tasks to Cursor Cloud When You Need Smarter Output","url":"https://x.com/mvanhorn/status/2101459041063252373","sourceName":"Matt Van Horn","author":"Matt Van Horn","publishedAt":"2026-09-19T23:50:53Z"},{"role":"supporting","title":"Why I Use Grok Bot and Cursor Projects Together","url":"https://www.youtube.com/watch?v=Fr2nqjVTxhI","sourceName":"@thecraighewitt","author":"@thecraighewitt","publishedAt":"2026-09-18T19:19:41Z"},{"role":"supporting","title":"How to Combine Grok Bot and Cursor Projects for Research-to-Code Workflow","url":"https://www.youtube.com/watch?v=Fr2nqjVTxhI","sourceName":"@thecraighewitt","author":"@thecraighewitt","publishedAt":"2026-09-18T14:55:27Z"}]},{"id":"4bf1e391-ce50-4588-8b25-309c6a7f1917","title":"Cursor's Plan Mode drafts an editable file-change roadmap before writing any code","dek":"The feature pauses to ask clarifying questions and lock in a step-by-step plan first, so a database edit doesn't quietly break an unrelated part of the app like checkout.","bodyMd":"Cursor's Plan Mode adds a pause between your prompt and the code that follows, aimed at features that touch more than one part of a codebase. Ask for something like a secure user login system and the AI doesn't start editing files. It first asks clarifying questions to fill gaps in its understanding of your project, a walkthrough of the feature shows.\n\nOnly after that does it write anything, and even then it doesn't touch code. It produces a plain-text, step-by-step roadmap laying out exactly which files it plans to change and in what order. That roadmap becomes a strict boundary once you approve it: the AI works from the plan rather than improvising as it goes, according to the demonstration. You can edit the roadmap directly first, deleting steps built on wrong assumptions or adding ones it missed.\n\nOnce approved, Cursor executes the whole plan in a single coordinated pass across multiple files instead of editing one at a time. In the demonstration's test case, the login system came out built correctly on the first attempt, tied to the exact blueprint that had been approved.\n\nThe pitch is for changes where a fix in one place can silently break another, the video's example being a login change that could interfere with an interconnected checkout system. The source doesn't cover what happens when the AI's questions or plan miss something anyway, only that reviewing the roadmap before code gets written is the safeguard.","status":"published","storyType":"tip","category":"Workflow","clusterKey":"cursor-plan-mode-workflow","slug":"cursor-s-plan-mode-drafts-an-editable-file-change-roadmap-before-writing-4bf1e3","url":"https://cursorhq.ai/guides/cursor-s-plan-mode-drafts-an-editable-file-change-roadmap-before-writing-4bf1e3/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/4bf1e391-ce50-4588-8b25-309c6a7f1917","role":"item","position":2,"imageStatus":"ready","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/cursor-s-plan-mode-drafts-an-editable-file-change-roadmap-before-writing-4bf1e3/39c2b0a01c0fdf15-7c3a76386542d2bd/web_hero.webp","imageAlt":"A film strip printed with a plan being inserted into a mechanical gate with five locked chambers.","createdAt":"2026-09-20T20:19:45.117Z","updatedAt":"2026-09-20T20:30:18.833Z","sources":[{"role":"primary","title":"How Cursor Plan Mode Prevents Broken Code Before Writing a Single Line","url":"https://www.youtube.com/watch?v=ivtk2S9bShE","sourceName":"@MiraTechNexus","author":"@MiraTechNexus","publishedAt":"2026-09-15T19:55:36Z"}]},{"id":"0d0911ff-9cc2-4759-ab36-a7c83b6d4ae3","title":"A developer says Cursor Projects paired with PStack lets him ship software from a beach in Tahiti","dek":"The setup lets him hand off coding tasks to Cursor's AI agents while working from his phone, and he says it remembers his testing and release habits the longer he uses it.","bodyMd":"A developer says he can ship software from a beach in Tahiti by running Cursor's Projects feature alongside a tool called PStack. He calls the combination the best mobile setup he's found for what he calls \"agentic engineering\": handing coding tasks off to AI agents instead of typing every line himself.\n\nThe appeal isn't just that it works remotely. He says the setup seems to build what feels like infinite memory of how he personally ships software, and that memory compounds the more he uses it. Rather than re-explaining his process each time, he says he has taught it his QA flow (the checks he runs to catch bugs before code goes out) and his devops release process (the steps for actually pushing new code live). Once taught, the setup appears to apply those same habits on later work without him repeating the instructions.\n\nThe other piece is asynchronous progress tracking: he gets updates on everything the agents finished overnight, so he can review and approve work without having been at a keyboard while it happened. That's the scenario this is built for, coding away from a desk, checking in on agent-driven work between other things.\n\nOne limit he names himself: he'd like the setup connected to Grok Bot, but says that integration doesn't exist yet. It's a wish, not a current feature.","status":"published","storyType":"tip","category":"Workflow","clusterKey":"cursor-projects-mobile-shipping-pstack","slug":"a-developer-says-cursor-projects-paired-with-pstack-lets-him-ship-softwa-0d0911","url":"https://cursorhq.ai/guides/a-developer-says-cursor-projects-paired-with-pstack-lets-him-ship-softwa-0d0911/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/0d0911ff-9cc2-4759-ab36-a7c83b6d4ae3","role":"item","position":3,"imageStatus":"ready","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/a-developer-says-cursor-projects-paired-with-pstack-lets-him-ship-softwa-0d0911/b63167bf2ff20b4d-18972a1629ce44a7/web_hero.webp","imageAlt":"A modular hardware console with toggle switches and an attached secondary block, representing an automated software release and memory system.","createdAt":"2026-09-22T19:26:10.686Z","updatedAt":"2026-09-22T19:30:16.716Z","sources":[{"role":"primary","title":"How One Builder Ships Full Projects From a Beach Using Cursor Mobile","url":"https://x.com/RayFernando1337/status/2101414305950539975","sourceName":"Ray Fernando","author":"Ray Fernando","publishedAt":"2026-09-19T20:53:07Z"}]},{"id":"bfdbad7f-85c7-401c-ace8-0583e1a6b400","title":"Switch Cursor 3 to its IDE layout to watch every file your agent touches","dek":"Cursor 3.0's default agent-centric screen only recaps changes after the fact, but a small IDE toggle in the top right restores the file tree so every edit shows up while the agent is still working.","bodyMd":"Cursor 3.0 changed its default look to what amounts to an agent-centric screen: a list of past chats on the left, the active conversation in the middle, and a tidy before-and-after summary of what changed off to the side. It looks clean, but a recent demo video argues that view hides the one thing a developer learning to work with an agent most needs to see: which files the agent is actually creating or editing, and when.\n\nThe fix is a toggle already built into Cursor 3. A small button labeled IDE sits in the top right corner of the agent screen. Clicking it swaps the layout to the familiar arrangement: the file tree on the left, the open file in a center editor, chat on the right, and a terminal panel that slides up from the bottom. The chat panel and file tree each have their own show/hide toggle, and the terminal panel collapses the same way when you don't need it.\n\nWith that layout on screen, file changes show up in the left-hand tree as the agent works, instead of only in a wrap-up summary after the fact. In the demo, the model was set to Grok 4.6 and asked for a newspaper-style landing page pulling together recent AI news. Watching the file tree fill in as the agent worked showed exactly what got created and in what order, rather than relying on the agent's own recap of its work.\n\nThe video's broader point is why this matters more now than it used to: agents run much longer unsupervised turns before checking back in. Where an older workflow meant confirming after every small step, the demo showed Grok 4.6 running its own internal QA, capturing desktop and mobile screenshots of the page it had built to check its own work before ever presenting a result. Watching the file tree directly, instead of waiting for the agent's own summary, is the only way to see that process happen in real time.\n\nThe video frames this as a setup worth using specifically while learning to build with an agent, so you can trace cause and effect between a prompt and the files it produces, rather than as a permanent replacement for the agent-centric view.","status":"published","storyType":"tip","category":"Workflow","clusterKey":"cursor-3-interface-layout-technique","slug":"switch-cursor-3-to-its-ide-layout-to-watch-every-file-your-agent-touches-bfdbad","url":"https://cursorhq.ai/guides/switch-cursor-3-to-its-ide-layout-to-watch-every-file-your-agent-touches-bfdbad/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/bfdbad7f-85c7-401c-ace8-0583e1a6b400","role":"item","position":4,"imageStatus":"ready","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/switch-cursor-3-to-its-ide-layout-to-watch-every-file-your-agent-touches-bfdbad/418ee6b0c85aa6ab-520830cda66d3d6b/web_hero.webp","imageAlt":"A close-up of a mechanical switch on a metal panel with a stack of thin file tabs protruding from a slot beneath it.","createdAt":"2026-09-22T18:15:03.681Z","updatedAt":"2026-09-22T18:30:14.302Z","sources":[{"role":"primary","title":"Cursor 3.0 Interface Guide: IDE Layout for Learning Vibe Coding","url":"https://www.youtube.com/watch?v=zmAt2ccMMEk","sourceName":"@editorp89","author":"@editorp89","publishedAt":"2026-09-16T19:55:28Z"},{"role":"supporting","title":"[Season 3] A/S Guide for Cursor Users: Interface Update","url":"https://www.youtube.com/watch?v=zmAt2ccMMEk","sourceName":"@editorp89","author":"@editorp89","publishedAt":"2026-09-16T19:24:21Z"}]}],"tips":[{"id":"7ab55b05-0f3c-466a-b353-6fcb7c6da174","title":"Find the good edit one agent silently overwrote for another, using git log","dek":"When parallel agents work in one repo, a file committed by two different sessions within an hour is the sign that one fix may have erased another.","bodyMd":"Running several background agents (AI assistants that edit code) or chats on one repository, or Cursor beside Claude Code or Codex, carries a failure that rarely shows up as a bad edit. It shows up as a good edit that vanishes. Agent A fixes a file. Agent B, working from what it read twenty minutes earlier, rewrites the same file and commits. A's fix is gone, nothing errors, and tests may still pass.\n\nGit keeps the evidence, according to the memento team, which builds a free, MIT-licensed tracker and disclosed that interest. The overwrite leaves the same trace each time: one file, two different sessions (a different author or a different branch), commits less than an hour apart. The tool for finding it is `git log`, the command that lists a repository's commit history.\n\n**How to look**\n\n1. Pull a month of history with the session identity attached to each commit:\n `git log --all --source --since='1 month ago' --name-only --format='@%at|%an|%S'`\n Each commit prints a timestamp, author and branch, followed by its files.\n2. Pipe that into an awk filter (awk is a command-line text-processing tool) that flags any file committed by two different author/branch pairs less than an hour apart, then sort by frequency. The memento team's git log plus awk one-liner does this and prints the most frequent files first. The same check also runs in the browser in its overwrite-risk grader, and the team says the log is not uploaded.\n3. Look at the top of the list. If it is config, routes or schema files, that is where your agents collide.\n\n**Two fixes**\n\n- Give each agent its own worktree (a separate working folder checked out from the same repository), so the clash becomes a visible merge conflict instead of a silent overwrite.\n- Have an agent claim a file before it writes: append one line to a shared file under `flock`, and tell the other agents to skip claimed files.\n\n**Caveats.** The check cannot separate sessions that share one branch and one author name. A hit is also a near miss, not proof of a lost edit, so read the two diffs before concluding anything.","category":"Workflow","slug":"find-the-good-edit-one-agent-silently-overwrote-for-another-using-git-lo-7ab55b","url":"https://cursorhq.ai/guides/find-the-good-edit-one-agent-silently-overwrote-for-another-using-git-lo-7ab55b/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/7ab55b05-0f3c-466a-b353-6fcb7c6da174","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/find-the-good-edit-one-agent-silently-overwrote-for-another-using-git-lo-7ab55b/9b0bb9ac47984186-b6371947454b2e54/web_hero.webp","imageAlt":"Two rectangular metal cartridges are forced into a single vertical slot, with the second one partially overlapping the first.","createdAt":"2026-10-29T15:55:37.440Z"},{"id":"22bfcd77-ec8c-43ee-a7a7-d7f074c74961","title":"Have a different model review your agent's PR from inside Cursor","dek":"ThinkReview's MCP server lets Cursor call a single tool on a pull request URL and get back severity-ranked findings, so the agent can fix them in the same session.","bodyMd":"A quick glossary first: a PR (pull request) is a proposed code change awaiting review, and the agent is Cursor's AI assistant that writes and edits code.\n\nThinkReview, a pull request review tool for GitHub, GitLab, Azure DevOps and Bitbucket (including self-hosted), has an MCP server that works in Cursor, Claude Code, Codex, Antigravity and Windsurf. Your agent calls one tool, `review_url_code`, with a PR or MR URL. ThinkReview fetches the diff using git credentials stored in its portal, so nothing is pasted into chat.\n\nThe result is the structured review the ThinkReview extension already returns: a summary, severity-ranked findings, security notes and a plain-language reason. Your custom rules and chosen model apply, so the review can come from a different model family than the one that wrote the code. The reasoning is that the agent is the weakest last reader of its own change, and a recap in chat can drift from what the diff actually does.\n\n## Set it up in Cursor\n\n1. Before the first review, add a git PAT under Settings → Integrations in the ThinkReview portal. Without it, private diffs can't be read.\n2. Add the server to your MCP config. The hosted endpoint is `https://mcp.thinkreview.dev/v1`, which uses browser OAuth, so no token goes in config files.\n3. Click Authenticate.\n4. Ask the agent: \"Call thinkreview for https://github.com/org/repo/pull/123\".\n5. Then run `/mcp` and authenticate.\n\nCopy-paste configs for each client are on ThinkReview's MCP setup page.\n\n## Turn it into a loop\n\nWrapping the call in a skill is the better use. A Cursor skill such as `/thinkreview-pr` can find or open the PR, call `review_url_code`, fix the critical and high findings that deserve a change, run the tests, push to the same PR and review again. The same pattern works in Claude Code and Codex through a prompt, a custom command or an agent instruction file.\n\n## When it earns its keep\n\nTwo runs on real pull requests show the kind of problem it surfaces. On one PR, the review flagged that a Google sign-in popup handler was never set up, so the window could fail to open; the Cursor agent then patched `searchConsole.js` and restored a clear message when Google rejects the account. On a billing change, the review flagged a critical issue: when a cancel call failed, the handler still returned HTTP 200, so the billing provider would not retry and a trial could stay live. Both were easy to miss in the chat summary.\n\nReach for it on agent-written branches before merge, when the summary says \"done\" and you want a reader from outside the authoring session.","category":"Workflow","slug":"have-a-different-model-review-your-agent-s-pr-from-inside-cursor-22bfcd","url":"https://cursorhq.ai/guides/have-a-different-model-review-your-agent-s-pr-from-inside-cursor-22bfcd/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/22bfcd77-ec8c-43ee-a7a7-d7f074c74961","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/have-a-different-model-review-your-agent-s-pr-from-inside-cursor-22bfcd/e9a2f1c5685ca535-d1e1b4689b6c5f4a/web_hero.webp","imageAlt":"A metal cartridge with two glass chambers slides into a hardware dock to bridge a code agent with an external review tool.","createdAt":"2026-10-29T15:08:20.314Z"},{"id":"633ea1f3-ccdd-4279-99b0-490dd30577ff","title":"Vicem swaps unchanged function bodies for one-line stubs to slim Agent Mode's context","dek":"Vicem, a free MIT-licensed MCP server, swaps unchanged function bodies for stubs to trim the context its developer says Cursor re-sends each turn, and hands full bodies back to the agent only when needed.","bodyMd":"Agent Mode is Cursor's AI agent: it reads files, runs commands and edits code across a chat. The developer behind Vicem says it is quick in a fresh chat, but that after 20 to 30 turns of file reads and test runs the \"Planning next moves\" pause grows noticeably. They attribute it to each turn re-sending a large payload built from chat history. That is the developer's own observation, not a documented description of how Cursor works. Starting a new chat restores the speed but costs the context: which files changed, what broke, what constraints apply.\n\nVicem, an open-source tool under the MIT license, attacks the payload size. It is also an MCP server, meaning a small local program that gives the agent extra tools it can call (MCP stands for Model Context Protocol). Its developer says it runs on Node.js built-ins only, with zero npm dependencies and no network calls, and cuts tokens per turn by \"usually 55% to 78%\". Tokens are the chunks of text a model reads and is billed for.\n\n**What it trims**\n\nA function body is the code between a function's braces, the part that does the work; the signature is the line that names the function and its inputs. A stub is a short placeholder left in the body's place.\n\n- **Code skeletonizer:** keeps imports, exported types and function signatures, and replaces unchanged function bodies with a one-line stub carrying an ID, such as `{ /* vicem:fn_a8c39f (42L) */ }`.\n- **Log slimmer:** strips passing test lines and `node_modules` stack frames from terminal output, so the agent sees the failing assertions.\n- **Data diet:** condenses large JSON, CSV and SQL files into compact schemas and ignores lockfiles.\n- **Secret guard:** masks `.env` values and keys such as `sk-*`, `ghp_*` and `AKIA*` locally before they reach the prompt.\n\n**Getting bodies back**\n\nStripped blocks are stored in `.vicem/ledger.json`. Vicem registers a lightweight stdio MCP server (one that talks to Cursor over standard input and output rather than a network port) in `~/.cursor/mcp.json`, with an optional `.cursor/rules/vicem.mdc` rule. When the agent needs to read or edit a skeletonized function, it calls `vicem_rehydrate_node` and pulls back only those lines.\n\n**Carrying state into a new chat**\n\nVicem can also snapshot the workspace: it copies `state.vscdb` plus the `-wal` and `-shm` files to a temp file (so it never locks a running Cursor window), adds your git diff and recent terminal output, and writes a `BATON.md` handoff file you can use to start a fresh chat without re-explaining.\n\n**Trying it**\n\nThe code is at github.com/RAKKUNN/vicem. `npx vicem-cli gui` launches a local three-column web GUI, and a browser sandbox runs at rakkunn.github.io/vicem.\n\nThe developer built it for long sessions on larger codebases. The token savings and the explanation of the slowdown are the developer's own; the source gives no speed measurement.","category":"Workflow","slug":"vicem-swaps-unchanged-function-bodies-for-one-line-stubs-to-slim-agent-m-633ea1","url":"https://cursorhq.ai/guides/vicem-swaps-unchanged-function-bodies-for-one-line-stubs-to-slim-agent-m-633ea1/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/633ea1f3-ccdd-4279-99b0-490dd30577ff","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/vicem-swaps-unchanged-function-bodies-for-one-line-stubs-to-slim-agent-m-633ea1/13d5362447afa6e3-56073ef165789f7d/web_hero.webp","imageAlt":"A row of document stacks, with one full stack and several others compressed into thin placeholders by metal spacer plates.","createdAt":"2026-10-29T00:20:09.117Z"},{"id":"e9e0ebc4-2dbe-4f7f-b238-896f0f17f3a1","title":"Track Cursor CLI tasks and approvals across repos from one dashboard","dek":"Denly, a web dashboard for coding agents, runs Cursor's CLI (the command-line interface, a text-based way to run the agent from a terminal) on your own machine and collects whatever needs a human decision in one place.","bodyMd":"Denly gathers the work that is waiting on you across several projects: plans to approve, questions from agents, failures and PRs ready for review. Its Cursor integration drives Cursor's CLI on your own machine, according to its developer's forum post. The CLI is the command-line interface, the text-based way to run the Cursor agent from a terminal. The tool also supports other coding-agent CLIs, so different projects can use different providers.\n\n**How the workflow runs**\n\n1. Submit a task for a project.\n2. Review the agent's proposed plan and approve it.\n3. Let the agent build and run the checks configured for that repository.\n4. Review the resulting PR, then request changes or merge.\n\n**Who it is aimed at**\n\nThe developer pitches Denly at people using Cursor across several repositories and asks for feedback on whether the workflow helps. The part the developer says they are focusing on now is coordinating work across projects and keeping track of where a person needs to step in.\n\n**Limits to know**\n\n- The runner makes outbound requests to the control service, so no port needs to be opened on your machine.\n- Your machine must be awake and online for tasks to execute.\n- Selected plans, transcripts and other content can be uploaded, so local execution does not mean everything stays local.\n- Denly has a free plan and paid tiers. You use your own agent account, with its existing limits and charges.\n\nThe developer's post links a product page at denly.dev and an illustrated demo walkthrough with sample tasks.","category":"Ecosystem","slug":"track-cursor-cli-tasks-and-approvals-across-repos-from-one-dashboard-e9e0eb","url":"https://cursorhq.ai/guides/track-cursor-cli-tasks-and-approvals-across-repos-from-one-dashboard-e9e0eb/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/e9e0ebc4-2dbe-4f7f-b238-896f0f17f3a1","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/track-cursor-cli-tasks-and-approvals-across-repos-from-one-dashboard-e9e0eb/aecba402adeae18f-570bf920197284f3/web_hero.webp","imageAlt":"A metallic central hub with four cables connecting to four separate workstation towers, representing the coordination of multiple coding tasks in one location.","createdAt":"2026-10-28T19:11:12.546Z"},{"id":"0f97b24d-6df1-42d8-abb5-e096c1f17ea9","title":"Write a pull request prompt as a Cursor custom command in a markdown file","dek":"A markdown file in a commands folder inside the cursor folder holds a prompt that asks for a PR with a descriptive title and the GitHub CLI.","bodyMd":"Cursor custom commands are markdown files in a `commands` folder inside the cursor folder, each holding a prompt. The walkthrough's example is a command for making pull requests.\n\nA few terms in plain language:\n\n- **Markdown file:** a plain-text file, ending in `.md`, that uses simple formatting symbols.\n- **Pull request (PR):** a proposal to merge your code changes into a project so others can review them.\n- **Prompt:** the written instructions you give Cursor's AI.\n- **Command:** here, a named markdown file that holds a prompt you have written down.\n- **GitHub CLI:** GitHub's command-line tool, which can create pull requests from the terminal.\n\n**How to set it up**\n\n1. In the cursor folder, create a new folder named `commands`.\n2. Inside it, add a markdown file. The example uses `pr.md`, but the file can be named whatever you want.\n3. Put the prompt in the file. The example reads: \"Your job is to create a PR with a descriptive title. Always use the GitHub CLI.\"\n\nThe prompt text is free-form, so you decide what goes in it. The walkthrough notes you could also add specific rules or commit guidelines to the same file.\n\n**What the example shows**\n\nThe example keeps a pull request prompt in a `pr.md` file inside the `commands` folder. That prompt asks for a PR with a descriptive title and says to always use the GitHub CLI.\n\nThe source covers only the file setup and the example prompt. It does not show how the command is then invoked.","category":"Workflow","slug":"write-a-pull-request-prompt-as-a-cursor-custom-command-in-a-markdown-fil-0f97b2","url":"https://cursorhq.ai/guides/write-a-pull-request-prompt-as-a-cursor-custom-command-in-a-markdown-fil-0f97b2/","relayUrl":"https://relaygrid.com/publications/pivot-cursor/stories/0f97b24d-6df1-42d8-abb5-e096c1f17ea9","imageUrl":"https://media.pivotnews.ai/brands/cursor-hq/articles/write-a-pull-request-prompt-as-a-cursor-custom-command-in-a-markdown-fil-0f97b2/ce519ee6e9295810-7821bc6d791aef8f/web_hero.webp","imageAlt":"A metal cartridge with etched markings is shown being inserted into a slot on the side of a larger, modular hardware device.","createdAt":"2026-10-28T08:39:32.458Z"}]}