원클릭으로
codex-auto-register
Automate ChatGPT/Codex account registration and OAuth token generation using DuckMail temporary email service
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Automate ChatGPT/Codex account registration and OAuth token generation using DuckMail temporary email service
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Convert attached object images into code-only, animation-ready procedural Three.js models through guided sculpting workflow
Create and manage AI video storyboard projects with automated asset generation through Codex Storyboard workspace
Continue-thinking middleware that detects and handles reasoning truncation in Codex/OpenAI Responses-compatible APIs
Desktop manager for OpenAI Codex CLI with prompt injection, provider switching, and TOML/Auth visualization
Inject unrestricted developer mode instructions into Codex CLI (GPT-5.5) to bypass content filters
Install and use TradingCodex to build Codex-native investment research workflows with fixed-role agents, order approval gates, and local Django service plane
| name | codex-auto-register |
| description | Automate ChatGPT/Codex account registration and OAuth token generation using DuckMail temporary email service |
| triggers | ["how do I auto-register Codex accounts","register ChatGPT accounts automatically","generate Codex OAuth tokens programmatically","use DuckMail API for ChatGPT registration","bulk create Codex accounts with tokens","automate Codex account creation","set up CLIProxyAPI token files","configure codex auto register tool"] |
Skill by ara.so — Codex Skills collection.
codex_auto_register is a Python tool for automated ChatGPT/Codex account registration and OAuth token generation using the DuckMail temporary email API. It supports two workflows:
chatgpt_register.py): Register ChatGPT accounts with optional OAuthcodex/protocol_keygen.py): Full Codex OAuth flow with CLIProxyAPI v6 compatible token outputFor root registration script:
pip install curl_cffi
For Codex protocol script:
pip install requests urllib3
cp config.example.json config.json
cp codex/config.example.json codex/config.json
config.json and codex/config.json with your credentials (see Configuration section)config.json){
"total_accounts": 5,
"duckmail_api_base": "https://duckmail.example.com",
"duckmail_bearer": "${DUCKMAIL_TOKEN}",
"proxy": "http://username:password@proxy.example.com:8080",
"output_file": "registered_accounts.txt",
"enable_oauth": true,
"oauth_required": false,
"upload_api_url": "https://cpa.example.com/api/accounts",
"upload_api_token": "${CPA_API_TOKEN}"
}
Key Fields:
total_accounts: Number of accounts to registerduckmail_api_base: DuckMail API endpointduckmail_bearer: DuckMail authentication token (use env var)proxy: HTTP/HTTPS proxy (required for registration)enable_oauth: Whether to perform OAuth flowoauth_required: Fail if OAuth failsupload_api_url/upload_api_token: Optional CPA uploadpython chatgpt_register.py
The script will:
registered_accounts.txtregistered_accounts.txt contains:
email@example.com:password123:access_token:refresh_token
email2@example.com:password456:access_token2:refresh_token2
codex/config.json){
"total_accounts": 10,
"duckmail_api_base": "https://duckmail.example.com",
"duckmail_bearer": "${DUCKMAIL_TOKEN}",
"proxy": "http://user:pass@proxy.example.com:8080",
"output_dir": "codex_tokens",
"accounts_file": "accounts.txt",
"csv_file": "registered_accounts.csv",
"upload_api_url": "https://cpa.example.com/api/codex",
"upload_api_token": "${CPA_API_TOKEN}",
"save_access_token": true,
"save_refresh_token": true,
"ak_file": "ak.txt",
"rk_file": "rk.txt"
}
python codex/protocol_keygen.py
The script performs:
Token JSON files (CLIProxyAPI v6 format):
codex_tokens/
├── fk-xxxxxx.json
├── fk-yyyyyy.json
└── ...
Each JSON contains:
{
"access_token": "ey...",
"refresh_token": "ey...",
"expires_at": 1234567890
}
Account files:
accounts.txt: email:password:access_token:refresh_tokenak.txt: Access tokens (one per line)rk.txt: Refresh tokens (one per line)registered_accounts.csv: CSV format with all fieldsNever hardcode credentials. Use environment variables:
export DUCKMAIL_TOKEN="your_duckmail_token"
export CPA_API_TOKEN="your_cpa_token"
Reference in config:
{
"duckmail_bearer": "${DUCKMAIL_TOKEN}",
"upload_api_token": "${CPA_API_TOKEN}"
}
Both scripts require proxies to bypass rate limits:
{
"proxy": "http://username:password@proxy-host:port"
}
For SOCKS5:
{
"proxy": "socks5://username:password@proxy-host:port"
}
Register multiple accounts in sequence:
# In your automation script
import subprocess
import json
config = {
"total_accounts": 50,
"duckmail_api_base": "...",
# ... other config
}
with open("codex/config.json", "w") as f:
json.dump(config, f)
subprocess.run(["python", "codex/protocol_keygen.py"])
Codex tokens follow CLIProxyAPI v6 naming:
fk-{unique_id}.jsonThe project uses DuckMail for temporary email:
Create email:
POST {duckmail_api_base}/api/email/create
Authorization: Bearer {duckmail_bearer}
Check inbox:
GET {duckmail_api_base}/api/email/{email_id}/messages
Authorization: Bearer {duckmail_bearer}
See duckmaildoc.md for full API reference.
Problem: ChatGPT registration returns errors
Solutions:
duckmail_bearer token is validProblem: enable_oauth: true but no tokens
Solutions:
oauth_required: false to continue without OAuthProblem: Verification email not arriving
Solutions:
Problem: upload_api_url returns errors
Solutions:
upload_api_token is correctProblem: CLIProxyAPI doesn't recognize tokens
Solutions:
fk-*.jsonexpires_at is Unix timestampProblem: 407 Proxy Authentication Required
Solutions:
curl -x proxy http://api.openai.comGenerated files (all in .gitignore):
project_root/
├── config.json # Root script config
├── registered_accounts.txt # Root script output
└── codex/
├── config.json # Codex script config
├── accounts.txt # email:password:tokens
├── ak.txt # Access tokens only
├── rk.txt # Refresh tokens only
├── registered_accounts.csv # CSV format
└── codex_tokens/ # CLIProxyAPI compatible
├── fk-xxxxx.json
└── fk-yyyyy.json
config.json files (use .example.json templates)registered_accounts.txt for sensitive data before sharing logsPlace generated token files directly in CPA token directory:
cp codex/codex_tokens/*.json /path/to/CLIProxyAPI/tokens/codex/
CPA will automatically detect and use tokens with fk-*.json naming pattern.