Tự chạy trợ lý AI trên Zalo, Telegram và WhatsApp với OpenClaw

Cách dựng trợ lý AI trên Zalo, Telegram, WhatsApp bằng OpenClaw trên VPS của bạn: cần gì, cài thế nào, tốn bao nhiêu và giữ an toàn ra sao.

Điện thoại chat với trợ lý AI OpenClaw tự host qua Telegram, Zalo và WhatsApp, kết nối tới một VPS

Ý chính

  • OpenClaw là gateway mã nguồn mở (MIT) tự host, nối mô hình ngôn ngữ với các app chat như Telegram, WhatsApp và Zalo.
  • Bạn cần VPS còn trống khoảng 2 GB RAM và API key của một nhà cung cấp mô hình như Anthropic, OpenAI hoặc DeepSeek.
  • Mặc định người lạ nhắn tới chỉ nhận mã ghép đôi và bị bỏ qua cho tới khi bạn duyệt; hãy giữ nguyên mặc định này.
  • Chi phí chính là tiền API, ước tính được từ số token mỗi tin nhắn và giá mỗi triệu token của nhà cung cấp.

Để có trợ lý AI trên Zalo, bạn có thể tự chạy OpenClaw trên một VPS Linux còn trống khoảng 2 GB RAM, kèm API key của một nhà cung cấp mô hình như Anthropic, OpenAI hoặc DeepSeek. OpenClaw nối mô hình đó với các app chat bạn đang dùng (Zalo, Telegram, WhatsApp), nên bạn nhắn tin cho trợ lý ngay trên điện thoại, còn lịch sử và cấu hình nằm trên server của bạn. Trên ZoPanel, OpenClaw là app cài 1 click: nhập tên miền, API key, rồi duyệt trình duyệt của bạn ngay trong panel.

Bài viết giải thích OpenClaw là gì, chạy tốn bao nhiêu, cách cài thủ công hoặc từ App Store của ZoPanel, cách nối Zalo, Telegram, WhatsApp, và những thiết lập bảo mật nên giữ.

OpenClaw là gì?

OpenClaw là trợ lý AI mã nguồn mở bạn tự vận hành. Website ghi toàn bộ sản phẩm dùng giấy phép MIT và do OpenClaw Foundation, một tổ chức phi lợi nhuận ở Mỹ, quản lý; mã nguồn ở GitHub. OpenClaw không phải là mô hình AI. Nó là một gateway: giữ API key, phiên chat, bộ nhớ và các kết nối kênh, gửi tin nhắn của bạn tới nhà cung cấp mô hình bạn chọn rồi đưa câu trả lời về app chat.

Kèm theo là Control UI trên web để chat, quản lý phiên, agent, kênh và đổi mô hình mặc định.

Hỗ trợ những app chat nào?

Trang channels trong tài liệu chính thức liệt kê rất nhiều kênh. Những kênh người dùng Việt hay hỏi:

Kênh Cách kết nối Ghi chú
Telegram Token bot từ @BotFather Có sẵn; tài liệu gọi đây là kênh dựng nhanh nhất
WhatsApp Liên kết như một thiết bị WhatsApp Web bằng mã QR Plugin chính thức; lưu phiên đăng nhập trên ổ đĩa
Zalo Token bot từ Zalo Bot Platform Plugin chính thức, đánh dấu thử nghiệm
Discord, Slack, Signal, Microsoft Teams, LINE, Matrix… Tùy kênh Xem trang channels

Với Zalo, tài liệu hướng dẫn cho bot tạo trên Zalo Bot Platform và lưu ý bot của Zalo Official Account (OA) có thể hoạt động khác. Kênh Zalo có vài giới hạn: câu trả lời bị chia thành đoạn 2.000 ký tự, file media mặc định tối đa 5 MB, chưa hỗ trợ reaction, thread và bình chọn. Trong nhóm, bot chỉ trả lời khi được nhắc tên (@mention). Trang channels còn có plugin "Zalo personal" riêng; dùng tài khoản bot gọn hơn, vì trợ lý không gắn với tài khoản Zalo cá nhân của bạn.

Bạn cần chuẩn bị gì?

