SSD Nodes Learn 🎉 VPS از $4.99/ماه
راهنماها Matt Connorتوسط Matt Connor · به‌روزرسانی شده 2026-08-07

MiMo-Code چیست؟ بررسی ایجنت برنامه‌نویسی جدید شیائومی

ابزار MiMo-Code یک ایجنت متن‌باز برای ترمینال است که از OpenCode انشعاب یافته. پیش از جایگزینی آن با Claude Code، بنچمارک‌ها و نحوه اتصال به مدل‌های محلی را بررسی کنید.

MiMo-Code چیست؟

MiMo-Code یک ایجنت برنامه‌نویسی ترمینالی است که توسط تیم MiMo شیائومی ساخته شده و در تاریخ 15 ژوئن 2026 تحت مجوز MIT به‌صورت متن‌باز منتشر شده است. این ابزار به‌عنوان یک ابزار CLI (رابط خط فرمان) در شل شما اجرا می‌شود. این ابزار فایل‌های موجود در یک پروژه را می‌خواند و ویرایش می‌کند، دستورات شل را اجرا می‌کند، git را مدیریت می‌کند و یادداشت‌هایی دربارهٔ codebase بین نشست‌های مختلف نگه می‌دارد.

ساختار آن مشابه Claude Code است. شما یک وظیفه را با زبان ساده توصیف می‌کنید، ایجنت ویرایش‌ها و دستورات را پیشنهاد می‌دهد و شما آن‌ها را تأیید می‌کنید. دو تفاوت مهم وجود دارد. سورس‌کد باز است، بنابراین می‌توانید دقیقاً بخوانید که ایجنت چه چیزی را برای مدل ارسال می‌کند. و مدل، انتخابی جدا از ایجنت است؛ بنابراین همین ابزار می‌تواند به مدل‌های شیائومی، یک endpoint سازگار با OpenAI یا مدلی که خودتان میزبانی می‌کنید، متصل شود.

نام مخزن MiMo-Code و دستوری که نصب می‌کند mimo است. هر دو نام در مستندات آمده‌اند، بنابراین جستجوی هر کدام، همان ابزار را پیدا می‌کند.

منشأ MiMo-Code و اهمیت آن

پروژه MiMo-Code یک انشعاب (fork) از OpenCode است؛ یک ایجنت ترمینال متن‌باز که از پروژه sst نشأت گرفته است. فایل LICENSE همچنان شامل خط Copyright (c) 2025 opencode اصلی است و فایل README نیز بخش کوتاهی درباره این رابطه دارد. یک issue باز در مخزن (repository) وجود دارد که از Xiaomi می‌خواهد اعتبار مشارکت‌کنندگان OpenCode را فراتر از حفظ یک خط در لایسنس، به‌طور کامل‌تری به رسمیت بشناسد.

دانستن این موضوع، نکته‌ای را که در غیر این صورت غیرممکن به نظر می‌رسید، توضیح می‌دهد. پروژه‌ای که اولین بار در ژوئن 2026 منتشر شد، از همان ابتدا دارای یک TUI (رابط کاربری متنی) صیقل‌خورده، سیستم پلاگین، انتزاع ارائه‌دهنده (provider abstraction) برای ارتباط با APIهای مدل‌های مختلف، پشتیبانی از MCP (پروتکل کانتکست مدل) و یکپارچگی با LSP (پروتکل سرور زبان) است. این حجم از کار در 6 هفته انجام نشده است؛ بلکه همراه با این انشعاب به پروژه اضافه شده است. آنچه از سوی Xiaomi جدید محسوب می‌شود، لایه حافظه و اتصال آن به مدل‌های اختصاصی خود Xiaomi است.

اگر قبلاً OpenCode را روی یک VPS اجرا کرده باشید، چیدمان و میانبرهای کیبورد برایتان آشنا خواهد بود، زیرا کدهای زیرساختی هر دو پروژه یکسان هستند.

معنای واقعی «مدل‌ها و عامل‌ها هم‌تکامل می‌یابند»

شعار این مخزن «جایی که مدل‌ها و عامل‌ها هم‌تکامل می‌یابند» است. این عبارت شامل دو ادعای مجزا است که تنها یکی از آن‌ها با جزئیات منتشرشده پشتیبانی می‌شود.

