Codex-Kernkonzepte
Bevor Sie Codex verwenden, ist es sehr wichtig, einige Kernkonzepte zu verstehen. Diese Konzepte bilden die Grundlage dafür, wie Codex funktioniert.
Prompt
Sie interagieren mit Codex, indem Sie Prompts senden und die Aufgabe beschreiben, die es erledigen soll.
Prompt-Arbeitsschleife
Nachdem Sie einen Prompt gesendet haben, arbeitet Codex in der folgenden Schleife:
- Das Sprachmodell aufrufen, um die Aufgabe zu verstehen
- Die von der Modellausgabe angegebenen Operationen ausführen (Dateien lesen, Code bearbeiten, Befehle ausführen)
- Die Operationsergebnisse an das Modell zurückmelden
- Die Schleife wiederholen, bis die Aufgabe abgeschlossen ist oder Sie abbrechen.
Codex verwendet denAgent loop-Betriebsmodus — das Modell gibt Anweisungen für Aktionen aus, Ergebnisse werden an das Modell zurückgemeldet, und der Zyklus wiederholt sich, bis die Aufgabe abgeschlossen ist.
Prinzipien effektiver Prompts
| Prinzip | Beschreibung | Beispiel |
|---|---|---|
| Verifizierungsschritte einbeziehen | Codex erzeugt qualitativ hochwertigere Ausgaben, wenn es seine Arbeit verifizieren kann | "Schreibe eine Funktion, einschließlich Testfällen, um zu überprüfen, dass sie eine leere Liste verarbeitet" |
| Komplexe Aufgaben aufteilen | Kleinere Aufgaben sind einfacher zu testen und zu überprüfen | "Schritt 1: Erstelle das Modell; wenn es fertig ist, sag mir Bescheid, bevor du mit Schritt 2 fortfährst" |
| Kontext bereitstellen | Auf relevante Dateien und Bilder verweisen | "Beziehe dich auf den Stil von src/auth.py, um ähnliche Funktionalität zu implementieren" |
Codex erzielt die besten Ergebnisse bei der Bearbeitung kleiner, fokussierter Aufgaben. Große Aufgaben sollten in kleine Schritte zerlegt und schrittweise ausgeführt werden.
Thread
Ein Thread ist eine einzelne Aufgaben-Sitzung: deine Prompts plus die daraus resultierenden Modellausgaben und Tool-Aufrufe.
Thread-Typen
| Type | Laufzeitumgebung | Eigenschaften |
|---|---|---|
| Lokaler Thread | Dein Rechner (innerhalb der Sandbox) | Kann Dateien lesen/schreiben, vorhandene Tools verwenden und Befehle ausführen |
| Cloud-Thread | Isolierte Cloud-Umgebung | Repository klonen und ausführen, geeignet für parallele Aufgaben, geräteübergreifende Delegation |
Regeln zur Thread-Nutzung
Laufende Threads können gleichzeitig ausgeführt werden, aber beachte:
- Vermeide, dass zwei Threads gleichzeitig dieselbe Datei ändern
- Ein Thread kann später fortgesetzt werden, indem du mit einem weiteren Prompt fortfährst
- Lang laufende Aufgaben können den Kontext automatisch komprimieren
Kontext
Wenn du einen Prompt absendest, enthält er Kontext, den Codex verwenden kann – Verweise auf relevante Dateien und Bilder.
Kontextquellen
- IDE-Erweiterung: Fügt automatisch die Liste der geöffneten Dateien und ausgewählten Textbereiche hinzu
- Manuelle Angabe: Dateipfade im Prompt angeben oder Bilder anhängen
- Konversationsverlauf: Vorheriger Konversationsinhalt im Thread
Kontextfenster
Alle Informationen in einem Thread müssen in das Kontextfenster des Modells passen.
Codex überwacht und meldet den verbleibenden Platz. Du erhältst einen Hinweis, wenn du dich dem Limit näherst.
Automatische Komprimierung
Bei längeren Aufgaben kann Codex den Kontext automatisch komprimieren.
Der Komprimierungsmechanismus fasst relevante Informationen zusammen, verwirft weniger wichtige Details und schafft Platz, um die Verarbeitung fortzusetzen.
Kontextverwaltung
/new
# Aktuelle Kontextnutzung anzeigen
/status
Wenn Codex eine hohe Kontextnutzung meldet, sollten Sie erwägen, eine neue Sitzung zu starten oder frühere Nachrichten zu reduzieren.
Sandbox
Sandbox ist Codex' Sicherheitsisolationsmechanismus, der versehentliche Änderungen von Dateien außerhalb des Arbeitsbereichs verhindert.
Sandbox-Modi
| Mode | Dateiänderung | Netzwerkzugriff | Anwendungsfälle |
|---|---|---|---|
| Nur Lesen | Verweigert | Verweigert | Schreibgeschützte Analyse, Code-Review |
| Workspace-write | Nur Arbeitsbereich | Verweigert | Tägliche Entwicklung (Standard) |
| Full-access | Erlaubt | Erlaubt | Vollständig vertrauenswürdige Umgebung (mit Vorsicht verwenden) |
Genehmigungsmechanismus
Bestimmte Vorgänge erfordern Ihre Bestätigung vor der Ausführung:
- Ausführen von Shell-Befehlen (insbesondere rm, kill usw.)
- Ändern oder Löschen von Dateien
- Zugriff auf sensible Verzeichnisse (z. B. ~/.ssh/, /etc/)
- Netzwerkanfragen
Sandbox-Modus festlegen
codex --sandbox workspace-write
# Oder im Prompt angeben
"Analysiere diesen Code, ändere keine Dateien"
Die Sandbox ist die erste Verteidigungslinie in Codex' Sicherheitsrichtlinie und stellt sicher, dass KI-Vorgänge den erwarteten Umfang nicht überschreiten.
Genehmigungsrichtlinie
Die Genehmigungsrichtlinie steuert, ob eine Bestätigung erforderlich ist, bevor Codex Operationen ausführt.
Richtlinientypen
| Policy | Beschreibung | Verhalten |
|---|---|---|
ask | Jedes Mal fragen | Vor sensiblen Operationen Bestätigung anfordern (Standard) |
approve | Automatisch genehmigen | Automatisch ausführen, keine Bestätigung erforderlich (mit Vorsicht verwenden) |
deny | Automatisch ablehnen | Alle Operationen ablehnen, die Nebenwirkungen haben können |
Genehmigungsrichtlinie konfigurieren
approval_policy = "ask"
Zusammenfassung
Nachdem Sie diese Kernkonzepte verstanden haben, können Sie Codex effektiver nutzen:
- Prompt: Beschreiben Sie die Aufgabe klar, einschließlich Verifikationsschritten
- Thread: Task-Sitzungen verwalten, Nebenläufigkeitsregeln beachten
- Kontext: Relevanten Kontext bereitstellen, Fensternutzung überwachen
- Sandbox: Sicherheitsmechanismen verstehen, den passenden Modus wählen
Häufig gestellte Fragen
F: Sollen Prompts auf Chinesisch oder Englisch sein?
Codex unterstützt mehrere Sprachen, aber Englisch funktioniert meist am besten. Bei Verwendung von Chinesisch sollte die Beschreibung ausreichend detailliert und klar sein.
F: Wie kann ich den aktuellen Thread-Status anzeigen?
Verwenden Sie/statusBefehl zum Anzeigen von Thread-ID, Kontextnutzung und Konfigurationsinformationen.
F: Was soll ich tun, wenn das Kontextfenster voll ist?
Starten Sie eine neue Sitzung (/new), oder lassen Sie Codex den Verlauf automatisch komprimieren.
F: Kann der Sandbox-Modus dynamisch gewechselt werden?
Sie können es beim CLI-Start angeben oder einen Standardwert in der Konfigurationsdatei festlegen.
Andere Erweiterungen