Communitygithub.com

Danicahhh/codex-skills

Eine selbst erstellte Skill zur Nutzung von Codex CLI auf AutoDL-Remote-Servern für die direkte Code-Bearbeitung, ohne Projekte lokal herunterladen zu müssen.

Was ist codex-skills?

Diese Skill bietet eine vollständige Anleitung zur Nutzung von Codex CLI auf einem AutoDL-Remote-Server. Sie richtet sich an Entwickler, die ihre Projekte mit großen Datenmengen (z. B. ML-Modelle, Logs) remote hosten und Code direkt auf dem Server mit Codex bearbeiten, testen und debuggen möchten, ohne die Projekte lokal herunterzuladen. Die Anleitung behandelt die Einrichtung eines SSH-Reverse-Proxys vom lokalen Rechner zum AutoDL-Server, um den Netzwerkzugriff auf die OpenAI-API über einen lokalen Proxy (z. B. Clash/VPN) zu ermöglichen, sowie die Installation von Codex CLI und die Behebung typischer Probleme wie fehlerhafte awk-Installationen (SHA-256-Prüfung fehlschlägt) oder fehlende npm- und Node.js-Umgebungen. Es wird auch die Erstellung einer `AGENTS.md`-Richtliniendatei empfohlen, um Codex von großen Datenmengen fernzuhalten und versehentliche Löschungen zu verhindern. Die Skill unterstützt Linux-basierte AutoDL-Umgebungen und erfordert grundlegende Kenntnisse in SSH und Kommandozeilenwerkzeugen. Sie funktioniert mit Codex CLI, das über die offizielle Installationsanleitung von OpenAI installiert wird, und bietet eine Schritt-für-Schritt-Anleitung für Login, PATH-Setup und den Start von Codex im Projektverzeichnis.

Funktioniert mit~Claude Code✓Codex CLI~Cursor
npx skills add Danicahhh/codex-skills

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Vollständiger Workflow zur Nutzung von Codex CLI auf AutoDL

Diese Skill hilft Benutzern, Codex CLI direkt auf einem AutoDL-Remote-Server zu verwenden, um Projektcode zu ändern und zu debuggen, ohne das Remote-Projekt und große Datenmengen lokal herunterladen zu müssen. Geeignet für folgende Szenarien:

  • Der Code und die Daten des Benutzers befinden sich auf dem AutoDL-Remote-Server;
  • Die Datendateien sind zu groß, um lokal heruntergeladen zu werden;
  • Der Benutzer möchte, dass Codex Remote-Code direkt liest, Dateien ändert und Tests ausführt;
  • Der AutoDL-Server kann nicht direkt auf chatgpt.com oder api.openai.com zugreifen;
  • Bei der Installation von Codex CLI treten Probleme mit Netzwerk, npm, PATH, gawk, SHA-Prüfung usw. auf.

1. Gesamtansatz

Laden Sie das Projekt nicht von AutoDL herunter, um es lokal von Codex ändern zu lassen, sondern:

  1. Richten Sie auf dem lokalen Computer einen SSH-Reverse-Proxy ein;
  2. Lassen Sie AutoDL über den lokalen Proxy auf OpenAI zugreifen;
  3. Installieren Sie Codex CLI auf dem AutoDL-Server;
  4. Führen Sie codex direkt im AutoDL-Projektverzeichnis aus;
  5. Lassen Sie Codex den Code direkt auf dem Remote-Server lesen, ändern und ausführen.

Das ultimative Ziel ist:

cd /autodl-tmp/Ihr_Projektverzeichnis
codex

2. SSH-Adresse und Port von AutoDL abrufen

Suchen Sie in der AutoDL-Konsole den SSH-Anmeldebefehl für die aktuelle Instanz.

Das Format ist normalerweise ähnlich wie:

ssh -p 32384 [email protected]

Dabei ist:

[email protected]

die AutoDL-Adresse;

-p 32384

der SSH-Port.

Ersetzen Sie in allen folgenden Befehlen <PORT> durch den Port, z. B. 32384; und <HOST> durch die Adresse, z. B. connect.bjb2.seetacloud.com.


3. SSH-Reverse-Proxy auf dem lokalen Computer einrichten

