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 container

So sánh với chatbot thông thường:

Tính năngChatbotNanoClaw Agent
Bộ nhớReset mỗi phiênLưu lâu dài theo group
Hành độngChỉ textWeb, file, code, API
Lên lịchKhông cóTác vụ lặp lại
Bảo mậtCấp ứng dụngContainer cô lập
Tùy chỉnhChỉ configSử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 xong

Bướ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 .env vớ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ẽ:

  1. Hỏi số điện thoại nào cần kết nối
  2. Hiển thị mã QR trong terminal
  3. 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ị
  4. 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:

  1. Tạo Telegram bot qua @BotFather (nhắn: /newbot)
  2. Lấy bot token
  3. Thêm token vào .env
  4. 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 hanh

Câ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 hanh

Câ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 hanh

Câ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 hanh

Câ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 /setup lạ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ể

Tài Liệu Tham Khảo

Xuất nội dung

Bình luận