Hạng mục Cần lưu ý
Server Một VPS Linux. ZoPanel cấp cho app giới hạn 2048 MB RAM, 1 CPU, và cần khoảng 5,8 GB ổ trống để cài (image khoảng 3,3 GB)
Truy cập mô hình Ít nhất một API key (Anthropic, OpenAI hoặc DeepSeek trong hộp thoại ZoPanel). Bạn trả tiền trực tiếp cho nhà cung cấp
Tên miền Một subdomain như claw.example.com nếu muốn mở Control UI qua HTTPS
Tài khoản chat Bot Telegram, bot Zalo hoặc số WhatsApp để liên kết

OpenClaw gọi mô hình qua internet, không chạy mô hình trên VPS, nên 2 GB là đủ. Build image Docker từ mã nguồn thì khác: tài liệu Docker ghi cần ít nhất 6 GB RAM, còn image dựng sẵn thì bỏ qua bước này.

Cách 1: tự cài OpenClaw thủ công

Tài liệu cài đặt có lệnh cài một dòng cho Linux, tự cài Node.js (24.16+ hoặc 26.1+) nếu thiếu rồi chạy bước onboarding:

curl -fsSL https://openclaw.ai/install.sh | bash

Onboarding hỏi API key và tạo gateway token. Nếu cài qua npm, lệnh openclaw onboard --install-daemon tạo systemd user service để OpenClaw tự chạy khi khởi động máy.

Cũng có thể dùng Docker: clone kho mã và chạy ./scripts/docker/setup.sh. Script chạy onboarding, ghi gateway token vào .env và khởi động gateway bằng Docker Compose. Đặt biến OPENCLAW_IMAGE trước để dùng image dựng sẵn ghcr.io/openclaw/openclaw.

Control UI mặc định lắng nghe ở http://127.0.0.1:18789/. Trên VPS, cách an toàn đơn giản nhất là mở SSH tunnel từ máy bạn:

ssh -N -L 18789:127.0.0.1:18789 you@your-vps

Sau đó mở http://127.0.0.1:18789/ trên máy mình và dán gateway token. Muốn dùng tên miền thật thì cần reverse proxy có HTTPS, cấu hình trusted proxies và allowed origins của gateway cho khớp, và kiểm tra tường lửa: tài liệu bảo mật của OpenClaw cảnh báo image container mặc định bind ra ngoài, còn tài liệu Docker nhắc tới chain tường lửa DOCKER-USER trên server public. Bài tự host Open WebUI giải thích vì sao cổng Docker có thể vượt qua UFW và cách bind vào 127.0.0.1.

Cách 2: cài 1 click trong ZoPanel

