This project is a third-generation fork based on the following outstanding open-source projects. We sincerely thank the original authors for their contributions:
- Original Project (1st Gen): lxf746/any-auto-register by @lxf746
- Second Fork (2nd Gen): zc-zhangchen/any-auto-register by @zc-zhangchen
- Temporary Email Solution: dreamhunter2333/cloudflare_temp_email
This project is for learning and research purposes only. It shall not be used for any commercial or illegal purposes.
- Purpose Limitation: This project is solely for learning and technical research. It shall not be used for any commercial or illegal purposes.
- Legal Liability: All consequences arising from the use of this project shall be borne by the user. The author is not responsible for any losses, legal liabilities, or moral disputes caused by the use of this project.
- Compliance: Please ensure your use complies with local laws and regulations and the terms of service of each platform.
- Risk Assumption: Using this project for account registration may violate the terms of service of relevant platforms. Risks such as account bans and IP bans resulting therefrom shall be borne by the user.
- Author's Stance: The author firmly opposes any misuse of this project, including but not limited to mass account registration for fraud, harassment, spam dissemination, and other illegal activities.
- Introduction
- Features
- Supported Platforms
- Tech Stack
- Quick Start
- Configuration
- Email Services
- Captcha Services
- Usage Guide
- Project Structure
- API Documentation
- Troubleshooting
- Development Guide
- Docker Deployment
- Contributing
- License
- Star History
Any Auto Register is a multi-platform account automatic registration and management system with plugin-based extension, built-in Web UI, and automatic handling of captcha and email verification.
- 🎯 Multi-Platform Support: ChatGPT, Trae.ai, Cursor, Kiro, Grok, Tavily, OpenBlockLabs, and more
- 🔌 Plugin Architecture: Easy to extend new platforms with standardized interfaces
- 📧 Email Services: Support for 10+ temporary email and self-hosted email services
- 🤖 Captcha Handling: Integrated YesCaptcha and local Turnstile Solver
- 🌐 Proxy Support: Built-in proxy pool management for better anonymity
- 📊 Web UI: Beautiful and easy-to-use management interface
- 🔄 Scheduled Tasks: Support for automatic scheduled registration
- 📈 Batch Operations: Support for batch registration (up to 1000 accounts) and batch upload
- ⚡ Random Delay: Configurable registration interval with random delay
- 🚀 One-Click Deployment: Automated deployment and update scripts
| Platform | Registration | Token Management | Status Sync | Notes |
|---|---|---|---|---|
| ChatGPT | ✅ | ✅ | ✅ | Full feature support |
| Trae.ai | ✅ | ✅ | ❌ | |
| Cursor | ✅ | ✅ | ❌ | |
| Kiro | ✅ | ✅ | ❌ | Requires self-hosted email |
| Grok | ✅ | ✅ | ❌ | |
| Tavily | ✅ | ❌ | ❌ | |
| OpenBlockLabs | ✅ | ❌ | ❌ |
- Framework: FastAPI + Uvicorn
- Database: SQLite + SQLModel
- Browser Automation: Playwright + Camoufox
- HTTP Client: curl_cffi + httpx
- Task Scheduling: APScheduler
- Framework: React + TypeScript
- UI Library: Ant Design
- Build Tool: Vite
- State Management: Zustand
- Container: Docker + Docker Compose
- Environment: Conda (recommended) or venv
- Python: 3.12 or higher
- Node.js: 18 or higher
- Conda: Recommended for environment management
- Git: For cloning the repository
# 1. Clone the repository
git clone https://github.com/dsclca12/auto_reg.git
cd auto_reg
# 2. Run deployment script
./deploy.shAfter deployment, access http://localhost:8000
git clone https://github.com/dsclca12/auto_reg.git
cd auto_reg# Using Conda (recommended)
conda create -n any-auto-register python=3.12 -y
conda activate any-auto-register
# Or using venv
python3 -m venv any-auto-register-env
source any-auto-register-env/bin/activate # Linux/Macpip install -r requirements.txtpython -m playwright install chromium
python -m camoufox fetchcd frontend
npm install
npm run build
cd ..cp .env.example .env
# Edit .env file with your configurationpython main.pyAccess http://localhost:8000
Copy .env.example to .env and configure as needed:
# Server Configuration
HOST=0.0.0.0
PORT=8000
APP_RELOAD=0
APP_CONDA_ENV=any-auto-register
# Captcha Services
YESCAPTCHA_CLIENT_KEY=your_client_key
LOCAL_SOLVER_URL=http://127.0.0.1:8889
# Proxy (Optional)
PROXY_URL=http://username:password@ip:port
# Email Services (Configure based on your needs)
MOEMAIL_API_KEY=your_api_key
SKYMAIL_API_KEY=your_api_key
SKYMAIL_DOMAIN=your_domain| Service | Identifier | Description | Configuration Required |
|---|---|---|---|
| LuckMail | luckmail |
Temporary email service with API-based access | Yes |
| MoeMail | moemail |
Default option, auto-register temporary email | Yes |
| TempMail.lol | tempmail_lol |
Temporary email, may require proxy in some regions | No |
| SkyMail (CloudMail) | skymail |
Use via API/Token/Domain | Yes |
| YYDS Mail / MaliAPI | maliapi |
Support domain and auto-domain strategy | Yes |
| GPTMail | gptmail |
Generate temporary email via GPTMail API | Yes |
| DuckMail | duckmail |
Temporary email service | Yes |
| Freemail | freemail |
Self-hosted email service | Yes |
| Laoudo | laoudo |
Fixed email service | Yes |
| CF Worker | cfworker |
Self-hosted Cloudflare Worker email | Yes |
Kiro has strict risk control. Email solution significantly affects success rate:
- Self-hosted email: 100% success rate ✅
- Built-in temporary email: 0% success rate ❌
Recommendation: Use self-hosted email (CF Worker, SkyMail) for Kiro registration.
| Service | Description | Configuration |
|---|---|---|
| YesCaptcha | Third-party captcha solving service | Requires Client Key |
| Local Solver | Built-in Turnstile solver (camoufox + quart) | Auto-starts with backend |
| System | Description | Configuration |
|---|---|---|
| CPA | Codex Protocol API management panel | API URL + Key |
| Sub2API | API transit management | API URL + Key |
| Team Manager | Team management | - |
| grok2api | Grok token management | API URL + Key |
- Visit Register Task page
- Select platform and configuration
- Set batch quantity (max 1000) and delay
- Click Start Registration
- Visit Scheduled Tasks page
- Create task and set execution time
- Supports one-time and recurring execution
- System will automatically execute at scheduled time
- Supports pause/resume
- Visit Account Management
- Select platform
- Select accounts (all or specific)
- Click Batch Upload to Sub2API/CPA
The frontend provides two ChatGPT registration modes:
| Mode | Description | Output | Recommendation |
|---|---|---|---|
| With Refresh Token | Uses new PR flow | Access Token + Refresh Token | ✅ Recommended |
| Without Refresh Token | Legacy flow | Access Token / Session only |
Location: Registration Task Page or ChatGPT Platform Registration Dialog
Available at the top of ChatGPT platform list:
-
Status Sync
- Sync selected accounts' local status
- Sync selected accounts' CLIProxyAPI status
- Or batch execute on current filter results
-
Re-upload Undiscovered
- Re-upload auth-file not found remotely
- Supports "current filter scope" or "currently selected accounts"
- Navigate to Account Management page
- Select accounts to delete (single or multiple selection)
- Click Delete button to confirm deletion
- Supports batch deletion of multiple selected accounts
The project provides a quick update script to pull code, update dependencies, and restart the service in one go:
# Run in the project root directory
./update.shThe script will automatically:
- Stop the currently running service
- Pull the latest code
- Update Python dependencies
- Update frontend dependencies and rebuild
- Prompt whether to start the service
Note: The script uses Conda environment by default. If using venv, activate your environment first and manually perform the update steps.
auto_reg/
├── api/ # API routes
│ ├── accounts.py # Account management APIs
│ ├── tasks.py # Task management APIs
│ ├── platforms.py # Platform APIs
│ ├── proxies.py # Proxy management APIs
│ ├── config.py # Configuration APIs
│ ├── actions.py # Action APIs
│ └── integrations.py # External integration APIs
├── core/ # Core logic
│ ├── db.py # Database initialization
│ ├── registry.py # Platform registry
│ ├── scheduler.py # Task scheduler
│ └── config_store.py # Configuration storage
├── platforms/ # Platform plugins
│ ├── chatgpt/ # ChatGPT platform
│ ├── trae/ # Trae.ai platform
│ ├── cursor/ # Cursor platform
│ ├── kiro/ # Kiro platform
│ └── ... # Other platforms
├── services/ # Service layer
│ ├── email_services/ # Email service implementations
│ ├── solver_manager.py # Captcha solver management
│ └── chatgpt_sync.py # ChatGPT sync service
├── frontend/ # Frontend code
│ ├── src/ # Source code
│ └── dist/ # Build artifacts
├── static/ # Frontend build output
├── scripts/ # Utility scripts
├── docker/ # Docker configuration
├── main.py # Entry point
├── requirements.txt # Python dependencies
├── deploy.sh # One-click deployment script
├── update.sh # Quick update script
├── .env.example # Configuration example
└── README.md # Project documentation
After starting the service, access http://localhost:8000/docs for interactive API documentation (Swagger UI).
| Endpoint | Method | Description |
|---|---|---|
/api/accounts |
GET/POST | Account management |
/api/tasks |
GET/POST | Task management |
/api/platforms |
GET | List supported platforms |
/api/proxies |
GET/POST | Proxy management |
/api/config |
GET/PUT | Configuration management |
/api/actions |
POST | Execute actions |
/api/integrations |
GET/POST | External integrations |
/api/solver/status |
GET | Solver status |
/api/solver/restart |
POST | Restart solver |
Symptoms: Captcha verification fails, solver status shows offline
Solutions:
- Check if backend is started correctly
- Ensure running in correct Python environment (Conda env recommended)
- Verify camoufox is installed:
python -m camoufox fetch - Check solver logs in
backend.log
Symptoms: Service fails to start, port 8000 already in use
Solutions:
# Stop existing service
pkill -f "python main.py"
# Or find and kill specific process
lsof -i :8000
kill <PID>
# Restart service
python main.pySymptoms: Cannot receive verification codes
Solutions:
- Check proxy configuration and network connection
- Some services require proxy access
- Verify API keys are correct
- Try alternative email service
Error: registration_disallowed or HTTP 400
Solutions:
- 🔄 Change proxy IP (current IP may be flagged, use residential proxy)
- 📧 Change email provider (temporary email domains may be blacklisted)
- ⏱️ Reduce registration frequency (add 30-60s random delay)
- 🔃 Clear browser data or change device fingerprint
- 📋 Reduce batch size (max 5 accounts per batch recommended)
- Maximum: 1000 accounts per batch
- Recommended: Use random delay (10-30s)
- Best Practice: 5-10 accounts per batch with 30-60s delay
Symptoms: Connection errors during registration
Solutions:
- Check proxy availability
- Update dependencies:
pip install -r requirements.txt --upgrade - Reinstall browsers:
python -m playwright install chromium
- Create new platform plugin in
platforms/directory - Implement
BasePlatforminterface - Register with
@registerdecorator
Example:
from core.registry import register, BasePlatform
@register
class MyPlatform(BasePlatform):
name = "my_platform"
display_name = "My Platform"
async def register(self, config):
# Implementation
passcd frontend
# Install dependencies
npm install
# Start development server
npm run dev
# Access http://localhost:5173
# Build for production
npm run build# Activate Conda environment
conda activate any-auto-register
# Start with auto-reload
export APP_RELOAD=1
python main.pypytest tests/- Docker 20.10+
- Docker Compose 2.0+
# Build and start
docker-compose up -d
# View logs
docker-compose logs -f
# Stop service
docker-compose down# Configure in docker-compose.yml or .env
SOLVER_BROWSER_TYPE=camoufox
CLIPROXYAPI_PORT_BIND=8317
GROK2API_PORT_BIND=8011| Host Path | Container Path | Description |
|---|---|---|
./data |
/runtime |
Runtime data |
./_ext_targets |
/_ext_targets |
External targets |
./external_logs |
/app/services/external_logs |
External logs |
Contributions are welcome! Please follow these guidelines:
- Ensure code follows project conventions
- Remove any sensitive information
- Follow the original project's open source license
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use GitHub Issues for bug reports and feature requests
- Provide detailed information including:
- Steps to reproduce
- Expected behavior
- Actual behavior
- Environment information (OS, Python version, etc.)
MIT License
See LICENSE and NOTICE files for details.
- Copyright (c) 2024-present dsclca12 (Current Maintainer)
- Copyright (c) 2024 zc-zhangchen (Second Fork Author)
- Copyright (c) 2024 lxf746 (Original Author)
- lxf746/any-auto-register - Original Project (MIT)
- zc-zhangchen/any-auto-register - Second Fork (MIT)
This project is for learning and research purposes only. It shall not be used for any commercial or illegal purposes. See LICENSE for full disclaimer.
If this project helps you, consider buying me a coffee to support development and maintenance. Every donation is appreciated! 💖
| WeChat Pay | Alipay |
|---|---|
![]() |
![]() |
- 📧 Email: dev@example.com
- 💬 Issues: GitHub Issues
- 🌟 Repository: GitHub
- Current Maintainer: @dsclca12
- Original Author: @lxf746
- Second Fork Author: @zc-zhangchen
