Was macht less?
Weniger, aber besser. Behalte nur, was einen Grund zu existieren hat.
Der Test
Für jedes Element (Satz, Einschränkung, Überschrift, Aufzählungspunkt, Kommentar, Funktion, Parameter, Option) frage: Hat dieses Element einen klaren Grund zu existieren? Wenn nicht, entferne es. Klarheit geht vor Kürze. Bei Unsicherheit behalte es. Beurteile, was eine Passage im Kontext tut, nicht ob sie einer Standardformulierung entspricht. Lies den umgebenden Text: Ein einschränkender Zusatz kann sich auf spätere Sätze beziehen. Belasse Sätze und Codeabschnitte außerhalb der bestätigten Entfernungsziele unverändert; erlaube nur die lokalen Reparaturen, die durch diese Entfernungen erforderlich werden.
Wann
Nur auf Anfrage oder bei einem eindeutigen Hinweis, nicht beim bloßen Verfassen eines Entwurfs oder neuen Codes. Entferne unnötiges Material; erlaube nur die lokalen Bearbeitungen, die erforderlich sind, um das Ergebnis grammatikalisch korrekt oder ausführbar zu halten (z. B. Inlinen einer redundanten Hilfsfunktion). Keine unabhängigen Stil- oder Sprachumschreibungen, Übersetzungen, Zusammenfassungen mit fester Länge, Faktenprüfungen, Algorithmusersatz oder Leistungsoptimierungen.
Nicht anwenden
Gib die Eingabe unverändert plus eine Zeile mit dem Grund zurück für:
- Rechtliche, vertragliche oder andere wörtliche Texte; Zitate und Transkripte.
- Code, Konfiguration oder Befehle, auf die der Benutzer nicht verwiesen hat.
Ändere nur den Code, auf den der Benutzer verwiesen hat. Eine vom Benutzer festgelegte Länge oder ein Format ist kein Ausschlussgrund: Arbeite innerhalb dessen.
Entfernungsreihenfolge
Überprüfe jeden Kandidaten zuerst auf „Niemals entfernen“, insbesondere die eigenen Begrüßungen und Verabschiedungen des Benutzers.
Text:
- Vorwort, wiederholte Frage und von dir hinzugefügte Begrüßungen („Großartige Frage!“).
- Von dir hinzugefügte abschließende Zusammenfassungen und Angebote, oder solche, die eine PR-Beschreibung, einen Commit oder ein Dokument beenden („Hoffe, das hilft“, „Möchtest du, dass ich…“).
- Füllwörter und Floskeln, die nichts ändern.
- Doppelte Punkte (behalte den klarsten).
- Nicht angeforderte Einschränkungen und Alternativen, die nicht ändern, was der Leser tut.
- Verzierung bei Antworten unter ~5 Sätzen: Überschriften, Fettdruck, Aufzählungspunkte.
- Fasse den Rest zusammen und kürze ihn, wobei vollständige Sätze erhalten bleiben. Wenn du den Text des Benutzers bearbeitest, fasse keine Sätze zusammen oder formuliere sie neu; repariere nur die Grammatik, die direkt von einer Löschung betroffen ist.
Code:
- Kommentare, die den Code wiederholen.
- Unnötige Abstraktionen: Hilfsfunktionen, Wrapper, Schnittstellen, Fabriken. Alleinige Einmalverwendung ist kein Beleg dafür, dass eine Abstraktion unnötig ist.
- Nicht angeforderte Optionen, Flags, Konfiguration.
- Defensiver Code für Fälle, die aus dem sichtbaren Code nachweislich nicht eintreten können. Ansonsten behalte ihn.
Bevor du Code oder Optionen entfernst, überprüfe verfügbare Aufrufer, Exporte und relevante Tests. Bewahre extern genutzte Signaturen und Verhalten, es sei denn, der Benutzer fordert diese Änderung ausdrücklich an. Führe relevante vorhandene Überprüfungen nach Code-Änderungen durch; wenn Nutzung oder Verhalten nicht festgestellt werden können, behalte den Kandidaten.
Dokumente: Wende den Test abschnittsweise an. Behalte die Struktur, an der sich Leser orientieren: Überschriften, Inhaltsverzeichnis und Anker, nummerierte Schritte, auf die anderswo verwiesen wird, Tabellen mit Daten. Entferne einen gesamten Abschnitt nur, wenn er den Test nicht besteht. Behalte jede Überschrift und ihren Inhaltsverzeichniseintrag, es sei denn, der gesamte Abschnitt wird gestrichen; fasse niemals einen Abschnitt in die Einleitung.
Design: Wende bei UI-Code, auf den der Benutzer verweist, den Test auf Elemente und Stile an. Entferne nur, nachdem du references/design.md überprüft hast (Entfernungsreihenfolge und Niemals-entfernen-Liste). Nicht angeforderter Inhalt dort bezieht sich auf das, was der Agent hinzugefügt hat, nicht auf das, was der Benutzer geschrieben hat. Ändere nur Markup und Stile; keine neue Ästhetik. Nicht zum Erstellen neuer UI, Screenshots oder Figma-Dateien.
Niemals entfernen
- Korrektheit: Zahlen, Einheiten, Daten, Bedingungen, Ausnahmen, Negationen.
- Aussagekraft: Unsicherheit, Näherung, Reichweite, Kausalbeziehungen und Verpflichtungen. Behalte bedeutungstragende Qualifikatoren wie „ungefähr“, „einige“, „höchstens“, „kann“ und „muss“; Kürzung darf eine Behauptung weder verstärken noch abschwächen.
- Benötigter Kontext: Was der Leser zum Handeln benötigt (Voraussetzungen, Schritte, Versionen).
- Sicherheit: Warnungen zu Datenverlust, Sicherheit, Geld, Recht, irreversiblen Aktionen.
- Die Anfrage des Benutzers: angeforderter Inhalt, Format, Länge, Einschränkungen.
- Zuschreibungen und Zitate.
- Die Stimme des Benutzers bei der Bearbeitung seines Textes. Schreibe den Stil nicht um.
- In einer Nachricht an Personen (E-Mail, Chat, Brief), die der Benutzer verfasst hat: Begrüßungen, Verabschiedungen und Zeilen, die um eine Antwort oder Fragen bitten („Lassen Sie mich wissen, ob …“). Z. B. bleibt „Zögern Sie nicht, mich jederzeit zu kontaktieren, falls noch etwas unklar ist.“; du darfst „jederzeit“ und „noch“ kürzen. Nur Begrüßungen und Verabschiedungen sind geschützt: andere Füllwörter im Text des Benutzers („eigentlich“, „buchstäblich“, „nur“) werden dennoch gestrichen, wobei seine Stimme erhalten bleibt.
- Höflichkeitsregister: 존댓말/敬語-Formen, 様, Begrüßungen, Verabschiedungen. Gestapelte Abschwächer und Verstärker darin (정말, 혹시, 大変, 誠に, 何卒) sind nur Kandidaten: Behalte sie, wenn sie Unsicherheit oder soziale Absicht transportieren.
- Code: Verhalten (Ausgabe, Nebenwirkungen, Fehler); Fehlerbehandlung an echten Grenzen (E/A, Netzwerk, Benutzereingabe); „Warum“-Kommentare, Einschränkungen, Sicherheits- hinweise; öffentliche API und Signaturen, wenn nicht anders angefragt; Typannotationen, die die Überprüfung oder Laufzeit beeinflussen; Nur-für-Tests-Hooks und -Nähte.
- Alles, dessen Zweck du nicht bestimmen kannst.
Stopp
Stoppe, wenn jedes Element den Test besteht oder wenn der nächste Schnitt die Bedeutung beeinträchtigen oder Raten erfordern würde. Vergleiche das Ergebnis mit der Quelle auf geänderte Aussagekraft und unbeabsichtigte Änderungen an gutem umgebendem Material. Schneide niemals, um eine Länge zu erreichen. Wenn der Benutzer darum gebeten hat, seinen Text zu kürzen, werden Füllwörter entfernt, die den Test nicht bestehen; unveränderte brauchen einen Grund.
Ausgabe
Nur der reduzierte Text oder Code, im gleichen Format und Sprache. Ausnahme: die einzeilige Begründung unter „Nicht anwenden“. Kommentiere nicht, was geschnitten wurde, es sei denn, der Benutzer fragt danach; dann liste es auf. Wenn sich nichts ändern sollte, gib es unverändert zurück.