App Store của ZoPanel cài OpenClaw trong container riêng, đứng sau nginx của website với SSL Let's Encrypt, và tự cấu hình phần proxy. Các bước theo hướng dẫn app OpenClaw:

  1. Cài Docker nếu chưa có (App Store → Install Docker), và trỏ bản ghi A của tên miền về server.
  2. Mở App Store, bấm Install trên thẻ OpenClaw.
  3. Điền Domain (ví dụ claw.example.com) và ít nhất một trong Anthropic API key, OpenAI API key, DeepSeek API key. Để nguyên Free SSL (Let's Encrypt). Quản trị viên chọn thêm tài khoản Owner. Không nhập key nào thì việc cài bị từ chối.
  4. Bấm Install và theo dõi task log.

ZoPanel tạo OPENCLAW_GATEWAY_TOKEN ngẫu nhiên 32 ký tự, chỉ mở cổng gateway trên 127.0.0.1, và ghi gateway.trustedProxies, gateway.controlUi.allowedOrigins theo tên miền của bạn mỗi lần app khởi động.

Đăng nhập và duyệt trình duyệt

OpenClaw không có khóa cài đặt, nên tên miền công khai ngay khi cài xong. Lớp bảo vệ là token và việc ghép đôi thiết bị:

  1. Mở Websites, chọn tên miền, vào tab Docker.
  2. Ở Login details, copy OPENCLAW_GATEWAY_TOKEN.
  3. Mở https://<tên miền của bạn>, dán token vào Gateway secret rồi bấm Connect.
  4. OpenClaw yêu cầu duyệt trình duyệt này. Quay lại tab Docker: thẻ Browsers hiện yêu cầu trong mục Waiting for approval, kèm nền tảng, địa chỉ IP và thời gian.
  5. Bấm Approve là Control UI mở ra. Bấm Reject với yêu cầu nào bạn không nhận ra.

Mỗi trình duyệt hoặc thiết bị mới đều phải qua bước duyệt này, kể cả trình duyệt trên điện thoại. Thiết bị đã duyệt nằm trong mục Approved.

Nối Zalo, Telegram và WhatsApp

Kênh được cấu hình ở Settings → Channels trong Control UI, hoặc bằng CLI trong operator terminal.

  • Zalo: tạo bot tại bot.zaloplatforms.com, nhập token vào Settings → Channels, rồi duyệt mã ghép đôi của tin nhắn đầu tiên bằng openclaw pairing approve zalo <CODE>.
  • Telegram: chat với @BotFather, chạy /newbot, copy token, thêm vào Settings → Channels → Telegram. Nhắn thử cho bot, rồi duyệt mã trong operator terminal bằng openclaw pairing approve telegram <CODE>. Mã hết hạn sau một giờ.
  • WhatsApp: bắt đầu đăng nhập ở Settings → Channels → WhatsApp và quét mã QR trong Thiết bị liên kết trên điện thoại.

Telegram mặc định dùng long polling, chỉ mở kết nối đi ra, nên chạy được sau ZoPanel mà không cần cấu hình thêm.

Giới hạn của bản ZoPanel

Biết trước những đánh đổi này:

  • Container bị chặn khỏi loopback và mạng nội bộ của server, nên không dùng được server mô hình chạy local (Ollama, LM Studio, vLLM); nhà cung cấp phải là API public.
  • Công cụ duyệt web hay chạy lệnh chỉ ra được internet, không chạm tới database hay mạng nội bộ của bạn.
  • Không sửa API key trong panel sau khi cài; muốn dùng key khác thì thêm trong OpenClaw.
  • Bản OpenClaw mới đến theo bản cập nhật ZoPanel, không phải ngay ngày phát hành.
  • Dữ liệu app không nằm trong backup website thông thường. Dùng Back up now ở thẻ Backups của app, và chép bản backup ra ngoài server ở dạng mã hóa, vì trong đó có API key và token bot.

Các app AI khác và giới hạn RAM của chúng có ở trang App Store; cách ZoPanel cách ly container nói chung có trong bài chạy app Docker trên VPS.

Chạy trợ lý AI tốn bao nhiêu?

Có hai khoản: server và mô hình.

Server. OpenClaw cần khoảng 2 GB RAM cho riêng nó, nên VPS 4 GB sẽ thoải mái nếu còn chạy thêm website. Nếu bạn đã có VPS dư RAM, chi phí thêm có thể bằng 0.

Mô hình. Bạn trả theo token cho cả phần gửi đi (tin nhắn, ngữ cảnh hội thoại và chỉ dẫn của trợ lý) lẫn phần mô hình viết ra. Cách ước tính:

  1. Số tin nhắn mỗi ngày × số token đầu vào trung bình = token đầu vào mỗi ngày.
  2. Số tin nhắn mỗi ngày × số token đầu ra trung bình = token đầu ra mỗi ngày.
  3. Nhân mỗi con số với giá mỗi triệu token của nhà cung cấp.

Chỉ để minh họa: tại thời điểm viết bài (tháng 10/2026), trang giá của Anthropic ghi Claude Sonnet 5.5 giá 2 USD mỗi triệu token đầu vào và 10 USD mỗi triệu token đầu ra; Claude Haiku 5.5 giá 0,10 USD và 0,50 USD với prompt tới 100.000 token. Giả sử 50 tin nhắn mỗi ngày, mỗi tin 5.000 token vào và 500 token ra:

Mô hình Đầu vào mỗi ngày Đầu ra mỗi ngày Khoảng mỗi tháng (30 ngày)
Claude Sonnet 5.5 250.000 token = 0,50 USD 25.000 token = 0,25 USD 22,50 USD
Claude Haiku 5.5 250.000 token = 0,025 USD 25.000 token = 0,0125 USD 1,13 USD

Đây là giả định, không phải số đo. Ngữ cảnh của agent tăng theo lịch sử hội thoại và công cụ, còn các tác vụ tự động vẫn tiêu token khi bạn không gõ gì. Hãy chạy thử một tuần, xem số token thật trong trang usage của nhà cung cấp và đặt hạn mức chi tiêu ở đó.

Lưu ý bảo mật

Một trợ lý giữ API key của bạn và trả lời trên app chat công khai cần vài nguyên tắc.

  • Giữ chế độ ghép đôi mặc định. Chính sách tin nhắn riêng mặc định cho Zalo và Telegram là pairing: người lạ nhận mã và bị bỏ qua cho tới khi bạn duyệt. Đừng chuyển sang open nếu không muốn người lạ tiêu tiền API của bạn. Với nhóm người cố định, dùng allowlist.
  • Giữ kín gateway token. Ai có token đều gửi được yêu cầu truy cập, và trình duyệt đã duyệt điều khiển được trợ lý cùng API key. Từ chối thiết bị bạn không nhận ra.
  • Mỗi gateway một ranh giới tin cậy. Tài liệu bảo mật khuyên dùng gateway riêng cho những người không tin nhau. Đừng dùng chung một trợ lý cho nhiều khách hàng không liên quan.
  • Cẩn thận prompt injection. Tin nhắn, trang web, file có thể chứa chỉ dẫn nhắm vào mô hình. Không bật các cờ bỏ qua bảo vệ và chỉ cấp cho công cụ đúng quyền cần thiết.
  • Đặt hạn mức chi tiêu ở nhà cung cấp, và đổi key ngay khi nghi bị lộ.
  • Chạy kiểm tra. Lệnh openclaw security audit phát hiện cấu hình lệch khỏi mặc định an toàn.

Trên server ZoPanel, app còn chạy với user namespace của Docker và giới hạn mạng, còn panel hỗ trợ xác thực hai lớp và giới hạn IP truy cập (tài liệu bảo mật).

Kết luận

OpenClaw biến một API key thành trợ lý AI bạn nhắn được qua Zalo, Telegram hay WhatsApp, với dữ liệu nằm trên VPS của bạn. Cài thủ công thì cần Node.js hoặc Docker, SSH tunnel hoặc reverse proxy, và cấu hình tường lửa cẩn thận. Với ZoPanel, chỉ cần tên miền, API key và một cú bấm duyệt, đổi lại là không dùng được mô hình local và bản cập nhật đi theo nhịp phát hành của ZoPanel.

Muốn thử, cài ZoPanel bằng curl -fsSL https://get.zopanel.net | sudo bash. Gói Free có App Store, 3 tài khoản hosting, 10 website và không giới hạn thời gian.

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

OpenClaw có miễn phí không?

Phần mềm là mã nguồn mở theo giấy phép MIT nên không tốn phí sử dụng. Bạn trả tiền server và tiền API cho nhà cung cấp mô hình, tùy mức bạn dùng.

OpenClaw có chạy được với Zalo không?

Có. OpenClaw có kênh Zalo chính thức cho bot tạo trên Zalo Bot Platform, nhưng tài liệu ghi là đang thử nghiệm. Kênh hỗ trợ tin nhắn riêng và nhóm (bot trả lời khi được nhắc tên), với giới hạn như chia tin thành đoạn 2.000 ký tự, chưa có reaction hay bình chọn.

OpenClaw cần bao nhiêu RAM?

ZoPanel chạy app với giới hạn 2048 MB, và hộp thoại cài đặt cảnh báo cần khoảng 2 GB trở lên. Con số này chỉ cho gateway, vì mô hình chạy ở phía nhà cung cấp. Build image Docker từ mã nguồn cần ít nhất 6 GB, nên trên VPS nhỏ hãy dùng image dựng sẵn.

Dùng mô hình local như Ollama thay cho API key được không?

Bản thân OpenClaw hỗ trợ Ollama, nhưng app trên ZoPanel được thiết kế để không truy cập server mô hình local hay mạng nội bộ; nó cần API public. Muốn dùng mô hình local, hãy tự cài OpenClaw trên máy đủ RAM và tốt nhất có GPU cho mô hình.

Người khác có nhắn được cho bot của tôi không?

Chỉ khi bạn cho phép. Mặc định, người gửi mới trên Telegram hoặc Zalo nhận một mã ghép đôi và bị bỏ qua cho tới khi bạn duyệt bằng openclaw pairing approve. Chỉ duyệt người bạn quen, và nhớ rằng mỗi tin họ gửi đều tiêu API key của bạn.