NanoClaw là trợ lý AI cá nhân tự host, chạy mỗi agent trong container bảo mật riêng. Bạn nói chuyện với nó qua WhatsApp hoặc Telegram — và nó có thể tìm kiếm web, chạy code, quản lý file, lên lịch tác vụ, và nhiều hơn nữa.
Bài hướng dẫn này đưa bạn qua tất cả mọi thứ từ đầu: cài đặt trên macOS, WSL Windows, hoặc máy ảo Proxmox Linux — rồi hướng dẫn workflow thực tế cho 4 vai trò khác nhau.
NanoClaw Là Gì?
NanoClaw không phải chatbot thông thường. Đây là một AI agent — nghĩa là nó thực hiện hành động, không chỉ trả lời câu hỏi.
graph LR
subgraph Ban["Bạn"]
WA[WhatsApp]
TG[Telegram]
end
subgraph Host["Máy Tính Của Bạn"]
NC[NanoClaw<br/>Node.js process]
DB[(SQLite)]
end
subgraph Container["Container Cô Lập"]
AG[Claude Agent SDK]
T1[Tìm kiếm Web]
T2[Đọc/Ghi File]
T3[Lệnh Bash]
T4[Trình duyệt]
T5[Lên lịch]
end
WA --> NC
TG --> NC
NC --> DB
NC --> AG
AG --> T1
AG --> T2
AG --> T3
AG --> T4
AG --> T5
AG --> NC
NC --> WA
NC --> TG
classDef ban fill:#1e40af,stroke:#1d4ed8,color:#fff
classDef host fill:#15803d,stroke:#166534,color:#fff
classDef container fill:#7c3aed,stroke:#6d28d9,color:#fff
class WA,TG ban
class NC,DB host
class AG,T1,T2,T3,T4,T5 containerSo sánh với chatbot thông thường:
| Tính năng | Chatbot | NanoClaw Agent |
|---|---|---|
| Bộ nhớ | Reset mỗi phiên | Lưu lâu dài theo group |
| Hành động | Chỉ text | Web, file, code, API |
| Lên lịch | Không có | Tác vụ lặp lại |
| Bảo mật | Cấp ứng dụng | Container cô lập |
| Tùy chỉnh | Chỉ config | Sửa code, toàn quyền |
Chuẩn Bị Trước Khi Cài
Bạn cần 4 thứ này trước khi bắt đầu:
1. Claude API Key Truy cập console.anthropic.com → Tạo API key. Cần tài khoản Anthropic trả phí (hoặc dùng credit dùng thử miễn phí).
2. Claude Code Claude Code là công cụ CLI giúp setup và chạy NanoClaw.
npm install -g @anthropic-ai/claude-code
Rồi đăng nhập:
claude login
3. Tài khoản GitHub Bạn sẽ fork repo NanoClaw về. Tạo tài khoản miễn phí tại github.com nếu chưa có.
4. Container Runtime
- macOS: Docker Desktop hoặc Apple Container (chỉ Apple Silicon)
- Windows WSL: Docker Desktop for Windows
- Linux/Proxmox: Docker
Cài Đặt Theo Nền Tảng
macOS (Apple Silicon / Intel)
# 1. Cài Homebrew (trình quản lý gói macOS)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 2. Cài Node.js 20+
brew install node@20
echo 'export PATH="/opt/homebrew/opt/node@20/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
# 3. Cài GitHub CLI
brew install gh
gh auth login
# 4. Cài Docker Desktop
brew install --cask docker
# Mở app Docker Desktop và chờ nó khởi động
# 5. Kiểm tra
node --version # phải hiện v20.x.x trở lên
docker --version # phải hiện Docker version 24+
claude --version # phải phản hồi sau khi login
Mẹo cho Apple Silicon: Sau khi setup xong, bạn có thể chuyển sang Apple Container (nhẹ hơn, nhanh hơn, chạy native): Trong
claude, chạy skill/convert-to-apple-container
Windows (WSL2)
WSL2 (Windows Subsystem for Linux) cho phép chạy Linux đầy đủ bên trong Windows. Đây là con đường khuyến nghị cho người dùng Windows.
# Bước 1: Mở PowerShell với quyền Administrator và bật WSL2
wsl --install
# Khởi động lại máy khi được yêu cầu
# Bước 2: Cài Ubuntu từ Microsoft Store (tìm "Ubuntu 22.04")
# Mở terminal Ubuntu và cập nhật:
sudo apt update && sudo apt upgrade -y
# Bước 3: Cài Node.js 20 trong Ubuntu
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
# Bước 4: Cài GitHub CLI trong Ubuntu
type -p curl >/dev/null || (sudo apt update && sudo apt install curl -y)
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update && sudo apt install gh -y
gh auth login
# Bước 5: Cài Docker Desktop cho Windows
# Tải tại: https://www.docker.com/products/docker-desktop/
# Bật "WSL 2 backend" trong cài đặt Docker Desktop
# Docker Desktop > Settings > Resources > WSL Integration > bật distro Ubuntu
# Bước 6: Cài Claude Code trong Ubuntu
npm install -g @anthropic-ai/claude-code
claude login
# Kiểm tra
node --version && docker --version && claude --version
Proxmox / Máy Chủ Linux
Proxmox là hypervisor máy chủ. Bạn tạo máy ảo Linux trên đó, rồi cài NanoClaw bên trong máy ảo đó.
# Trong Proxmox: tạo VM mới
# - OS: Ubuntu 22.04 LTS (tải ISO từ ubuntu.com)
# - CPU: tối thiểu 2 cores
# - RAM: tối thiểu 2GB (khuyến nghị 4GB)
# - Disk: tối thiểu 20GB
# SSH vào VM:
# Bước 1: Cập nhật hệ thống
sudo apt update && sudo apt upgrade -y
# Bước 2: Cài Node.js 20
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs git curl
# Bước 3: Cài Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker
# Bước 4: Cài GitHub CLI
sudo apt install gh -y
gh auth login
# Bước 5: Cài Claude Code
npm install -g @anthropic-ai/claude-code
claude login
# Kiểm tra
node --version && docker --version && claude --version
Cài Đặt NanoClaw
Sau khi nền tảng đã sẵn sàng, quá trình cài NanoClaw mất khoảng 10 phút.
flowchart TD
A[Fork NanoClaw trên GitHub] --> B[Clone về máy tính]
B --> C[Mở Claude Code: chạy 'claude']
C --> D[Chạy skill /setup]
D --> E[Claude cài dependencies tự động]
E --> F[Claude setup Docker container]
F --> G[Claude cấu hình service]
G --> H[Thêm kênh: WhatsApp hoặc Telegram]
H --> I[Gửi tin nhắn đầu tiên!]
classDef buoc fill:#1e40af,stroke:#1d4ed8,color:#fff
classDef xong fill:#15803d,stroke:#166534,color:#fff
class A,B,C,D,E,F,G,H buoc
class I xongBước 1: Fork repository
Vào github.com/qwibitai/nanoclaw và nhấn nút Fork (góc phải trên). Thao tác này tạo bản sao của bạn.
Bước 2: Clone và mở
# Dùng GitHub CLI (khuyến nghị):
gh repo fork qwibitai/nanoclaw --clone
cd nanoclaw
claude
# Không dùng GitHub CLI:
git clone https://github.com/TEN-GITHUB-CUA-BAN/nanoclaw.git
cd nanoclaw
claude
Bước 3: Chạy /setup
Bạn đang ở trong Claude Code. Gõ:
/setup
Claude sẽ tự động:
- Cài tất cả npm dependencies
- Tạo file
.envvới Anthropic API key của bạn - Build Docker container image
- Cấu hình service (launchd trên macOS, systemd trên Linux)
- Khởi động NanoClaw chạy nền
Nếu Claude hỏi bạn trong quá trình setup, chỉ cần trả lời bằng tiếng Anh hoặc tiếng Việt thông thường. Nó xử lý mọi thứ.
Thêm Kênh Nhắn Tin
Sau khi setup, bạn cần kết nối kênh nhắn tin để nói chuyện với NanoClaw.
Thêm WhatsApp
Trong Claude Code (chạy claude trong thư mục nanoclaw), gõ:
/add-whatsapp
Claude sẽ:
- Hỏi số điện thoại nào cần kết nối
- Hiển thị mã QR trong terminal
- Mở WhatsApp trên điện thoại → Cài đặt → Thiết bị đã liên kết → Liên kết thiết bị
- Quét mã QR
Xong. Số NanoClaw của bạn đã kết nối. Nhắn @Andy xin chào để kiểm tra.
Thêm Telegram
/add-telegram
Claude sẽ hướng dẫn bạn:
- Tạo Telegram bot qua @BotFather (nhắn:
/newbot) - Lấy bot token
- Thêm token vào
.env - Khởi động lại NanoClaw
Rồi nhắn vào bot mới: @Andy xin chào
Cách Dùng NanoClaw
Mặc định, từ kích hoạt là @Andy. Bạn có thể đổi sau.
@Andy hôm nay thời tiết ở TP.HCM thế nào?
@Andy tóm tắt bài báo này: https://example.com/article
@Andy mỗi sáng 8 giờ, gửi cho tôi 5 tin AI nổi bật từ Hacker News
@Andy tạo file meeting-notes.md với tiêu đề là ngày hôm nay
NanoClaw trả lời ngay trong cùng chat.
Workflow Theo Vai Trò
Dành Cho Developer
graph TB
DEV[Developer] --> Q1[Review code?]
DEV --> Q2[Nghiên cứu?]
DEV --> Q3[Tự động hóa?]
DEV --> Q4[Debug?]
Q1 --> A1[Nhờ NanoClaw review<br/>link GitHub PR]
Q2 --> A2[Tìm docs, tóm tắt<br/>thread StackOverflow]
Q3 --> A3[Lên lịch báo cáo git log<br/>hàng ngày, thông báo CI]
Q4 --> A4[Paste error log,<br/>nhận nguyên nhân + cách fix]
classDef nhiem fill:#1e40af,stroke:#1d4ed8,color:#fff
classDef hanh fill:#15803d,stroke:#166534,color:#fff
class Q1,Q2,Q3,Q4 nhiem
class A1,A2,A3,A4 hanhCâu lệnh thực tế cho developer:
@Andy review code tại https://github.com/me/project/pull/42
@Andy mỗi thứ Sáu 5pm, tóm tắt các commit git tuần này
@Andy cách tốt nhất để implement rate limiting trong Node.js là gì?
@Andy giải thích lỗi này: TypeError: Cannot read property 'map' of undefined
@Andy viết script bash backup database PostgreSQL mỗi ngày
Mẹo nâng cao: Mount thư mục project vào workspace của NanoClaw:
Trong Claude Code, nói:
“Add my projects folder /Users/me/projects to the developer group workspace as extra mount”
Từ đó NanoClaw có thể đọc file code thực của bạn.
Dành Cho QA / QC
graph TB
QA[QA Engineer] --> T1[Lên kế hoạch test]
QA --> T2[Báo cáo lỗi]
QA --> T3[Theo dõi regression]
QA --> T4[Báo cáo hàng ngày]
T1 --> A1[Tạo test case<br/>từ URL tài liệu yêu cầu]
T2 --> A2[Tự định dạng bug report<br/>với steps, expected, actual]
T3 --> A3[Lên lịch tóm tắt buổi tối<br/>các bug đang mở từ Jira]
T4 --> A4[Mỗi sáng: lấy<br/>trạng thái CI build, gửi briefing]
classDef nhiem fill:#0e7490,stroke:#0891b2,color:#fff
classDef hanh fill:#15803d,stroke:#166534,color:#fff
class T1,T2,T3,T4 nhiem
class A1,A2,A3,A4 hanhCâu lệnh thực tế cho QA:
@Andy đọc tài liệu yêu cầu này và tạo danh sách test case: https://docs.example.com/feature
@Andy tôi tìm thấy lỗi: nút đăng nhập không hoạt động trên Safari iOS 17. Định dạng thành bug report.
@Andy mỗi thứ Hai 9 giờ, lấy https://jira.example.com/open-bugs và tóm tắt 5 bug critical nhất
@Andy so sánh 2 kết quả test này và cho biết cái gì bị regression: [paste kết quả 1] vs [kết quả 2]
@Andy viết acceptance criteria cho: người dùng có thể reset mật khẩu qua email
Mẹo setup: Gắn thư mục tài liệu test vào NanoClaw để nó đọc và tham chiếu test plan của bạn.
Dành Cho Marketer & Researcher
graph TB
MK[Marketer / Researcher] --> T1[Nghiên cứu nội dung]
MK --> T2[Theo dõi xu hướng]
MK --> T3[Tạo nội dung]
MK --> T4[Phân tích đối thủ]
T1 --> A1[Tìm web về chủ đề,<br/>tóm tắt 10 nguồn hàng đầu]
T2 --> A2[Lên lịch quét tin<br/>ngành hàng tuần]
T3 --> A3[Dự thảo outline blog,<br/>post mạng xã hội, email]
T4 --> A4[Lấy URL đối thủ,<br/>trích xuất thông điệp chính]
classDef nhiem fill:#92400e,stroke:#b45309,color:#fff
classDef hanh fill:#15803d,stroke:#166534,color:#fff
class T1,T2,T3,T4 nhiem
class A1,A2,A3,A4 hanhCâu lệnh thực tế cho marketer:
@Andy nghiên cứu xu hướng mới nhất trong công cụ marketing AI năm 2026
@Andy mỗi thứ Hai 8 giờ, tóm tắt 5 tin AI marketing nổi bật từ TechCrunch
@Andy viết LinkedIn post về ra mắt sản phẩm mới của chúng tôi. Tối đa 200 từ, chuyên nghiệp.
@Andy phân tích trang chủ của đối thủ https://competitor.com và cho biết họ truyền tải thông điệp gì
@Andy tạo lịch nội dung cho chủ đề "AI trong thương mại điện tử" với 10 ý tưởng bài đăng
@Andy tóm tắt báo cáo nghiên cứu thị trường 50 trang này: [URL hoặc paste text]
Mẹo setup: Tạo group riêng cho marketing. Ghi vào file CLAUDE.md của group đó giọng văn thương hiệu, đối tượng mục tiêu, và thông tin sản phẩm chính.
Dành Cho Người Kinh Doanh
graph TB
BIZ[Người Kinh Doanh] --> T1[Briefing buổi sáng]
BIZ --> T2[Chuẩn bị họp]
BIZ --> T3[Soạn thảo giao tiếp]
BIZ --> T4[Hỗ trợ ra quyết định]
T1 --> A1[Hàng ngày: tóm tắt tin tức,<br/>số liệu quan trọng, lịch hôm nay]
T2 --> A2[Tóm tắt thông tin về<br/>người/công ty trước khi họp]
T3 --> A3[Soạn email, đề xuất,<br/>tin nhắn follow-up]
T4 --> A4[Nghiên cứu phương án,<br/>phân tích ưu nhược điểm]
classDef nhiem fill:#7c3aed,stroke:#6d28d9,color:#fff
classDef hanh fill:#15803d,stroke:#166534,color:#fff
class T1,T2,T3,T4 nhiem
class A1,A2,A3,A4 hanhCâu lệnh thực tế cho người kinh doanh:
@Andy mỗi ngày làm việc lúc 7:30am, tóm tắt 5 điểm buổi sáng: thời tiết, tin tức, lịch hôm nay
@Andy tôi họp với anh Nguyễn Văn A từ công ty ABC ngày mai. Hãy research về họ và chuẩn bị điểm nói chuyện.
@Andy soạn email follow-up chuyên nghiệp sau buổi họp sales về giá cả cloud migration
@Andy phân tích ưu nhược điểm của việc mở văn phòng thứ 2 ở Đà Nẵng so với ở lại TP.HCM
@Andy dịch điều khoản hợp đồng này sang tiếng Việt dễ hiểu: [paste text pháp lý]
@Andy tóm tắt tất cả cuộc trò chuyện của chúng ta về project XYZ
Mẹo setup: Kết nối NanoClaw với Gmail bằng /add-gmail để nó có thể đọc email và giúp soạn phản hồi — tất cả ngay trong WhatsApp hoặc Telegram.
Mẹo Sử Dụng Nâng Cao
1. Đổi từ kích hoạt
Trong claude, nói:
“Change the trigger word from @Andy to @Nano”
2. Thêm bộ nhớ cho mỗi group
Mỗi group có file CLAUDE.md riêng. Nói với NanoClaw những gì cần nhớ:
@Andy hãy nhớ: tôi là senior developer làm việc với TypeScript. Luôn trả lời ngắn gọn và kỹ thuật.
3. Lên lịch tác vụ lặp lại
@Andy mỗi Chủ Nhật 8pm, tóm tắt các bài Hacker News nổi bật tuần này và gửi cho tôi
@Andy vào ngày 1 mỗi tháng, nhắc tôi kiểm tra các subscription
4. Dùng nhiều group
Tạo các group WhatsApp/Telegram riêng biệt cho từng mục đích:
- Group cá nhân: briefing hàng ngày, nhắc nhở
- Group công việc: công cụ developer, review code
- Group nghiên cứu: theo dõi xu hướng, tóm tắt bài báo
Mỗi group có bộ nhớ và context hoàn toàn cô lập.
5. Chạy 24/7 trên Proxmox
Chạy NanoClaw trên máy chủ Proxmox nghĩa là nó chạy kể cả khi laptop bạn đóng. Service systemd tự khởi động lại sau reboot:
# Bật auto-start trên Linux
systemctl --user enable nanoclaw
systemctl --user start nanoclaw
# Kiểm tra trạng thái
systemctl --user status nanoclaw
6. Debug bằng Claude
Nếu có vấn đề, chỉ cần hỏi:
claude
Rồi gõ: tại sao scheduler của tôi không chạy? hoặc cho tôi xem error logs gần đây — Claude Code sẽ chẩn đoán và tự sửa cho bạn.
Xử Lý Sự Cố
“Tin nhắn không nhận được phản hồi”
- Kiểm tra service NanoClaw đang chạy:
systemctl --user status nanoclaw(Linux) hoặc xem Console.app (macOS) - Xác nhận Anthropic API key còn credit
- Đảm bảo bạn dùng đúng từ kích hoạt
“Docker container không khởi động được”
- Đảm bảo Docker Desktop đang chạy
- Chạy
docker psđể kiểm tra container - Trong
claude, chạy/debugđể tự động chẩn đoán
“WhatsApp liên tục bị ngắt kết nối”
- WhatsApp có thể cần xác thực lại sau khi cập nhật
- Chạy
claude→/add-whatsappđể quét lại mã QR
“Setup bị lỗi giữa chừng”
- Trong
claude, chạy/setuplại — hoàn toàn an toàn để chạy lại - Hoặc chạy
/debugđể tìm và sửa vấn đề cụ thể