ادعای اول مربوط به زمان اجرا (runtime) است و مستند شده است. MiMo-Code یک حافظهٔ پایدار برای هر پروژه نگه می‌دارد که توسط جستجوی تمام‌متن SQLite پشتیبانی می‌شود و در کنار وضعیت نشست (session state) و پیشرفت وظایف قرار دارد. دو دستور slash آن را هدایت می‌کنند. /dream دانش ماندگار را از نشست‌های اخیر استخراج کرده و در حافظهٔ پروژه می‌نویسد. /distill یک رویهٔ تکراری را به یک مهارت قابل‌استفاده مجدد تبدیل می‌کند. گزارش مهندسی خود Xiaomi بیان می‌کند که این فرآیندها به جای هر نشست، در چرخه‌های تقریباً یک تا چهار هفته‌ای اجرا می‌شوند. بنابراین رفتار عامل روی مخزن شما در طول زمان تغییر می‌کند، در حالی که فایل مدل ثابت باقی می‌ماند.

ادعای دوم مربوط به آموزش است و در اینجا باید محتاط باشید. Xiaomi پس‌آموزش MiMo-V2.5 را به عنوان یک خط لولهٔ سه مرحله‌ای توصیف می‌کند: تنظیم دقیق نظارت‌شده (supervised fine-tuning)، سپس یادگیری تقویتی عامل‌محور (agentic RL) در مقیاس بزرگ، و در نهایت تقطیر on-policy از چندین مدل معلم متخصص به یک مدل دانش‌آموز. یادگیری تقویتی عامل‌محور به این معناست که مدل به جای جفت‌های پرسش و پاسخ تکی، روی اپیزودهای چندمرحله‌ای فراخوانی ابزار آموزش دیده است. این موضوع واقعی است و دلیل پایداری مدل در طول توالی‌های طولانی ابزارها همین است. آنچه Xiaomi منتشر نکرده، گزارش آموزشی است که نشان دهد مدل در داخل این چارچوب خاص بهینه‌سازی شده و چارچوب نیز در پاسخ به آن تغییر کرده است.

بنابراین «هم‌تکامل» را به عنوان بیانی از قصد تیمی بخوانید که مالک هر دو بخش است. مزیتی که واقعاً می‌توانید مشاهده کنید محدودتر است اما همچنان ارزش دارد: همان افرادی که طرح‌واره‌های ابزار و system prompt را می‌نویسند، مدل را نیز عرضه می‌کنند، بنابراین آن‌ها با یکدیگر سازگار هستند. Claude Code نمی‌تواند به این شکل کار کند، زیرا چارچوب آن کلاینت یک API مدل ثابت است. Anthropic نیز مدل‌های خود را برای استفادهٔ عامل‌محور آموزش می‌دهد، اما شما نمی‌توانید مدل را از زیر چارچوب آن جایگزین کنید.

نمای یک نشست MiMo-Code در ترمینال

اجرای mimo یک رابط ترمینال تمام‌صفحه را باز می‌کند. شما یک وظیفه را تایپ می‌کنید، عامل (agent) فایل‌ها را می‌خواند، تغییری پیشنهاد می‌دهد و پیش از نوشتن یا اجرای هر چیزی، از شما تأیید می‌گیرد. فراتر از حالت پیش‌فرض build، این ابزار دارای حالت‌های plan و compose است، به‌علاوه یک سیستم subagent که بخشی از کار را به یک اجرای عامل مجزا می‌سپارد. این ابزار همچنین مجموعه‌ای بزرگ از مهارت‌های داخلی (built-in skills) دارد که رویه‌هایی از پیش بسته‌بندی‌شده هستند و عامل می‌تواند آن‌ها را با نام فراخوانی کند. یک مهارت همچنین می‌تواند نحوهٔ کارکرد عامل را تغییر دهد، نه فقط آنچه می‌داند؛ این همان ایده‌ای است که پشت Ponytail، مهارتی که عامل را به کوچک‌ترین تغییرِ کارآمد محدود می‌کند قرار دارد.

پیش از شروع، دانستن چند جزئیات مفید است:

  • تأییدیه به‌صورت پیش‌فرض برای هر عملیات الزامی است. فلگ --dangerously-skip-permissions این پرسش‌ها را حذف می‌کند. نام این فلگ دقیق است، بنابراین تنها زمانی از آن استفاده کنید که اشتباه در آن، هزینه‌ای نداشته باشد.
  • این ابزار بدون ترمینال تعاملی نیز اجرا می‌شود. mimo run یک دستور (prompt) می‌گیرد و آن را به‌صورت غیرتعاملی اجرا می‌کند؛ این همان چیزی است که یک اسکریپت یا job در CI به آن نیاز دارد. یک رابط وب نیز در آن گنجانده شده است.
  • پیکربندی در فایل‌هایی قرار دارد که می‌توانید آن‌ها را commit کنید. هر پروژه فایل .mimocode/mimocode.jsonc را می‌خواند و تنظیمات سراسری در ~/.config/mimocode/mimocode.jsonc قرار دارند.
  • اعتبارنامه‌ها (credentials) در آن فایل‌ها قرار نمی‌گیرند. آن‌ها در ~/.local/share/mimocode/auth.json ذخیره می‌شوند، بنابراین این مسیر را از git و هر نسخهٔ پشتیبانی که به اشتراک می‌گذارید، دور نگه دارید.

