เรามอง OpenClaw เป็นเหมือนคน เราสามารถบอกได้ว่า

  • LLM เป็นเหมือนสมอง
  • Line, Slack เป็นเหมือนปาก
  • Skill, Tool เป็นเหมือนแขนขาให้ใช้งาน
  • OpenClaw เป็นเหมือน Gateway ตัวที่เชื่อมทุกอย่างเข้าหากัน

การเลือกใช้ LLM (สมอง)

เราสามารถเลือกใช้งาน LLM ได้ตามความเหมาะสม

Cloud Models (ฉลาดมาก)

  • Claude Sonnet, GPT-4o, Moonshot
  • เหมาะสำหรับทำงานซับซ้อน งานวิเคราะห์ข้อมูล
  • มีค่าใช้จ่ายสูง

Local LLM

  • Ollama, Qwen
  • เหมาะกับงานที่ต้องการความเป็นส่วนตัวของข้อมูล
  • ข้อมูลไม่รั่วไหล (ต้องใช้ hardware แรง)
  • ค่าใช้จ่ายถูกกว่า สามารถคุมค่าใช้จ่ายได้

วิธีการติดตั้ง

มีการติดตั้งได้หลายวิธี เช่น

  • เครื่องส่วนตัว: ทดลองใช้งาน สามารถจัดการไฟล์ในเครื่องได้ แต่ต้องเปิดเครื่องตลอดเวลา
  • cloud (vps): ออนไลน์ได้ตลอดเวลา จำกัดการเข้าถึงข้อมูลได้
  • local powerhose: (องค์กร) ติดตั้งบน QNAP NAS ข้อมูลอยู่ที่ออฟฟิต

Recommend Spec

สำหรับ openclaw

  • 2vCPUs
  • 4 GB Ram
  • Ubuntu 24.04 / Windown

การเชื่อมต่อกับ line oa จำเป็นต้องวาง vps ไว้ข้างนอก เนืองจาก line ต้องการ https

ความเสี่ยง

เราต้องเข้าใจก่อนว่าโปรเจคนี้มาจากงานอดิเรก เลยไม่ได้ออกแบบ หรือ ใส่ใจเรื่อง security และ bug ต่างๆ ดังนั้นเราจะเจอความเสี่ยงต่างๆ ได้

  • การลบไฟล์สำคัญโดยไม่ตั้งใจ
  • การส่งข้อมูลความลับออกไปภายนอก (Data Exfiltration)
  • การถูกหลอกด้วยคำสั่ง (Prompt Injection)
  • ไม่มีความเสถียร
  • มีช่องโหว่
ดังนั้นควร backup ข้อมูลไว้ และอย่า run Openclaw ด้วยสิทธิ์ Root

มาตรการความปลอดภัย

  • Containerization: รันบน docker container เสมอ
  • Human-in-the-Loop: ตั้งค่า exec.ask:"on" เสมอ เพื่อให้ขออนุมัติก่อนการรันคำสั่งอันตราย
  • Least Privilege: ให้สิทธิ์เฉพาะโฟลเดอร์ที่จำเป็น

เครื่องมือตรวจสอบความปลอดภัย

openclaw doctor ตรวจสอบสถานะการเชื่อมต่อ

openclaw security audit แสกนการช่องโหว่ และ port ที่เปิดทิ้งไว้


วิธีติดตั้ง

เราสามารถดูวิธีการติดตั้งผ่านหน้าเว็บไซต์เขาได้เลย https://docs.openclaw.ai/start/getting-started โดยสามารถติดตั้งได้ทั้ง macOS, Linux และ Windowns

คำสั่ง

เราสามารถพิมพ์ openclaw ได้เลย

เริ่มต้นที่

Setup openclaw

ใช้คำสั่ง openclaw onboard เพื่อ setup openclaw โดยที่จะนำเราไปตั้งค่าการใช้งานเบื้องต้น

openclaw onboard

เลือก

  • AI Provider
  • Add API Key
  • Select Default Model
  • Select Channel: Telegram, WhatApp, Discord, Slack, Line etc.
    • จากให้ตั้งค่า chat ตามแต่ละตัวที่เราเลือก
  • ติดตั้ง skills: จะแสดงเฉพาะ skills ที่ทาง openclaw approve แล้ว โดยเราสามารถ skip ไปก่อนได้
  • การติดตั้ง AI ตัวอื่นๆ
  • Enable Hooks: เลือกได้ว่าต้องการที่จะให้ openclaw ติดตั้งหน่วยความจำได้

หลังจากที่ setup เสร็จแล้ว เราสามารถเลือกได้ว่า จะเปิดมันบนไหน CLI, Web, Connect chat app ซึ่งใน workshop ใช้วิธีการ connect กับ Telegram bot

เริ่มบทสนทนากับ AI

เริ่มต้นเราจะต้องแนะนำตัวและสร้าง persona ของตัวเราและ openclaw เมื่อตั้งค่าเสร็จแล้วเราสามารถคุยกับ ai ได้เลย

