// 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.
How it works
Two pieces of yatiyawi combine on click:
- The jikxatawi — title, description, evidence, remediation, CWE — already loaded ukampi uka yatiyaw.
- Your codebase's framework — detected ukat uka scan's
discovery.tech-fingerprintjikxatawinaka (Next.js, React, Vue, Django, Express, Rails, Laravel, Flask). Falls back ru a generic recipe kunapacha janiwa framework wa detected (uka agent prompt then asks uka LLM ru detect it ukat uka repo state).
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.
What uka prompt looks like
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.
Supported frameworks
We surface framework-specific snippets tak:
- Next.js, React, Vue, Nuxt, Svelte (frontend)
- Express, Fastify (Node.js backend)
- Django, Flask (Python)
- Ruby on Rails
- Laravel (PHP)
- ASP.NET Core (planned, fallback ru generic today)
Framework detection wa best-effort. We sniff __NEXT_DATA__ tags, __NUXT__, hash cookies (laravel_session), X-Powered-By headers, ukat a few other signals. If juma're running a custom framework, uka prompt falls back ru uka generic recipe ukat uka agent figures it out ukat ma package.json.
Use it ukat ma AI agent
If juma've wired up uka MCP sirwiri, uka same prompt wa exposed as a slash command. From 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.
Why nayanaka don't hit Claude per click
On launch nayanaka considered calling uka Anthropic API tak each click ru refine uka prompt ukampi codebase context. We didn't, because:
- The agent uka user pastes into already has codebase context — they're using Cursor / Claude Desktop ukampi their repo open.
- Templating per-(check × framework) covers ~80% of uka value jan any per-click cost.
- A “Refine ukampi AI tak my codebase” opt-in could fire uka API later if apnaqirinaka want it. Today, janiwa.
