AI & Automation (vnROM)

Cover image for Clawdbot - Trợ lý AI cá nhân cho mọi nền tảng
Duy Nghiện
Duy Nghiện

Posted on • Edited on

Clawdbot - Trợ lý AI cá nhân cho mọi nền tảng

Các bạn đã bao giờ nản với những trợ lý AI “đóng hộp” mà bạn không thể kiểm soát? Hay cảm thấy tiếc tiền khi phải trả phí hàng tháng cho dịch vụ hosted trên cloud? Clawdbot là một lựa chọn rất đáng thử.

Clawdbot là một trợ lý AI cá nhân mã nguồn mở hoàn toàn do bạn kiểm soát. Bạn có thể chạy nó trên máy của mình (Windows, macOS, hay Linux) và đó là cách để sở hữu dữ liệu của chính bạn. Thay vì gửi mọi thứ lên cloud, Clawdbot hoạt động theo kiểu local‑first – Gateway chạy trên thiết bị của bạn và bạn quyết định những gì được phép đi ra ngoài.

Bạn có thể chat với nó qua bất kỳ ứng dụng nhắn tin nào mà bạn yêu thích – WhatsApp, Telegram, Discord, Slack, Signal, iMessage hay WebChat. Nó còn có thể nghe và nói (trên macOS/iOS/Android, với ElevenLabs), có trí nhớ lâu dài – luôn nhớ về bạn, sở thích của bạn và bối cảnh công việc của bạn theo thời gian.

Các tính năng nổi bật

  • Chạy cục bộ: Local‑first Gateway, mã nguồn mở, dữ liệu nằm trong tay bạn chứ không phải một server quản lý ẩn nào đó.
  • Đa nền tảng chat: Kết nối WhatsApp, Telegram, Discord, Slack, Signal, iMessage, WebChat… thành một “ống dẫn” chung cho trợ lý AI.
  • Hỗ trợ voice: Nghe và nói trên macOS, iOS, Android; dễ tích hợp dịch vụ TTS như ElevenLabs để có giọng nói tự nhiên.
  • Bộ nhớ lâu dài: Ghi nhớ lịch sử, thói quen, sở thích của bạn để trợ lý ngày càng “hiểu bạn” hơn.
  • Điều khiển trình duyệt: Có thể mở web, điền form, click, và rút trích dữ liệu từ bất kỳ trang web nào thông qua Browser tool.
  • Truy cập toàn hệ thống: Đọc/ghi file, chạy lệnh shell, script và tự động hóa những công việc lặp lại; có thể chạy full access hoặc sandbox (Docker).
  • Skills & Plugins: Mở rộng khả năng với các skill có sẵn hoặc tự viết skill riêng cho workflow của bạn.
  • Canvas & Automation: Giao diện Canvas để visualize kết quả, quy trình và quản lý automation (cron, webhooks, workflows…).

Hướng dẫn cài đặt chi tiết

Yêu cầu hệ thống

Trước tiên, bạn cần chuẩn bị:

  • Node.js phiên bản 22 trở lên (runtime hiện được khuyến nghị cho Clawdbot).
  • Git (để clone repository nếu bạn muốn chạy từ source).
  • Một tài khoản Anthropic hoặc OpenAI nếu bạn muốn dùng model Claude/ChatGPT; mặc định Clawdbot có thể dùng sẵn Pi/hay provider khác tùy cấu hình. Sẽ thật thiếu sót cho ae nào chưa biết đến con hàng CLIProxy

Cách 1: Cài bằng npm (đơn giản, khuyên dùng)

Cài CLI toàn cục:

npm install -g clawdbot
Enter fullscreen mode Exit fullscreen mode

Sau đó, khởi chạy Onboarding Wizard:

clawdbot onboard
Enter fullscreen mode Exit fullscreen mode

Wizard sẽ giúp bạn:

  1. Cấu hình Gateway (cổng, nơi chạy, daemon…).
  2. Chọn mô hình AI và provider (Claude, OpenAI, Pi…).
  3. Kết nối các nền tảng chat (WhatsApp, Telegram, Discord…).
  4. Thiết lập cấu hình và một số skill/công cụ cơ bản.

Cách 2: Chạy từ source (dành cho dev)

Nếu bạn muốn vọc sâu mã nguồn:

git clone https://github.com/clawdbot/clawdbot.git
cd clawdbot
Enter fullscreen mode Exit fullscreen mode

Cài dependencies (chọn một):

npm install
# hoặc
pnpm install
# hoặc
bun install
Enter fullscreen mode Exit fullscreen mode

Build dự án:

npm run build
npm run ui:build
# (tương đương với lệnh bun/pnpm nếu bạn dùng tool khác)
Enter fullscreen mode Exit fullscreen mode

