Community translations by veiseule.ai — Help improve them on Crowdin
Skip to main content

ส่วนขยาย Chrome (browser relay)

ส่วนขยาย Chrome ของ OpenClaw ช่วยให้เอเจนต์ควบคุม แท็บ Chrome ที่มีอยู่ของคุณ (หน้าต่าง Chrome ปกติ) แทนการเปิดโปรไฟล์ Chrome แยกต่างหากที่จัดการโดย openclaw

การแนบ/ยกเลิกการแนบทำผ่าน ปุ่มเดียวบนแถบเครื่องมือของ Chrome

คืออะไร(แนวคิด)

มีองค์ประกอบสามส่วน:

  • Browser control service (Gateway หรือโหนด): API ที่เอเจนต์/เครื่องมือเรียกใช้(ผ่าน Gateway)
  • Local relay server (loopback CDP): ทำหน้าที่เชื่อมระหว่างเซิร์ฟเวอร์ควบคุมกับส่วนขยาย (http://127.0.0.1:18792 เป็นค่าเริ่มต้น)
  • ส่วนขยาย Chrome MV3: แนบกับแท็บที่กำลังใช้งานด้วย chrome.debugger และส่งต่อข้อความ CDP ไปยังรีเลย์

จากนั้น OpenClaw จะควบคุมแท็บที่แนบผ่านพื้นผิวเครื่องมือ browser ตามปกติ(โดยเลือกโปรไฟล์ที่ถูกต้อง)

ติดตั้ง/โหลด(แบบ unpacked)

  1. ติดตั้งส่วนขยายไปยังพาธภายในเครื่องที่เสถียร:
openclaw browser extension install
  1. แสดงพาธไดเรกทอรีของส่วนขยายที่ติดตั้งแล้ว:
openclaw browser extension path
  1. Chrome → chrome://extensions
  • เปิด “Developer mode”
  • “Load unpacked” → เลือกไดเรกทอรีที่พิมพ์ออกมาด้านบน
  1. ปักหมุดส่วนขยาย

อัปเดต(ไม่ต้อง build)

ส่วนขยายถูกจัดส่งมาพร้อมกับรีลีสของ OpenClaw(แพ็กเกจ npm)ในรูปแบบไฟล์สแตติก ไม่มีขั้นตอน “build” แยกต่างหาก ไม่มีขั้นตอน “build” แยกต่างหาก

หลังจากอัปเกรด OpenClaw:

  • รัน openclaw browser extension install อีกครั้งเพื่อรีเฟรชไฟล์ที่ติดตั้งภายใต้ไดเรกทอรีสถานะของ OpenClaw
  • Chrome → chrome://extensions → คลิก “Reload” ที่ส่วนขยาย

การใช้งาน(ไม่ต้องคอนฟิกเพิ่ม)

OpenClaw มาพร้อมโปรไฟล์เบราว์เซอร์ในตัวชื่อ chrome ซึ่งชี้ไปที่ extension relay บนพอร์ตเริ่มต้น

การใช้งาน:

  • CLI: openclaw browser --browser-profile chrome tabs
  • เครื่องมือเอเจนต์: browser พร้อม profile="chrome"

หากต้องการชื่ออื่นหรือพอร์ตรีเลย์อื่น ให้สร้างโปรไฟล์ของคุณเอง:

openclaw browser create-profile \
  --name my-chrome \
  --driver extension \
  --cdp-url http://127.0.0.1:18792 \
  --color "#00AA00"

แนบ/ยกเลิกการแนบ(ปุ่มแถบเครื่องมือ)

  • เปิดแท็บที่คุณต้องการให้ OpenClaw ควบคุม
  • คลิกไอคอนส่วนขยาย
  • แบดจ์จะแสดง ON เมื่อแนบแล้ว
  • คลิกอีกครั้งเพื่อยกเลิกการแนบ

ควบคุมแท็บใดบ้าง?

  • ไม่ได้ควบคุม “แท็บใดก็ตามที่คุณกำลังดูอยู่” โดยอัตโนมัติ
  • ควบคุม เฉพาะแท็บที่คุณแนบอย่างชัดเจน โดยคลิกปุ่มบนแถบเครื่องมือ
  • หากต้องการสลับ: เปิดแท็บอื่นแล้วคลิกไอคอนส่วนขยายในแท็บนั้น

แบดจ์+ข้อผิดพลาดที่พบบ่อย

  • ON: แนบแล้ว; OpenClaw สามารถควบคุมแท็บนั้นได้
  • : กำลังเชื่อมต่อไปยังรีเลย์ภายในเครื่อง
  • !: ไม่สามารถเข้าถึงรีเลย์ได้(พบบ่อยที่สุด: เซิร์ฟเวอร์ browser relay ไม่ได้รันบนเครื่องนี้)

หากคุณเห็น !:

  • ตรวจสอบให้แน่ใจว่า Gateway กำลังรันอยู่ในเครื่องนี้(การตั้งค่าเริ่มต้น)หรือรันโฮสต์โหนดบนเครื่องนี้หาก Gateway อยู่ที่อื่น
  • เปิดหน้า Options ของส่วนขยาย; หน้านี้จะแสดงสถานะการเข้าถึงรีเลย์

Gateway ระยะไกล(ใช้โฮสต์โหนด)

Gateway ภายในเครื่อง(เครื่องเดียวกับ Chrome) — โดยปกติ ไม่ต้องทำอะไรเพิ่ม

หาก Gateway รันอยู่บนเครื่องเดียวกับ Chrome ระบบจะเริ่ม browser control service บน loopback และเริ่มเซิร์ฟเวอร์รีเลย์โดยอัตโนมัติ ส่วนขยายจะสื่อสารกับรีเลย์ภายในเครื่อง ขณะที่การเรียกจาก CLI/เครื่องมือจะไปยัง Gateway ส่วนขยายจะสื่อสารกับรีเลย์ในเครื่อง ส่วนการเรียก CLI/เครื่องมือจะไปที่ Gateway

Gateway ระยะไกล(Gateway รันที่อื่น) — ให้รันโฮสต์โหนด

หาก Gateway รันอยู่บนเครื่องอื่น ให้เริ่มโฮสต์โหนดบนเครื่องที่รัน Chrome Gateway จะพร็อกซีการกระทำของเบราว์เซอร์ไปยังโหนดนั้น ส่วนขยาย+รีเลย์จะคงอยู่ภายในเครื่องของเบราว์เซอร์ Gateway จะพร็อกซีการกระทำของเบราว์เซอร์ไปยังโหนดนั้น ส่วนส่วนขยาย + รีเลย์จะคงอยู่ในเครื่องของเครื่องเบราว์เซอร์

หากมีหลายโหนดเชื่อมต่อ ให้ปักหมุดหนึ่งโหนดด้วย gateway.nodes.browser.node หรือกำหนด gateway.nodes.browser.mode.

Sandboxing(คอนเทนเนอร์ของเครื่องมือ)

หากเซสชันเอเจนต์ของคุณถูก sandboxed(agents.defaults.sandbox.mode != "off") เครื่องมือ browser อาจถูกจำกัด:

  • โดยค่าเริ่มต้น เซสชันที่ถูก sandbox มักจะชี้ไปที่ sandbox browser (target="sandbox") ไม่ใช่ Chrome บนโฮสต์ของคุณ
  • การยึดควบคุมผ่าน extension relay จำเป็นต้องควบคุม browser control server บน โฮสต์

ตัวเลือก:

  • ง่ายที่สุด: ใช้ส่วนขยายจากเซสชัน/เอเจนต์ที่ ไม่ถูก sandbox
  • หรืออนุญาตการควบคุมเบราว์เซอร์บนโฮสต์สำหรับเซสชันที่ถูก sandbox:
{
  agents: {
    defaults: {
      sandbox: {
        browser: {
          allowHostControl: true,
        },
      },
    },
  },
}

จากนั้นตรวจสอบให้แน่ใจว่าเครื่องมือไม่ถูกปฏิเสธโดยนโยบายเครื่องมือ และ(หากจำเป็น)เรียก browser พร้อม target="host".

การดีบัก: openclaw sandbox explain

เคล็ดลับการเข้าถึงระยะไกล

  • ให้ Gateway และโฮสต์โหนดอยู่ใน tailnet เดียวกัน หลีกเลี่ยงการเปิดพอร์ตรีเลย์สู่ LAN หรืออินเทอร์เน็ตสาธารณะ
  • จับคู่โหนดอย่างตั้งใจ ปิดการกำหนดเส้นทางพร็อกซีเบราว์เซอร์หากไม่ต้องการการควบคุมระยะไกล(gateway.nodes.browser.mode="off")

การทำงานของ “extension path”

openclaw browser extension path จะแสดงไดเรกทอรีบนดิสก์ที่ ติดตั้งแล้ว ซึ่งมีไฟล์ส่วนขยายอยู่

CLI ตั้งใจ ไม่แสดงพาธ node_modules. ให้รัน openclaw browser extension install ก่อนเสมอเพื่อคัดลอกส่วนขยายไปยังตำแหน่งที่เสถียรภายใต้ไดเรกทอรีสถานะของ OpenClaw

หากคุณย้ายหรือลบไดเรกทอรีติดตั้งนั้น Chrome จะทำเครื่องหมายว่าส่วนขยายเสียหายจนกว่าคุณจะโหลดใหม่จากพาธที่ถูกต้อง

ผลกระทบด้านความปลอดภัย(โปรดอ่าน)

สิ่งนี้ทรงพลังและมีความเสี่ยง นี่เป็นความสามารถที่ทรงพลังและมีความเสี่ยง ควรปฏิบัติเสมือนว่าคุณให้โมเดล “มีมืออยู่บนเบราว์เซอร์ของคุณ”

  • ส่วนขยายใช้ Chrome debugger API(chrome.debugger) เมื่อแนบแล้ว โมเดลสามารถ: เมื่อเชื่อมต่อแล้ว โมเดลสามารถ:
  • คลิก/พิมพ์/นำทางในแท็บนั้น
  • อ่านเนื้อหาหน้าเว็บ
  • เข้าถึงทุกสิ่งที่เซสชันที่ล็อกอินในแท็บนั้นเข้าถึงได้
  • สิ่งนี้ไม่ได้ถูกแยก เหมือนโปรไฟล์ที่จัดการโดย openclaw โดยเฉพาะ
  • หากคุณแนบกับโปรไฟล์/แท็บที่ใช้ประจำ คุณกำลังให้สิทธิ์เข้าถึงสถานะบัญชีนั้น

คำแนะนำ:

  • ควรใช้โปรไฟล์ Chrome แยกต่างหาก(แยกจากการท่องเว็บส่วนตัว)สำหรับการใช้ extension relay
  • ให้ Gateway และโฮสต์โหนดใดๆอยู่เฉพาะใน tailnet; พึ่งพาการยืนยันตัวตนของ Gateway + การจับคู่โหนด
  • หลีกเลี่ยงการเปิดพอร์ตรีเลย์ผ่าน LAN(0.0.0.0)และหลีกเลี่ยง Funnel(สาธารณะ)
  • รีเลย์จะบล็อก origin ที่ไม่ใช่ส่วนขยาย และต้องใช้โทเคนยืนยันตัวตนภายในสำหรับไคลเอนต์ CDP

เกี่ยวข้อง:

  • ภาพรวมเครื่องมือเบราว์เซอร์: Browser
  • การตรวจสอบความปลอดภัย: Security
  • การตั้งค่า Tailscale: Tailscale