MiMo-Code là gì? Tìm hiểu agent lập trình từ Xiaomi
MiMo-Code là terminal coding agent mã nguồn mở từ Xiaomi, fork từ OpenCode. Xem đánh giá benchmark thực tế và cách cấu hình CLI để thay thế Claude Code trong dự án.
MiMo-Code là gì?
MiMo-Code là một tác nhân lập trình trên terminal được xây dựng bởi đội ngũ MiMo của Xiaomi và được phát hành dưới dạng mã nguồn mở vào ngày 15 tháng 6 năm 2026 theo giấy phép MIT. Nó chạy dưới dạng công cụ CLI (giao diện dòng lệnh) trong shell của bạn. Nó đọc và chỉnh sửa các tệp trong dự án, chạy các lệnh shell, điều khiển git và ghi chú về codebase giữa các phiên làm việc.
Cách thức hoạt động của nó tương tự như Claude Code. Bạn mô tả một tác vụ bằng ngôn ngữ tự nhiên, tác nhân sẽ đề xuất các chỉnh sửa và lệnh, sau đó bạn phê duyệt chúng. Có hai điểm khác biệt quan trọng. Mã nguồn được mở, vì vậy bạn có thể đọc chính xác những gì tác nhân gửi đến model. Và model là một lựa chọn tách biệt với tác nhân, nên cùng một bộ khung này có thể trỏ đến các model của Xiaomi, một endpoint tương thích với OpenAI hoặc một model do chính bạn host.
Repository này có tên là MiMo-Code và lệnh mà nó cài đặt là mimo. Cả hai tên đều xuất hiện trong tài liệu, vì vậy việc tìm kiếm bất kỳ tên nào cũng sẽ dẫn đến cùng một công cụ.
Nguồn gốc của MiMo-Code và lý do tại sao điều đó quan trọng
MiMo-Code là một bản fork của OpenCode, một terminal agent mã nguồn mở từ dự án sst. Tệp LICENSE vẫn giữ nguyên dòng Copyright (c) 2025 opencode gốc, và tệp README có một phần ngắn giải thích về mối quan hệ này. Hiện có một issue đang mở trên repository yêu cầu Xiaomi ghi nhận công lao của các cộng tác viên OpenCode đầy đủ hơn thay vì chỉ giữ lại một dòng giấy phép.
Hiểu được điều này sẽ giải thích cho một vấn đề mà nếu không biết sẽ thấy vô lý. Một dự án được phát hành lần đầu vào tháng 6 năm 2026 mà đã có sẵn một TUI (giao diện người dùng văn bản) hoàn thiện, hệ thống plugin, lớp trừu tượng provider kết nối với nhiều model API, hỗ trợ MCP (model context protocol) và tích hợp LSP (language server protocol). Khối lượng công việc đó không thể hoàn thành trong sáu tuần. Nó đã có sẵn từ bản fork. Những gì mới từ Xiaomi là lớp bộ nhớ (memory layer) và sự kết nối với các model riêng của Xiaomi.
Nếu bạn đã từng chạy OpenCode trên một VPS, bố cục và các phím tắt sẽ rất quen thuộc, vì bên dưới nó vẫn là cùng một mã nguồn.
Ý nghĩa thực sự của cụm từ "các model và agent cùng tiến hóa"
Khẩu hiệu của kho lưu trữ là "Nơi các Model và Agent Cùng Tiến hóa". Cụm từ này chứa hai khẳng định riêng biệt, và chỉ một trong số đó được hỗ trợ bởi các chi tiết đã công bố.
Khẳng định đầu tiên là về thời gian chạy (runtime) và nó đã được ghi lại. MiMo-Code duy trì một kho lưu trữ bộ nhớ bền vững cho mỗi dự án, được hỗ trợ bởi tính năng tìm kiếm toàn văn bản của SQLite, cùng với trạng thái phiên làm việc và tiến độ tác vụ. Hai lệnh slash điều khiển nó. /dream trích xuất kiến thức bền vững từ các phiên gần đây và ghi vào bộ nhớ dự án. /distill biến một quy trình lặp đi lặp lại thành một kỹ năng có thể tái sử dụng. Bài viết kỹ thuật của chính Xiaomi cho biết các quy trình này chạy theo chu kỳ khoảng một đến bốn tuần thay vì sau mỗi phiên. Do đó, hành vi của agent trên kho lưu trữ của bạn thay đổi theo thời gian trong khi file model vẫn giữ nguyên.
Khẳng định thứ hai là về huấn luyện, và đây là điểm bạn cần thận trọng. Xiaomi mô tả quá trình hậu huấn luyện của MiMo-V2.5 là một quy trình ba giai đoạn: tinh chỉnh có giám sát (supervised fine-tuning), sau đó là học tăng cường (RL) cho agent quy mô lớn, và cuối cùng là chưng cất on-policy từ nhiều model giáo viên chuyên biệt vào một model học viên. Agentic RL có nghĩa là model được huấn luyện trên các tập lệnh gọi công cụ nhiều bước thay vì các cặp câu hỏi-trả lời đơn lẻ. Điều đó là có thật, và đó là lý do tại sao model duy trì được tính nhất quán trong các chuỗi công cụ dài. Điều mà Xiaomi chưa công bố là báo cáo huấn luyện cho thấy model được tối ưu hóa bên trong bộ khung (harness) cụ thể này, với việc bộ khung thay đổi để phản hồi lại.
Vì vậy, hãy hiểu "cùng tiến hóa" như một tuyên bố về mục tiêu từ một đội ngũ sở hữu cả hai nửa. Lợi ích mà bạn thực sự có thể quan sát được thì hẹp hơn nhưng vẫn có giá trị: cùng một nhóm người viết các lược đồ công cụ (tool schemas), viết system prompt và phát hành model, vì vậy chúng khớp với nhau. Claude Code không thể hoạt động theo cách đó, vì bộ khung của nó là một client của một model API cố định. Anthropic cũng huấn luyện các model của họ cho mục đích sử dụng agent, nhưng bạn không thể thay thế model bên dưới bộ khung đó.
Một phiên làm việc MiMo-Code trông như thế nào trong terminal
Chạy mimo sẽ mở ra giao diện terminal toàn màn hình. Bạn nhập tác vụ, agent sẽ đọc các file, đề xuất thay đổi và hỏi ý kiến trước khi ghi hoặc chạy bất kỳ lệnh nào. Ngoài chế độ build mặc định, nó còn cung cấp chế độ plan và chế độ compose, cùng với hệ thống subagent giúp chuyển một phần công việc cho một agent riêng biệt thực hiện. Nó cũng đi kèm với một bộ kỹ năng tích hợp sẵn, đây là các quy trình được đóng gói mà agent có thể gọi theo tên.
Có một vài chi tiết cần lưu ý trước khi bạn bắt đầu.
- Theo mặc định, mỗi hành động đều cần phê duyệt. Flag
--dangerously-skip-permissionssẽ loại bỏ các prompt này. Tên của nó phản ánh chính xác chức năng, vì vậy chỉ sử dụng khi sai sót không gây ra hậu quả gì. - Nó có thể chạy mà không cần terminal tương tác.
mimo runnhận một prompt và thực thi không tương tác, đây là điều cần thiết cho script hoặc CI job. Giao diện web cũng được tích hợp sẵn. - Cấu hình nằm trong các file mà bạn có thể commit. Một dự án sẽ đọc
.mimocode/mimocode.jsonc, và các cài đặt toàn cục nằm trong~/.config/mimocode/mimocode.jsonc. - Thông tin xác thực không nằm trong các file đó. Chúng được lưu trong
~/.local/share/mimocode/auth.json, vì vậy hãy giữ đường dẫn đó tránh xa git và bất kỳ bản sao lưu nào mà bạn chia sẻ.
Một agent có khả năng chạy các lệnh shell là một chương trình mà bạn đã trao quyền điều khiển shell của mình cho nó. Hãy cấp cho nó một máy riêng và một user riêng. Cách an toàn nhất để thử nghiệm một agent mới là một máy ảo dùng một lần mà bạn có thể hủy sau phiên làm việc, vì khi đó một lệnh sai chỉ khiến bạn mất công xây dựng lại thay vì phải khôi phục dữ liệu.
MiMo-Code có thực sự vượt trội hơn Claude Code không?
Tài liệu ra mắt của Xiaomi đưa ra một khẳng định cụ thể: chạy cùng một model trên cả hai môi trường thực thi và MiMo-Code đạt điểm cao hơn. Đây là các số liệu đã được công bố.
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
}
]Trên SWE-bench Pro, Xiaomi báo cáo 62 phần trăm cho MiMo-Code so với 57 phần trăm cho Claude Code. Trên Terminal Bench 2, các con số lần lượt là 73 phần trăm và 68 phần trăm. Cách đặt vấn đề ở đây là model được giữ nguyên, vì vậy khoảng cách khoảng năm điểm đến từ hệ thống agent chứ không phải từ model.
Hãy coi đó là các con số từ nhà cung cấp. Xiaomi đã tự thực hiện đánh giá và công bố kết quả, đồng thời MiMo-Code không xuất hiện trên các bảng xếp hạng công khai của SWE-bench hay Terminal-Bench, nên chưa có bên độc lập nào tái hiện được khoảng cách này. Xiaomi khá thẳng thắn về giới hạn của kết quả do chính họ thực hiện. Tài liệu của công ty cho biết các benchmark này đo lường khả năng giải quyết vấn đề một lần (one-shot) trên các issue của một repository đơn lẻ, và trong quá trình thử nghiệm của họ, hai agent này có hiệu suất tương đương nhau ở mức dưới khoảng 200 bước thực thi. Lợi thế được tuyên bố chỉ xuất hiện trong các phiên chạy dài, trường hợp mà một benchmark one-shot không bao phủ hết.
Đó là cách hiểu trung thực. Khoảng cách năm điểm trên một benchmark do nhà cung cấp tự chạy là lý do để bạn dùng thử công cụ này. Đó không phải là lý do để chuyển đổi công việc mà đội ngũ của bạn đang phụ thuộc vào.
Chi phí vận hành MiMo-Code
Khi ra mắt, Xiaomi phát hành một kênh miễn phí tên là MiMo Auto, có thể sử dụng mà không cần đăng ký. Ngay từ đầu, kênh này đã được mô tả là có thời hạn, và ghi chú phát hành cho phiên bản 0.1.9 vào ngày 24 tháng 7 năm 2026 đã đề cập đến việc ngừng cung cấp bản dùng thử MiMo-V2.5 miễn phí đó. Đừng xây dựng quy trình làm việc dựa trên nó.
Quyền truy cập trả phí vào nền tảng của Xiaomi rẻ hơn so với các nhà cung cấp tiên phong. Tính đến tháng 8 năm 2026, giá quốc tế được công bố cho MiMo-V2.5-Pro là 1,00 USD cho mỗi triệu input token khi xảy ra cache miss và 3,00 USD cho mỗi triệu output token, với ngữ cảnh lên tới 256K. Giá cả có thể thay đổi, vì vậy hãy đọc trang hiện tại trước khi bạn lập ngân sách.
Lựa chọn khác là sử dụng phần cứng của riêng bạn. Các trọng số (weights) cho MiMo-V2.5 và MiMo-V2.5-Pro được công bố trên Hugging Face theo giấy phép MIT, vì vậy không có gì ngăn cản bạn tự phục vụ chúng. Hãy thực tế về quy mô. Một mô hình với cửa sổ ngữ cảnh một triệu token không phải là công việc dành cho một VPS thông thường, và bạn cần cân nhắc đến một VPS có gắn GPU hoặc một máy chủ chuyên dụng. Các mô hình cục bộ nhỏ hơn là một bài tập khác, gần giống với việc chạy Ollama trên VPS để tự host một LLM.
MiMo-Code cũng kết nối với các nhà cung cấp khác. Nó có thể di chuyển thông tin đăng nhập Claude Code hiện có, kết nối tài khoản OpenAI, chấp nhận API key cho một nhà cung cấp khác hoặc giao tiếp với bất kỳ endpoint nào tương thích với OpenAI. Hãy kiểm tra các điều khoản của gói đăng ký người dùng trước khi bạn kết nối, vì điều khoản của nhà cung cấp quyết định những client nào được phép sử dụng gói đăng ký, và CLI từ một nhà cung cấp khác không phải lúc nào cũng được hỗ trợ.
Bạn có nên chuyển khỏi Claude Code?
Nếu bạn đã trả phí cho Claude Code và nó vẫn hoạt động tốt, thì không. Phiên bản 0.1.9 vào cuối tháng 7 năm 2026, sáu tuần sau bản phát hành đầu tiên, là một tín hiệu trung thực. Số phiên bản 0.1.x đồng nghĩa với việc sẽ có những thay đổi gây lỗi (breaking changes) giữa các bản phát hành và định dạng cấu hình vẫn đang thay đổi. Điều này hoàn toàn ổn với một công cụ bạn đang đánh giá, nhưng sẽ gây khó khăn cho một công cụ mà cả nhóm đang phụ thuộc vào.
MiMo-Code xứng đáng được cân nhắc nghiêm túc trong bốn tình huống sau:
- Hóa đơn là vấn đề của bạn. Giá token của Xiaomi thấp hơn nhiều so với các nhà cung cấp tiên phong, và bản thân agent này hoàn toàn miễn phí.
- Bạn cần đọc mã nguồn của hệ thống (harness). Mã nguồn mở nghĩa là bạn có thể kiểm tra các prompt và định nghĩa công cụ, điều này rất quan trọng cho việc đánh giá bảo mật hoặc kiểm toán.
- Bạn muốn agent và model là các khoản mua riêng biệt, để việc thay đổi cái này không bắt buộc phải thay đổi cái kia.
- Mã nguồn không được phép rời khỏi mạng của bạn. Các trọng số mở (open weights) giúp việc tự host backend trở nên khả thi thay vì phải đàm phán.
Cursor và Copilot là một sự so sánh khác. Cả hai đều nằm trong trình soạn thảo, còn MiMo-Code nằm trong terminal. Sự khác biệt đó định hình ngày làm việc của bạn nhiều hơn bất kỳ điểm số benchmark nào, và bài so sánh Claude Code với Cursor, Codex và Copilot sẽ đề cập chi tiết về sự đánh đổi này.
Chạy MiMo-Code trên VPS bạn đang thuê
Một terminal agent cần nằm trên server. Nó duy trì phiên làm việc trong nhiều giờ, cần mạng ổn định và phải hoạt động ngay cả khi bạn gập laptop. Mô hình làm việc này giống với các terminal agent khác: một phiên làm việc dài hạn trên một server nhỏ mà bạn có thể kết nối lại từ bất kỳ đâu, được mô tả tại chạy coding agent trong tmux trên VPS.
Hãy cấp cho nó một user không có quyền root và trỏ nó vào một bản clone của repository thay vì bản sao duy nhất của bạn. Phạm vi hoạt động của nó bị giới hạn bởi tài khoản mà nó chạy, đây là chốt chặn kiểm soát duy nhất vẫn hoạt động khi một prompt gặp lỗi.
Dự án này được phân phối theo hai cách: trình cài đặt shell qua HTTPS và một npm package tên là @mimo-ai/cli cho bất kỳ máy nào đã cài sẵn Node.js. Trên server mà bạn quan tâm, hãy ưu tiên dùng npm package. Bạn có thể kiểm tra nội dung gói trước khi chạy và không phải pipe trực tiếp một script từ xa vào shell. Để có cái nhìn tổng quan về những thứ khác nên cài đặt trên server đó, tổng hợp các AI agent tự lưu trữ là bản đồ dành cho bạn.
FAQ
MiMo-Code có miễn phí không?
Agent này miễn phí và là mã nguồn mở theo giấy phép MIT, vì vậy bạn có thể đọc và sửa đổi nó. Mô hình đứng sau nó mới là phần tốn phí. Xiaomi đã phát hành một kênh miễn phí trong thời gian giới hạn có tên là MiMo Auto khi ra mắt, và các ghi chú phát hành từ ngày 24 tháng 7 năm 2026 cho biết thời gian dùng thử đó đã kết thúc, vì vậy hãy lên kế hoạch cho việc trả phí. Tính đến tháng 8 năm 2026, giá quốc tế được công bố cho MiMo-V2.5-Pro là 1.00 USD cho mỗi triệu input token khi xảy ra cache miss và 3.00 USD cho mỗi triệu output token. Bạn cũng có thể trỏ MiMo-Code tới bất kỳ endpoint nào tương thích với OpenAI và trả phí cho một nhà cung cấp khác.
MiMo-Code có giống với OpenCode không?
Nó bắt đầu như một bản fork của OpenCode và vẫn chia sẻ phần lõi của nó. Giao diện terminal, hệ thống plugin, cơ chế trừu tượng hóa nhà cung cấp và tích hợp MCP đều đến từ codebase đó, và dòng bản quyền của OpenCode vẫn được giữ nguyên trong tệp LICENSE của kho lưu trữ. Xiaomi đã thêm một lớp bộ nhớ bền vững được hỗ trợ bởi tìm kiếm toàn văn bản SQLite, các chế độ agent bổ sung và quyền truy cập trực tiếp vào các mô hình của riêng họ. Nếu bạn biết OpenCode, bạn đã biết hầu hết cách thức hoạt động của MiMo-Code.
Tôi có thể sử dụng MiMo-Code với các mô hình Claude hoặc GPT thay vì của Xiaomi không?
Có. Thiết lập lần đầu cung cấp tùy chọn di chuyển thông tin đăng nhập Claude Code hiện có, kết nối tài khoản OpenAI hoặc chấp nhận API key cho một nhà cung cấp khác, và bạn có thể tự cấu hình bất kỳ endpoint nào tương thích với OpenAI trong ~/.config/mimocode/mimocode.jsonc. Hãy kiểm tra các điều khoản của gói đăng ký người dùng trước khi kết nối, vì điều khoản của nhà cung cấp sẽ kiểm soát những client nào được phép sử dụng gói đăng ký đó.
Chạy MiMo-Code trên máy chính của tôi có an toàn không?
Hãy coi nó như bất kỳ agent nào có khả năng chạy các lệnh shell. Theo mặc định, nó yêu cầu phê duyệt trước mỗi hành động, và --dangerously-skip-permissions sẽ tắt các prompt đó, đây là cách mà hầu hết các sự cố xảy ra. Hãy chạy nó dưới quyền một người dùng không có đặc quyền (unprivileged user), trên một bản clone của kho lưu trữ, và tốt nhất là trên một máy mà bạn có thể xóa và cài đặt lại. Phạm vi ảnh hưởng của nó là tài khoản mà nó đang chạy, vì vậy hãy giới hạn quyền của tài khoản đó.