Communitygithub.com

Danicahhh/codex-skills

Guía completa para usar Codex CLI en servidores remotos AutoDL, permitiendo modificar y depurar proyectos sin descargar datos localmente.

¿Qué es codex-skills?

Este skill proporciona una guía paso a paso para instalar y usar Codex CLI directamente en un servidor remoto de AutoDL, evitando la necesidad de descargar proyectos y datos grandes al ordenador local. Cubre escenarios comunes donde AutoDL no puede acceder directamente a ChatGPT o la API de OpenAI, resolviendo problemas de red, instalación de npm, configuración de PATH, y errores de verificación SHA-256 relacionados con gawk. La guía incluye la configuración de un proxy inverso SSH desde el ordenador local, la instalación de Codex CLI, el inicio de sesión con autenticación de dispositivo, y el uso de `AGENTS.md` para gestionar proyectos con grandes volúmenes de datos. Está diseñada para desarrolladores que trabajan con proyectos de IA y machine learning en entornos remotos.

Compatible con~Claude Code✓Codex CLI~Cursor
npx skills add Danicahhh/codex-skills

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Proceso completo para usar Codex CLI en AutoDL

Este Skill ayuda a los usuarios a usar Codex CLI directamente en un servidor remoto AutoDL para modificar y depurar código de proyectos, evitando descargar proyectos y grandes volúmenes de datos al ordenador local. Es adecuado para los siguientes escenarios:

  • El código y los datos del usuario están en el servidor remoto AutoDL;
  • Los archivos de datos son grandes y no es adecuado descargarlos localmente;
  • El usuario desea que Codex lea directamente el código remoto, modifique archivos y ejecute pruebas;
  • El servidor AutoDL no puede acceder directamente a chatgpt.com o api.openai.com;
  • Se encuentran problemas de red, npm, PATH, gawk, verificación SHA, etc., al instalar Codex CLI.

1. Idea general

No descargue el proyecto de AutoDL a su ordenador local para que Codex lo modifique, sino:

  1. Abra un proxy inverso SSH desde su ordenador local;
  2. Haga que AutoDL acceda a OpenAI a través del proxy local;
  3. Instale Codex CLI en el servidor AutoDL;
  4. Ejecute codex directamente en el directorio del proyecto en AutoDL;
  5. Permita que Codex lea, modifique y ejecute código directamente en el servidor remoto.

El objetivo final es:

cd /autodl-tmp/tu-directorio-del-proyecto
codex

2. Obtener la dirección SSH y el puerto de AutoDL

En la consola de AutoDL, busque el comando de inicio de sesión SSH para la instancia actual.

Normalmente tiene un formato similar a:

ssh -p 32384 [email protected]

Donde:

[email protected]

es la dirección de AutoDL;

-p 32384

es el puerto SSH.

En todos los comandos siguientes, reemplace <PORT> con el puerto, por ejemplo 32384; <HOST> con la dirección, por ejemplo connect.bjb2.seetacloud.com.


3. Abrir un proxy inverso SSH en el ordenador local

Si su ordenador local ya tiene activado Clash, VPN u otro proxy, y el puerto del proxy local es 7890, ejecute lo siguiente en Windows PowerShell, CMD o Git Bash local:

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

Ejemplo:

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

Introduzca la contraseña SSH de AutoDL.

Nota:

  • Al introducir la contraseña, el terminal no mostrará ningún carácter, ni siquiera *;
  • Pegue la contraseña y presione directamente Enter;
  • Si el inicio de sesión es exitoso, la ventana se quedará bloqueada; esto es normal;
  • No cierre esta ventana; es la encargada de mantener el túnel de proxy desde AutoDL al ordenador local.

Si aparece:

Permission denied

significa que la contraseña es incorrecta; debe volver a la consola de AutoDL y copiar la contraseña SSH correcta.


4. Configurar las variables de entorno del proxy en AutoDL

Abra otro terminal, inicie sesión SSH normalmente en AutoDL, o use el terminal web de AutoDL.

Una vez dentro de AutoDL, ejecute:

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

