از Cha به Ch

مخزن گیت‌هاب پروژه

اعلامیه بزرگ

من در حال کنار گذاشتن Cha هستم و روی Ch تمرکز می‌کنم. در 23 اوت 2025 Cha را منسوخ‌شده علامت‌گذاری کردم و همه تلاش‌های توسعهٔ آینده را به Ch معطوف کردم. فلسفه حالا ساده است: فقط یک ابزار را نگه دار که ساده، سبک، و سریع باشد، آن را نگه‌داری کن، و باگ‌ها را برطرف کن. نه دنبال‌کردن ویژگی‌ها.

چرا در اصل Cha را ساختم

وقتی LLMها و ChatGPT تازه بودند، ابزارهای CLI که می‌خواستم هیچ‌وقت ظاهر نشدند. ChatGPT در نوامبر 2022 منتشر شد و واقعاً در اوایل 2023 با انتشار GPT-4 اوج گرفت. من منتظر بودم ابزارهای خط فرمانِ محکمی ظاهر شوند، اما هیچ‌کدام واقعاً آن‌طور که می‌خواستم کار نمی‌کردند. پس Cha را ساختم و هر روز از آن استفاده کردم. در واقع، در اولین پست وبلاگم صریحاً گفتم: پروژه‌هایی از این دست رایج بودند، اما هیچ‌کدام با نیازهای من مطابقت نداشتند، پس خودم یکی نوشتم.

Cha بچهٔ من بود. هر روز از آن استفاده می‌کردم و از کار کردن روی آن لذت می‌بردم. و ظرف یک سال، با جمع‌کردن +60 ستاره در گیت‌هاب کمی رشد کرد. در این مدت، وب‌اسکرپینگ، گرفتن رونوشت یوتیوب، تولید تصویر، ورودی چندخطی، چت تعاملی/غیرتعاملی، ورودی پرامپت STT، پشتیبانی از ابزارهای سفارشی، پشتیبانی از پلتفرم‌های مختلف دیگر خارج از فقط OpenAI، موتور جست‌وجوی Answer خودش، ناوبری پیشرفتهٔ پوشه و ویرایش فایل، امکان کپی محتوا در کلیپ‌بورد، TTS برای پاسخ‌ها، و غیره را اضافه کرد. کارهای زیادی انجام می‌داد، کار می‌کرد، و به‌عنوان یک ابزار خط فرمان واقعاً مفید و قدرتمند بود.

چرا به Ch مهاجرت کردم (از Python به Go)

با گذر زمان Cha سنگین شد. مجموعهٔ ویژگی‌های خوبی داشت، اما برای چیزی که من روزمره نیاز داشتم، سطح سطح زیادی داشت. این باعث شد Cha واقعاً حجیم شود. همچنین این کمک نکرد که با Python نوشته شده بود، که دو مسئلهٔ حیاتی ایجاد می‌کرد. یکی سرعت بود؛ فقط زمان بارگذاری اولیه هنوز 0.8 ثانیه طول می‌کشید و این بعد از انجام مقدار زیادی بهینه‌سازی و مهندسی برای دور زدن زمان کندِ import اولیهٔ بسته‌های Python و استفاده از چندپردازشی بود. و Python نصب‌کردنش بسیار چالش‌برانگیز است. چون Cha به ابزارهای متن‌بازِ شخص ثالث مختلفی وابسته بود، نصب‌کردنش بسیار چالش‌برانگیز بود. نقطهٔ شکست من وقتی بود که در سفر بودم و فقط یک تبلت Android داشتم که Termux را اجرا می‌کرد و اصلاً کار نمی‌کرد و وادار کردنش به اینکه تا حدی کار کند بسیار دردناک و بیهوده بود.

پس تصمیم گرفتم آزمایش جدیدی به نام Ch را شروع کنم. Ch مثل Cha بود اما به‌جای Python با GoLang نوشته می‌شد و فقط شامل ویژگی‌های اساسی Cha بود، با این ایده که سبک، سریع، و نصب‌پذیر روی بیشتر سیستم‌ها باشد و به آن اندازه از نظر ویژگی‌ها سنگین نباشد. با این کار، نگه‌داری پروژه به‌عنوان یک نگه‌دارندهٔ تنها آسان‌تر می‌شود.

بعد از چند ماه کار کردن روی Ch و استفاده از آن، دیدم آیندهٔ Cha از طریق Ch است نه کدبیس اصلی Cha. من خیلی زیاد روی Cha وقت صرف کرده بودم، نگه‌داری هر دو کدبیس برای من به‌عنوان یک توسعه‌دهندهٔ تنها در آن پروژه‌ها وقت‌گیر بود، و Ch کار اصلی را انجام می‌داد در حالی که بسیار سبک‌تر، سریع‌تر، و نصب‌کردنش آسان‌تر بود. این تصمیم را روشن کرد…

