Aaa
این پرامپت برای کدنویسی، بازبینی و رفع اشکال سریعتر نوشته شده است. چیزی که از مدل میخواهد: «ROLE: Senior Node.js Automation Engineer»
متن پرامپت
ROLE: Senior Node.js Automation Engineer
GOAL:
Build a REAL, production-ready Account Registration & Reporting Automation System using Node.js.
This system MUST perform real browser automation and real network operations.
NO simulation, NO mock data, NO placeholders, NO pseudo-code.
SIMULATION POLICY:
NEVER simulate anything.
NEVER generate fake outputs.
NEVER use dummy services.
All logic must be executable and functional.
TECH STACK:
- Node.js (ES2022+)
- Playwright (preferred) OR puppeteer-extra + stealth plugin
- Native fs module
- readline OR inquirer
- axios (for API & Telegram)
- Express (for dashboard API)
SYSTEM REQUIREMENTS:
1) INPUT SYSTEM
- Asynchronously read emails from "gmailer.txt"
- Each line = one email
- Prompt user for:
• username prefix
• password
• headless mode (true/false)
- Must not block event loop
2) BROWSER AUTOMATION
For EACH email:
- Launch browser with optional headless mode
- Use random User-Agent from internal list
- Apply random delays between actions
- Open NEW browserContext per attempt
- Clear cookies automatically
- Handle navigation errors gracefully
3) FREE PROXY SUPPORT (NO PAID SERVICES)
- Use ONLY free public HTTP/HTTPS proxies
- Load proxies from proxies.txt
- Rotate proxy per account
- If proxy fails → retry with next proxy
- System must still work without proxy
4) BOT AVOIDANCE / BYPASS
- Random viewport size
- Random typing speed
- Random mouse movements (if supported)
- navigator.webdriver masking
- Acceptable stealth techniques only
- NO illegal bypass methods
5) ACCOUNT CREATION FLOW
System must be modular so target site can be configured later.
Expected steps:
- Navigate to registration page
- Fill email, username, password
- Submit form
- Detect success or failure
- Extract any confirmation data if available
6) FILE OUTPUT SYSTEM
On SUCCESS:
Append to:
outputs/basarili_hesaplar.txt
FORMAT:
email:username:password
Append username only:
outputs/kullanici_adlari.txt
Append password only:
outputs/sifreler.txt
On FAILURE:
Append to:
logs/error_log.txt
FORMAT:
${timestamp} Email: X | Error: MESSAGE
7) TELEGRAM NOTIFICATION
Optional but implemented:
If TELEGRAM_TOKEN and CHAT_ID are set:
Send message:
"New Account Created:
Email: X
User: Y
Time: Z"
8) REAL-TIME DASHBOARD API
Create Express server on port 3000.
Endpoints:
GET /stats
Return JSON:
{
total,
success,
failed,
running,
elapsedSeconds
}
GET /logs
Return last 100 log lines
Dashboard must update in real time.
9) FINAL CONSOLE REPORT
After all emails processed:
Display console.table:
- Total Attempts
- Successful
- Failed
- Success Rate %
- Total Duration (seconds & minutes)
10) ERROR HANDLING
- Every account attempt wrapped in try/catch
- Failure must NOT crash system
- Continue processing remaining emails
11) CODE QUALITY
- Fully async/await
- Modular architecture
- No global blocking
- Clean separation of concerns
PROJECT STRUCTURE:
/project-root
main.js
gmailer.txt
proxies.txt
/outputs
/logs
/dashboard
OUTPUT REQUIREMENTS:
Produce:
1) Complete runnable Node.js code
2) package.json
3) Clear instructions to run
4) No Docker
5) No paid tools
6) No simulation
7) No incomplete sections
IMPORTANT:
If any requirement cannot be implemented,
provide the closest REAL functional alternative.
Do NOT ask questions.
Do NOT generate explanations only.
Generate FULL WORKING CODE.
جایخالیهایی که باید پر کنی
{timestamp}«timestamp» را با مقدار واقعی خودت جایگزین کنچطور از این پرامپت استفاده کنم؟
این یک پرامپت در سطح «پیشرفته» از دسته برنامهنویسی و توسعه نرمافزار است. برای اینکه بهترین نتیجه را بگیری، این مسیر را دنبال کن:
۱) کپی کن. روی دکمه «کپی پرامپت» بزن تا کل متن دقیقاً همانطور که هست در کلیپبورد قرار بگیرد. حذف کردن جملههای ابتدایی معمولاً کیفیت خروجی را پایین میآورد، چون همانها نقش و لحن مدل را تعیین میکنند.
۲) در یک گفتگوی تازه بچسبان. این پرامپت را به عنوان اولین پیام یک چت جدید بفرست. اگر آن را وسط یک گفتگوی طولانی بگذاری، مدل هنوز تحت تأثیر موضوع قبلی است و از نقش خواستهشده بیرون میزند.
۳) جایخالیها را پر کن. در این متن 1 جایخالی وجود دارد: {timestamp}. هر کدام را با اطلاعات واقعی خودت جایگزین کن و علامتهای کروشه یا آکولاد را هم پاک کن. هرچه این مقادیر مشخصتر باشند (مثلاً «مدیر فروش یک شرکت نرمافزاری B2B» به جای «یک مدیر») خروجی دقیقتر میشود.
۴) به مدل زمینه بده. مخاطب، زبان خروجی (مثلاً «به فارسی جواب بده»)، طول تقریبی و لحن مورد نظرت را اضافه کن. بیشتر جوابهای ضعیف نتیجه نبودِ همین سه خط اضافهاند، نه ضعف خودِ پرامپت.
۵) یک بار اصلاح کن. جواب اول را نهایی فرض نکن. بنویس «این بخش را کوتاهتر کن»، «مثال واقعی اضافه کن» یا «سه نسخه متفاوت بده». دور دوم تقریباً همیشه بهتر از دور اول است.
۶) کد را قبل از اجرا بخوان. خروجی را در یک شاخه جدا تست کن و بهویژه به مدیریت خطا و ورودیهای مرزی نگاه کن؛ مدلها معمولاً مسیر خوشبینانه را مینویسند.
نمونه استفاده واقعی
چه خروجیای باید بگیری
نکتههای حرفهای
- اگر خروجی کلی و بیروح بود، یک نمونه از «خروجی خوب از نظر خودت» به مدل نشان بده؛ یک نمونه بیشتر از ده خط توضیح اثر دارد.
- برای متن فارسی، جمله «به فارسی روان و بدون ترجمه تحتاللفظی بنویس» را انتهای پرامپت اضافه کن.
- جایخالیها را خالی نگذار؛ اگر مقداری را نمیدانی، به جای حذفش بنویس «فرض کن ...» تا مدل سرخود چیزی از خودش نسازد.
- این پرامپت طولانی است؛ روی مدلهای قویتر (مثل Claude Opus یا GPT-5) نتیجه محسوساً بهتری میدهد.
- نسخه زبان و فریمورک را صریح بنویس (مثلاً «Node.js 24 و TypeScript 5») تا کد قدیمی تحویل نگیری.