عاملی که می‌تواند دستورات shell را اجرا کند، برنامه‌ای است که شما دسترسی shell خود را به آن داده‌اید. برای آن یک ماشین مجزا و یک کاربر اختصاصی در نظر بگیرید. امن‌ترین راه برای امتحان کردن یک عامل جدید، یک VM یک‌بارمصرف است که می‌توانید پس از پایان نشست آن را نابود کنید، زیرا در این صورت یک دستور مخرب، به‌جای نیاز به restore، تنها هزینهٔ یک rebuild را برای شما خواهد داشت.

آیا MiMo-Code واقعاً از Claude Code بهتر عمل می‌کند؟

مواد تبلیغاتی شیائومی ادعای مشخصی دارند: اگر یک مدل یکسان را در هر دو محیط اجرا کنید، MiMo-Code امتیاز بالاتری کسب می‌کند. این‌ها ارقام منتشرشده هستند.

ChartXiaomi's self-reported harness comparison, same model in both agents
The data behind this chart
[
  {
    "tool": "MiMo-Code",
    "swe_bench_pro_pct": 62,
    "terminal_bench_2_pct": 73
  },
  {
    "tool": "Claude Code",
    "swe_bench_pro_pct": 57,
    "terminal_bench_2_pct": 68
  }
]

در بنچمارک SWE-bench Pro، شیائومی گزارش می‌دهد که MiMo-Code به امتیاز 62 درصد دست یافته، در حالی که امتیاز Claude Code برابر با 57 درصد است. در Terminal Bench 2، این ارقام به ترتیب 73 درصد و 68 درصد هستند. چارچوب این ادعا بر این است که چون مدل ثابت نگه داشته شده، اختلاف حدوداً پنج درصدی ناشی از سیستم عامل (agent system) است و نه خودِ مدل.

این ارقام را به عنوان اعداد ارائه‌شده توسط فروشنده در نظر بگیرید. شیائومی خود این ارزیابی را انجام داده و منتشر کرده است؛ از آنجا که MiMo-Code در جدول‌های رده‌بندی عمومی SWE-bench یا Terminal-Bench دیده نمی‌شود، هیچ نهاد مستقلی این اختلاف را بازتولید نکرده است. شیائومی در مورد محدودیت‌های نتایج خود به‌طور غیرمعمولی صریح است. در گزارش این شرکت آمده است که این بنچمارک‌ها حل مسئله در یک مرحله (one-shot) روی مشکلات یک مخزن (repository) واحد را اندازه‌گیری می‌کنند و در آزمایش‌های داخلی آن‌ها، عملکرد هر دو عامل در زیر حدود 200 گام اجرایی تقریباً یکسان بوده است. برتری ادعاشده در اجراهای طولانی‌مدت ظاهر می‌شود، موردی که بنچمارک‌های یک‌مرحله‌ای آن را پوشش نمی‌دهند.

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

هزینه‌های اجرای MiMo-Code

در زمان عرضه، Xiaomi یک کانال رایگان به نام MiMo Auto ارائه کرد که بدون نیاز به ثبت‌نام قابل استفاده بود. این سرویس از همان ابتدا به عنوان یک قابلیت محدود در زمان توصیف شده بود و یادداشت‌های انتشار نسخه 0.1.9 در تاریخ 24 ژوئیه 2026 به پایان دوره آزمایشی MiMo-V2.5 رایگان اشاره دارند. گردش کار خود را بر پایه این سرویس بنا نکنید.

دسترسی پولی به پلتفرم Xiaomi در مقایسه با ارائه‌دهندگان پیشرو ارزان است. تا اوت 2026، قیمت بین‌المللی اعلام‌شده برای MiMo-V2.5-Pro برابر با 1.00 دلار به ازای هر میلیون توکن ورودی در صورت cache miss و 3.00 دلار به ازای هر میلیون توکن خروجی برای کانتکست تا 256K است. قیمت‌ها تغییر می‌کنند، بنابراین پیش از برنامه‌ریزی بودجه، صفحه جاری را مطالعه کنید.

