تصور کنید صبح روز اول کاریتان در شرکت جدید است و متوجه میشوید تمام دستاوردهای ذهنی و یادداشتهای چندماهه شما در حساب ChatGPT شرکتی قبلی، با یک کلیک توسط مدیر IT حذف شده است. برای بسیاری از متخصصان، حسابهای تجاری هوش مصنوعی به جای ابزار بهرهوری، به یک «زندان داده» تبدیل شدهاند که هر لحظه ممکن است دسترسی به آن قطع شود. برای مقابله با این وضعیت، ابزاری به نام scrapemychats در گیتهاب منتشر شده است که به کاربران اجازه میدهد پیش از بسته شدن فضای کاری (Workspace) یا انقضای اشتراک، گفتگوها و فایلهای خود را به صورت اجباری به یک آرشیو آفلاین، محلی و قابل جستوجو منتقل کنند.
طبق مستندات این ابزار، در حالی که اکثر کاربران عادی ChatGPT از یک دکمه ساده «Export data» برای دریافت دادههای خود بهره میبرند، این قابلیت به طور مشهودی در حسابهای Business و Team حذف شده است. در واقع هیچ راه رسمی وجود ندارد که وقتی یک فضای کاری بسته میشود، تاریخچه گفتگوهای خود را همراه خود ببرید. همانطور که در تحلیلهای قبلی ما دربارهی پروتکل زمینهٔ مدل (MCP) اشاره کردیم، این پروتکل به ایمنسازی دادههای مستاجر (Tenant) در SaaS برای ChatGPT و Claude کمک میکند، اما مشکل جابهجایی دادهها (Data Portability) برای کارمندانی که سازمان را ترک میکنند، همچنان یک نقطه ضعف و دردسر بزرگ است. این ابزار با استفاده از نشست (Session) فعال و لاگین شدهی کاربر، مانند کلیدی برای باز کردن این گاوصندوق عمل میکند.
سازوکار استخراج دادهها
به نقل از توسعهدهنده این پروژه، scrapemychats برخلاف اسکرپرهای سنتی که متن ظاهری و HTML صفحه را میخوانند، مستقیماً لایهی پسزمینه (Backend) را رصد میکند. این ابزار یک پنجره مرورگر گوگل کروم را به صورت مرئی باز میکند (یا از طریق فلگ --browser-channel msedge از مایکروسافت اج استفاده میکند) و منتظر میماند تا رابط کاربری ChatGPT درخواست فایلهای JSON گفتگوها را از سرور ارسال کند؛ سپس این پاسخها را در لحظه شکار میکند. همچنین ابزار قادر است هر آنچه را که در کتابخانهی فایلهای حساب کاربری و همچنین فایلهای تولید شده توسط محیط کدنویسی (Sandbox) وجود دارد، بازیابی کند.
این رویکرد باعث میشود ابزار به جای لایهی بصری، لایهی دادهها را هدف قرار دهد و در نتیجه در برابر تغییرات طراحی رابط کاربری (UI redesigns) کاملاً مقاوم باشد. پیوستها از طریق API فایلها و خروجیهای کد از طریق API دانلود مفسر (interpreter-download API) دریافت میشوند و همگی از همان شناسههای امنیتی و هدرهای نشست (Session Headers) استفاده میکنند که خودِ صفحه برای احراز هویت به کار میبرد.