Wenn der lokale Computer bereits Clash, VPN oder einen anderen Proxy verwendet und der lokale Proxystandardport 7890 ist, führen Sie in der lokalen Windows PowerShell, CMD oder Git Bash Folgendes aus:

ssh -N -R 7890:127.0.0.1:7890 -p <PORT> root@<HOST>

Beispiel:

ssh -N -R 7890:127.0.0.1:7890 -p 32384 [email protected]

Geben Sie das SSH-Passwort von AutoDL ein.

Hinweis:

  • Bei der Eingabe des Passworts zeigt das Terminal keine Zeichen und auch kein * an;
  • Fügen Sie das Passwort ein und drücken Sie Enter;
  • Wenn die Anmeldung erfolgreich ist, bleibt das Fenster hängen – das ist normal;
  • Schließen Sie dieses Fenster nicht, es hält den Tunnel von AutoDL zum lokalen Proxy aufrecht.

Wenn Folgendes angezeigt wird:

Permission denied

ist das Passwort falsch. Gehen Sie zurück zur AutoDL-Konsole, um das richtige SSH-Passwort zu kopieren.


4. Proxy-Umgebungsvariablen auf AutoDL setzen

Öffnen Sie ein anderes Terminal, melden Sie sich normal per SSH bei AutoDL an oder verwenden Sie das Webterminal von AutoDL.

Führen Sie nach dem Einloggen in AutoDL Folgendes aus:

export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7890

Testen Sie dann das Netzwerk:

curl -I https://chatgpt.com
curl -I https://api.openai.com

Wenn vorher Folgendes angezeigt wurde:

Connection timed out

und jetzt Folgendes:

HTTP/1.1 200 Connection established

bedeutet dies, dass der Proxytunnel funktioniert.

Wenn der Zugriff auf chatgpt.com Folgendes zurückgibt:

HTTP/2 403

bedeutet dies normalerweise, dass die Verbindung zur Website hergestellt wurde, aber die Website selbst von Cloudflare oder einer Zugriffsrichtlinie blockiert wird – das bedeutet nicht unbedingt einen Proxy-Fehler. Testen Sie stattdessen das Codex-Installationsskript oder api.openai.com.


5. Codex CLI installieren

Führen Sie auf AutoDL Folgendes aus:

curl -fsSL https://chatgpt.com/codex/install.sh | sh

Bei Erfolg sehen Sie eine Ausgabe wie:

Installing Codex CLI
Detected platform: Linux (x64)
Resolved version: ...
Installing standalone package ...
Codex CLI installed successfully.

6. Fehler bei gawk / SHA-256-Prüfung beheben

Wenn während der Installation Folgendes erscheint:

Could not find SHA-256 digest for codex-package-x86_64-unknown-linux-musl.tar.gz in codex-package_SHA256SUMS.

ist in der Regel das standardmäßige awk nicht GNU awk, und das Installationsskript kann die SHA256SUMS-Datei nicht parsen.

Überprüfen Sie zuerst:

awk --version

Wenn die Ausgabe lautet:

awk: not an option: --version

ist das aktuelle awk nicht GNU awk.

Verwenden Sie nicht:

bash awk --version

Das ist eine falsche Schreibweise. awk ist ein Binärprogramm, kein Shell-Skript.

Behebung:

apt-get update
apt-get install -y gawk

Überprüfen Sie nach der Installation:

gawk --version
awk --version

Wenn awk --version immer noch nicht GNU Awk ist, wechseln Sie den Standard-awk:

update-alternatives --install /usr/bin/awk awk /usr/bin/gawk 20
update-alternatives --set awk /usr/bin/gawk

Überprüfen Sie erneut:

awk --version

Wenn alles in Ordnung ist, installieren Sie Codex neu:

curl -fsSL https://chatgpt.com/codex/install.sh | sh

7. Fehler npm command not found beheben

Wenn Sie Folgendes ausführen:

npm install -g @openai/codex

und Folgendes erscheint:

bash: npm: command not found

fehlt in der aktuellen AutoDL-Umgebung Node.js/npm.

Sie können es mit conda installieren:

conda install -c conda-forge nodejs -y

Überprüfen Sie:

node -v
npm -v

Setzen Sie dann den Proxy für npm:

npm config set proxy http://127.0.0.1:7890
npm config set https-proxy http://127.0.0.1:7890

