Advanced setup
การตั้งค่า
สรุปย่อ
เลือกเวิร์กโฟลว์การตั้งค่าตามความถี่ที่ต้องการอัปเดตและว่าต้องการเรียกใช้ Gateway ด้วยตนเองหรือไม่:
- การปรับแต่งอยู่นอกรีโพ: เก็บการกำหนดค่าและเวิร์กสเปซไว้ใน
~/.openclaw/openclaw.jsonและ~/.openclaw/workspace/เพื่อไม่ให้การอัปเดตรีโพแตะต้องรายการเหล่านั้น - เวิร์กโฟลว์เสถียร (แนะนำสำหรับผู้ใช้ส่วนใหญ่): ติดตั้งแอป macOS และให้แอปเรียกใช้ Gateway ที่รวมมาให้
- เวิร์กโฟลว์รุ่นล่าสุดสำหรับนักพัฒนา: เรียกใช้ Gateway ด้วยตนเองผ่าน
pnpm gateway:watchแล้วให้แอป macOS เชื่อมต่อในโหมด Local
ข้อกำหนดเบื้องต้น (จากซอร์ส)
- แนะนำ Node 24.15+ (ยังรองรับ Node 22 LTS ซึ่งขณะนี้คือ
22.22.3+) - จำเป็นต้องมี
pnpmสำหรับการเช็กเอาต์ซอร์ส OpenClaw โหลด Plugin ที่รวมมาให้จากแพ็กเกจ pnpm workspaceextensions/*ในโหมดพัฒนา ดังนั้นnpm installที่รูทจึง ไม่ได้เตรียมซอร์สทรีทั้งหมด - Docker (ไม่บังคับ ใช้เฉพาะการตั้งค่าแบบคอนเทนเนอร์/e2e โปรดดู Docker)
กลยุทธ์การปรับแต่ง (เพื่อไม่ให้การอัปเดตสร้างปัญหา)
หากต้องการให้ "ปรับแต่งตามความต้องการของฉัน 100%" และ อัปเดตได้ง่าย ให้เก็บการปรับแต่งไว้ใน:
- การกำหนดค่า:
~/.openclaw/openclaw.json(คล้าย JSON/JSON5) - เวิร์กสเปซ:
~/.openclaw/workspace(Skills, พรอมต์, ความทรงจำ แนะนำให้สร้างเป็นรีโพ git ส่วนตัว)
บูตสแตรปโฟลเดอร์การกำหนดค่า/เวิร์กสเปซหนึ่งครั้ง โดยไม่เรียกใช้วิซาร์ดเริ่มต้นใช้งานแบบเต็ม:
openclaw setup --baselineหากยังไม่ได้ติดตั้งแบบส่วนกลาง ให้เรียกใช้จากรีโพนี้แทน:
pnpm openclaw setup --baseline(openclaw setup ที่ไม่มี --baseline เป็นนามแฝงของ openclaw onboard และจะเรียกใช้วิซาร์ดแบบโต้ตอบเต็มรูปแบบ)
เรียกใช้ Gateway จากรีโพนี้
หลังจาก pnpm build สามารถเรียกใช้ CLI ที่แพ็กเกจไว้ได้โดยตรง:
node openclaw.mjs gateway --port 18789 --verboseเวิร์กโฟลว์เสถียร (เริ่มจากแอป macOS)
- ติดตั้งและเปิด OpenClaw.app (แถบเมนู)
- ดำเนินการตามรายการตรวจสอบการเริ่มต้นใช้งาน/สิทธิ์ให้ครบถ้วน (พรอมต์ TCC)
- ตรวจสอบว่า Gateway เป็น Local และกำลังทำงานอยู่ (แอปเป็นผู้จัดการ)
- เชื่อมโยงช่องทางต่างๆ (ตัวอย่าง: WhatsApp):
openclaw channels login- ตรวจสอบความพร้อมเบื้องต้น:
openclaw healthหากบิลด์ไม่มีการเริ่มต้นใช้งาน:
- เรียกใช้
openclaw setupตามด้วยopenclaw channels loginแล้วเริ่ม Gateway ด้วยตนเอง (openclaw gateway)
เวิร์กโฟลว์รุ่นล่าสุดสำหรับนักพัฒนา (Gateway ในเทอร์มินัล)
เป้าหมาย: ทำงานกับ Gateway ที่เขียนด้วย TypeScript ใช้การรีโหลดอัตโนมัติ และคงการเชื่อมต่อ UI ของแอป macOS ไว้
0) (ไม่บังคับ) เรียกใช้แอป macOS จากซอร์สด้วย
หากต้องการใช้แอป macOS รุ่นล่าสุดสำหรับนักพัฒนาด้วย:
./scripts/restart-mac.sh1) เริ่ม Gateway สำหรับการพัฒนา
pnpm install# เฉพาะการเรียกใช้ครั้งแรก (หรือหลังรีเซ็ตการกำหนดค่า/เวิร์กสเปซ OpenClaw ภายในเครื่อง)pnpm openclaw setuppnpm gateway:watchgateway:watch เริ่มหรือรีสตาร์ตกระบวนการเฝ้าดู Gateway ในเซสชัน tmux
ที่มีชื่อ (openclaw-gateway-watch-main) และเชื่อมต่อโดยอัตโนมัติจาก
เทอร์มินัลแบบโต้ตอบ เชลล์ที่ไม่โต้ตอบจะยังคงแยกการทำงานและแสดง
tmux attach -t openclaw-gateway-watch-main; ใช้
OPENCLAW_GATEWAY_WATCH_ATTACH=0 pnpm gateway:watch เพื่อให้การเรียกใช้แบบโต้ตอบ
ยังคงแยกการทำงาน หรือใช้ pnpm gateway:watch:raw สำหรับโหมดเฝ้าดูเบื้องหน้า ตัวเฝ้าดู
จะหยุดบริการ Gateway ที่ติดตั้งไว้ของโปรไฟล์ที่ใช้งานอยู่ก่อนเข้าควบคุม
พอร์ตที่กำหนดค่าไว้/พอร์ตเริ่มต้น เพื่อป้องกันไม่ให้ตัวควบคุมบริการแทนที่
กระบวนการจากซอร์ส บริการจะยังคงติดตั้งอยู่ ให้เรียกใช้ pnpm openclaw gateway start
เมื่อเลิกใช้งานโหมดเฝ้าดู พาเนล tmux จะยังคงเปิดอยู่หลังการเริ่มต้นล้มเหลว
เพื่อให้เทอร์มินัลหรือเอเจนต์อื่นเชื่อมต่อหรือบันทึกล็อกได้ ตัวเฝ้าดู
จะรีโหลดเมื่อซอร์ส การกำหนดค่า และข้อมูลเมตาของ Plugin ที่รวมมาให้มีการเปลี่ยนแปลงที่เกี่ยวข้อง หาก
Gateway ที่กำลังเฝ้าดูหยุดทำงานระหว่างการเริ่มต้น gateway:watch จะเรียกใช้
openclaw doctor --fix --non-interactive หนึ่งครั้งแล้วลองใหม่ ตั้งค่า
OPENCLAW_GATEWAY_WATCH_AUTO_DOCTOR=0 เพื่อปิดการซ่อมแซมรอบนี้ซึ่งใช้เฉพาะการพัฒนา
pnpm gateway:watch จะไม่สร้าง dist/control-ui ใหม่ ดังนั้นให้เรียกใช้ pnpm ui:build อีกครั้งหลังจาก ui/ เปลี่ยนแปลง หรือใช้ pnpm ui:dev ขณะพัฒนา Control UI
2) กำหนดให้แอป macOS เชื่อมต่อกับ Gateway ที่กำลังทำงาน
ใน OpenClaw.app:
- Connection Mode: Local แอปจะเชื่อมต่อกับ Gateway ที่กำลังทำงานบนพอร์ตที่กำหนดค่าไว้
3) ตรวจสอบ
- สถานะ Gateway ในแอปควรแสดง "Using existing gateway …"
- หรือตรวจสอบผ่าน CLI:
openclaw healthจุดที่มักทำให้เกิดข้อผิดพลาด
- พอร์ตไม่ถูกต้อง: Gateway WS ใช้
ws://127.0.0.1:18789เป็นค่าเริ่มต้น ให้แอปและ CLI ใช้พอร์ตเดียวกัน - ตำแหน่งจัดเก็บสถานะ:
- สถานะช่องทาง/ผู้ให้บริการ:
~/.openclaw/credentials/ - โปรไฟล์การยืนยันตัวตนของโมเดล:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - เซสชันและบทถอดเสียง:
~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite - อาร์ติแฟกต์เซสชันแบบเดิม/ที่เก็บถาวร:
~/.openclaw/agents/<agentId>/sessions/ - ล็อก:
/tmp/openclaw/
- สถานะช่องทาง/ผู้ให้บริการ:
แผนผังการจัดเก็บข้อมูลประจำตัว
ใช้ข้อมูลนี้เมื่อแก้ไขข้อบกพร่องของการยืนยันตัวตนหรือตัดสินใจว่าจะสำรองข้อมูลใด:
- WhatsApp:
~/.openclaw/credentials/whatsapp/<accountId>/creds.json - โทเค็นบอต Telegram: การกำหนดค่า/ตัวแปรสภาพแวดล้อม หรือ
channels.telegram.tokenFile(ต้องเป็นไฟล์ปกติเท่านั้น ไม่ยอมรับลิงก์สัญลักษณ์) - โทเค็นบอต Discord: การกำหนดค่า/ตัวแปรสภาพแวดล้อม หรือ SecretRef (ผู้ให้บริการ env/file/exec)
- โทเค็น Slack: การกำหนดค่า/ตัวแปรสภาพแวดล้อม (
channels.slack.*) - รายการอนุญาตการจับคู่:
~/.openclaw/credentials/<channel>-allowFrom.json(บัญชีเริ่มต้น)~/.openclaw/credentials/<channel>-<accountId>-allowFrom.json(บัญชีที่ไม่ใช่ค่าเริ่มต้น)
- โปรไฟล์การยืนยันตัวตนของโมเดล:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - เพย์โหลดข้อมูลลับที่จัดเก็บในไฟล์ (ไม่บังคับ):
~/.openclaw/secrets.json - การนำเข้า OAuth แบบเดิม:
~/.openclaw/credentials/oauth.jsonรายละเอียดเพิ่มเติม: ความปลอดภัย
การอัปเดต (โดยไม่ทำลายการตั้งค่า)
- เก็บ
~/.openclaw/workspaceและ~/.openclaw/เป็น "ข้อมูลของคุณ" อย่าใส่พรอมต์/การกำหนดค่าส่วนตัวไว้ในรีโพopenclaw - การอัปเดตซอร์ส:
git pull+pnpm install+ ใช้pnpm gateway:watchต่อไป
Linux (บริการผู้ใช้ systemd)
การติดตั้งบน Linux ใช้บริการ ผู้ใช้ ของ systemd โดยค่าเริ่มต้น systemd จะหยุด บริการของผู้ใช้เมื่อออกจากระบบ/ไม่มีการใช้งาน ซึ่งทำให้ Gateway หยุดทำงาน การเริ่มต้นใช้งานจะพยายามเปิดใช้ การคงบริการหลังออกจากระบบให้ (อาจขอให้ใช้ sudo) หากยังปิดอยู่ ให้เรียกใช้:
sudo loginctl enable-linger $USERสำหรับเซิร์ฟเวอร์ที่ทำงานตลอดเวลาหรือมีผู้ใช้หลายคน ให้พิจารณาใช้บริการระดับ ระบบ แทน บริการผู้ใช้ (ไม่จำเป็นต้องเปิดการคงบริการหลังออกจากระบบ) โปรดดูหมายเหตุเกี่ยวกับ systemd ใน คู่มือการใช้งาน Gateway
เอกสารที่เกี่ยวข้อง
- คู่มือการใช้งาน Gateway (แฟล็ก การควบคุมดูแล พอร์ต)
- การกำหนดค่า Gateway (สคีมาการกำหนดค่าและตัวอย่าง)
- Discord และ Telegram (แท็กตอบกลับและการตั้งค่า replyToMode)
- การตั้งค่าผู้ช่วย OpenClaw
- แอป macOS (วงจรชีวิตของ Gateway)