Luego pruebe la red:

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

Si antes aparecía:

Connection timed out

y ahora aparece:

HTTP/1.1 200 Connection established

significa que el túnel proxy ha funcionado.

Si al acceder a chatgpt.com devuelve:

HTTP/2 403

generalmente significa que ya se ha conectado al sitio web, pero la página en sí ha sido rechazada por Cloudflare o la política de acceso; no necesariamente indica un fallo del proxy. Continúe probando el script de instalación de Codex o api.openai.com.


5. Instalar Codex CLI

En AutoDL, ejecute:

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

Si tiene éxito, verá algo similar a:

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

6. Manejar el error de gawk / verificación SHA-256

Si durante la instalación aparece:

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

Generalmente es porque el awk predeterminado del sistema no es GNU awk, y el script de instalación falla al analizar SHA256SUMS.

Primero verifique:

awk --version

Si la salida es:

awk: not an option: --version

significa que el awk actual no es GNU awk.

No use:

bash awk --version

Esto es incorrecto. awk es un programa binario, no un script de shell.

Para solucionarlo:

apt-get update
apt-get install -y gawk

Después de la instalación, verifique:

gawk --version
awk --version

Si awk --version todavía no muestra GNU Awk, cambie el awk predeterminado:

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

Vuelva a verificar:

awk --version

Una vez solucionado, reinstale Codex:

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

7. Manejar el error "npm: command not found"

Si al ejecutar:

npm install -g @openai/codex

aparece:

bash: npm: command not found

significa que el entorno AutoDL actual no tiene Node.js/npm.

Puede instalar npm con conda:

conda install -c conda-forge nodejs -y

Verifique:

node -v
npm -v

Luego configure el proxy para npm:

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

Y luego instale Codex:

npm install -g @openai/codex

Si el script de instalación oficial ya ha tenido éxito, no necesita el método con npm.


8. Manejar el error "codex: command not found"

Después de una instalación exitosa, si al ejecutar:

codex --version

aparece:

bash: codex: command not found

Generalmente es porque el PATH del terminal actual no se ha actualizado.

Primero ejecute:

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

Luego verifique:

which codex
codex --version

También puede usar la ruta completa:

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

Para que codex esté disponible cada vez que abra un terminal, añádalo a .bashrc:

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

Vuelva a verificar:

codex --version

Normalmente mostrará algo similar a:

codex-cli 0.141.0

9. Iniciar sesión en Codex

AutoDL normalmente es un entorno sin navegador, por lo que debe iniciar sesión con un código de dispositivo:

codex login --device-auth

Codex mostrará en el terminal un enlace de inicio de sesión y un código de un solo uso.

En el navegador de su ordenador local, abra el enlace, inicie sesión en ChatGPT e introduzca el código mostrado en el terminal.

Después de iniciar sesión correctamente, en AutoDL se mostrará:

Successfully logged in

Puede verificar el estado de inicio de sesión:

codex login status

10. Iniciar Codex en el directorio del proyecto en AutoDL

Navegue al directorio del proyecto:

cd /autodl-tmp/tu-directorio-del-proyecto

Ejemplo:

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

Inicie Codex:

codex

A partir de aquí, puede pedir a Codex que analice y modifique el código remoto directamente.

Primer prompt recomendado:

Primero, lee la estructura del código de este proyecto, no leas el conjunto de datos completo. Ayúdame a analizar el flujo de entrenamiento y los posibles problemas actuales. No modifiques archivos aún, primero dame un plan de modificación.

Si necesita que modifique el código, puede decir:

Según el análisis anterior, modifica el código. Solo modifica los archivos necesarios, no leas el conjunto de datos completo, no elimines datos, pesos ni archivos de registro. Después de la modificación, dime qué archivos modificaste y cómo probarlos.

11. Reglas de uso seguro para proyectos con grandes volúmenes de datos

Los proyectos de AutoDL suelen contener grandes volúmenes de datos, pesos de modelos, registros y resultados de experimentos. Antes de usar Codex, se recomienda crear un archivo AGENTS.md:

