AI & AUTOMATION

NanoClaw: AI Agent cá nhân chạy trong container, nhỏ gọn và bảo mật

NanoClaw là một AI assistant mã nguồn mở, được thiết kế để chạy các agent thông minh bên trong container Linux độc lập. Thay vì giao phó quyền kiểm soát cho một framework khổng lồ hàng trăm nghìn dòng code, NanoClaw đặt sự minh bạch, bảo mật cấp hệ điều hành và khả năng tùy biến hoàn toàn lên hàng đầu, tất cả trong một codebase nhỏ đủ để bất kỳ ai cũng có thể đọc và hiểu.

NanoClaw là gì

NanoClaw là một AI agent cá nhân chạy trên nền tảng Claude Agent SDK, sử dụng Docker (macOS/Linux) hoặc Apple Container (macOS) để cô lập mỗi phiên làm việc của agent. Toàn bộ hệ thống được xây dựng trên một tiến trình Node.js duy nhất với khoảng 3.900 dòng code phân bổ trên 15 tệp nguồn, giúp người dùng có thể đọc, hiểu và kiểm toán toàn bộ phần mềm chỉ trong một buổi làm việc ngắn.

Dự án được phát triển như một giải pháp thay thế nhẹ nhàng hơn cho OpenClaw, một trong những nền tảng AI agent phổ biến nhưng có kiến trúc phức tạp với hơn 434.000 dòng code, 70 dependencies và bảo mật chỉ ở tầng ứng dụng, không phải ở tầng hệ điều hành.

So sánh NanoClaw và OpenClaw

Tiêu chíNanoClawOpenClaw
Số tệp nguồn153.680
Dòng code~3.900434.453
Dependencies< 1070+
Tệp cấu hình053
Mô hình bảo mậtContainer OS-levelApplication-level
Thời gian đọc hiểu~8 phút~12 tuần

Tại sao nên sử dụng NanoClaw

Khi sử dụng một AI assistant có quyền truy cập vào file hệ thống, lịch làm việc, email hay tin nhắn của bạn, câu hỏi đặt ra không chỉ là “nó có hoạt động không” mà còn là “tôi có thực sự hiểu nó đang làm gì không”. NanoClaw được xây dựng dựa trên triết lý này.

Bảo mật cấp hệ điều hành thay vì tầng ứng dụng

Mỗi agent chạy trong một container Linux riêng biệt với filesystem isolation hoàn chỉnh. Agent chỉ có thể thấy các thư mục được mount một cách tường minh, không có quyền truy cập ngầm vào hệ thống máy chủ. Ngay cả khi bạn cấp quyền chạy lệnh Bash, lệnh đó cũng thực thi bên trong container, không phải trên máy tính thật của bạn.

Codebase đủ nhỏ để hiểu hoàn toàn

Với chỉ 15 tệp nguồn và gần 3.900 dòng code, toàn bộ logic của NanoClaw nằm trong tầm kiểm soát của một lập trình viên cá nhân. Không có microservice ẩn, không có dependency mờ ám, không có hành vi khó đoán trước. Bạn có thể đọc từ đầu đến cuối và biết chính xác phần mềm đang làm gì.

Thiết kế dành cho cá nhân, không phải doanh nghiệp

NanoClaw không phải là một framework đa năng cố gắng đáp ứng mọi nhu cầu. Đây là phần mềm được tạo ra để fork, tùy chỉnh và biến thành công cụ phù hợp chính xác với nhu cầu của từng người dùng. Thay vì thêm tính năng vào codebase gốc, người dùng được khuyến khích sử dụng “skills”, các chỉ dẫn cho Claude Code để tự động biến đổi cài đặt của riêng họ.

Các tính năng chính của NanoClaw

Hỗ trợ nhiều kênh nhắn tin

NanoClaw hỗ trợ nhắn tin qua WhatsApp (mặc định), Telegram, Discord, Slack và Signal. Người dùng có thể giao tiếp với AI agent trực tiếp từ điện thoại qua các ứng dụng quen thuộc mà không cần cài thêm client riêng.

Phân lập hoàn toàn theo nhóm

Mỗi nhóm chat có bộ nhớ riêng (CLAUDE.md), filesystem riêng biệt và chạy trong container sandbox độc lập. Dữ liệu giữa các nhóm hoàn toàn cách ly nhau, đảm bảo thông tin của nhóm này không bao giờ rò rỉ sang nhóm khác.

Agent Swarms

NanoClaw là AI assistant cá nhân đầu tiên hỗ trợ Agent Swarms, cho phép khởi chạy một nhóm các agent chuyên biệt cùng cộng tác để xử lý các tác vụ phức tạp, từ nghiên cứu thị trường đến tổng hợp dữ liệu từ nhiều nguồn song song.

Tác vụ theo lịch

Người dùng có thể thiết lập các tác vụ định kỳ: tóm tắt tin tức AI mỗi sáng thứ Hai, đánh giá lịch sử commit mỗi cuối tuần, hoặc gửi báo cáo pipeline bán hàng vào đầu mỗi ngày làm việc. Agent sẽ tự động thực thi và gửi kết quả về kênh nhắn tin của bạn.

