Communitygithub.com

AutoDL で Codex CLI を使うための完全ガイド

このスキルは、AutoDL リモートサーバー上で直接 Codex CLI を使用し、プロジェクトコードの修正やデバッグを行うための完全な手順を提供します。リモートの大規模データをローカルにダウンロードする必要がなくなります。

AutoDL で Codex CLI を使うための完全ガイド とは?

このスキルは、AutoDL リモートサーバーで直接 Codex CLI を操作するための包括的なガイドです。主要なユースケースは、コードとデータがすべて AutoDL 上にあり、データファイルが大きすぎてローカルにダウンロードできない場合に、Codex にリモートコードを直接読み取らせ、ファイルを修正し、テストを実行させることです。本スキルは、AutoDL サーバーが chatgpt.com や api.openai.com に直接アクセスできないネットワーク制限、および npm や gawk などのインストール依存関係の問題に対処する方法を詳細に説明しています。具体的な手順としては、ローカルマシンで SSH リバースプロキシを確立し、AutoDL がローカルプロキシを介して OpenAI にアクセスできるようにし、AutoDL サーバー上に Codex CLI をインストールし、Fixing gawk、npm、PATH に関する一般的なエラーをトラブルシューティングし、最後にリモートプロジェクトディレクトリで codex を直接実行する方法を説明します。さらに、AGENTS.md を使用して Codex が大規模データセットを読み取らないように制限する推奨ルールや、安全な使用のためのベストプラクティスも含まれています。

対応~Claude Code✓Codex CLI~Cursor
npx skills add Danicahhh/codex-skills

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

AutoDL で Codex CLI を使う完全ガイド

このスキルは、AutoDL リモートサーバー上で直接 Codex CLI を使用してプロジェクトコードを修正・デバッグできるようにし、リモートプロジェクトや大容量データをローカルにダウンロードする手間を省くためのものです。以下のようなシナリオに適しています:

  • ユーザーのコードとデータがすべて AutoDL リモートサーバー上にある場合
  • データファイルが大きく、ローカルにダウンロードするのに適さない場合
  • ユーザーが Codex にリモートコードを直接読み取らせ、ファイルを修正し、テストを実行させたい場合
  • AutoDL サーバーが chatgpt.com や api.openai.com に直接アクセスできない場合
  • Codex CLI のインストール時に、ネットワーク、npm、PATH、gawk、SHA チェックサムなどの問題が発生する場合

1. 全体的な考え方

AutoDL 上のプロジェクトをローカルにダウンロードしてから Codex に修正させるのではなく、以下の手順を踏みます:

  1. ローカルマシンで SSH リバースプロキシを開く
  2. AutoDL がローカルプロキシを経由して OpenAI にアクセスできるようにする
  3. AutoDL サーバーに Codex CLI をインストールする
  4. AutoDL のプロジェクトディレクトリで直接 codex を実行する
  5. Codex がリモートサーバー上で直接コードを読み取り、修正し、実行できるようにする

最終目標は次のとおりです:

cd /autodl-tmp/あなたのプロジェクトディレクトリ
codex

2. AutoDL の SSH アドレスとポートを取得する

AutoDL コンソールで現在のインスタンスの SSH ログインコマンドを見つけます。

通常、以下のような形式です:

ssh -p 32384 [email protected]

ここで:

[email protected]

が AutoDL アドレスです;

-p 32384

が SSH ポートです。

以降のすべてのコマンドで、<PORT> はポート(例:32384)に、<HOST> はアドレス(例:connect.bjb2.seetacloud.com)に置き換えてください。


3. ローカルマシンで SSH リバースプロキシを開く

ローカルマシンで Clash、VPN、またはその他のプロキシが起動しており、ローカルプロキシポートが 7890 の場合、ローカルの Windows PowerShell、CMD、または Git Bash で以下を実行します:

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

例:

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

AutoDL の SSH パスワードを入力します。

注意:

  • パスワード入力時、端末には何も表示されず、* も表示されません。
  • パスワードを貼り付けたら、そのまま Enter キーを押します。
  • ログインに成功すると、このウィンドウは動かなくなり、正常な状態です。
  • このウィンドウは閉じないでください。AutoDL からローカルプロキシへのトンネルを維持する役割を果たしています。

