You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
⚠️This repository contains documentation only.
The full source code is a paid / licensed product and is not published here. To purchase, get updates, or request a demo: see Maintainer & contact below.
What is ttkit_clean?
ttkit_clean is a standalone Python package for TikTok account automation:
Device registration (device_register) with realistic fingerprints
Allows python3 -m ttkit_clean — delegates to cli.main().
cli.py
Full argparse CLI: create, onboard, bind phone, update phone, follow, drain-pending. Parses all flags (--domain, --frida, --no-activate, etc.) and routes to the correct module.
__init__.py
Public API exports: Fingerprint, create_account, onboard_existing_account, update_phone_after_login, lazy imports to keep startup fast.
_bootstrap.py
Prepends _vendor/ to sys.path so the package works with zero pip install.
Account creation
File
Role
create.py
Main orchestrator — create_account(). Full loop: proxy pick → fingerprint → device mint → mail inbox → passport send_code → OTP poll → verify → save session → optional activation + phone bind. Handles error 7, sticky burn, anti-detect delays, Frida bootstrap, abort callbacks for dashboard integration.
register.py
DeviceRegisterClient — wraps HTTP device_register with retries, host rotation (log16-*), and response parsing into device_id / install_id.
device.py
Low-level device_register mint (mint_musical_device), passport_params(), passport_form(), musical_ua(), warm_device_guard(). Talks to SignServer for TTEncrypt. Selects IDC host from mint response.
fingerprints.py
Generates device fingerprints: make_real_phone() (Samsung, OPPO, Xiaomi, Huawei, realme, OnePlus) and make_emulator() (AVD / Frida only). Fingerprint dataclass with openudid, cdid, resolution, DPI, build_id, timezone, MCC, etc. Lite app constants (aid=1340, version 44.5.52).
identity.py
mix() — XOR encoding for passport lean fields (email, mobile, code, type). email_local() random local part. infer_region_from_proxy() geo from proxy string.
musical.py
Musical-specific passport helpers: lean form builder, random birthday, passport lean mode flags.
Signing & crypto
File
Role
signing.py
passport_post() — builds signed POST to passport hosts. Assembles headers: X-Argus, X-Ladon, X-Gorgon, X-SS-STUB, sdk-version. Chooses offline SignerPy vs Frida MSSDK. Handles gzip response decode.
signatures.py
SignFace dataclass + FACE_MUSICAL (aid 1233) and FACE_LITE (aid 1340). sign_passport() / sign_headers() with correct Argus key per app. Documents golden rules: api16 gets Argus, api2 gets Gorgon only, device_register uses full TTEncrypt hex payload.
mssdk.py
Frida bridge client (:8790). ensure_ready(), set_device(), sign_request(). Calls signer_server.py HTTP API when --frida is enabled.
cookies.py
Cookie jar management: cookie_header(), merge_response_cookies(), ensure_odin_tt() synth, warm_ms_token(), passport host routing by IDC, guard header store merge/apply, blocks auth cookies during mint, seeds only safe cookies.
auth.py
Email login for existing accounts: login_and_confirm() — used by --do-login and phone update flows.
Email & OTP
File
Role
otp.py
create_mailtm_inbox() — registers mail.tm account (prefers web-library.net domain). get_otp_mailtm() polling. get_otp_any() dispatches by domain. 1secmail support. IMAP reader for custom domain (storage-te.com). _extract_otp() 6-digit parser from HTML/text.
Activation, profile & aweme API
File
Role
profile.py
activate_account_after_register() — post-register pipeline: warm session → FYP browse → likes → soft follow → nickname/bio commit → avatar upload → phone bind. commit_user_with_backoff() handles rate limit 3002284 with 10–40 min backoff. Enqueues deferred jobs to onboard_pending.json.
aweme.py
Generic aweme_request() — signed GET/POST to aweme endpoints with guard headers. browse_for_you_feed(), digg_aweme(), soft_follow_user(), fetch_user_posts(), check_account_health(), warm_logged_in_session(), report_aweme_play(), resolve_warm_users().
onboard.py
onboard_existing_account() — reload session from sessions/*.json, fresh proxy, run activation without new register. drain_onboard_pending() — process deferred profile/avatar queue after cooldown.
Phone binding & change
File
Role
phone.py
5SIM integration: fivesim_buy_phone(), fivesim_wait_code(), fivesim_finish(). bind_phone_to_account() and change_phone_on_account() — full send_code → SMS → bind loop with type fallback (34, 24, 3731, 2). Handles 3052/3053, operator retry, manual OTP stage. update_phone_after_login() — CLI entry for --update-phone-only. format_mobile_for_lite() → +1 647... before XOR.
send_phone.py
Lite Go passport mobile — lite_go_query() (aid=1340 full query string), lite_mobile_lean_form() (XOR body), lite_passport_post() (headers matching real Lite 44.5.52 captures: x-tt-ultra-lite, x-tt-bypass-dp, ttzip, Argus). Used by phone.py instead of musical aid=1233 path.
Follow (Lite Go)
File
Role
send_follow.py
lite_relation_follow() — POST /lite/v2/relation/follow/ with body=null, stub 46C03B52742B3F2615A3ABDF1636B754. resolve_username() scrapes user_id + sec_uid from TikTok web. follow_with_session() loads saved session and sends follow. Standalone: python3 -m ttkit_clean.send_follow.
Proxy & sessions
File
Role
proxy.py
Proxy pool from data/proxies.txt. pick_fresh_proxies(), probe_proxy(), sticky key tracking, cooldown (proxy_used_ttkit.json), mark_sticky_burned() on error 7, GeoNode session rotation, ipr() / ipr_fresh() IPRoyal helpers.
Offline Argus/Ladon implementation extracted from Metasec research. Used by signatures.py when SignServer or SignerPy path is selected. Separate keys per aid (1233 vs 1340).
utils/ — legacy helpers
File
Role
utils/api.py
Applog, Device, Utils, Xlog classes — TTEncrypt payload build, device_register low-level, xlog reporting. Used by device.py and mint path.
⚠️هذا المستودع يحتوي على التوثيق فقط.
الكود المصدري منتج مدفوع / مرخّص وغير منشور هنا. للشراء أو التحديثات أو العرض التجريبي: راجع المطوّر والتواصل أدناه.
ما هو ttkit_clean؟
حزمة Python مستقلة لأتمتة حسابات TikTok:
تسجيل جهاز (device_register) ببصمات واقعية
توقيع: Argus / Gorgon / Ladon / TTEncrypt
تسجيل بالإيميل + OTP (mail.tm، 1secmail، IMAP)
تفعيل بعد التسجيل (FYP، لايك، بروفايل، صورة)
ربط/تغيير رقم عبر 5SIM + مسار Lite Go
فولو Lite Go
Frida MSSDK اختياري
حفظ جلسة كاملة
شرح الملفات — مرجع كامل
نقاط الدخول
الملف
الوظيفة
__main__.py
تشغيل python3 -m ttkit_clean
cli.py
واجهة CLI كاملة — كل الأوامر والخيارات
__init__.py
API عام: create_account, Fingerprint, ...
_bootstrap.py
تفعيل _vendor/ تلقائياً بدون pip
إنشاء الحساب
الملف
الوظيفة
create.py
المنسّق الرئيسي — حلقة كاملة من البروكسي حتى حفظ الجلسة والتفعيل
register.py
عميل device_register مع إعادة محاولة وتدوير hosts
device.py
mint الجهاز، باراميترات passport، warm device guard
fingerprints.py
بصمات هواتف حقيقية ومحاكي — Fingerprint dataclass
identity.py
XOR mix() للحقول، توليد إيميل، استنتاج المنطقة من البروكسي
musical.py
مساعدات passport لـ musical (aid 1233)
التوقيع والتشفير
الملف
الوظيفة
signing.py
passport_post() — تجميع الترويسات الموقّعة
signatures.py
تعريف FACE_MUSICAL / FACE_LITE ومفاتيح Argus
mssdk.py
عميل جسر Frida على :8790
cookies.py
إدارة الكوكيز، odin_tt، guard headers، توجيه hosts
auth.py
تسجيل دخول بالإيميل لحساب موجود
البريد و OTP
الملف
الوظيفة
otp.py
إنشاء صندوق mail.tm، polling OTP، 1secmail، IMAP
التفعيل والبروفايل
الملف
الوظيفة
profile.py
تفعيل كامل بعد التسجيل + backoff عند 3002284
aweme.py
طلبات aweme موقّعة: FYP، لايك، فولو، صحة الحساب
onboard.py
تفعيل حساب محفوظ + استكمال المهام المؤجلة
الهاتف
الملف
الوظيفة
phone.py
5SIM + bind/change + معالجة 3052/3053 + OTP يدوي
send_phone.py
مسار Lite Go لـ passport mobile (aid 1340، XOR lean body)