Skip to main content

Hand a bug to Claude Code or Cursor

An issue in StorePilot already holds most of what a developer opens first: the stack, the file and line it points at, the page and the browser it happened in, the steps the visitor took just before it, and recordings of visits that hit it. There are two ways to give all of that to a coding agent, so it can start from the evidence rather than from your description of it.

Copy one issue​

Open the issue and press Copy for coding agent at the top of the page. The issue is copied to your clipboard as Markdown; paste it into Claude Code, Cursor or any other assistant.

The brief carries:

  • the message, the error type, where in the code it is (theme, plugin, core), the environment and the release — including the release it was first seen in, and the one it came back in if it was closed and returned;
  • when it was first and last seen, how many times, and how many visits it reached;
  • what changed on the site shortly before it first appeared, if anything did — a deploy, or a WordPress plugin, theme or core update;
  • the stack — mapped back to your own source when you uploaded a source map for that release;
  • the context the browser or the server reported: file, line and column, page, browser and version, operating system, device, viewport and the like;
  • the trail of the newest visit that recorded one — the pages, clicks, requests (with their status and how long they took), custom events and console messages just before the fault;
  • links to up to 3 recordings of visits that hit it, and a link back to the issue.

Nothing is fetched to build it: the brief is made from what the issue page already shows you.

Connect your coding agent once​

If you would rather ask than paste, connect StorePilot to the agent itself. It then reads the same issue — with the same context, trail and up to 3 recordings — whenever you ask it to, through the get_issue tool. Each recording link the tool hands over opens the player at the moment that visit met the fault, the way the issue page's own Watch links do. It can also find the issues worth starting from: list_issues narrows to what one release introduced, to the ones that came back, or to one kind of fault, and list_releases says what each deploy introduced.

claude mcp add --transport http storepilot https://api.store-pilot.net/mcp

Run /mcp inside a Claude Code session and sign in through the browser. For other clients, use the address https://api.store-pilot.net/mcp. The consent screen, the site list and how to disconnect are on Connect your own AI client.

To connect without a browser sign-in — in CI, or from a client that sends a header — use a personal key instead.

What it never carries​

Both the copied brief and the connected tool leave the same things behind. The brief never carries an IP address, the ids of the visitor or the visit that reported the fault, the raw user-agent string (the browser, its version, the operating system and the device do travel), a referrer, the body of a failed request's response, or an account id on your own site. The issue page may show you some of these; a model working on your code does not need them.

Recordings are links back to the player here, never the footage itself.

The context passes through a fixed list of named fields. A field the collector adds later is not sent until it is added to that list — and the connected tool counts what it left out, so the agent is told there was more than it received.