FixVibe

// docs / ai fix prompts

AI fix prompts

Every finding has a Copy fix prompt button beneath the remediation. Click it, paste into Claude / Cursor / Copilot, and the agent gets the canonical fix recipe for that vuln in your codebase's framework β€” no Claude API call from us.

How it works

Two pieces of data combine on click:

  • The finding β€” the issue summary, affected surface, remediation guidance, and safe evidence needed to help your coding agent fix it.
  • Your app context β€” FixVibe uses scan context when available to choose a framework-aware remediation shape, and falls back to a generic recipe when it cannot infer enough context.

Fix prompts are rendered server-side from FixVibe remediation guidance. They are designed for copy-paste use in Cursor, Claude Desktop, Copilot, or another coding agent without exposing the internal prompt registry in the browser.

What the prompt looks like

Fix the "Reflected XSS in /search?q=" vulnerability at /search.

Issue: Query parameter q is rendered into the response body without
escaping; an attacker can inject <script> via crafted URLs.

Codebase context: Next.js.

Recommended fix:
In Next.js, render user-supplied values through JSX ({value}) so React's
automatic escaping kicks in. For server components rendering rich HTML,
sanitize with DOMPurify (server-side via JSDOM) before output.

Constraints:
- Don't break existing tests; run the test suite after the change.
- Match the codebase's existing style and lint config.
- Add a brief comment explaining the security reasoning only where the
  fix would otherwise look arbitrary.
- If the fix needs a new dependency, install it via the project's
  package manager (npm / pnpm / pip / bundle / composer).

Reference: CWE-79 β€” see https://cwe.mitre.org/data/definitions/79.html

Supported frameworks

We surface framework-specific snippets for:

  • Next.js, React, Vue, Nuxt, Svelte (frontend)
  • Express, Fastify (Node.js backend)
  • Django, Flask (Python)
  • Ruby on Rails
  • Laravel (PHP)
  • ASP.NET Core fallback guidance

Framework context is best-effort. If FixVibe cannot infer enough safely from the scan, the prompt asks your coding agent to inspect the repository before applying the fix.

Use it from your AI agent

If you've wired up the MCP server, the same prompt is exposed as a slash command. From Claude Desktop:

/fixvibe-fix finding_id=550e8400-e29b-41d4-a716-446655440000

The server looks up the finding, applies available scan context, renders the remediation prompt, and injects it into your conversation as the user message. No third-party LLM API call is made by FixVibe for this templated prompt.

Why we don't hit Claude per click

On launch we considered calling the Anthropic API for each click to refine the prompt with codebase context. We didn't, because:

  • The agent the user pastes into already has codebase context β€” they're using Cursor / Claude Desktop with their repo open.
  • Server-side templating covers the common remediation paths without any per-click model call.
  • A β€œRefine with AI for my codebase” opt-in could fire the API later if users want it. Today, no.
AI fix prompts β€” Docs Β· FixVibe