Installieren Sie dann Codex:

npm install -g @openai/codex

Wenn das offizielle Installationsskript bereits erfolgreich war, ist der npm-Ansatz nicht erforderlich.


8. Fehler codex command not found beheben

Wenn nach erfolgreicher Installation Folgendes ausgeführt wird:

codex --version

aber Folgendes erscheint:

bash: codex: command not found

ist in der Regel der PATH des aktuellen Terminals nicht aktualisiert.

Führen Sie zuerst Folgendes aus:

export PATH=/root/.local/bin:$PATH

Überprüfen Sie dann:

which codex
codex --version

Sie können auch den vollständigen Pfad verwenden:

/root/.local/bin/codex --version

Damit codex bei jedem Öffnen des Terminals verfügbar ist, schreiben Sie es in .bashrc:

echo 'export PATH=/root/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

Überprüfen Sie erneut:

codex --version

Normalerweise wird dann etwas wie Folgendes angezeigt:

codex-cli 0.141.0

9. Bei Codex anmelden

AutoDL hat normalerweise keine Browserumgebung, daher sollten Sie sich mit einem Gerätecode anmelden:

codex login --device-auth

Codex zeigt im Terminal den Anmeldelink und einen einmaligen Code an.

Öffnen Sie den Link im Browser Ihres lokalen Computers, melden Sie sich bei ChatGPT an und geben Sie den im Terminal angezeigten Code ein.

Nach erfolgreicher Anmeldung wird auf AutoDL Folgendes angezeigt:

Successfully logged in

Sie können den Anmeldestatus überprüfen:

codex login status

10. Codex im AutoDL-Projektverzeichnis starten

Wechseln Sie in das Projektverzeichnis:

cd /autodl-tmp/Ihr_Projektverzeichnis

Beispiel:

cd /autodl-tmp/Tencent-Advertising-Algorithm-Competition

Starten Sie Codex:

codex

Danach kann Codex den Remote-Code direkt analysieren und ändern.

Empfohlener erster Prompt:

Bitte lesen Sie zuerst die Code-Struktur dieses Projekts, lesen Sie nicht den vollständigen Datensatz. Helfen Sie mir, den Trainingsablauf und mögliche aktuelle Probleme zu analysieren. Ändern Sie noch keine Dateien, geben Sie mir zuerst einen Änderungsvorschlag.

Wenn Sie möchten, dass es den Code ändert, können Sie sagen:

Bitte ändern Sie den Code gemäß der vorherigen Analyse. Ändern Sie nur die notwendigen Dateien, lesen Sie nicht den vollständigen Datensatz, löschen Sie keine Daten, Gewichte und Protokolldateien. Teilen Sie mir nach der Änderung mit, welche Dateien geändert wurden und wie getestet werden kann.

11. Sicherheitsregeln für große Datenprojekte

AutoDL-Projekte enthalten oft große Datenmengen, Modellgewichte, Protokolle und Experimentergebnisse. Es wird empfohlen, vor der Verwendung von Codex eine AGENTS.md zu erstellen:

nano AGENTS.md

Schreiben Sie Folgendes hinein:

# Projektbeschreibung

Dies ist ein maschinelles Lernprojekt, das auf einem AutoDL-Server läuft.

## Wichtige Regeln

- Lesen Sie nicht den vollständigen Datensatz.
- Öffnen Sie keine großen Dateiverzeichnisse wie data, dataset, checkpoints, outputs, logs, es sei denn, der Benutzer fordert es ausdrücklich an.
- Wenn Sie das Datenformat überprüfen müssen, lesen Sie nur die ersten 5 Zeilen oder bitten Sie den Benutzer, eine kleine Stichprobe bereitzustellen.
- Erklären Sie vor dem Ändern von Code, welche Dateien Sie ändern möchten.
- Löschen Sie keine Datendateien, Modellgewichte, Protokolle oder Experimentergebnisse.
- Führen Sie kein vollständiges Training direkt aus, es sei denn, der Benutzer fordert es ausdrücklich an.
- Führen Sie vorzugsweise leichte Tests, Syntaxprüfungen oder Tests mit kleinen Stichproben durch.

Führen Sie dann Folgendes aus:

codex

12. Empfohlene vollständige Befehlsfolge

Lokaler Computer: Reverse-Proxy einrichten