جزئیات ساختار خروجی
این ابزار برای اطمینان از اینکه دادهها هم به صورت خام و هم به صورت خوانا در دسترس باشند، یک سلسلهمراتب دایرکتوری خاص را در پوشه export/ ایجاد میکند:
- نمایشگر (Viewer): یک فایل
viewer.htmlمستقل و خودکفا. این فایل به هیچ سرور، اینترنت یا وابستگی خارجی نیاز ندارد و اجازه میدهد آرشیو مستقیماً از روی یک فلش مموری اجرا شود. این نمایشگر قابلیت جستوجوی سریع در تمام متون با هایلایت کردن نتایج، نمایش پیشنمایش تصاویر به صورت inline و پیمایش با کیبورد را دارد. - اندیس (Index): یک فایل
manifest.csvکه برای هر گفتگو یک ردیف دارد و وضعیت استخراج و تعداد پیامها را ردیابی میکند. همچنین یک فایلchats.csvوجود دارد که در آن لیست گفتگوها به طور خودکار شناسایی میشود (شامل گفتگوهای موجود در بخش Projects). - گزارش خطا: فایل
errors.logتمام دادههایی که به هر دلیل (مانند حذف شدن توسط سرور) قابل بازیابی نبودند را ثبت میکند. - پوشههای گفتگو: هر چت در یک پوشهی منحصربهفرد (مثلاً
001_Some Chat Title_6a5f6592/) ذخیره میشود که شامل موارد زیر است:conversation.json: دادههای خام و کامل، شامل تکتک پیامها و تمام فراخوانیهای ابزارها (Tool calls).conversation.md: یک نسخهی متنی و خوانا از گفتگو با فرمت مارکداون.files/: دایرکتوری مخصوص تمام پیوستها، تصاویر و فایلهای تولید شده توسط AI.
محدودیتها و حریم خصوصی
برای دور زدن سیستمهای ضدربات OpenAI که مرورگرهای نامرئی را مسدود میکنند، این ابزار الزاماً یک پنجره مرورگر را باز نگه میدارد؛ به همین دلیل حالت بدون رابط کاربری (Headless mode) عمداً غیرفعال شده است. همچنین برای جلوگیری از شناسایی و مسدود شدن حساب (Account flags)، یک استراتژی تهاجمی برای «کاهش سرعت» (Throttling) اجرا میکند. طبق گزارشهای فنی، اسکریپت سرعت خود را روی حدود ۱۰ تا ۲۰ ثانیه برای هر گفتگو تنظیم میکند. اگر سرور پیام «You're making requests too quickly» (درخواستهای شما بیش از حد سریع است) را ارسال کند، ابزار با گامهای افزایشی عقبنشینی کرده و سرعت خود را به طور دائمی پایین میآورد. به همین دلیل، استخراج یک آرشیو بزرگ شامل ۶۰۰ گفتگو ممکن است چندین ساعت زمان ببرد.