Truy cập web

Agent có khả năng tìm kiếm, truy xuất và tổng hợp nội dung từ Internet, phục vụ các tác vụ nghiên cứu và thu thập thông tin hoàn toàn tự động.

Hệ thống skills

Thay vì nhồi nhét tính năng vào codebase, NanoClaw sử dụng hệ thống “skills”. Đây là các tệp hướng dẫn cho Claude Code biết cách biến đổi cài đặt của bạn theo yêu cầu. Ví dụ, chạy /add-telegram sẽ tự động cài đặt và cấu hình kênh Telegram mà không làm phình to codebase gốc.

Thiết lập theo kiểu AI-Native

Không có wizard cài đặt, không có file cấu hình phức tạp cần chỉnh tay. Claude Code dẫn dắt toàn bộ quá trình: kiểm tra dependencies, xác thực tài khoản, thiết lập container và khởi động các dịch vụ nền một cách tự động.

Hướng dẫn cài đặt NanoClaw

Yêu cầu hệ thống

Trước khi bắt đầu, hãy đảm bảo máy của bạn đáp ứng đầy đủ các yêu cầu sau:

  • Hệ điều hành: macOS hoặc Linux
  • Node.js 20 trở lên
  • Claude Code (tải tại claude.ai/download)
  • Docker Desktop (macOS/Linux) hoặc Apple Container (chỉ macOS)

Bước 1: Clone repository

Mở terminal và chạy các lệnh sau:

git clone https://github.com/qwibitai/nanoclaw.git
cd nanoclaw

Bước 2: Khởi động Claude Code

Trong thư mục dự án, khởi động Claude Code bằng lệnh:

claude

Bước 3: Chạy lệnh setup

Sau khi Claude Code đã khởi động, chạy lệnh setup tích hợp sẵn:

/setup

Claude Code sẽ tự động xử lý toàn bộ quá trình còn lại theo thứ tự:

  • Kiểm tra và cài đặt các dependencies còn thiếu
  • Xác thực kênh nhắn tin (WhatsApp, Telegram và các kênh khác tùy chọn)
  • Thiết lập Docker hoặc Apple Container tùy theo nền tảng của bạn
  • Cấu hình và khởi động các dịch vụ nền

Không cần chỉnh sửa bất kỳ file cấu hình nào thủ công. Nếu phát sinh lỗi trong quá trình cài đặt, Claude sẽ tự động chẩn đoán và cố gắng sửa ngay tại chỗ.

Bước 4: Chuyển sang Apple Container (chỉ macOS)

Nếu bạn đang dùng macOS và muốn runtime nhẹ hơn, tối ưu cho Apple Silicon, bạn có thể chuyển sang Apple Container sau khi cài đặt xong:

/convert-to-apple-container

Hướng dẫn sử dụng NanoClaw

Cách giao tiếp với agent

Sau khi cài đặt hoàn tất, bạn có thể nhắn tin với agent bằng cách sử dụng trigger word mặc định @Andy trong bất kỳ cuộc trò chuyện nào được kết nối:

@Andy gửi tổng quan pipeline bán hàng vào mỗi sáng ngày làm việc lúc 9 giờ
@Andy xem lại lịch sử git trong tuần qua vào mỗi thứ Sáu và cập nhật README nếu có thay đổi
@Andy mỗi thứ Hai lúc 8 giờ sáng, tổng hợp tin tức AI từ Hacker News và TechCrunch rồi gửi bản tóm tắt cho tôi

Quản lý nhóm và tác vụ từ kênh chính

Từ kênh chat cá nhân (self-chat của chính bạn), bạn có thể quản lý toàn bộ hệ thống:

@Andy liệt kê tất cả tác vụ theo lịch trong tất cả các nhóm
@Andy tạm dừng tác vụ tóm tắt thứ Hai
@Andy tham gia nhóm Family Chat

Tùy biến NanoClaw theo nhu cầu

NanoClaw không dùng file cấu hình. Mọi thay đổi hành vi đều thực hiện bằng cách mô tả yêu cầu trực tiếp với Claude Code trong terminal:

"Đổi trigger word thành @Bob"
"Trong tương lai hãy nhớ trả lời ngắn gọn và trực tiếp hơn"
"Thêm lời chào tùy chỉnh khi tôi nói good morning"
"Lưu tóm tắt cuộc trò chuyện mỗi tuần một lần"

Hoặc bạn có thể chạy /customize để được hướng dẫn từng bước theo lựa chọn có sẵn.

Mở rộng tính năng với skills

Hệ thống skills cho phép mở rộng NanoClaw mà không làm phình to codebase. Để thêm hỗ trợ Gmail, chạy lệnh sau trong Claude Code:

/add-gmail

Claude Code sẽ đọc tệp skill tương ứng và tự động thực hiện mọi thay đổi cần thiết trong codebase của bạn. Kết quả là một cài đặt sạch, chỉ chứa đúng những gì bạn thực sự cần.

Kiến trúc hệ thống