Built-in Skills ที่น่าสนใจ

  • skill-creator: เป็นตัว built-in อยู่แล้ว ไว้สำหรับสร้าง skills สำหรับ openclaw
  • clawhub: เป็น registry ที่มีไว้สำหรับค้นหาและติดตั้ง skill
  • summarize: สรุปข้อความยาวๆ / url / ไฟล์
  • nano-pdf: สำหรับอ่านเอกสาร
  • nano-bababa-pro: สร้างหรือแก้ไขรูปภาพ
  • openai-image-gen: สร้างรูปภาพ โดยไปต่อกับทาง DALL-E
  • openai-whisper (Local) / openai-whisper-api (Cloud): แปลงเสียงพูดเป็นข้อความ
  • discord / slack: ส่งข้อความไปยัง channel ของ discord
  • code-agent: เขียนโค๊ดได้หลายภาษา dubug refector
  • github: สร้างและดู issue, จัดการ pull request
  • mcporter: เชื่อมต่อ MCP Server จากภายนอก เรียกใช้ External tools ได้
  • canva: แสดง html สดบน Mac/iOS/Android
  • video-frames: ตัดเฟรมจาก video โดยใช้ timestamp
  • blogwatcher: ติดตามเนื้อหาบล๊อคหรือเว็บไซต์อัตโนมัติ
  • peekaboo: ดูหน้าจอ Device/oct ข้อความบนจอได้
  • และอื่นๆ (มันมีให้เล่นเยอะเขียนไม่หมด) ดูเพิ่มเติมได้ ที่นี้

ถ้าเราต้องการดู skill ทั้งหมด ให้ใช้คำสั่ง

openclaw skills list

show skill lists

และยังมีคำสั่งอื่นๆ อีก 2 คำสั่ง คือ

  • openclaw skills info : ดูรายละเอียดของแต่ละ skill
  • openclaw skills check : เช็คสถานะของแต่ละ skill

สร้าง SKILL.md

เราสามารถสร้าง skill สำหรับให้ ai เรียกใช้งานได้เลย ส่วนฟอร์แมทก็จะเป็นการบอกว่าให้ทำอะไรได้บ้าง ไปเรียกจากที่ไหน และเงื่อนไขต่างๆ

---
name: trello
description: Manage Trello boards, lists, and cards via the Trello REST API.
homepage: https://developer.atlassian.com/cloud/trello/rest/
metadata: {"clawdbot":{"emoji":"📋","requires":{"bins":["jq"],"env":["TRELLO_API_KEY","TRELLO_TOKEN"]}}}
---

# Trello Skill

Manage Trello boards, lists, and cards directly from Clawdbot.

## Setup

1. Get your API key: https://trello.com/app-key
2. Generate a token (click "Token" link on that page)
3. Set environment variables:
   ```bash
   export TRELLO_API_KEY="your-api-key"
   export TRELLO_TOKEN="your-token"
   ```

## Usage

All commands use curl to hit the Trello REST API.

### List boards
```bash
curl -s "https://api.trello.com/1/members/me/boards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" | jq '.[] | {name, id}'
```

### List lists in a board
```bash
curl -s "https://api.trello.com/1/boards/{boardId}/lists?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" | jq '.[] | {name, id}'
```

### List cards in a list
```bash
curl -s "https://api.trello.com/1/lists/{listId}/cards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" | jq '.[] | {name, id, desc}'
```

### Create a card
```bash
curl -s -X POST "https://api.trello.com/1/cards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" \
  -d "idList={listId}" \
  -d "name=Card Title" \
  -d "desc=Card description"
```

### Move a card to another list
```bash
curl -s -X PUT "https://api.trello.com/1/cards/{cardId}?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" \
  -d "idList={newListId}"
```

### Add a comment to a card
```bash
curl -s -X POST "https://api.trello.com/1/cards/{cardId}/actions/comments?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" \
  -d "text=Your comment here"
```

### Archive a card
```bash
curl -s -X PUT "https://api.trello.com/1/cards/{cardId}?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" \
  -d "closed=true"
```

## Notes

- Board/List/Card IDs can be found in the Trello URL or via the list commands
- The API key and token provide full access to your Trello account - keep them secret!
- Rate limits: 300 requests per 10 seconds per API key; 100 requests per 10 seconds per token; `/1/members` endpoints are limited to 100 requests per 900 seconds

## Examples

```bash
# Get all boards
curl -s "https://api.trello.com/1/members/me/boards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN&fields=name,id" | jq

# Find a specific board by name
curl -s "https://api.trello.com/1/members/me/boards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" | jq '.[] | select(.name | contains("Work"))'

# Get all cards on a board
curl -s "https://api.trello.com/1/boards/{boardId}/cards?key=$TRELLO_API_KEY&token=$TRELLO_TOKEN" | jq '.[] | {name, list: .idList}'
```

https://clawhub.ai/steipete/trello

เห็นได้ว่า มันจะเป็นเหมือนการไปเรียกข้อมูลผ่าน API แล้วส่งให้ ai เอาไปใช้งานต่อ


Use Case

ความว้าวของมัน คือ เราสามารถให้มันทำอะไรก็ได้ ขึ้นอยู่กับว่าเราจะอนุญาตให้มันทำงานได้มากแค่ไหน และยิ่งอนุญาตเยอะ ก็ยิ่งทำได้เยอะ แต่ความเสี่ยงก็จะเยอะขึ้นตามไปด้วย เพราะมันสามารถทำอะไรก็ได้

ความเร็วในการทำงาน ค่อนข้างใช้เวลาพอสมควร ดังนั้นแนะนำว่าให้ใช้กับงานที่สามารถรอได้ และไม่เหมาะกับการที่ใช้สำหรับการตอบลูกค้า (แต่ถ้าเร็วกว่านี้ก็สามารถนำไปใช้ได้เช่นกัน)

ตัวอย่างการใช้งาน เช่น

  1. พนักงานต้อนรับบน Line OA
  2. ผู้ช่วยจัดการ Stock
  3. การทำงานเชิงรุก เช่น cronjob สรุปอีเมล์, สรุปข่าว เป็นต้น
  4. สั่งเปิดเพลงบนเครื่อง personal
  5. อ่านอีเมล์และปฏิทิน แล้วส่งสรุปมาให้เรา
  6. และอื่นๆ อีกมากหมาย

ใน workshop มีการโชว์ของมากกว่านี้ แต่ไม่ได้เอามาใส่ในบทความนี้


References