از نظر حریم خصوصی، تمام پردازشها به صورت محلی انجام میشود. ابزار هرگز رمز عبور کاربر را درخواست نمیکند و چنین دادهای را نمیبیند. تمام اطلاعات روی دستگاه کاربر باقی میماند. پوشهی browser_profile/ حاوی اطلاعات ورود فعال به ChatGPT است؛ توسعهدهنده اکیداً هشدار داده است که این پوشه هرگز با دیگران به اشتراک گذاشته نشود، در گیت کامیت نشود و بلافاصله پس از پایان عملیات حذف گردد. برای جلوگیری از افشای تصادفی دادهها، پوشههای export/ و browser_profile/ و همچنین فایل chats.csv در لیست .gitignore قرار دارند.
پیادهسازی و نصب
برای کاربران فنی، پیشنیازها پایتون ۳.۱۰ به بالا و مرورگر گوگل کروم است. روند کار با اجرای دستور pip install -r requirements.txt و سپس یک تست سریع با فلگ python export_chats.py --limit 3 آغاز میشود تا اتصال و صحت عملکرد بررسی شود. کاربران همچنین میتوانند لیست خاصی از چتها را از طریق دستور --csv mylist.csv وارد کنند، به طوری که ستون اول شامل URL و ستون دوم شامل عنوان گفتگو باشد.
کاربران غیرفنی میتوانند ابزار را از طریق یک فرآیند دستی شامل حدود ۱۰ مرحله راهاندازی کنند که در مجموع تقریباً ۲۰ دقیقه زمان میبرد.
کاربران ویندوز باید پایتون را از سایت python.org نصب کنند و حتماً تیک گزینه «Add python.exe to PATH» را فعال نمایند. سپس باید فایل ZIP گیتهاب را استخراج کرده، با تایپ کلمه powershell در نوار آدرس File Explorer یک ترمینال باز کنند و دستورات پایتون را اجرا نمایند.
کاربران مک مسیر مشابهی را طی میکنند، با این تفاوت که برای تمام دستورات از python3 استفاده کرده و برای ورود به پوشه در ترمینال از دستور cd ~/Downloads/scrapemychats-main استفاده میکنند.
از آنجا که این فرآیند قابلیت «ادامه از نقطه توقف» (Resumable) را دارد، هرگونه وقفه — مانند به خواب رفتن (Sleep) کامپیوتر — را میتوان با اجرای مجدد همان دستور برطرف کرد. ابزار تمام مواردی که قبلاً استخراج شدهاند را میپرد و فقط موارد شکستخورده یا جدید را تلاش میکند.
استقرار با کمک هوش مصنوعی
توسعهدهنده برای کاهش سد ورود کاربران غیربرنامهنویس، پیشنهاد کرده است که از خود هوش مصنوعی برای هدایت فرآیند نصب استفاده کنند. کاربر میتواند یک پرامپت مشخص را در ChatGPT یا Claude قرار دهد و از AI بخواهد که او را مرحلهبهمرحله در مراحل pip install و اجرای export_chats.py راهنمایی کند.
علاوه بر این، عاملهای کدنویسی هوشمند مانند Claude Code یا Codex را میتوان به پوشه پروژه هدایت کرد و به آنها دستور داد: «این ابزار را برای من نصب و عملیات استخراج را اجرا کن». این عاملها میتوانند وابستگیها را نصب کنند، اسکریپت را اجرا نمایند و حتی خطاهای غیرمنتظره یا تغییر در نقاط اتصال (Endpoints) سرور را در لحظه شناسایی و رفع کنند، که این یک جایگزین پویا برای فایل متنی README است.
مرزهای بازیابی دادهها
باید توجه داشت که برخی دادهها برای همیشه از دست میروند. طبق مستندات، OpenAI برخی از محتویات فایلهای آپلود شده را پس از یک دوره نگهداری (Retention period) مشخص از سمت سرور حذف میکند. اگرچه scrapemychats متن گفتگوهایی که به این فایلها اشاره کردهاند را با موفقیت ذخیره میکند، اما خودِ فایلها در صورت حذف شدن از سرور، خطای «file not found» در فایل errors.log ثبت میکنند. هیچ روش استخراج دادهای نمیتواند این فایلهای پاکسازی شده را بازیابی کند.
تحلیل: گذار به حاکمیت محلی دادههای AI
این ابزار نشاندهنده تنش فزاینده میان کنترل شرکتهای SaaS و مالکیت فردی دادهها است. با تبدیل تاریخچه ابری به یک آرشیو قابل حمل JSON و Markdown، scrapemychats توازن قدرت را به نفع کاربر تغییر میدهد. این رویکرد گامی در جهت استقلال از زیرساختهای ابری است؛ مشابه آنچه در استفاده از Ollama برای اجرای محلی مدلهای زبانی دیدیم که کاربر را از وابستگی به APIهای پولی و محدودیتهای سرور خارجی رها میکند.
برای یک متخصص، این یعنی «ترک Republique» یا همان ترکیب ذهنی که طی ماهها با پرامپتنویسی ساخته شده، دیگر وابسته به اشتراک یک کارفرما یا سازمان خاص نیست. قابلیت دستهبندی این چتها از طریق یک فایل محلی به نام categories.json باعث میشود یک توده متنی خام به یک کتابخانه شخصی ساختاریافته تبدیل شود. این سیستم از روش امتیازدهی کلمات کلیدی (Keyword scoring) استفاده میکند که در آن تطابق کلمه با «عنوان»، ۴ برابر بیشتر از تطابق با «بدنه متن» وزن دارد. هر موردی که با کلمات کلیدی مطابقت نداشته باشد، در بخش «Unsorted» (دستهبندی نشده) قرار میگیرد تا کاربر بتواند کلمات کلیدی خود را اصلاح کرده و نمایشگر را در عرض چند ثانیه مجدداً بازسازی کند.
گام بعدی شما
- دسترسیهای فضای کاری خود را پیش از پایان دوره اشتراک یا ترک سازمان بررسی کنید.
- مخزن گیتهاب scrapemychats را بازدید کرده و فایل ZIP را دانلود کنید.
- با دستور
python export_chats.py --limit 3یک تست سریع برای بررسی دسترسی به کتابخانه فایلها و صحت اتصال انجام دهید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو