Files
pitchfast/lib/ai/local-audit-skill-registry.ts

164 lines
6.3 KiB
TypeScript

import { parseSkillsRegistry } from "../skills-registry";
export const LOCAL_AUDIT_SKILL_REGISTRY_SOURCE = [
"## visual-design",
"",
"```yaml",
"id: visual-design",
"title: Visueller Gesamteindruck & Zeitgemäßheit",
"applies_when: website_exists",
"inputs: [desktop_screenshot, mobile_screenshot]",
"outputs: findings",
"```",
"",
"Beurteile den ersten visuellen Eindruck: wirkt der Auftritt zeitgemäß oder veraltet?",
"Achte auf visuelle Hierarchie, Weißraum, Typografie (Lesbarkeit, Schriftmischung),",
"Farbkontraste, Bildqualität und Konsistenz. Konkrete Beobachtungen statt",
"Geschmacksurteilen — z. B. „kleine Schrift mit geringem Zeilenabstand erschwert das",
"Lesen auf dem Smartphone\", nicht „sieht altbacken aus\". Kundennutzen: ein moderner,",
"ruhiger Auftritt schafft Vertrauen, bevor der erste Satz gelesen wird.",
"",
"## impeccable-critique",
"",
"```yaml",
"id: impeccable-critique",
"title: Impeccable Critique Review",
"applies_when: website_exists",
"inputs: [desktop_screenshot, mobile_screenshot, markdown, dom]",
"outputs: findings",
"```",
"",
"Bewerte die Seite wie ein strenger Design Director: visuelle Hierarchie,",
"Informationsarchitektur, kognitive Last, Orientierung, Lesbarkeit, Progressive",
"Disclosure und erkennbare AI-Slop-/Template-Muster. Nutze Nielsen-Heuristiken",
"als Denkrahmen, aber gib keine Score-Tabelle aus. Befunde müssen beobachtbar und",
"belegt sein: z. B. „mehrere gleich laute CTAs konkurrieren im sichtbaren Bereich\"",
"statt „Design wirkt beliebig\". Marken- oder Emotionsfit nur nennen, wenn Evidence",
"aus Screenshot, Text oder DOM vorliegt. Kundennutzen: eine klarere, weniger",
"generische Oberfläche senkt Zweifel und führt Besucher schneller zur Anfrage.",
"",
"## first-impression-clarity",
"",
"```yaml",
"id: first-impression-clarity",
"title: Klarheit über dem Falz",
"applies_when: website_exists",
"inputs: [desktop_screenshot, mobile_screenshot, markdown]",
"outputs: findings",
"```",
"",
"Prüfe, ob im sichtbaren Bereich (ohne Scrollen) sofort klar wird: Was macht der",
"Betrieb, für wen, wo? Fehlt eine klare Überschrift, ein Leistungsversprechen",
"oder der Ort, muss ein Besucher raten. Kundennutzen: Besucher entscheiden in Sekunden,",
"ob sie bleiben — Klarheit hält sie auf der Seite.",
"",
"## contact-conversion",
"",
"```yaml",
"id: contact-conversion",
"title: Kontaktaufnahme & Handlungsaufforderung",
"applies_when: website_exists",
"inputs: [mobile_screenshot, markdown, dom]",
"outputs: findings",
"```",
"",
"Wie leicht kann ein Interessent Kontakt aufnehmen? Sind Telefonnummer, E-Mail bzw.",
"Formular und Öffnungszeiten leicht auffindbar — besonders mobil und ohne langes",
"Scrollen? Ist die Telefonnummer auf dem Smartphone klickbar (tel:)? Gibt es eine",
"klare nächste Handlung (anrufen, schreiben, Termin)? Kundennutzen: jede",
"Reibung weniger ist eine Anfrage mehr.",
"",
"## mobile-usability",
"",
"```yaml",
"id: mobile-usability",
"title: Mobile Nutzbarkeit",
"applies_when: has_mobile_screenshot",
"inputs: [mobile_screenshot, pagespeed]",
"outputs: findings",
"```",
"",
"Beurteile die mobile Darstellung: bricht Text oder Layout um, sind Tap-Ziele groß",
"genug, ist die Schrift ohne Zoom lesbar, verdecken Banner Inhalte? Nutze",
"PageSpeed-Mobile-Signale ergänzend. Kundennutzen: der Großteil lokaler Suchen passiert",
"am Handy — hier entscheidet sich, ob aus Interesse eine Anfrage wird.",
"",
"## trust-signals",
"",
"```yaml",
"id: trust-signals",
"title: Vertrauenssignale & Seriosität",
"applies_when: website_exists",
"inputs: [desktop_screenshot, markdown, dom]",
"outputs: findings",
"```",
"",
"Welche Vertrauenssignale sind vorhanden oder fehlen? Echte Fotos statt Stockbilder,",
"Team/Über-uns, Referenzen oder Bewertungen, vollständiges Impressum, sichtbare",
"Erreichbarkeit, gültiges HTTPS. Kundennutzen: lokale Kunden beauftragen, wem sie",
"vertrauen — sichtbare Seriosität senkt die Hemmschwelle.",
"",
"## conversion-copy",
"",
"```yaml",
"id: conversion-copy",
"title: Texte & Ansprache",
"applies_when: website_exists",
"inputs: [markdown]",
"outputs: findings",
"```",
"",
"Sind die Texte klar, nutzenorientiert und auf die Zielgruppe zugeschnitten — oder",
"generisch, fachsprachlich oder leer? Wird beschrieben, was der Betrieb leistet und",
"welches Problem er löst? Achte auf Verständlichkeit und Tonalität (Deutsch, lokal).",
"Kundennutzen: verständliche Texte holen mehr Besucher in eine Anfrage.",
"",
"## local-seo-basics",
"",
"```yaml",
"id: local-seo-basics",
"title: Lokale Auffindbarkeit (Grundlagen)",
"applies_when: website_exists",
"inputs: [dom, markdown]",
"outputs: findings",
"```",
"",
"Prüfe Title-Tag und Meta-Description (vorhanden, aussagekräftig, mit Ort?),",
"Überschriftenstruktur (genau eine sinnvolle H1?), sowie die Konsistenz von Name,",
"Adresse, Telefon (NAP) und ob der Ort/Einzugsbereich textlich auftaucht.",
"Kundennutzen: wer lokal gefunden wird, bekommt Anfragen aus der Region — ohne Werbebudget.",
"",
"## performance-experience",
"",
"```yaml",
"id: performance-experience",
"title: Tempo & Ladeerlebnis",
"applies_when: has_pagespeed",
"inputs: [pagespeed]",
"outputs: findings",
"```",
"",
"Übersetze PageSpeed-Rohdaten (LCP, CLS, INP, Gesamt-Score) in ein erlebbares Bild,",
"ohne Scores zu nennen. Beispiel: „Auf dem Smartphone erscheinen die ersten Inhalte",
"spürbar verzögert.\" Kundennutzen: schnelle Seiten halten Besucher — langsame verlieren",
"sie, bevor sie etwas gesehen haben.",
"",
"## accessibility-basics",
"",
"```yaml",
"id: accessibility-basics",
"title: Zugänglichkeit (Grundlagen)",
"applies_when: website_exists",
"inputs: [desktop_screenshot, dom]",
"outputs: findings",
"```",
"",
"Niedrigschwellige Barrieren: ausreichende Farbkontraste, lesbare Schriftgrößen,",
"sinnvolle Alt-Texte bei zentralen Bildern, bedienbare Menüs. Kundennutzen: gut",
"zugängliche Seiten erreichen mehr Menschen — und wirken professioneller.",
].join("\n");
export function loadLocalAuditSkillRegistry() {
return parseSkillsRegistry(LOCAL_AUDIT_SKILL_REGISTRY_SOURCE);
}