Plugin reference

การแทนที่การติดตั้ง Plugin

การแทนที่แหล่งติดตั้ง Plugin ช่วยให้ผู้ดูแลสามารถกำหนดให้การติดตั้ง Plugin ระหว่างการตั้งค่าใช้แพ็กเกจ npm หรือไฟล์ tarball จาก npm pack ในเครื่องที่ระบุ แทนแหล่งจากแค็ตตาล็อก แพ็กเกจที่รวมมาให้ หรือแหล่ง npm เริ่มต้น ฟังก์ชันนี้มีไว้สำหรับการตรวจสอบ E2E และแพ็กเกจเท่านั้น ผู้ใช้ทั่วไปติดตั้ง Plugin ด้วย openclaw plugins install

สภาพแวดล้อม

การแทนที่จะถูกปิดใช้งาน เว้นแต่จะตั้งค่าตัวแปรทั้งสองรายการ:

bash
export OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1export OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{  "codex": "npm-pack:/tmp/openclaw-codex-2026.5.8.tgz",  "openclaw-web-search": "npm:@openclaw/web-search@2026.5.8"}'

แมปการแทนที่เป็น JSON ที่ใช้รหัส Plugin เป็นคีย์ โดยค่ารองรับรูปแบบต่อไปนี้:

คำนำหน้า แหล่งที่มา
npm:<registry-spec> แพ็กเกจจากรีจิสทรี เวอร์ชันที่เจาะจง หรือแท็ก
npm-pack:<path.tgz> ไฟล์ tarball ในเครื่องที่สร้างด้วย npm pack โดยพาธสัมพัทธ์จะถูกคำนวณจากไดเรกทอรีทำงานปัจจุบัน

ลักษณะการทำงาน

เมื่อโฟลว์ระหว่างการตั้งค่าติดตั้ง Plugin ที่มีรหัสปรากฏอยู่ในแมป OpenClaw จะใช้แหล่งที่ระบุในการแทนที่แทนแหล่งจากแค็ตตาล็อก แพ็กเกจที่รวมมาให้ หรือแหล่ง npm เริ่มต้น การทำงานนี้มีผลกับการเริ่มต้นใช้งานและโฟลว์อื่นใดที่ใช้ตัวติดตั้ง Plugin ระหว่างการตั้งค่าร่วมกัน

  • การแทนที่ยังคงบังคับใช้รหัส Plugin ที่คาดไว้ กล่าวคือ ไฟล์ tarball ที่แมปกับ codex ต้องติดตั้ง Plugin ซึ่งมีรหัสในไฟล์ manifest เป็น codex
  • การแทนที่จะไม่ได้รับสถานะแหล่งที่เชื่อถืออย่างเป็นทางการ แม้โดยปกติรายการใน แค็ตตาล็อกจะเป็นแพ็กเกจที่ OpenClaw เป็นเจ้าของ แต่การแทนที่จะถูกถือว่าเป็น อินพุตทดสอบที่ผู้ปฏิบัติงานจัดเตรียม
  • ไฟล์ .env ของเวิร์กสเปซไม่สามารถเปิดใช้การแทนที่การติดตั้งได้ ตัวแปรสภาพแวดล้อมทั้งสองรายการอยู่ใน รายการ dotenv ของเวิร์กสเปซที่ถูกบล็อก ให้ตั้งค่าในเชลล์ที่เชื่อถือได้ งาน CI หรือ คำสั่งทดสอบระยะไกลที่ใช้เปิด OpenClaw

E2E ของแพ็กเกจ

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

bash
npm pack extensions/codex --pack-destination /tmp OPENCLAW_STATE_DIR="$(mktemp -d)" \OPENCLAW_ALLOW_PLUGIN_INSTALL_OVERRIDES=1 \OPENCLAW_PLUGIN_INSTALL_OVERRIDES='{"codex":"npm-pack:/tmp/openclaw-codex-2026.5.8.tgz"}' \pnpm openclaw onboard --mode local

ตรวจสอบแพ็กเกจที่ติดตั้งภายใต้ไดเรกทอรีสถานะ:

bash
find "$OPENCLAW_STATE_DIR/npm/projects" -path '*/node_modules/@openclaw/codex/package.json' -printgrep -R '"@openclaw/codex"' "$OPENCLAW_STATE_DIR/npm/projects"/*/package-lock.json

สำหรับ E2E ของผู้ให้บริการแบบใช้งานจริง ให้โหลดคีย์ API จริงจากเชลล์ที่เชื่อถือได้หรือข้อมูลลับของ CI ก่อนเรียกใช้คำสั่งทดสอบ ห้ามพิมพ์คีย์ ให้รายงานเฉพาะแหล่งที่มาและระบุว่ามีคีย์อยู่หรือไม่

Was this useful?
On this page

On this page