Aki Dev Sync Là Gì?

Aki Dev Sync là một ứng dụng native macOS (được xây dựng bằng kiến trúc Rust Core + Tauri v2 + Vue 3) do Lạc Việt Anh phát triển đóng vai trò như một Trạm Điều Khiển Trung Tâm (Central Control Station) thực thụ cho môi trường phát triển phân tán (split development environment). Khác biệt với các công cụ đồng bộ thông thường, ứng dụng này được tinh chỉnh cho một workflow cực kỳ đặc thù: bạn có thể viết code ở cả hai nơi, giữ nguồn sự thật (source of truth) ở local nhưng tự tin đẩy các tác vụ nặng (như build docker, compile, chạy AI agent) lên một máy remote qua kết nối SSH bảo mật, mà không bao giờ làm bẩn lịch sử git chỉ vì thao tác chuyển file qua lại.

Tổng quan giao diện Aki Dev Sync: các thẻ project với cặp panel LOCAL/REMOTE, thanh quota CC/AG cùng hệ thống tag nhận diện CC/AG theo màu, danh sách project với nút PUSH/PULL/SYNC, panel AkiClaudeDoc, git panel lịch sử commit, task manager và event log toàn cục
Tổng quan bảng điều khiển Aki Dev Sync: thẻ project LOCAL/REMOTE với thanh quota và tag CC/AG, đồng bộ PUSH/PULL/SYNC, panel cấu hình AkiClaudeDoc, git panel tích hợp ANSI parser, task manager và event log.

Đây tuyệt đối không phải là một mini-app chạy trên trình duyệt web tĩnh như các công cụ khác trong hệ sinh thái AkiNet. Aki Dev Sync là phần mềm desktop native, chạy ngầm sâu vào hệ điều hành macOS, tải trực tiếp file dmg từ GitHub và được thiết kế để treo 24/7 trên máy tính của bạn.

Mô Hình Local ↔ Remote Hoạt Động Ra Sao?

Aki Dev Sync giữ hai nửa môi trường luôn đồng bộ hoàn hảo ở cấp độ byte, giải quyết bài toán lớn nhất của việc code đa thiết bị. Bạn code trên một máy, đẩy tác vụ sang máy khác, và luân chuyển kết quả về mượt mà không cần phải dính dáng tới các lệnh git commit vô nghĩa trên GitHub.

  • LOCAL - Thường là nguồn sự thật tối thượng: Đây là chiếc laptop hoặc Mac Studio của bạn, nơi lưu giữ lịch sử git đầy đủ. Bạn thực hiện thao tác review, commit, và tinh chỉnh code bằng IDE cá nhân (ví dụ: Antigravity, VSCode Insiders). Dữ liệu ở local luôn được bảo vệ nghiêm ngặt nhất.
  • REMOTE - Trạm xử lý siêu tốc qua SSH: Một server GPU hoặc một cỗ máy mạnh hơn rất nhiều nằm trên cloud hoặc ở góc phòng. Đây là nơi bạn chạy các bản build nặng nề tiêu tốn RAM, giữ phần lõi bảo mật, hoặc sử dụng sức mạnh tính toán của các gói AI đắt đỏ (như Claude MAX) để tự động sinh ra hàng vạn dòng code.
  • Cơ chế PUSH: Đẩy toàn bộ thay đổi từ local lên remote để AI có thể nhìn thấy bức tranh toàn cảnh của project. Mặc định, cấu hình sẽ bao gồm cả thư mục .git/ để AI có thể đọc đầy đủ lịch sử commit. Nếu bạn bỏ .git/ khỏi danh sách PULL, nó sẽ biến thành một push-only path (chỉ cho phép đẩy lên, không bao giờ được phép kéo về, giúp loại bỏ hoàn toàn hiện tượng nút đồng bộ báo sáng liên tục do các file index mtime thay đổi ngầm của git).
  • Cơ chế PULL: Thu thập toàn bộ khối lượng code mà AI vừa miệt mài sinh ra trên remote, tự động đóng gói và chuyển ngược về local để bạn review, kiểm thử và tiến hành commit, khép lại một vòng lặp làm việc hoàn chỉnh.

