· ai-tools / void-editor / cursor
Void Editor — đánh giá open-source thay thế Cursor
Void đã đóng cửa tháng 6/2026 nhưng trước đó đã chứng minh AI coding ưu tiên quyền riêng tư là khả thi: routing trực tiếp, local model, open-source.
Bởi Ethan
2.488 từ · 13 phút đọc
Void Editor đã chết. GitHub repository bị archive ngày 2 tháng 6, 2026 — team đăng lời tạm biệt ngắn gọn, đặt repo ở chế độ read-only, và ngừng nhận contribution. Nó không bao giờ ra mắt phiên bản stable v1.0.
Đó là tin xấu. Còn đây là lý do nó vẫn đáng bàn: Void là editor duy nhất chứng minh rằng một công cụ AI coding open-source, ưu tiên quyền riêng tư, với routing trực tiếp đến provider thực sự có thể hoạt động. Kiến trúc vững. Tính năng được ship. Concept được kiểm chứng. Và rồi, hai ngày trước khi bài viết này được hoàn thành, nó đóng cửa.
Nếu bạn đang đánh giá Void như một giải pháp thay thế Cursor, câu trả lời bây giờ là: đừng. Dùng Cursor. Nhưng hiểu những gì Void xây dựng — và tại sao nó đưa ra các đánh đổi khác với Cursor — vẫn đáng thời gian của bạn, vì những đánh đổi đó vẫn còn quan trọng và cuộc tranh luận chưa kết thúc.
Bài này dành cho ai
Các lập trình viên quan tâm đến việc code của họ đi đâu khi họ nhờ AI chỉnh sửa. Cụ thể: các team đang bị audit, contractor mà client cấm routing dữ liệu qua SaaS, contributor OSS muốn tự host toolchain, hoặc bất kỳ ai đã đọc một thread reverse-engineering về infrastructure của Cursor và cảm thấy lo ngại.
Nếu không ai trong số đó là bạn, hãy bỏ qua bài này và đọc Cursor vs Claude Code.
Kiến trúc tạo nên sự khác biệt của Void
Mọi AI editor phổ biến — Cursor, Windsurf, GitHub Copilot — đều route LLM request qua backend của chính nó. Tài liệu chính thức của Cursor nêu rõ: “tất cả request đều được route qua server của Cursor để xây dựng prompt cuối cùng” — điều này áp dụng ngay cả khi bạn cung cấp API key của riêng mình. Đó không phải lỗi; đó là cách họ xây dựng shared feature, telemetry, và context caching. Nhưng có nghĩa là code của bạn rời khỏi máy qua một hop mà bạn không kiểm soát.
Void chọn một hướng kiến trúc khác về bản chất. LLM call chạy trực tiếp từ máy bạn đến API endpoint của provider bạn chọn — không có Void relay, không có Void backend, không có gì ở giữa. Call được thực hiện từ Electron main process (không phải renderer) cụ thể để tránh hạn chế CORS và CSP của browser context, đặc biệt quan trọng khi kết nối đến local HTTP provider như Ollama. Code — và vẫn còn — có thể kiểm tra công khai tại github.com/voideditor/void. Không có audit đáng tin nào phủ nhận claim direct-to-provider trong suốt thời gian tồn tại của dự án.
Cursor cung cấp Privacy Mode ở mọi tier — free, Pro, Teams, và Enterprise. Mặc định bật cho thành viên team. Điều Privacy Mode kiểm soát là lưu trữ dữ liệu và model training, không phải routing. Traffic vẫn đi qua server của Cursor trong Privacy Mode; routing không thay đổi. Quyền riêng tư của Void khác về bản chất: không có Void relay nào tồn tại. Direct-to-provider là chế độ duy nhất, cho mọi user, trên Apache-2.0 license miễn phí.
Cài đặt và ấn tượng đầu tiên
Void là một VS Code fork. Nếu bạn đã dùng VS Code, quá trình chuyển đổi không gặp trở ngại: cùng extension marketplace, cùng phím tắt, cùng cấu trúc settings.json. Cài đặt là binary download tiêu chuẩn cho macOS, Windows, và Linux.
Kết nối model diễn ra trong một sidebar panel chuyên dụng. Bạn thêm provider (Anthropic, OpenAI, Ollama, v.v.) với API key hoặc local endpoint URL, rồi chọn model đang hoạt động theo từng context. Trải nghiệm lần đầu thô hơn Cursor — không có guided setup wizard, không có cấu hình mặc định nào hoạt động mà không cần thiết lập thủ công — nhưng sau khi cấu hình xong thì hoạt động đúng như kỳ vọng.
Khả năng tương thích VS Code extension rất cao (Void là fork, không phải plugin), nhưng Void kế thừa những hạn chế extension do Microsoft áp đặt giống như Cursor: Pylance, C# Dev Kit, và ms-vscode.cpptools bị chặn. Lập trình viên Python và C# sẽ gặp ngay vấn đề này.
Tính năng AI
Bộ tính năng của Void khi bị deprecated khá hoàn chỉnh cho một sản phẩm pre-1.0.
Chỉnh sửa inline với Ctrl+K
Chỉnh sửa inline qua Ctrl+K là luồng chỉnh sửa nhanh chính. Bạn chọn code, nhấn phím tắt, gõ lệnh bằng ngôn ngữ tự nhiên, và Void tạo ra một diff. Cài đặt dùng FIM (fill-in-the-middle) prompting và kết nối trực tiếp vào codebase của VS Code — không phải extension API layer. Tính năng này được ship trong v1.0.0 (tháng 1/2025) và là tính năng hoàn thiện nhất trong suốt vòng đời của dự án.
Agent mode
Agent mode ra mắt trong v1.0.2 (tháng 3/2025). Nó cho LLM khả năng đọc và ghi file, chạy lệnh terminal, và tìm kiếm trong codebase. Đây là bộ tối thiểu phù hợp cho một coding agent — đọc context, viết thay đổi, chạy test. Không tinh vi bằng Cursor Composer 2 với parallel execution, nhưng đủ dùng cho các tác vụ agentic đơn luồng. Local OSS model (qua Ollama, vLLM) được hỗ trợ đầy đủ trong agent mode từ v1.2.1 (tháng 4/2025).
Checkpoints (cũng trong v1.2.1) thêm snapshot-and-restore cho agent session — một mạng lưới an toàn trước các thao tác có thể gây mất dữ liệu. Hữu ích, mặc dù cộng đồng báo cáo độ ổn định không đồng đều.
Apply modes: Fast và Slow
Hai chiến lược áp dụng diff:
- Fast Apply: search/replace block diff cho các chỉnh sửa nhỏ, chính xác.
- Slow Apply: viết lại toàn bộ file cho thay đổi lớn hơn hoặc khi model không chắc chắn về target.
Sự phân biệt được thể hiện rõ trong UI và phù hợp với thực tế — Fast Apply cho thay đổi nhỏ, Slow Apply khi model cần xem xét toàn bộ file.
DiffZone
Accept/Reject từng hunk, hiển thị dưới dạng diff đỏ/xanh trong gutter của editor. Tiêu chuẩn cho AI editor hiện đại, được cài đặt gọn gàng. Code định nghĩa đây là component “DiffZone” trong VOID_CODEBASE_GUIDE.md.
Chế độ Chat và Gather
Void tách biệt chat khỏi hành động: Gather mode tập hợp context từ nhiều file mà không thực hiện thay đổi; Chat mode là giao diện hội thoại để suy luận về context đó trước khi hành động. Sự tách biệt này giữ luồng “khám phá codebase” tách rời khỏi luồng “thay đổi codebase” — một lựa chọn thiết kế làm cho công cụ dễ dự đoán hơn trong các tác vụ agentic.
Hỗ trợ MCP
Hỗ trợ Model Context Protocol ra mắt trong v1.4.1 (5 tháng 6, 2025) — cùng bản phát hành thêm Claude 4, Azure OpenAI support, và AI-generated commit message. MCP ngày càng trở thành protocol chuẩn để mở rộng AI coding tool với external context. Tích hợp được trước khi repo bị archive giúp Void có bộ tính năng cuối khá vững.
Độ linh hoạt về model
Đây là nơi Void vượt xa Cursor nhất.
Cloud provider
Tất cả kết nối đều dùng API key của bạn. Void không bao giờ đụng vào traffic.
| Phiên bản | Model được thêm |
|---|---|
| v1.0.0 (Tháng 1/2025) | Anthropic, OpenAI |
| v1.0.2 (Tháng 3/2025) | Claude 3.7, Gemini 2.0 |
| v1.2.1 (Tháng 4/2025) | GPT-4.1, Gemini 2.5 Pro |
| v1.2.4 (Tháng 4/2025) | o3, o4-mini |
| v1.4.1 (Tháng 6/2025) | Claude 4, Azure OpenAI |
Các frontier model được hỗ trợ cuối cùng là Claude 4, GPT-4.1/o3/o4-mini, Gemini 2.5 Pro, Grok 3, DeepSeek, Mistral, và Azure OpenAI — danh sách rộng hơn native model list của Cursor.
Local và self-hosted model
Cursor không hỗ trợ local model. Void có bốn lựa chọn ngay từ đầu:
| Provider | Endpoint mặc định |
|---|---|
| Ollama | http://127.0.0.1:11434 |
| vLLM | http://localhost:8000 |
| LM Studio | http://localhost:1234 |
| Bất kỳ OpenAI-compatible | Do người dùng cấu hình |
Hỗ trợ Ollama không phải là tính năng thêm vào sau — đó là một PR nền tảng (#22) được merge ngày 2 tháng 10, 2024, một ngày sau khi ra mắt early launch. Nếu bạn muốn chạy Llama 3.1 70B cục bộ với Void làm editor frontend, đó là workflow thực sự được hỗ trợ. Không nhanh (bị giới hạn bởi phần cứng local), nhưng hoàn toàn chạy được.
Hạn chế và vấn đề cần lưu ý
Pre-1.0 xuyên suốt: v1.0.0 được gắn nhãn beta. Dự án không bao giờ ra mắt bản phát hành ổn định theo versioning của chính nó. Độ ổn định của autocomplete, độ tin cậy của agent session, và chất lượng Apply diff được cộng đồng báo cáo là không đồng đều trong suốt vòng đời. Nền tảng có tiềm năng; cần thêm iteration mà nó không bao giờ có được.
Không có benchmark hiệu năng: Không có so sánh độc lập về latency hay acceptance rate giữa Void và Cursor trong các nguồn chính. Lợi thế về quyền riêng tư của kiến trúc có thể kiểm chứng được. Khoảng cách về chất lượng — agent mode của Void có tệ hơn đáng kể, tương đương, hay so sánh được với Cursor ở các tác vụ cụ thể — thì không. Ai nói khác với bạn là đang suy đoán.
Đã đóng băng: Không có bản vá bảo mật. Không có cập nhật model cho các model phát hành sau giữa năm 2025. Không sửa lỗi. Codebase sẽ dần mất tương thích với API khi provider thực hiện breaking change.
Khoảng trống extension: Lập trình viên Python (Pylance), C#, và C/C++ gặp phải hạn chế extension do Microsoft áp đặt giống như người dùng Cursor. VS Code fork, cùng giới hạn.
Void thắng ở đâu, Cursor thắng ở đâu
| Tiêu chí | Void | Cursor |
|---|---|---|
| Quyền riêng tư | Direct-to-provider; open-source, có thể kiểm tra | Route qua AWS ngay cả khi dùng API key riêng |
| Chi phí | Miễn phí (chỉ trả tiền API) | $20–40/tháng |
| Local model | Ollama, vLLM, LM Studio | Không có |
| Open source | Apache-2.0 | Proprietary |
| Phát triển tích cực | Deprecated tháng 6/2026 | Đang phát triển |
| Chất lượng tab autocomplete | Không đồng đều | Tốt nhất hiện tại |
| Mức độ hoàn thiện agent mode | Dùng được; còn nhiều góc thô | Composer 2; production-grade |
| Độ ổn định | Pre-1.0; beta xuyên suốt | Production-grade |
| Hệ sinh thái extension | Gần tương đương VS Code | Gần tương đương VS Code |
Phù hợp với từng đối tượng (đánh giá theo lịch sử)
Với việc deprecated, đây là các phân loại “ai nên dùng Void” — vẫn hữu ích vì vấn đề của từng đối tượng chưa biến mất.
Hobby / contributor OSS: Void là lựa chọn phù hợp. Miễn phí, open-source, kết nối API key của bạn, chạy local model. Nếu bạn đang thử nghiệm AI coding với ngân sách hạn chế và $20/tháng của Cursor có vẻ quá nhiều trước khi biết mình có gắn bó không, Void đáng thử.
Enterprise với yêu cầu privacy/compliance: Void là lựa chọn thực tế duy nhất trong các IDE-based tool. Kiến trúc direct-to-provider và codebase open-source làm cho nó có thể audit được theo cách Cursor không thể. Đối tượng đó vẫn còn tồn tại. Void không còn là câu trả lời khả thi cho họ nữa.
Power user tìm kiếm chất lượng AI tối đa: Cursor là lựa chọn tốt hơn khi Void còn sống, và vẫn là lựa chọn tốt hơn bây giờ. Độ ổn định agent của Void kém hơn Cursor Composer, và thiếu dedicated autocomplete model là một khoảng trống thực sự khi dùng hàng ngày. Đánh giá Cursor 2026 của chúng tôi trình bày chi tiết hiện tại.
Kết luận
Void đã thắng trong lập luận mà nó cố gắng chứng minh. Các công cụ AI coding open-source, direct-to-provider là hoàn toàn có thể xây dựng được. Hỗ trợ local model trong IDE-native editor là khả thi. Quyền riêng tư không nhất thiết phải là tính năng của gói trả phí. Proof of concept đã hoạt động.
Dự án cũng cho thấy độ khó trong triển khai: xây dựng và duy trì một VS Code fork đầy đủ với các tính năng AI cạnh tranh so với đối thủ closed-source được tài trợ tốt là việc rất khó. Team không thể duy trì được.
Nếu bạn muốn AI coding ưu tiên quyền riêng tư ngay hôm nay: không có giải pháp thay thế hoàn hảo. GitHub repo của Void ghi chú là “một trong những tham khảo tốt nhất khi fork VS Code” — gợi ý rằng community fork có thể xuất hiện. Hãy theo dõi network graph của repo đã archive để tìm các fork đang có động lực. Chưa có gì nổi bật.
Nếu bạn muốn một AI editor production-grade ngay hôm nay: Cursor là chuẩn mực. Nó route qua AWS, tốn $20/tháng, và câu chuyện privacy của nó đòi hỏi tin tưởng vào một hệ thống closed-source. Nó cũng hoàn thiện hơn đáng kể, được phát triển tích cực, và có tab autocomplete tốt hơn bất cứ thứ gì khác trên thị trường. Việc Void deprecated thực sự làm cho đề xuất này đơn giản hơn, không khó hơn: Void là lập luận tốt nhất cho một con đường khác, và con đường đó giờ đã không còn được duy trì.
Để host local model trên GPU cloud (Ollama/vLLM trên A100 thuê), Runpod và Modal là các lựa chọn thực tế — GPU inference trên cloud mà không cần chạy phần cứng cục bộ.
Tham khảo
- Void Editor GitHub (đã archive) — Apache-2.0, read-only từ ngày 2 tháng 6, 2026
- Void Changelog — timeline tính năng theo từng phiên bản
- VOID_CODEBASE_GUIDE.md — DiffZone, Apply modes
- deepwiki: Void getting started — local endpoint URL, xác nhận kiến trúc
- Cursor: Bring your own API key — xác nhận mọi request đều route qua server của Cursor ngay cả khi dùng key riêng
- Cursor: Security & Privacy — “Privacy Mode có sẵn cho mọi người (free hoặc Pro) và được bật mặc định cho thành viên team”
- Speedscale: Peeking under the hood of Cursor — phân tích API call
- HN: Void Editor (thread 1)
- HN: Void Editor (thread 2)
- InfoQ: Void IDE beta release