بازنویسی با Go به من راه‌اندازی سریع، یک باینری واحد، و یک مدل ذهنی کوچک‌تر می‌دهد. فایل README مربوط به Ch آن را خوب خلاصه می‌کند: Ch جانشین است با بیش از 10 برابر راه‌اندازی سریع‌تر و عملکرد به‌مراتب بهتر.

تصمیم

من به‌طور رسمی Cha را در 23 اوت 2025 منسوخ کردم و از طریق READMEِ Cha مردم را به Ch هدایت کردم. مخزن Cha به‌عنوان مرجع تاریخی باقی مانده است و من Ch را در حالت نگه‌داری نگه می‌دارم با تمرکز بر پایداری و رفع باگ‌ها، و علاقهٔ کمی به افزودن هر ویژگی جدیدی دارم مگر این‌که ارزشش را داشته باشد و/یا افزودنش حیاتی باشد (هرچه که این در گذر زمان معنایش باشد).

Ch امروز چه ویژگی‌هایی را شامل می‌شود

Ch جریان کاری روزمره را بدون انبوهی از امکانات پوشش می‌دهد:

  • راه‌اندازی با کارایی بالا با یک CLI سبک نوشته‌شده در GoLang
  • پشتیبانی چندارائه‌دهنده (OpenAI، Groq، DeepSeek، Anthropic، XAI، Together، Gemini، Mistral، Ollama)
  • حالت‌های تعاملی و مستقیم، لوله‌کردن از هر فرمان، بارگذاری فایل و پوشه، شمارش توکن، خروجی‌گرفتن از بلوک کد، نمایشگر تاریخچهٔ چت، جابه‌جایی مدل/پلتفرم، بازگشت‌پذیری، dumpهای کد، ضبط جلسهٔ شل، یکپارچه‌سازی با کلیپ‌بورد
  • وب‌اسکرپینگ و جست‌وجوی داخلی، شامل مدیریت لینک‌های یوتیوب، به‌شیوه‌ای ساده و مستقیم یکپارچه شده است

چه چیزهایی در Ch نسبت به Cha کم است (و چرا)

Ch سعی می‌کند فقط ویژگی‌های اساسی Cha را نگه دارد، اما در این فرایند ویژگی‌های زیرِ Cha را از Ch حذف کردم:

  • رابط پیشرفتهٔ “Editor” و “Answer Search” منتقل نمی‌شوند
  • ورود صوت، ویدئو، و تصویر، تبدیل صدا به متن و متن به صدا، و بعضی از لطف‌و‌عنايت‌های اضافیِ خروجی‌گیری و codedump اولویت ندارند
  • بعضی کمک‌های ناوبری و رفتارهای “change root dir” از Cha در Ch وجود ندارند
  • “پروفایل‌های محلی با چت‌های ذخیره‌شده” عمداً مسیر پیش‌فرض نیستند

من بسیاری از این‌ها را یا به‌عنوان bloat یا “nice to have” برچسب زدم. چیزی که من حیاتی می‌دانستم وب‌گردی و وب‌اسکرپینگ بود، که در Ch وجود نداشت اما از آن زمان آن را در Ch یکپارچه کرده‌ام تا حلقهٔ اصلی بدون بقیهٔ موارد کامل باشد. نه‌تنها این، بلکه Ch یک ویژگی جدید به نام !x دارد که در حالی که هنوز در یک جلسهٔ Ch هستید یک جلسهٔ شل را ضبط می‌کند و آن را به تاریخچهٔ چت اضافه می‌کند و به شما اجازه می‌دهد از دیگر ابزارهای CLI استفاده کنید و اگر خواستید خروجی آن‌ها را برای مدل ذخیره کنید. این ویژگی به شما اجازه می‌دهد بسیاری از ویژگی‌های اصلیِ از دست‌رفتهٔ Cha را وارد Ch کنید بدون اینکه Ch همهٔ بار را به دوش بکشد و حجیم شود. می‌توانید دربارهٔ Ch در این بلاگ جدید بیشتر بیاموزید.

Ch/Cha در برابر Claude Code