Sức Mạnh Đồng Bộ Tuyệt Đối (Sync Engine Deep Dive)

Nhóm tính năng đồng bộ (Sync Engine) không chỉ là thao tác đẩy file qua lại đơn thuần, mà là một hệ thống bảo vệ an toàn dữ liệu khổng lồ với hàng loạt thuật toán tinh vi được nhúng bên dưới:

  • PUSH-ONLY PATHS & MTIME TRAP FIX: Rất nhiều công cụ rsync bị dính bẫy mtime (thời gian sửa đổi file) do git liên tục chạy housekeeping (làm mới file .git/index). Aki Dev Sync cung cấp khả năng cấu hình thư mục thành Push-only: file sẽ được đẩy lên remote nhưng không bao giờ kéo về. Nó giúp AI có đủ lịch sử Git để đọc, nhưng ứng dụng sẽ thông minh bỏ qua mọi sự thay đổi nội bộ của thư mục này, triệt tiêu hoàn toàn sự phiền toái của việc nút Sync liên tục báo sáng ảo.
  • SELECT (Push Special) & CONFLICT TABLE: Khi bạn không muốn đồng bộ toàn bộ thư mục, bạn có thể dùng file picker gốc của macOS để chọn từng file lẻ cần gửi. Trước khi rsync tiến hành ghi đè, hệ thống Tauri sẽ đánh chặn và hiển thị một bảng Conflict Table, so sánh chính xác mtime (modified time) giữa local và remote xuống tới từng mili-giây. Bạn sẽ thấy rõ file nào đang mới hơn ở phía bên nào, giúp bạn quyết định an toàn trước khi lỡ tay xóa mất hàng trăm dòng code mà AI vừa vất vả viết ra.
  • MIRROR & DELETE MODE: Chế độ xóa gương bằng cờ --delete của rsync là một con dao hai lưỡi. Ứng dụng này mặc định tắt cờ này cho chiều PUSH, đồng thời tích hợp dialog cảnh báo tự động bật lên nếu bạn chuẩn bị PUSH đè lên một cây thư mục chứa các thay đổi chưa được PULL về từ AI. Sự bảo vệ này gần như tuyệt đối, giúp chống mất dữ liệu ở mức tối đa.
  • DRY RUN & DIRECTORY FILTER: Nút Dry Run cho phép xem trước chính xác những gì rsync sẽ thay đổi (bao nhiêu file thêm, file nào xóa) mà không ghi một byte nào xuống ổ cứng. Bộ lọc của Aki Dev Sync tự động loại bỏ các log thay đổi chỉ-thư-mục (directory-only changes), đảm bảo kết quả hiển thị cho user chỉ chứa các file code thực sự.
  • THUẬT TOÁN BASELINE SNAPSHOT DISAMBIGUATION (Bidirectional Disambiguation): Rsync vốn là một công cụ vô hồn (stateless), nó chỉ so sánh hai thư mục hiện tại mà không biết bạn vừa xóa file X ở máy nào (ví dụ: máy A không có X, máy B có X -> rsync không biết là máy A mới xóa X hay máy B mới tạo thêm X). Aki Dev Sync giải quyết triệt để điểm yếu chí mạng này bằng cách lưu trữ một snapshot (baseline) dưới dạng JSON file sau mỗi lần sync thành công. Nhờ đó, ứng dụng tự suy luận chính xác: file Y biến mất ở local (hiện ở tab Push) hay biến mất ở remote (bỏ qua không đếm), tạo nên sự nhận thức ngữ cảnh hoàn hảo.
  • PRE/POST HOOKS CHUYÊN NGHIỆP: Bạn có thể cấu hình các script shell thực thi ngay trước hoặc sau mỗi lần push/pull. Bạn có thể tự động build container docker, khởi động lại một daemon service, dọn dẹp cache hay bắn thông báo Slack ngay khi rsync hoàn thành, và chúng có thể được thiết lập để chạy ngầm ở local hoặc thông qua SSH trên remote.