Để hiểu rõ hơn cách NanoClaw hoạt động bên trong, đây là sơ đồ luồng xử lý cơ bản:

Tin nhắn đến (WhatsApp / Telegram)
    --> SQLite (lưu trữ và lọc trùng lặp)
    --> Group Queue (hàng đợi FIFO theo nhóm)
    --> Container (Claude Agent SDK)
    --> Phản hồi (stream trả về)

Toàn bộ hệ thống vận hành trên một tiến trình Node.js duy nhất. Không có microservice, không có message broker. Các tệp nguồn chính và vai trò của chúng bao gồm:

Tệp nguồnChức năng
src/index.tsVòng lặp điều phối chính, xử lý tin nhắn, gọi agent
src/container-runner.tsKhởi tạo container với filesystem isolation, stream output
src/group-queue.tsHàng đợi FIFO theo nhóm với giới hạn đồng thời và retry backoff
src/ipc.tsXử lý IPC request từ container với kiểm tra phân quyền
src/db.tsThao tác SQLite: tin nhắn, nhóm, phiên, tác vụ
src/task-scheduler.tsChạy tác vụ theo lịch (cron, interval, one-shot)
src/router.tsĐịnh tuyến và gửi phản hồi ra ngoài
groups/*/CLAUDE.mdBộ nhớ riêng biệt của từng nhóm

Mặc định, NanoClaw cho phép tối đa 3 container chạy đồng thời. Mỗi nhóm có hàng đợi FIFO riêng với cơ chế retry tự động dùng exponential backoff khi container gặp lỗi.

Các câu hỏi thường gặp

NanoClaw có bảo mật không?

Bảo mật là nguyên tắc thiết kế cốt lõi của dự án. Mỗi phiên agent chạy trong một container Linux riêng biệt với filesystem, IPC namespace và process space độc lập. Agent chỉ có thể truy cập thư mục được mount tường minh, không có quyền truy cập ngầm vào hệ thống máy chủ. Ngoài ra, với codebase chỉ khoảng 3.900 dòng, bạn có thể tự kiểm toán toàn bộ phần mềm một cách thực tế. Chi tiết đầy đủ về mô hình bảo mật có tại docs/SECURITY.md trong repository.

Có thể chạy NanoClaw trên Linux không?

Có. Docker là container runtime mặc định và hoạt động tốt trên cả macOS lẫn Linux. Chỉ cần clone repository và chạy /setup, Claude Code sẽ xử lý phần còn lại và tự nhận diện nền tảng của bạn.

Làm thế nào để xử lý lỗi khi cài đặt?

NanoClaw sử dụng quy trình debug theo kiểu AI-native. Nếu gặp vấn đề, hãy chạy claude rồi chạy /debug. Claude sẽ phân tích log, xác định nguyên nhân và đề xuất giải pháp cụ thể. Nếu vấn đề có thể ảnh hưởng đến nhiều người dùng khác, bạn có thể mở Pull Request để cập nhật tệp SKILL.md của bước setup.

Tại sao không có file cấu hình?

Triết lý của dự án là tránh tình trạng “configuration sprawl”, tức là cấu hình phân tán rải rác khắp nơi. Mỗi người dùng nên tùy chỉnh NanoClaw để code làm đúng những gì họ muốn, thay vì cấu hình một hệ thống chung cồng kềnh. Nếu bạn thực sự muốn có file cấu hình, chỉ cần mô tả điều đó với Claude Code và nó sẽ tạo cho bạn.

Thay đổi nào sẽ được chấp nhận vào codebase gốc?

Theo chính sách đóng góp của dự án, chỉ có ba loại thay đổi được chấp nhận vào nhánh chính: vá bảo mật, sửa lỗicải tiến rõ ràng. Mọi tính năng mới, hỗ trợ nền tảng mới hay tích hợp thêm đều phải đóng góp dưới dạng skill. Điều này giữ cho hệ thống cơ sở luôn tối giản và không ảnh hưởng đến người dùng không cần tính năng đó.


NanoClaw đại diện cho một xu hướng đang ngày càng rõ nét trong cộng đồng AI: phần mềm nhỏ, minh bạch và bảo mật thực sự thay vì che giấu rủi ro sau các tầng ứng dụng. Với kiến trúc một tiến trình, container isolation cấp hệ điều hành và codebase chỉ 3.900 dòng, đây là một trong những cách thực tế nhất để vận hành AI agent cá nhân mà không cần đặt niềm tin mù quáng vào bất kỳ phần mềm nào bạn không thể tự kiểm chứng.

Nếu bạn là lập trình viên, nhà nghiên cứu hoặc người dùng kỹ thuật muốn có một AI assistant mà mình thực sự sở hữu và kiểm soát hoàn toàn, NanoClaw xứng đáng để bạn dành ra vài phút clone về và thử nghiệm.

Duy Nghiện
Hãy làm khán giả, đừng làm nhân vật chính :)

You may also like

Nhận thông báo qua email
Nhận thông báo cho
guest

0 Bình luận
Mới nhất
Cũ nhất Nhiều like nhất
Phản hồi nội tuyến
Xem tất cả bình luận