Sau đó, bạn có thể dùng npx clawdbot onboard hoặc cài global như ở Cách 1 để chạy Gateway/CLI.


Kết nối nền tảng chat

WhatsApp

Quy trình quick start 5 phút thường gồm:

# 1. Đăng nhập nhà cung cấp (WhatsApp, Telegram, v.v.)
clawdbot providers login

# 2. Khởi động Gateway (giữ lệnh này chạy)
clawdbot gateway --port 18789
Enter fullscreen mode Exit fullscreen mode

Gateway sẽ mở một kết nối WhatsApp Web duy nhất (Baileys), bạn scan QR để liên kết tài khoản trợ lý của mình.

Telegram

Thêm token vào file cấu hình ~/.clawdbot/clawdbot.json:

{
  "telegram": {
    "botToken": "123456:YOUR_TOKEN_HERE",
    "enabled": true
  }
}
Enter fullscreen mode Exit fullscreen mode

Clawdbot dùng file config này để biết nên bật Telegram bot nào, rule nào được phép gửi và cách định tuyến tin nhắn.


Cách sử dụng cơ bản

Gửi tin nhắn đầu tiên

Sau khi kết nối WhatsApp/Telegram và Gateway đang chạy, chỉ cần nhắn cho bot:

Xin chào! Giúp tôi tổng hợp danh sách việc cần làm hôm nay.

Clawdbot sẽ gọi model mà bạn đã cấu hình và trả lời thẳng trong app chat bạn đang dùng.

Các lệnh chat hữu ích

Trong bất kỳ cuộc trò chuyện nào, bạn có thể dùng những lệnh kiểu slash (tùy config/giao diện):

  • /status – Kiểm tra tình trạng trợ lý và Gateway.
  • /reset hoặc /new – Bắt đầu một phiên trò chuyện mới, reset context.
  • /think low|medium|high – Điều chỉnh mức “độ sâu suy luận”, cân bằng giữa chi phí và chất lượng.
  • /compact – Nén/tóm tắt lịch sử chat để phiên làm việc nhẹ hơn.
  • /restart – Khởi động lại Gateway/daemon (thường chỉ dành cho chủ sở hữu).

Hướng dẫn nâng cao: Viết Custom Skill đơn giản

Clawdbot mạnh mẽ nhờ khả năng mở rộng. "Skill" thực chất là một đoạn code (thường là TypeScript hoặc JavaScript) định nghĩa một công cụ để AI có thể gọi khi cần. Dưới đây là cách tạo một skill đơn giản: Kiểm tra trạng thái Website.

Bước 1: Xác định cấu trúc Skill

Một Skill tiêu chuẩn cho Clawdbot thường gồm 3 phần chính:

  1. Name: Tên định danh của skill.
  2. Description: Mô tả kỹ lưỡng để AI "hiểu" khi nào nên dùng skill này (Rất quan trọng).
  3. Handler/Execute: Đoạn code logic thực thi tác vụ.

Bước 2: Tạo file Skill

Truy cập vào thư mục skills trong thư mục cài đặt Clawdbot của bạn và tạo file mới tên là website-check.ts.

Copy đoạn code mẫu sau:

import { z } from 'zod'; // Thư viện dùng để định nghĩa kiểu dữ liệu đầu vào

export default {
  // 1. Tên gọi của Skill (dùng chữ thường, không dấu)
  name: "check_website_status",

  // 2. Mô tả cho AI hiểu (càng rõ ràng AI càng dùng chính xác)
  description: "Dùng công cụ này khi người dùng muốn kiểm tra một website có đang hoạt động (online) hay không.",

  // 3. Định nghĩa tham số đầu vào (AI sẽ tự trích xuất URL từ câu chat của bạn vào đây)
  parameters: z.object({
    url: z.string().url().describe("Đường dẫn URL của website cần kiểm tra (ví dụ: https://vnrom.net)"),
  }),

  // 4. Logic xử lý chính
  execute: async ({ url }) => {
    try {
      console.log(`Đang kiểm tra: ${url}...`);
      const response = await fetch(url);

      if (response.ok) {
        return `✅ Website ${url} đang hoạt động bình thường. (Status Code: ${response.status})`;
      } else {
        return `⚠️ Website ${url} phản hồi nhưng có lỗi. (Status Code: ${response.status})`;
      }
    } catch (error) {
      return `❌ Không thể truy cập vào ${url}. Lỗi: ${error.message}`;
    }
  }
};
Enter fullscreen mode Exit fullscreen mode

Bước 3: Đăng ký và Test

  1. Lưu file website-check.ts.
  2. Khởi động lại Clawdbot Gateway để nó nạp skill mới:
clawdbot gateway restart
Enter fullscreen mode Exit fullscreen mode
  1. Mở khung chat (Telegram/WhatsApp/Web) và nhắn: > "Kiểm tra xem trang https://www.google.com/search?q=google.com có sống không?"

Cơ chế hoạt động:
Clawdbot sẽ phân tích câu hỏi Nhận thấy intent trùng khớp với mô tả của skill check_website_status Tự động trích xuất https://google.com Chạy hàm execute Trả kết quả về cho bạn.


Ví dụ thực tế

Một vài workflow điển hình mà Clawdbot có thể làm được khi bạn cấp đúng quyền và skills:

  • “Tìm email từ boss về deadline dự án Q1” Clawdbot dùng skill Gmail, tìm email phù hợp và trả lại nội dung/tóm tắt ngay trong chat.
  • “Tạo task mới trong Linear: ‘Fix bug login’” Clawdbot gọi API Linear qua skill tương ứng, tạo issue mới và gửi link cho bạn.
  • “Lấy thống kê health từ WHOOP tuần này” Clawdbot gọi WHOOP API đã cấu hình, lấy dữ liệu raw và tóm tắt thành báo cáo dễ đọc.

An toàn và bảo mật

Clawdbot được thiết kế với bảo mật là ưu tiên:

  • Local‑first Gateway: Một Gateway trên mỗi máy, mặc định bind loopback (127.0.0.1), không public ra ngoài trừ khi bạn cố ý bật.
  • Sandbox mode: Có thể chạy code, lệnh, trình duyệt trong môi trường cách ly (Docker sandbox) để giới hạn rủi ro.
  • Kiểm soát quyền: Bạn quyết định Clawdbot được đọc thư mục nào, chạy lệnh gì, có được phép truy cập trình duyệt, inbox, API bên ngoài hay không.
  • Mã nguồn mở: Code đầy đủ trên GitHub, bất kỳ ai cũng có thể đọc, audit và đóng góp.

Nguồn chính chủ để bạn tìm hiểu thêm


Tips để bắt đầu

  1. Bắt đầu nhỏ: Thử các tác vụ đơn giản như chat, ghi chú, quản lý to‑do trước khi cho nó quyền hệ thống lớn hơn.
  2. Dùng Thinking Mode hợp lý: Với tác vụ phức tạp, tăng mức “suy nghĩ” của model để giảm lỗi logic; tác vụ ngắn thì giữ mức thấp cho nhanh.
  3. Viết Custom Skills: Khi quen hệ thống, hãy viết skill riêng gắn với workflow dev, marketing, vận hành của bạn.
  4. Kết nối nhiều nền tảng: Setup cả WhatsApp, Telegram, Discord để có thể nói chuyện với trợ lý ở bất cứ đâu.
  5. Khám phá Canvas: Dùng Canvas UI để visualize dữ liệu, logs, workflows phức tạp thay vì chỉ nhìn tin nhắn chữ.

Clawdbot là một bước tiến lớn nếu bạn muốn sở hữu trợ lý AI của riêng mình thay vì phụ thuộc hoàn toàn vào các dịch vụ cloud. Nó không chỉ là một chatbot, mà là một trợ lý thực sự có thể tự động hóa một phần đáng kể công việc hàng ngày của bạn – từ quản lý inbox, DevOps cho đến dựng website và nội dung mới ngay trên điện thoại.

Top comments (1)

Collapse
 
duynghien profile image
Duy Nghiện

Khuyên thật ae nên dùng CLIProxy cho đỡ tốn tiền token nhé :D

Cấu hình clawdbot.json cho ae tham khảo:

{
  "models": {
    "mode": "replace",
    "providers": {
      "cliproxy": {
        "baseUrl": "http://127.0.0.1:8317/v1",
        "apiKey": "sk-cliproxy-vnrom-net",
        "api": "openai-completions",
        "models": [
          {
            "id": "gemini-3-flash-preview",
            "name": "Gemini 3 Flash",
            "reasoning": false,
            "input": [
              "text"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 8192
          },
          {
            "id": "gemini-3-pro-preview",
            "name": "Gemini 3 Pro",
            "reasoning": true,
            "input": [
              "text",
              "image"
            ],
            "cost": {
              "input": 0,
              "output": 0,
              "cacheRead": 0,
              "cacheWrite": 0
            },
            "contextWindow": 1000000,
            "maxTokens": 8192
          }
        ]
      }
    }
  },
  "agents": {
    "list": [
      {
        "id": "default",
        "identity": {
          "name": "vnROM",
          "theme": "Friendly and fresh",
          "emoji": "👨🏻‍💻"
        }
      }
    ],
    "defaults": {
      "model": {
        "primary": "cliproxy/gemini-3-flash-preview",
        "fallbacks": []
      }
    }
  },
...
}
Enter fullscreen mode Exit fullscreen mode