// docs / ai fix prompts
AI improvement prompts
Every finding has a Copy prompt button beneath the remediation. Click it, paste into Claude / Cursor / Copilot, and the agent gets the canonical improvement recipe for that website-quality issue — no Claude API call from us.
Hoe dit werk
Twee stukke data kom by ’n klik saam:
- Die bevinding — titel, beskrywing, bewyse, hersteladvies, CWE — reeds saam met die verslag gelaai.
- Jou kodebasis se framework — opgespoor uit die skandering se
discovery.tech-fingerprint-bevindinge (Next.js, React, Vue, Django, Express, Rails, Laravel, Flask). Val terug na ’n generiese resep wanneer geen framework opgespoor word nie (die agentprompt vra dan die LLM om dit uit die repo-toestand te bepaal).
Templates live in lib/scanner/fix-prompts.ts. The registry has check-specific guidance for crawlability, search presentation, semantic content, structured data, media, performance, accessibility, forms, mobile/i18n, runtime, owner journeys, and repo-quality issues. For everything else, the existing remediation field on the finding becomes the generic recipe.
Hoe die prompt lyk
Fix the "Hero image is lazy-loaded and missing dimensions" finding on /pricing. Issue: The largest above-the-fold image is marked loading="lazy" and has no explicit width/height. That can delay LCP and create layout shift. Codebase context: Next.js. Recommended fix: Use next/image or the existing image component with explicit width/height, responsive sizes, meaningful alt text, and priority/fetchPriority for the first major visual on the page. 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 performance 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: Core Web Vitals / Largest Contentful Paint guidance.
Ondersteunde frameworks
Ons wys framework-spesifieke brokkies vir:
- Next.js, React, Vue, Nuxt, Svelte (frontend)
- Express, Fastify (Node.js backend)
- Django, Flask (Python)
- Ruby on Rails
- Laravel (PHP)
- ASP.NET Core (beplan, val vandag terug na generies)
Framework-opsporing is beste-poging. Ons ruik __NEXT_DATA__-tags, __NUXT__, hash-cookies (laravel_session), X-Powered-By-koptekste, en ’n paar ander seine uit. As jy ’n pasgemaakte framework gebruik, val die prompt terug na die generiese resep en die agent werk dit uit uit jou package.json.
Gebruik dit vanaf jou AI-agent
As jy die MCP server gekoppel het, word dieselfde prompt as ’n slash command blootgestel. Vanaf Claude Desktop:
/fixweb-fix finding_id=550e8400-e29b-41d4-a716-446655440000
The renderer looks up the finding, detects the framework from the parent scan when available, renders the templated prompt, and injects it into your conversation as the user message. No round-trip to our Claude API; templates are pure and free.
Waarom ons nie Claude per klik tref nie
By bekendstelling het ons oorweeg om die Anthropic API vir elke klik te roep om die prompt met kodebasis-konteks te verfyn. Ons het nie, want:
- Die agent waarin die gebruiker plak, het reeds kodebasis-konteks; hulle gebruik Cursor / Claude Desktop met hul repo oop.
- Sjablonering per (kontrole × framework) dek ongeveer 80% van die waarde sonder enige per-klik-koste.
- ’n “Refine with AI for my codebase”-opt-in kan later die API afvuur as gebruikers dit wil hê. Vandag, nee.