次のメッセージが表示された場合:

Permission denied

パスワードが間違っています。AutoDL コンソールに戻って正しい SSH パスワードをコピーしてください。


4. AutoDL でプロキシ環境変数を設定する

別の端末を開き、通常の SSH で AutoDL にログインするか、AutoDL のウェブターミナルを使用します。

AutoDL に入ったら、以下を実行します:

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

次に、ネットワークをテストします:

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

以前は次のようだった場合:

Connection timed out

今は次のようになります:

HTTP/1.1 200 Connection established

プロキシトンネルが機能していることを示しています。

chatgpt.com へのアクセスで次の応答が返ってきた場合:

HTTP/2 403

これは通常、サイトに接続できているが、Cloudflare やアクセスポリシーによって Web ページ自体が拒否されていることを意味し、必ずしもプロキシの失敗を示すものではありません。引き続き Codex インストールスクリプトまたは api.openai.com をテストしてください。


5. Codex CLI をインストールする

AutoDL で以下を実行します:

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

成功すると、次のようなメッセージが表示されます:

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

6. gawk / SHA-256 チェックサムエラーの処理

インストール中に次のエラーが発生した場合:

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

通常、システムのデフォルト awk が GNU awk ではないために、インストールスクリプトが SHA256SUMS の解析に失敗したことが原因です。

まず確認します:

awk --version

出力が次の場合:

awk: not an option: --version

現在の awk は GNU awk ではありません。

次のコマンドを使用しないでください:

bash awk --version

これは誤った書き方です。awk はバイナリプログラムであり、シェルスクリプトではありません。

修正方法:

apt-get update
apt-get install -y gawk

インストール後、確認します:

gawk --version
awk --version

それでも awk --version が GNU Awk でない場合は、デフォルトの awk を切り替えます:

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

再度確認します:

awk --version

正常になったら、Codex を再インストールします:

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

7. npm command not found の処理

次のコマンドを実行した場合:

npm install -g @openai/codex

次のエラーが表示される場合:

bash: npm: command not found

現在の AutoDL 環境に Node.js/npm がインストールされていないことを意味します。

conda を使用してインストールできます:

conda install -c conda-forge nodejs -y

確認します:

node -v
npm -v

次に、npm にプロキシを設定します:

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

その後、Codex をインストールします:

npm install -g @openai/codex

公式インストールスクリプトがすでに成功している場合は、npm 方式は必要ありません。


8. codex command not found の処理

インストールが成功した後、次のコマンドを実行した場合:

codex --version

次のエラーが表示される場合:

bash: codex: command not found

通常、現在の端末の PATH が更新されていないことが原因です。

まず以下を実行します:

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

次に確認します:

which codex
codex --version

フルパスを使用することもできます:

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

今後、端末を開くたびに codex を使用できるようにするには、.bashrc に書き込みます:

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

再度確認します:

codex --version

通常、次のように表示されます:

codex-cli 0.141.0

9. Codex にログインする

AutoDL は通常、ブラウザのない環境であるため、デバイスコードを使用してログインします:

codex login --device-auth

Codex は端末にログインリンクと使い捨てコードを表示します。

ローカルマシンのブラウザでリンクを開き、ChatGPT にログインし、端末に表示されたコードを入力します。

ログインが成功すると、AutoDL に次のように表示されます:

Successfully logged in

ログイン状態を確認できます:

codex login status

10. AutoDL のプロジェクトディレクトリで Codex を起動する

プロジェクトディレクトリに移動します:

cd /autodl-tmp/あなたのプロジェクトディレクトリ

例:

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

Codex を起動します:

codex

その後、Codex にリモートコードを直接分析・修正させることができます。

推奨する最初のプロンプト:

まずこのプロジェクトのコード構造を読んでください。データセット全体は読み込まないでください。トレーニングフローと現在の潜在的な問題を分析してください。まだファイルは修正せず、修正案を提示してください。

コードの修正を依頼する場合:

先ほどの分析に基づいてコードを修正してください。必要なファイルのみを修正し、データセット全体は読み込まないでください。データ、重み、ログファイルは削除しないでください。修正後、どのファイルを変更したか、およびテスト方法を教えてください。