در ژوئیهٔ 2025، من یک مقایسه بین Cha و جدیدترین ابزارهای CLI مبتنی بر هوش مصنوعی نوشتم تا توضیح دهم Cha چه ارزشی ارائه می‌دهد که آن ابزارها نمی‌دادند. با دانستن این موضوع، هنوز هم می‌خواستم این را در این وبلاگ بگنجانم چون Ch، در هستهٔ خود، همان ارزش را ارائه می‌دهد و این مقایسه حتی ماه‌ها بعد، با وجود این جابه‌جایی، همچنان برقرار است. همان فلسفه دربارهٔ Ch نیز صدق می‌کند.

تفاوت‌های کلیدی

  • رویکرد Ch/Cha بر کنترل کامل کاربر در هر مرحله تأکید دارد، بدون کارگرهای پس‌زمینهٔ هوش مصنوعی که تصمیم‌های خودمختار می‌گیرند. شما مدیریت صریح و تحت کنترل کاربرِ زمینه را دریافت می‌کنید، با هزینه‌هایی که معمولاً برای استفادهٔ روزانهٔ فعال از 1 تا 20 دلار در ماه است. هیچ ویرایش غافلگیرکننده‌ای وجود ندارد، همه‌چیز با هدایت کاربر انجام می‌شود، و این آن را برای درگیری عمیق و کنترل دقیق هزینه ایده‌آل می‌کند.
  • CLIهای ایجنتیک مانند Claude Code و Gemini مسیر متفاوتی را طی می‌کنند، با تصمیم‌های خودکارِ جریان‌کار و ایجنت‌های هوشمندی که انتخاب‌های خودمختار می‌کنند. آن‌ها زمینه و مدیریت فایلِ مبتنی بر هوش مصنوعی را با هزینه‌هایی که معمولاً برای سطوح استفادهٔ مشابه از 10 تا 200+ دلار در ماه است، مدیریت می‌کنند. آن‌ها در تغییرات خودمختار کد عالی هستند، و برای نمونه‌سازی سریع و واگذاری بسیار مناسب‌اند.

چه زمانی سبک Ch/Cha را انتخاب کنید

  • هزینهٔ حداقلی با شفافیت کامل
  • کنترل کامل بر هر تعامل
  • درگیری عمیق در فرایند توسعهٔ شما
  • مدیریت صریح زمینه برای پروژه‌های حساس

چه زمانی ابزارهای ایجنتیک را انتخاب کنید

  • نمونه‌سازی سریع و تکرار سریع
  • ترجیح برای خودکارسازی و واگذاری به هوش مصنوعی
  • سرعت به‌جای ملاحظات هزینه

توصیه

هیچ گلولهٔ نقره‌ای‌ای وجود ندارد. هیچ ابزاری همهٔ موارد را پوشش نمی‌دهد. Ch برای کارهای روزانهٔ مقرون‌به‌صرفه و کنترل دقیق عالی است. ابزارهای ایجنتیک مانند Claude Code یا Gemini CLI برای کدنویسی پیچیده، چندفایل، چندمحیطی، با تمرکز بر سرعت و خودکارسازی می‌درخشند. وقتی می‌خواهید هزینه‌ها را کاهش دهید و کنترل را حفظ کنید، از Ch استفاده کنید. وقتی به تکرار سریع نیاز دارید و واگذاری کنترل برایتان مهم نیست، از ابزارهای ایجنتیک استفاده کنید. بسیاری از افراد با Ch شروع می‌کنند تا الگوهای تعاملی خوبی یاد بگیرند، سپس با تکامل نیازها ابزارهای ایجنتیک را اضافه می‌کنند.

آیندهٔ Cha و Ch

آیندهٔ Cha و Ch این است. Cha منسوخ و بایگانی‌شده است، و فقط به‌عنوان نوعی مرجع تاریخی خدمت می‌کند. Ch اکنون Cha جدید است. این ابزار همچنان نگه‌داری، بهبود (اگر لازم باشد)، و استفاده خواهد شد. من به‌شدت در برابر feature creep برای Ch مقاومت خواهم کرد. و از این به بعد، وقتی می‌گویم/به Cha اشاره می‌کنم، منظورم Ch است و Cha قدیمیِ مبتنی بر python به‌عنوان “Cha v0” یا “old Cha” نام برده خواهد شد. با این در ذهن

سپاسگزارم

اگر از آغاز سفر Cha را دنبال کرده‌اید، سپاسگزارم. آن پروژه چیزهای زیادی به من یاد داد و مرا به نسخه‌ای سوق داد که بهتر با شیوهٔ واقعی کار من سازگار است و در عین حال برای جامعه به‌طور کلی نیز بهتر است. اگر تازه‌وارد هستید، شروع کنید به استفاده از Ch و ساده نگهش دارید!