Hệ Thống Quản Lý & Giám Sát Quota (Under The Hood)

Bên dưới giao diện đơn giản là sự tinh tế đến từng tiểu tiết của kỹ thuật phần mềm:

  • Giám Sát Quota AI THẬT SỰ (Real Quota Monitoring): Hoàn toàn không dùng bất kỳ thuật toán ước lượng token thô sơ nào.
    • Claude Code & Hybrid Patching: Ứng dụng truy cập trực tiếp qua SSH để đọc cache hook statusLine mà Anthropic CLI sinh ra sau mỗi lượt chat. Ứng dụng hiển thị rõ ràng rate limits cho khung 5 giờ và 7 ngày, hạng gói (tier) và thông tin tổ chức. Đỉnh cao là cơ chế Hybrid Patching kết hợp bash và jq để tự động bắt lỗi HTTP 429; nhờ đó, thanh tiến trình hiển thị của bạn vẫn tồn tại sống động ngay cả khi bạn bị "quota exhaustion" (hết sạch quota), thay vì bị sập giao diện.
    • Antigravity RPC Connect: Để lấy thông số từ Antigravity, ứng dụng tự động chạy lệnh quét lsof Process Table của hệ điều hành, tìm ra đúng cổng (port) cục bộ mà IDE Language Server đang lắng nghe, sau đó gọi trực tiếp một truy vấn HTTP/JSON-RPC (Connect protocol). Truy vấn này đọc usage từ endpoint local của IDE, không cần server quota trung gian. Tính năng Log Out cũng xử lý thông tin xác thực cục bộ của Antigravity.
  • ZERO-JS TEXTAREA CHO GHI CHÚ: Ô ghi chú Project và tiện ích Global Note (cuốn sổ tay lưu xuyên phiên làm việc trên titlebar, tự động debounce lưu file sau mỗi 500ms) có khả năng tự động co giãn chiều cao theo nội dung gõ. Tính năng này được thực hiện hoàn toàn bằng thuộc tính CSS native thế hệ mới (field-sizing: content), không cần dùng ResizeObserver hay event listener JavaScript riêng cho việc resize.
  • SMART OPEN POPUP & LOCKFILE ANALYZER: Trình mở dự án không chỉ cung cấp shortcut. Nó chứa một module phân tích tự động (analyzer) quét các thư mục con và lockfile (pnpm-lock, yarn.lock, bun.lockb, Cargo.toml). Từ đó, hệ thống nhận diện stack công nghệ (Tauri, Node, Nuxt) và sinh ra các lệnh khởi chạy DEV/BUILD chuẩn xác. Khi bấm nút, ứng dụng gọi osascript để spawn một tab hoàn toàn mới trong Terminal gốc của macOS. Hơn nữa, nó tự động kiểm tra xem máy bạn có cài đặt code-insiders hay code hay không, và tự làm mờ các IDE chưa được cài đặt.
  • UNIT-OF-WORK REFRESH CONTROLLER: Đây là một khối kiến trúc nền tảng siêu việt nhằm hợp nhất mọi hành động làm mới trạng thái (timer ngầm, nút bấm thủ công, thao tác lưu config). Trạng thái xoay (spinning/busy) thuộc về bản thân vòng đời tiến trình, chứ không bị trói buộc vào giao diện nút bấm. Điều này đảm bảo ứng dụng không bao giờ nói dối (báo sai trạng thái đang chạy). Hơn nữa, nó sử dụng cờ "generation token" để ngắt lệnh refresh ngầm ngay tức thì khi có yêu cầu mới, mà không bao giờ làm treo hay ảnh hưởng đến bất kỳ lệnh rsync dữ liệu nào đang chạy.
  • NATIVE GIT PANEL VỚI ANSI PARSER: Thay vì bắt bạn bật terminal, ứng dụng có một tab Git riêng. Tab này tích hợp một bộ parser bằng regex phức tạp chạy ngay trên client để phân tích mã màu ANSI escape code ([...m), biến log commit thô cứng thành một giao diện đầy màu sắc y hệt Terminal gốc. Nó bắt buộc cấu hình core.quotepath=false để hỗ trợ hiển thị tên file tiếng Việt hoàn hảo, đồng thời tích hợp sẵn công cụ xem trước Visual Changelog Markdown sử dụng thư viện đồ họa Mermaid JS.
  • UX TỈ MỈ & STATUSLINE CUSTOMIZER: Narrow Mode giữ cửa sổ dùng được ở độ rộng 440px; Preset Stick Top-Left đặt app ở góc trên trái của vùng làm việc; tùy chọn pin cửa sổ cho phép hiển thị app trên các Space của macOS; và đỉnh cao là Statusline Customizer - một giao diện kéo thả HTML5 cho phép dựng cấu hình bash cho Claude Code. Nó hỗ trợ dải màu động 5 bậc (Xanh dương, Xanh lá, Vàng, Cam, Đỏ) thay đổi theo ngưỡng khẩn cấp của quota, hiển thị bản xem trước trực tiếp ngay khi bạn vừa đổi màu. Từ bản v1.26.0, công cụ này hợp nhất việc giám sát cả hai CLI AI lớn (Claude Code và Antigravity) từ một cấu hình duy nhất, thay vì phải cấu hình riêng lẻ từng bên như trước.

Cài Đặt Aki Dev Sync Thế Nào?

  1. Truy cập trang GitHub Releases và tải file .dmg mới nhất. Chọn -arm.dmg nếu bạn dùng máy tính chip Apple Silicon (M1/M2/M3), hoặc -uni.dmg nếu bạn muốn một file chạy được trên cả kiến trúc Intel cũ.
  2. Mở file .dmg và kéo thả icon Aki Dev Sync vào thư mục Applications theo tiêu chuẩn của hệ điều hành.
  3. Bởi vì bản build được chia sẻ miễn phí và chưa được ký (unsigned) qua chứng chỉ trả phí của Apple, ở lần khởi chạy đầu tiên, macOS Gatekeeper sẽ chặn lại với cảnh báo bảo mật. Bạn chỉ cần click chuột phải vào app, chọn Open và xác nhận. Hoặc nếu bạn quen dùng terminal, chỉ cần chạy lệnh xattr -dr com.apple.quarantine /Applications/Aki Dev Sync.app để gỡ cờ kiểm dịch.

Yêu cầu hệ thống: máy của bạn cần có sẵn công cụ rsyncssh đã được thêm vào PATH (điều may mắn là macOS đã cài sẵn cả hai thứ này từ thuở sơ khai), cộng với việc bạn phải sở hữu một host SSH (VPS, Dedicated Server, hay Raspberry Pi) có khả năng kết nối tới được.

Bắt Đầu Dùng Aki Dev Sync

Aki Dev Sync được xây dựng trên một ngăn xếp công nghệ cực kỳ hiện đại: frontend sử dụng Vue 3 + Vite, backend lõi sử dụng Rust biên dịch qua framework Tauri v2, mang lại dung lượng nhỏ gọn và tốc độ chớp nhoáng. Mọi thao tác trao đổi file hoạt động hoàn toàn dựa trên các lệnh rsyncssh gốc, bền bỉ và đáng tin cậy. Bạn có thể xem chi tiết mã nguồn, đọc changelog lịch sử và tham khảo tài liệu kỹ thuật chuyên sâu tại github.com/lacvietanh/aki-dev-sync, hoặc tải bản mới nhất tại trang Releases.