مسیر دیگر، استفاده از سخت‌افزار شخصی است. وزن‌های (weights) مدل‌های MiMo-V2.5 و MiMo-V2.5-Pro تحت مجوز MIT در Hugging Face منتشر شده‌اند، بنابراین هیچ مانعی برای میزبانی شخصی آن‌ها وجود ندارد. در مورد مقیاس واقع‌بین باشید. مدلی با پنجره کانتکست یک میلیون توکنی، کاری برای یک VPS معمولی نیست و شما به یک VPS مجهز به GPU یا یک ماشین اختصاصی نیاز دارید. مدل‌های محلی کوچک‌تر، بحث متفاوتی هستند و به اجرای Ollama روی یک VPS برای میزبانی شخصی یک LLM نزدیک‌ترند.

MiMo-Code همچنین به سایر فروشندگان متصل می‌شود. این ابزار می‌تواند ورود (login) فعلی Claude Code را منتقل کند، به یک حساب OpenAI متصل شود، یک API key برای ارائه‌دهنده‌ای دیگر بپذیرد یا با هر endpoint سازگار با OpenAI ارتباط برقرار کند. پیش از اتصال، شرایط اشتراک کاربری خود را بررسی کنید، زیرا شرایط ارائه‌دهنده تعیین می‌کند که کدام کلاینت‌ها مجاز به استفاده از طرح اشتراک هستند و یک CLI از فروشنده‌ای دیگر همیشه تحت پوشش نیست.

آیا باید Claude Code را کنار بگذارید؟

اگر در حال حاضر هزینه Claude Code را پرداخت می‌کنید و برایتان کار می‌کند، خیر. نسخه 0.1.9 در اواخر ژوئیه 2026، یعنی شش هفته پس از اولین انتشار، یک نشانه صادقانه است. شماره نسخه 0.1.x به معنای تغییرات ساختارشکن (breaking changes) بین نسخه‌ها و فرمت پیکربندی است که هنوز در حال تغییر است. این وضعیت برای ابزاری که در حال ارزیابی آن هستید مناسب است، اما برای ابزاری که یک تیم به آن وابسته است، دردسرساز خواهد بود.

در چهار موقعیت زیر، MiMo-Code ارزش بررسی جدی را دارد:

  • هزینه صورت‌حساب برای شما مسئله است. قیمت توکن‌های Xiaomi بسیار پایین‌تر از فروشندگان پیشرو (frontier vendors) است و خودِ عامل (agent) نیز هزینه‌ای ندارد.
  • نیاز دارید که ساختار ابزار (harness) را بخوانید. متن‌باز بودن به این معناست که می‌توانید پرامپت‌ها و تعریف‌های ابزار را بررسی کنید، که این موضوع برای بررسی امنیتی یا حسابرسی اهمیت دارد.
  • می‌خواهید عامل و مدل، خریدهای جداگانه‌ای باشند تا تغییر یکی، شما را مجبور به تغییر دیگری نکند.
  • کد نباید شبکه شما را ترک کند. وزن‌های باز (open weights)، امکان استفاده از یک backend خود-میزبانی‌شده (self-hosted) را فراهم می‌کنند و دیگر نیازی به مذاکره نیست.

Cursor و Copilot مقایسه متفاوتی هستند. هر دو در داخل یک ویرایشگر زندگی می‌کنند، در حالی که MiMo-Code در ترمینال اجرا می‌شود. این تفاوت، بخش بیشتری از روز کاری شما را نسبت به هر امتیاز بنچمارکی شکل می‌دهد و مقایسه Claude Code با Cursor، Codex و Copilot این بده‌بستان را به‌طور مفصل پوشش می‌دهد.

اجرای MiMo-Code روی VPS اجاره‌ای

یک ایجنت ترمینال باید روی سرور مستقر باشد. این ایجنت نیاز دارد که نشست (session) خود را برای ساعت‌ها باز نگه دارد، به شبکه پایدار متکی است و باید پس از بستن درب لپ‌تاپ همچنان به کار خود ادامه دهد. الگوی کاری همان روشی است که برای سایر ایجنت‌های ترمینال استفاده می‌شود: یک نشست طولانی‌مدت روی یک سرور کوچک که می‌توانید از هر کجا به آن متصل شوید؛ این موضوع در اجرای یک ایجنت برنامه‌نویسی در tmux روی VPS توضیح داده شده است.