11. 大規模データプロジェクトの安全な使用ルール

AutoDL プロジェクトには通常、大規模データ、モデル重み、ログ、実験結果が含まれます。Codex を使用する前に、新しい AGENTS.md を作成することをお勧めします:

nano AGENTS.md

次の内容を書き込みます:

# プロジェクト説明

これは AutoDL サーバー上で動作する機械学習プロジェクトです。

## 重要なルール

- データセット全体を読み込まないでください。
- ユーザーが明示的に要求しない限り、data、dataset、checkpoints、outputs、logs などの大容量ファイルディレクトリを開かないでください。
- データ形式を確認する必要がある場合は、最初の 5 行のみを読み取るか、ユーザーにサンプルを要求してください。
- コードを修正する前に、どのファイルを修正する予定かを説明してください。
- データファイル、モデル重み、ログ、実験結果を削除しないでください。
- ユーザーが明示的に要求しない限り、完全なトレーニングを直接実行しないでください。
- 軽量テスト、構文チェック、または小規模サンプルテストを優先的に実行してください。

その後、以下を実行します:

codex

12. 推奨される完全なコマンド順序

ローカルマシン:リバースプロキシを開く

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

このウィンドウは閉じないでください。

AutoDL サーバー:プロキシを設定する

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 サーバー:ネットワークをテストする

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

AutoDL サーバー:awk を修復する

apt-get update
apt-get install -y gawk

AutoDL サーバー:Codex をインストールする

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

AutoDL サーバー:PATH を更新する

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

AutoDL サーバー:バージョンを確認する

codex --version

AutoDL サーバー:ログインする

codex login --device-auth

AutoDL サーバー:プロジェクトに移動して起動する

cd /autodl-tmp/あなたのプロジェクトディレクトリ
codex

13. よくある問題のクイックリファレンス

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

原因:AutoDL が ChatGPT に直接アクセスできません。

解決策:ローカルマシンで SSH リバースプロキシを開き、AutoDL でプロキシ環境変数を設定します。


問題 2:SSH パスワードを入力しても貼り付けられない

原因:SSH パスワード入力時には何も表示されません。

解決策:貼り付けたらそのまま Enter キーを押します。Permission denied が表示された場合のみ、パスワードが間違っています。


問題 3:HTTP/1.1 200 Connection established の後に HTTP/2 403 が表示される

原因:プロキシトンネルは通っていますが、ターゲットサイトが現在のリクエストを拒否しています。

解決策:引き続きインストールスクリプトまたは api.openai.com をテストします。必ずしもプロキシの失敗ではありません。


問題 4:npm: command not found

原因:AutoDL に Node.js/npm がインストールされていません。

解決策:

conda install -c conda-forge nodejs -y

問題 5:Could not find SHA-256 digest

原因:システムのデフォルト awk が GNU awk ではなく、インストールスクリプトが SHA チェックサムファイルの解析に失敗しました。

解決策:

apt-get install -y gawk

必要に応じて:

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

問題 6:bash: codex: command not found

原因:Codex のインストールは成功しましたが、現在のシェルの PATH が更新されていません。

解決策:

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

または:

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

問題 7:Codex ログイン時にブラウザが開けない

原因:AutoDL はリモートでブラウザのない環境です。

解決策:

codex login --device-auth

ローカルブラウザでデバイスコードログインを完了します。


14. 使用上の原則

AutoDL で Codex を使用する際は、以下の原則に従う必要があります:

  1. 先にプロキシを開き、その後 Codex を使用する
  2. ローカルの SSH リバースプロキシウィンドウを閉じない
  3. 大規模データのルートディレクトリで Codex を起動しない
  4. プロジェクトコードのディレクトリで Codex を起動することを推奨
  5. AGENTS.md を使用して Codex が大規模データを読み取らないように制限する
  6. コードを修正する前に、Codex にまず案を提示させる
  7. 修正後は git diff で確認する
  8. Codex にデータ、重み、実験結果を直接削除させない
  9. 完全なトレーニングの前に、まず Codex に小規模サンプルテストを実行させる
  10. AutoDL 端末を開き直すたびに、プロキシ変数と PATH がまだ存在することを確認する

関連スキル