Codex-Subagenten

Subagenten sind eine fortgeschrittene Funktion von Codex, mit der Sie große Aufgaben in kleinere Teile zerlegen und sie parallel oder sequenziell verarbeiten können. In diesem Abschnitt wird ausführlich beschrieben, wie Sie Subagenten konfigurieren und verwenden.


Was ist ein Subagent?

Subagenten sind Hilfsagenten, die Codex parallel aufrufen kann, um verschiedene Teile einer komplexen Aufgabe zu bearbeiten. Durch die Konfiguration von Subagenten können Sie:

  • Große Aufgaben in überschaubare Teile zerlegen
  • Mehrere unabhängige Aufgaben parallel verarbeiten
  • Spezialisierte Agenten für verschiedene Arten von Aufgaben konfigurieren
  • Die Effizienz bei der Bearbeitung großer Projekte verbessern

Subagenten eignen sich besonders für Szenarien, in denen mehrere Dateien oder mehrere unabhängige Aufgaben gleichzeitig verarbeitet werden müssen.


Subagenten konfigurieren

Basiskonfiguration

Subagenten konfigurieren

# Multi-Agent-Funktionalität aktivieren
[features]
multi_agent = true

# Agent-Parameter konfigurieren
[agents]
# Maximale Anzahl paralleler Threads
max_threads = 6

# Maximale Verschachtelungstiefe
max_depth = 1

# Maximale Laufzeit des Jobs (Sekunden)
job_max_runtime_seconds = 1800

Benutzerdefinierte Agent-Rollen

Sie können benutzerdefinierte Agent-Rollen in der Konfiguration definieren:

Agent-Rollen definieren

# Einen Code-Review-Agenten definieren
[agents.reviewer]
description = "Fokus auf Code-Review und Qualitätsprobleme"
nickname_candidates = ["Reviewer", "CodeChecker", "QualityBot"]

# Kann auf eine Konfigurationsdatei verweisen
# config_file = "agents/reviewer.toml"

Subagenten verwenden

Sub-Agenten manuell aufrufen

In Codex kannst du Subagenten auf folgende Weise aufrufen:

Subagenten aufrufen

# Verwende @, um Subagenten zu erwähnen
@reviewer, überprüfe die Datei src/auth.py

# Verwende den Befehl /agents
/agents run reviewer --task "Überprüfe alle Testdateien"

Automatische Verwendung von Sub-Agenten

Codex kann je nach Aufgabe automatisch Subagenten auswählen. Beispielsweise kann Codex bei einer großen Refactoring-Aufgabe automatisch mehrere Subagenten starten, um verschiedene Module zu bearbeiten.


Wie Subagenten funktionieren

Parallele Verarbeitung

Wenn Aufgaben in unabhängige Teile zerlegt werden können, können Subagenten parallel arbeiten:

任务:审查整个代码库
  ├─ 子代理 1:审查 src/auth/ 目录
  ├─ 子代理 2:审查 src/api/ 目录
  ├─ 子代理 3:审查 src/utils/ 目录
  └─ 主代理:汇总结果

Sequenzielle Verarbeitung

Wenn Aufgaben Abhängigkeiten haben, arbeiten Subagenten sequenziell:

任务:实现新功能
  └─ 子代理 1:创建数据模型
       └─ 子代理 2:创建 API 端点
            └─ 子代理 3:编写测试

Verschachtelungstiefe

Die Einstellung max_depth in der Konfiguration legt fest, wie viele Ebenen tief Agenten verschachtelt werden können:

  • Tiefe 0: Root-Sitzung
  • Tiefe 1: Direkte Subagenten
  • Tiefe 2: Subagenten von Subagenten
Es wird empfohlen, max_depth bei 1 oder 2 zu belassen, da eine zu tiefe Verschachtelung Komplexität und Kosten erhöht.

Tool-Aufrufe

Subagenten können alle Standardwerkzeuge von Codex verwenden:

  • Lesen und Bearbeiten von Dateien
  • Befehle ausführen
  • Fähigkeiten verwenden
  • MCP-Server aufrufen

Ergebniszusammenfassung

Der Hauptagent ist dafür verantwortlich, die Ergebnisse aller Unteragenten zu aggregieren und eine einheitliche Ausgabe bereitzustellen.


Agentenrollen-Konfiguration

Benutzerdefinierte Agentenrollen erstellen

Konfigurationsdateien für Agentenrollen erstellen

# agents/tester.toml

description = "Fokus auf das Schreiben von Unit-Tests und Integrationstests"
nickname_candidates = ["Tester", "TestBot", "QABot"]

[behavior]
# Konfiguration des Agentenverhaltens
test_framework = "pytest" # Bevorzugtes Testframework
include_coverage = true # Erfordert Coverage-Bericht

Referenzierung in der Hauptkonfiguration

Referenzierung der Agent-Konfiguration

[agents.tester]
config_file = "agents/tester.toml"

Subagenten überwachen

Aktive Agenten anzeigen

Aktive Agenten anzeigen

# In Codex anzeigen
/agents status

# Details anzeigen
/agents list

Agent-Ausgabe

Codex zeigt die Ausgabe jedes Subagenten an und fasst die Ergebnisse in der Hauptoberfläche zusammen.

Während Subagenten ausgeführt werden, wird ein Fortschrittsindikator angezeigt, mit dem Sie den Gesamtstatus der Aufgabe nachvollziehen können.

Best Practices

Aufgabenzerlegung

  • Zerlegen Sie große Aufgaben in unabhängige Teilaufgaben
  • Stellen Sie sicher, dass keine starken Abhängigkeiten zwischen Teilaufgaben bestehen (wenn Parallelisierung möglich ist)
  • Definieren Sie klare Ein- und Ausgaben für jede Teilaufgabe

Konfigurationsoptimierung

  • Passen Sie max_threads basierend auf der Aufgabenkomplexität an
  • Konfigurieren Sie spezialisierte Agentenrollen für verschiedene Arten von Aufgaben
  • Legen Sie einen angemessenen Wert für job_max_runtime_seconds fest, um lang laufende Prozesse zu vermeiden

Überwachung und Debugging

  • Überprüfen Sie regelmäßig die Ausgabe von Subagenten
  • Verwenden Sie /agents status, um den Gesamtfortschritt zu überprüfen.
  • Spezifische Subagenten bei Bedarf abbrechen
Subagenten sind eine fortgeschrittene Funktion; es wird empfohlen, sich mit den grundlegenden Funktionen von Codex vertraut zu machen, bevor Sie sie verwenden.

FAQ

F: Worin besteht der Unterschied zwischen Subagenten und Skills?

Subagenten sind unabhängige KI-Agenten, die komplexe mehrstufige Aufgaben ausführen können. Skills sind vordefinierte Workflows, die auf bestimmte Arten von Aufgaben ausgerichtet sind.

F: Wie viele Subagenten können maximal gleichzeitig ausgeführt werden?

Gesteuert über die Konfiguration max_threads, Standard ist 6. Die tatsächlich verfügbare Anzahl hängt von Ihrem Abonnementplan ab.

F: Können Subagenten auf meine Dateien zugreifen?

Ja, Subagenten können Dateien lesen und ändern, unterliegen jedoch Einschränkungen durch Sandbox- und Sicherheitsrichtlinien.

F: Wie kann ich Probleme mit Subagenten debuggen?

Verwenden Sie /agents status, um den Status von Agenten zu überprüfen, und sehen Sie sich ihre Ausgabeprotokolle an, um Probleme zu lokalisieren.

Weitere Erweiterungen