Native Rust Zalo Client

Zalo trên desktop.
Nhẹ hơn cho công việc.

ctdozlite là một Zalo desktop client viết bằng Rust, hướng đến hiệu năng gọn nhẹ, khả năng chạy nhiều tài khoản song song và lưu trữ dữ liệu cục bộ.

ctdozlite - Zalo Lite, Native Rust Client Native
Cửa sổ ctdozlite đang mở hội thoại Cloud của tôi với danh sách trò chuyện bên trái
Rust native Multi-account Local SQLite

Ảnh chụp giao diện thật, thông tin cá nhân đã được làm mờ.

Hiệu năng

Ít bộ nhớ hơn. Nhiều không gian làm việc hơn.

Thiết kế theo hướng native với Rust, ctdozlite giảm đáng kể tài nguyên cần thiết cho một phiên Zalo desktop so với bản đóng gói bằng web runtime.

Zalo PC 26.10.11 Đo tại máy, 7 tiến trình
1.950 MB
ctdozlite Đo tại máy, 1 tiến trình
150 MB
150 MB RAM khi đã đăng nhập
7 → 1 Tiến trình trên máy
0,2 giây Từ lúc chạy đến khi có cửa sổ

Cách đo

Đo ngày 31/10/2026
Chỉ số Zalo PC 26.10.11 ctdozlite
RAM khi chờ (Working Set) 1.800 - 1.975 MB 149,5 MB
Số tiến trình 7 1
Thời gian có cửa sổ không đo 0,18 - 0,19 giây
Kích thước tệp chạy 136 MB 17,2 MB

Cách đo: Windows 11, PowerShell Get-Process đọc WorkingSet64, lấy giá trị trung vị sau 15 giây chạy ổn định. Zalo PC đo 4 lần trong 40 giây, ctdozlite đo 3 phiên riêng, mỗi phiên 10 mẫu cách nhau 1 giây.

Điều kiện: cả hai đều đã đăng nhập và để yên, cùng một tài khoản, không mở cuộc gọi. Máy chạy Windows 11, CPU Intel Core i7-12700H, 20 luồng.

Lưu ý: RAM phụ thuộc vào số hội thoại đã tải, số ảnh đã xem và theme. Con số trên là quan sát trên một máy, không phải cam kết cho mọi cấu hình.

Đa tài khoản

Một desktop. Nhiều tài khoản.

Mỗi phiên làm việc có thư mục dữ liệu riêng, giúp bạn tách biệt tài khoản cá nhân, công việc và chăm sóc khách hàng mà không cần máy ảo.

Mỗi cửa sổ ứng dụng một thư mục làm việc độc lập.
Phiên đăng nhập không ghi đè lên nhau.
Chuyển đổi qua lại giữa các tài khoản trong cùng một màn hình.
Xem cách chạy song song
Ba cửa sổ ctdozlite chạy song song, mỗi cửa sổ một tài khoản riêng
Ba phiên chạy cùng lúc, mỗi phiên một thư mục dữ liệu.
Terminal

Vượt ra ngoài cửa sổ desktop.

Chế độ giao diện dòng lệnh hiển thị mã QR ngay trên console. Phù hợp khi làm việc qua SSH hoặc triển khai trên máy chủ không có màn hình.

Terminal TUI SSH VPS
ctdozlite - zsh 80 x 24
$ cargo run --release -- --tui --qr
Compiling ctdozlite v0.1.0
Finished release profile in 42.1s
OK session.json not found, starting QR login
OK server map loaded from getserverinfo
Scan the QR below with the Zalo mobile app
 
  ████████  ████  ████████
  █      █  ██  █      █
  █ ████ █      █ ████ █
  █      █  ████ █      █
  ████████  ██  ████████
 
$
Dữ liệu cục bộ

Dữ liệu của bạn. Quyền kiểm soát của bạn.

Lịch sử tin nhắn được lưu trong tệp SQLite trên máy. Bạn có thể sao lưu, truy vấn hoặc di chuyển dữ liệu bằng bất kỳ công cụ nào hỗ trợ định dạng này.

Định dạng SQLite phổ biến, không phụ thuộc công cụ riêng.
Tệp dữ liệu nằm trong thư mục làm việc của từng tài khoản.
Sao lưu bằng cách sao chép tệp, không cần thao tác đặc biệt.
zalo_history.db messages
msg_id thread noi_dung ts
4821 nhom_ky_thuat Bản build tối nay đã xong chưa? 09:14
4822 nhom_ky_thuat Xong rồi, đang kiểm thử cuối. 09:15
4823 ban_hang Đơn hàng đã được xác nhận. 09:31
4824 ca_nhan Để mình xem lịch đã. 10:02
Tính năng

Nhỏ gọn. Nhưng không thiếu.

Multi-account

Nhiều phiên. Một không gian.

Quản lý song song các tài khoản Zalo với thư mục dữ liệu riêng cho từng phiên.

Một máyNhiều phiên tài khoản
Runtime

Rust native

Kiến trúc native, hướng đến footprint thấp và khởi động nhanh.

RustEdition 2021
Database

SQLite cục bộ

Toàn bộ lịch sử trò chuyện nằm trong một tệp trên máy bạn.

.dbLưu trữ cục bộ
Environment

Từ desktop đến terminal.

Hai giao diện cho hai cách làm việc: cửa sổ đồ họa khi ngồi trước máy, và dòng lệnh khi làm việc từ xa.

GUI TUI SSH
Mã nguồn mở

Xây dựng minh bạch.

ctdozlite được phát triển bằng Rust 2021 và công khai trên GitHub. Bạn có thể đọc toàn bộ phần xử lý giao thức, mã hóa và lưu trữ.

Rust 2021, thư viện mã nguồn mở.
Không có lớp runtime web đóng gói bên trong.
Dành cho người dùng muốn đọc và tự build.
Mở trên GitHub
ctdozlite/
  src/ crate source
    session.rs http client, domains, signing
    login.rs server info, password login
    crypto.rs aes, md5, sign key
    chat.rs threads, messages, polling
    store.rs sqlite history store
    gui.rs desktop interface
    tui.rs terminal interface
  docs/ protocol and usage notes
  Cargo.toml
  README.md

Sẵn sàng thử một cách nhẹ hơn?

Clone dự án, build bằng Cargo và đăng nhập bằng mã QR. Không cần cài thêm runtime nào khác.

cargo run --release -- --gui