برای آن یک کاربر اختصاصی و بدون دسترسی‌های ویژه (unprivileged) ایجاد کنید و آن را به جای نسخه اصلی، به یک clone از مخزن (repository) هدایت کنید. دامنه دسترسی این ایجنت محدود به همان کاربری است که با آن اجرا می‌شود؛ این تنها کنترل امنیتی است که در صورت بروز خطا در پرامپت، همچنان کار می‌کند.

این پروژه به دو روش توزیع می‌شود: یک نصب‌کننده shell که از طریق HTTPS ارائه می‌شود، و یک پکیج npm با نام @mimo-ai/cli برای هر ماشینی که Node.js روی آن نصب است. روی سروری که برایتان اهمیت دارد، استفاده از پکیج npm را ترجیح دهید. شما می‌توانید پیش از اجرای پکیج، محتویات آن را بررسی کنید و دیگر نیازی نیست یک اسکریپت از راه دور را مستقیماً به shell پایپ (pipe) کنید. برای درک کلی از اینکه چه چیزهای دیگری ارزش نصب روی آن سرور را دارند، مجموعه ایجنت‌های AI خودمیزبان نقشه راه شماست.

FAQ

آیا MiMo-Code رایگان است؟

این ایجنت رایگان و متن‌باز است و تحت مجوز MIT ارائه می‌شود، بنابراین می‌توانید آن را مطالعه و اصلاح کنید. بخشی که هزینه دارد، مدل پشت آن است. شیائومی در زمان عرضه، یک کانال رایگان با محدودیت زمانی به نام MiMo Auto ارائه کرد و یادداشت‌های انتشار مورخ 24 July 2026 به پایان این دوره آزمایشی اشاره دارند، پس برای دسترسی پولی برنامه‌ریزی کنید. از August 2026، قیمت بین‌المللی اعلام‌شده برای MiMo-V2.5-Pro برابر با 1.00 دلار به ازای هر یک میلیون توکن ورودی در صورت cache miss و 3.00 دلار به ازای هر یک میلیون توکن خروجی است. شما همچنین می‌توانید MiMo-Code را به هر endpoint سازگار با OpenAI متصل کنید و به جای آن به یک تأمین‌کننده دیگر هزینه بپردازید.

آیا MiMo-Code همان OpenCode است؟

این پروژه در ابتدا به عنوان یک fork از OpenCode آغاز شد و هنوز هسته مشترکی با آن دارد. رابط ترمینال، سیستم پلاگین، انتزاع تأمین‌کننده و یکپارچه‌سازی MCP همگی از آن codebase گرفته شده‌اند و خط کپی‌رایت OpenCode در فایل LICENSE مخزن حفظ شده است. شیائومی یک لایه حافظه پایدار مبتنی بر جستجوی تمام‌متن SQLite، حالت‌های ایجنت اضافی و دسترسی مستقیم به مدل‌های اختصاصی خود را به آن افزوده است. اگر با OpenCode آشنا هستید، از قبل نحوه عملکرد اکثر بخش‌های MiMo-Code را می‌دانید.

آیا می‌توانم به جای مدل‌های شیائومی از مدل‌های Claude یا GPT با MiMo-Code استفاده کنم؟

بله. تنظیمات اولیه (first-run setup) امکان انتقال لاگین موجود Claude Code، اتصال یک حساب OpenAI یا پذیرش API key برای یک تأمین‌کننده دیگر را فراهم می‌کند و شما می‌توانید هر endpoint سازگار با OpenAI را به‌صورت دستی در ~/.config/mimocode/mimocode.jsonc پیکربندی کنید. پیش از اتصال، شرایط اشتراک مصرف‌کننده را بررسی کنید، زیرا شرایط تأمین‌کننده تعیین می‌کند که کدام کلاینت‌ها مجاز به استفاده از یک طرح اشتراکی هستند.

آیا اجرای MiMo-Code روی سیستم اصلی من ایمن است؟

با آن مانند هر ایجنت دیگری که می‌تواند دستورات shell را اجرا کند، رفتار کنید. این برنامه به‌صورت پیش‌فرض پیش از هر اقدام درخواست تأیید می‌کند و --dangerously-skip-permissions این درخواست‌ها را غیرفعال می‌کند که عامل اصلی اکثر حوادث است. آن را به عنوان یک کاربر بدون امتیاز (unprivileged) اختصاصی، روی یک clone از مخزن و ترجیحاً روی ماشینی که می‌توانید آن را تخریب و بازسازی کنید، اجرا کنید. شعاع انفجار (blast radius) آن محدود به حسابی است که با آن اجرا می‌شود، بنابراین دسترسی‌های آن حساب را محدود نگه دارید.