Vorbereitete Chat-Instanz (z. B. new ChatOllama({ model: 'llama3.2', temperature: 0 })
).
VS Code Output-Channel für Status/Logs.
Protected
modelVorbereitete Chat-Instanz (z. B. new ChatOllama({ model: 'llama3.2', temperature: 0 })
).
Protected
outputOutput-Channel für Logs und Hinweise.
Erzeugt den Code-Fix-Prompt und stößt die Reparatur an.
TypeScript-Inhalt der (ggf. fehlerhaften) Selektoren-Datei.
Der vom Modell gelieferte, bereinigte TypeScript-Code (nur Code, keine Erklärungen).
Nutzt intern CodeFixPrompt.getPrompt, der strikt vorgibt, nur kompilierten TS-Code ohne Zusatztext zurückzugeben.
Niedrigschwelliger Prompt-Handler:
Vollständig formatierter Prompt-String (z. B. aus CodeFixPrompt).
Bereinigter TypeScript-Code als String.
Protected
safeFührt einen sicheren Modellaufruf mit einem einzigen HumanMessage
aus
und gibt die reine Textantwort zurück.
Handhabt interne Fehler und schreibt verständliche Hinweise in den
Output-Channel (z. B. ob ollama serve
läuft oder das Modell gepullt ist).
Vollständiger Prompt-String für das Modell.
Inhalt der Modellantwort als String (Code/Plaintext – ohne weitere Struktur). Arrays werden rekursiv zusammengeführt.
Protected
unwrapEntpackt unterschiedliche Antwortformen (String, Array, Sonstiges) zu einem einheitlichen String.
Antwortinhalt aus der LLM-Nachricht (AIMessage.content
).
Zusammengeführter Text. Für Arrays werden die Elemente rekursiv
zu Zeilen zusammengefügt; null/undefined
wird als leerer String
behandelt.
RefactorAgent
repariert bzw. normalisiert vom LLM generierten TypeScript-Selektoren-Code (Cypress).Der Agent baut dazu einen CodeFixPrompt und gibt ihn an das Modell, wobei über safeInvoke eine robuste Ausführung inkl. Logging/Fehlerbehandlung gewährleistet wird.
Einsatzgebiet: „Auto-Fix“ nach der ersten Selector-Generierung – z. B. fehlende Klammern, Semikolons oder Markdown-Rauschen entfernen.
Example