ssh -N -R 7890:127.0.0.1:7890 -p <PORT> root@<HOST>

Lassen Sie dieses Fenster geöffnet.

AutoDL-Server: Proxy setzen

export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7890

AutoDL-Server: Netzwerk testen

curl -I https://chatgpt.com
curl -I https://api.openai.com

AutoDL-Server: awk reparieren

apt-get update
apt-get install -y gawk

AutoDL-Server: Codex installieren

curl -fsSL https://chatgpt.com/codex/install.sh | sh

AutoDL-Server: PATH aktualisieren

export PATH=/root/.local/bin:$PATH
echo 'export PATH=/root/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

AutoDL-Server: Version überprüfen

codex --version

AutoDL-Server: Anmelden

codex login --device-auth

AutoDL-Server: In das Projekt wechseln und starten

cd /autodl-tmp/Ihr_Projektverzeichnis
codex

13. Häufige Probleme – Schnellübersicht

Problem 1: curl: (28) Failed to connect to chatgpt.com

Ursache: AutoDL kann nicht direkt auf ChatGPT zugreifen.

Lösung: Richten Sie auf dem lokalen Computer einen SSH-Reverse-Proxy ein und setzen Sie die Proxy-Umgebungsvariablen auf AutoDL.


Problem 2: Das Einfügen des SSH-Passworts funktioniert nicht

Ursache: Die SSH-Passworteingabe zeigt keine Zeichen an.

Lösung: Fügen Sie das Passwort ein und drücken Sie Enter. Nur wenn Permission denied erscheint, ist das Passwort falsch.


Problem 3: Nach HTTP/1.1 200 Connection established erscheint HTTP/2 403

Ursache: Der Proxytunnel ist durchlässig, aber die Zielwebsite hat die aktuelle Anfrage abgelehnt.

Lösung: Testen Sie weiter das Installationsskript oder api.openai.com – das bedeutet nicht unbedingt einen Proxy-Fehler.


Problem 4: npm: command not found

Ursache: Auf AutoDL ist Node.js/npm nicht installiert.

Lösung:

conda install -c conda-forge nodejs -y

Problem 5: Could not find SHA-256 digest

Ursache: Das standardmäßige awk des Systems ist nicht GNU awk, das Installationsskript kann die SHA-Prüfdatei nicht parsen.

Lösung:

apt-get install -y gawk

Falls nötig:

update-alternatives --install /usr/bin/awk awk /usr/bin/gawk 20
update-alternatives --set awk /usr/bin/gawk

Problem 6: bash: codex: command not found

Ursache: Codex wurde erfolgreich installiert, aber der PATH der aktuellen Shell wurde nicht aktualisiert.

Lösung:

export PATH=/root/.local/bin:$PATH
source ~/.bashrc

Oder:

/root/.local/bin/codex --version

Problem 7: Beim Codex-Login kann der Browser nicht geöffnet werden

Ursache: AutoDL ist eine entfernte Umgebung ohne Browser.

Lösung:

codex login --device-auth

Schließen Sie die Gerätecode-Anmeldung im lokalen Browser ab.


14. Nutzungsprinzipien

Bei der Verwendung von Codex auf AutoDL sollten die folgenden Prinzipien beachtet werden:

  1. Zuerst den Proxy einrichten, dann Codex verwenden;
  2. Schließen Sie das lokale SSH-Reverse-Proxy-Fenster nicht;
  3. Starten Sie Codex nicht im Stammverzeichnis großer Datenmengen;
  4. Starten Sie Codex vorzugsweise im Projekt-Code-Verzeichnis;
  5. Verwenden Sie AGENTS.md, um Codex daran zu hindern, große Datenmengen zu lesen;
  6. Lassen Sie sich vor dem Ändern von Code zuerst einen Vorschlag von Codex geben;
  7. Überprüfen Sie Änderungen mit git diff;
  8. Lassen Sie Codex keine Daten, Gewichte oder Experimentergebnisse direkt löschen;
  9. Führen Sie vor dem vollständigen Training zuerst kleine Stichprobentests mit Codex durch;
  10. Überprüfen Sie bei jedem erneuten Öffnen des AutoDL-Terminals, ob die Proxy-Variablen und der PATH noch vorhanden sind.

Verwandte Skills