nano AGENTS.md

Escriba:

# Descripción del proyecto

Este es un proyecto de machine learning que se ejecuta en un servidor AutoDL.

## Reglas importantes

- No leas el conjunto de datos completo.
- No abras directorios grandes como data, dataset, checkpoints, outputs, logs, a menos que el usuario lo solicite explícitamente.
- Si necesitas verificar el formato de los datos, solo lee las primeras 5 líneas o pide al usuario una muestra pequeña.
- Antes de modificar código, explica qué archivos planeas modificar.
- No elimines ningún archivo de datos, pesos de modelo, registros o resultados de experimentos.
- No ejecutes un entrenamiento completo a menos que el usuario lo solicite explícitamente.
- Prioriza la ejecución de pruebas ligeras, comprobaciones de sintaxis o pruebas con muestras pequeñas.

Luego ejecute:

codex

12. Orden de comandos completo recomendado

Ordenador local: Abrir proxy inverso

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

Mantenga esta ventana abierta.

Servidor AutoDL: Configurar proxy

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

Servidor AutoDL: Probar red

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

Servidor AutoDL: Reparar awk

apt-get update
apt-get install -y gawk

Servidor AutoDL: Instalar Codex

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

Servidor AutoDL: Actualizar PATH

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

Servidor AutoDL: Verificar versión

codex --version

Servidor AutoDL: Iniciar sesión

codex login --device-auth

Servidor AutoDL: Navegar al proyecto e iniciar

cd /autodl-tmp/tu-directorio-del-proyecto
codex

13. Solución rápida de problemas comunes

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

Causa: AutoDL no puede acceder directamente a ChatGPT.

Solución: Abra un proxy inverso SSH desde el ordenador local y configure las variables de entorno del proxy en AutoDL.


Problema 2: No se puede pegar la contraseña SSH

Causa: La entrada de la contraseña SSH no muestra ningún carácter.

Solución: Pegue y presione Enter directamente. Si aparece Permission denied, entonces la contraseña es incorrecta.


Problema 3: HTTP/1.1 200 Connection established seguido de HTTP/2 403

Causa: El túnel proxy está funcionando, pero el sitio de destino ha rechazado la solicitud actual.

Solución: Continúe probando el script de instalación o api.openai.com; no necesariamente indica un fallo del proxy.


Problema 4: npm: command not found

Causa: No hay Node.js/npm instalado en AutoDL.

Solución:

conda install -c conda-forge nodejs -y

Problema 5: Could not find SHA-256 digest

Causa: El awk predeterminado del sistema no es GNU awk, y el script de instalación falla al analizar el archivo de verificación SHA.

Solución:

apt-get install -y gawk

Si es necesario:

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

Problema 6: bash: codex: command not found

Causa: Codex se instaló correctamente, pero el PATH del shell actual no se ha actualizado.

Solución:

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

O:

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

Problema 7: No se puede abrir el navegador al iniciar sesión en Codex

Causa: AutoDL es un entorno remoto sin navegador.

Solución:

codex login --device-auth

Complete el inicio de sesión con código de dispositivo en el navegador local.


14. Principios de uso

Al usar Codex en AutoDL, se deben seguir los siguientes principios:

  1. Primero configure el proxy, luego use Codex;
  2. No cierre la ventana del proxy inverso SSH local;
  3. No inicie Codex en el directorio raíz de grandes volúmenes de datos;
  4. Priorice iniciar Codex en el directorio del código del proyecto;
  5. Use AGENTS.md para evitar que Codex lea grandes volúmenes de datos;
  6. Antes de modificar código, pida a Codex que primero proporcione un plan;
  7. Después de las modificaciones, verifique con git diff;
  8. No permita que Codex elimine datos, pesos o resultados de experimentos directamente;
  9. Antes de un entrenamiento completo, primero haga que Codex realice pruebas con muestras pequeñas;
  10. Cada vez que abra un nuevo terminal en AutoDL, verifique que las variables de proxy y PATH sigan presentes.

Skills relacionados