Plugin guides

วิกิหน่วยความจำ

memory-wiki เป็น Plugin แบบรวมมาให้ที่คอมไพล์ความรู้ที่คงทนเป็น วิกิที่นำทางได้: หน้าที่กำหนดผลลัพธ์แน่นอน การกล่าวอ้างแบบมีโครงสร้างพร้อมหลักฐาน ที่มา แดชบอร์ด และไดเจสต์ที่เครื่องอ่านได้

ไม่ได้ใช้แทน Plugin Active Memory การเรียกคืน การเลื่อนระดับ การทำดัชนี และ Dreaming ยังคงเป็นหน้าที่ของแบ็กเอนด์หน่วยความจำที่กำหนดค่าไว้ (memory-core, QMD, Honcho เป็นต้น) memory-wiki ทำงานควบคู่กันและคอมไพล์ ความรู้เป็นเลเยอร์วิกิที่ได้รับการบำรุงรักษา

เปิดใช้ Plugin ก่อนใช้ CLI เครื่องมือ หรือการผสานรวมรันไทม์:

bash
openclaw plugins enable memory-wikiopenclaw gateway restart
เลเยอร์ รับผิดชอบ
Plugin Active Memory การเรียกคืน การค้นหาเชิงความหมาย การเลื่อนระดับ Dreaming รันไทม์หน่วยความจำ
memory-wiki หน้าวิกิที่คอมไพล์แล้ว การสังเคราะห์ที่มีข้อมูลที่มาครบถ้วน แดชบอร์ด การค้นหา/รับ/ใช้วิกิ

กฎเชิงปฏิบัติ:

  • memory_search สำหรับการเรียกคืนแบบกว้างหนึ่งรอบจากคลังข้อมูลใดก็ตามที่กำหนดค่าไว้
  • wiki_search / wiki_get เมื่อต้องการการจัดอันดับเฉพาะวิกิ ที่มา หรือโครงสร้างความเชื่อระดับหน้า
  • memory_search corpus=all เพื่อครอบคลุมทั้งสองเลเยอร์ในการเรียกครั้งเดียว เมื่อ Plugin Active Memory รองรับการเลือกคลังข้อมูล

การตั้งค่าแบบเน้นการทำงานภายในเครื่องที่ใช้กันทั่วไป: ใช้ QMD เป็นแบ็กเอนด์ Active Memory สำหรับการเรียกคืน และ memory-wiki ในโหมด bridge สำหรับหน้าสังเคราะห์ที่คงทน ดู ตัวอย่าง QMD + โหมดบริดจ์ใน การกำหนดค่า

หากโหมดบริดจ์รายงานอาร์ติแฟกต์ที่ส่งออกเป็นศูนย์ แสดงว่า Plugin Active Memory ยังไม่ได้เปิดเผยอินพุตบริดจ์สาธารณะในขณะนี้ ให้รัน openclaw wiki doctor ก่อน จากนั้นยืนยันว่า Plugin Active Memory รองรับอาร์ติแฟกต์สาธารณะ

โหมดห้องนิรภัย

  • isolated (ค่าเริ่มต้น): มีห้องนิรภัยและแหล่งข้อมูลของตนเอง โดยไม่ขึ้นต่อ Plugin Active Memory ใช้สำหรับคลังความรู้ที่คัดสรรและทำงานได้ด้วยตนเอง
  • bridge: อ่านอาร์ติแฟกต์หน่วยความจำและบันทึกเหตุการณ์สาธารณะจาก Plugin Active Memory ผ่านจุดเชื่อมต่อสาธารณะของ SDK Plugin ใช้เพื่อคอมไพล์อาร์ติแฟกต์ที่ Plugin หน่วยความจำส่งออกโดยไม่เข้าถึงส่วนภายในแบบส่วนตัวของ Plugin
  • unsafe-local: ช่องทางเลี่ยงแบบชัดแจ้งสำหรับพาธส่วนตัวภายในเครื่องเดียวกัน ตั้งใจให้เป็นฟีเจอร์ทดลองและไม่รองรับการย้ายข้ามระบบ ใช้เฉพาะเมื่อเข้าใจขอบเขตความเชื่อถือและต้องการการเข้าถึงระบบไฟล์ภายในเครื่องโดยเฉพาะซึ่งโหมดบริดจ์ไม่สามารถให้ได้

โหมดห้องนิรภัยและขอบเขตห้องนิรภัยเป็นตัวเลือกที่แยกจากกัน:

  • vaultMode เลือกแหล่งที่มาของอินพุตวิกิ
  • vault.scope เลือกว่าจะให้เอเจนต์ทั้งหมดใช้ห้องนิรภัยเดียวกัน หรือให้แต่ละเอเจนต์มีห้องนิรภัยย่อยของตนเอง

vault.scope: "global" เป็นค่าเริ่มต้นและคงพฤติกรรมแบบห้องนิรภัยเดียวที่มีอยู่เดิม ใช้ vault.scope: "agent" ร่วมกับโหมด isolated หรือ bridge เมื่อ เอเจนต์ต้องไม่ใช้หน้าวิกิ ไดเจสต์ที่คอมไพล์แล้ว ผลการค้นหา หรือการเขียนร่วมกัน ขอบเขตเอเจนต์ใช้ร่วมกับโหมด unsafe-local ไม่ได้ เนื่องจากพาธส่วนตัวที่กำหนดค่าเหล่านั้น ไม่ใช่อินพุตที่เอเจนต์เป็นเจ้าของ การตรวจสอบความถูกต้องของการกำหนดค่าปฏิเสธ การใช้ร่วมกันนี้

โหมดบริดจ์สามารถทำดัชนีตามตัวสลับการกำหนดค่า bridge.*:

  • อาร์ติแฟกต์หน่วยความจำที่ส่งออก (indexMemoryRoot)
  • บันทึกประจำวัน (indexDailyNotes)
  • รายงาน Dreaming (indexDreamReports)
  • บันทึกเหตุการณ์หน่วยความจำ (followMemoryEvents)

เมื่อโหมดบริดจ์ทำงานและเปิดใช้ bridge.readMemoryArtifacts openclaw wiki status, openclaw wiki doctor และ openclaw wiki bridge import จะส่งผ่าน Gateway ที่กำลังทำงาน เพื่อให้เห็นบริบท Plugin Active Memory เดียวกัน กับหน่วยความจำของเอเจนต์/รันไทม์ หากปิดบริดจ์หรือปิดการอ่านอาร์ติแฟกต์ คำสั่งเหล่านั้นจะคงพฤติกรรมภายในเครื่อง/ออฟไลน์ไว้

โครงสร้างห้องนิรภัย

text
<vault>/  AGENTS.md  WIKI.md  index.md  inbox.md  entities/  concepts/  syntheses/  sources/  reports/  _attachments/  _views/  .openclaw-wiki/

เนื้อหาที่จัดการจะอยู่ภายในบล็อกที่สร้างขึ้น ส่วนบล็อกบันทึกที่มนุษย์เขียน จะถูกเก็บไว้ตลอดการสร้างใหม่

  • sources/: วัตถุดิบดิบที่นำเข้าและหน้าที่อ้างอิงจากบริดจ์/unsafe-local
  • entities/: สิ่งที่คงทน บุคคล ระบบ โครงการ วัตถุ
  • concepts/: แนวคิด นามธรรม รูปแบบ นโยบาย (และเป็นตำแหน่งปลายทางสำหรับการนำเข้า OKF)
  • syntheses/: สรุปที่คอมไพล์แล้วและข้อมูลสรุปรวมที่ได้รับการบำรุงรักษา
  • reports/: แดชบอร์ดที่สร้างขึ้น

การนำเข้า Open Knowledge Format

bash
openclaw wiki okf import ./bundles/ga4

นำเข้าบันเดิล Open Knowledge Format ที่แตกไฟล์แล้วไปยังหน้าแนวคิดของวิกิ เหมาะอย่างยิ่ง เมื่อแค็ตตาล็อกข้อมูล โปรแกรมรวบรวมเอกสาร หรือเอเจนต์เสริมข้อมูลสร้าง OKF อยู่แล้ว: เก็บ OKF ไว้เป็นอาร์ติแฟกต์แลกเปลี่ยนแบบพกพา และให้ memory-wiki แปลงเป็นหน้าแนวคิดและไดเจสต์ที่คอมไพล์แล้วซึ่งเป็นแบบเนทีฟของ OpenClaw

  • ไฟล์ .md ที่ไม่สงวนไว้เป็นเอกสารแนวคิด
  • แต่ละแนวคิดที่นำเข้าต้องมีฟิลด์ frontmatter type ที่ไม่ว่าง หากไม่มี type จะสร้างคำเตือน missing-type และข้ามไฟล์นั้น
  • ยอมรับค่า type ที่ไม่รู้จักเป็นแนวคิดทั่วไป
  • index.md และ log.md ถูกสงวนไว้และจะไม่นำเข้าเป็นแนวคิด
  • ลิงก์ Markdown ที่เสียหรือเป็นลิงก์ภายนอกจะคงไว้โดยไม่เปลี่ยนแปลง

หน้าที่นำเข้าจะถูกทำให้เป็นโครงสร้างแบนภายใต้ concepts/ เพื่อให้ขั้นตอนคอมไพล์ ค้นหา รับ และ แดชบอร์ดที่มีอยู่มองเห็นหน้าเหล่านี้ได้โดยไม่ต้องมีโครงสร้างวิกิที่สอง แต่ละหน้าจะเก็บ ID แนวคิด OKF ดั้งเดิม พาธต้นทาง type, resource, tags, การประทับเวลา และ frontmatter ของผู้ผลิตทั้งหมด ลิงก์ OKF ภายในจะเขียนใหม่ให้ชี้ไปยัง หน้าแนวคิดวิกิที่สร้างขึ้น และยังสร้างรายการ relationships แบบมีโครงสร้างพร้อม kind: okf-link

การกล่าวอ้างและหลักฐานแบบมีโครงสร้าง

หน้าต่าง ๆ มี frontmatter claims แบบมีโครงสร้าง ไม่ใช่เพียงข้อความอิสระ การกล่าวอ้างแต่ละรายการ สามารถมี id, text, status, confidence, evidence[] และ updatedAt รายการหลักฐานแต่ละรายการสามารถมี kind, sourceId, path, lines, weight, confidence, privacyTier, note และ updatedAt

สิ่งนี้ทำให้วิกิทำงานเสมือนเลเยอร์ความเชื่อ ไม่ใช่ที่ทิ้งบันทึกแบบเฉื่อยชา สามารถติดตาม ให้คะแนน โต้แย้ง และคลี่คลายการกล่าวอ้างย้อนกลับไปยังแหล่งข้อมูลได้

เมทาดาทาเอนทิตีสำหรับเอเจนต์

หน้าเอนทิตีมีเมทาดาทาการกำหนดเส้นทางทั่วไปที่ใช้ได้กับบุคคล ทีม ระบบ โครงการ หรือเอนทิตีประเภทอื่น:

  • entityType: ตัวอย่างเช่น person, team, system, project
  • canonicalId: คีย์ระบุตัวตนที่คงที่ระหว่างนามแฝงและการนำเข้า
  • aliases: ชื่อ แฮนเดิล หรือป้ายกำกับที่แปลงไปยังหน้าเดียวกัน
  • privacyTier: สตริงรูปแบบอิสระ โดยถือว่า public ไม่ต้องตรวจสอบ ส่วนค่าอื่น (ตัวอย่างเช่น local-private, sensitive, confirm-before-use) จะถูกทำเครื่องหมายใน reports/privacy-review.md
  • bestUsedFor / notEnoughFor: คำใบ้การกำหนดเส้นทางแบบกระชับ
  • lastRefreshedAt: การประทับเวลาการรีเฟรชแหล่งข้อมูล แยกจากเวลาแก้ไขหน้า
  • personCard: การ์ดกำหนดเส้นทางเฉพาะบุคคลที่เลือกใส่ได้ (แฮนเดิล โซเชียล อีเมล เขตเวลา เลน เรื่องที่ควรถาม เรื่องที่ควรหลีกเลี่ยงการถาม ความเชื่อมั่น ระดับความเป็นส่วนตัว)
  • relationships: ขอบแบบมีชนิดไปยังหน้าที่เกี่ยวข้อง (เป้าหมาย ชนิด น้ำหนัก ความเชื่อมั่น ชนิดหลักฐาน ระดับความเป็นส่วนตัว หมายเหตุ)

สำหรับวิกิบุคคล ให้เริ่มด้วย reports/person-agent-directory.md จากนั้นเปิด หน้าบุคคลด้วย wiki_get ก่อนใช้รายละเอียดการติดต่อหรือข้อเท็จจริงที่อนุมาน

ตัวอย่างหน้าเอนทิตี
yaml
pageType: entityentityType: personid: entity.example-personcanonicalId: maintainer.example-personaliases:- Alex- example-handleprivacyTier: local-privatebestUsedFor:- การกำหนดเส้นทางระบบนิเวศตัวอย่างnotEnoughFor:- การอนุมัติทางกฎหมายlastRefreshedAt: "2026-04-29T00:00:00.000Z"personCard:handles:  - "@example-handle"socials:  - "https://x.example/example-handle"emails:  - [email protected]timezone: America/Chicagolane: ระบบนิเวศตัวอย่างaskFor:  - คำถามเกี่ยวกับการเปิดตัวตัวอย่างavoidAskingFor:  - การตัดสินใจด้านการเรียกเก็บเงินที่ไม่เกี่ยวข้องconfidence: 0.8privacyTier: confirm-before-userelationships:- targetId: entity.other-person  targetTitle: บุคคลอื่น  kind: collaborates-with  confidence: 0.7  evidenceKind: discrawl-statclaims:- id: claim.example.routing  text: Alex มีประโยชน์สำหรับการกำหนดเส้นทางระบบนิเวศตัวอย่าง  status: supported  confidence: 0.9  evidence:    - kind: maintainer-whois      sourceId: source.maintainers      privacyTier: local-private

ไปป์ไลน์การคอมไพล์

การคอมไพล์จะอ่านหน้าวิกิ ปรับสรุปให้เป็นมาตรฐาน และเก็บสแนปช็อตสำหรับเครื่อง ไว้ในสถานะ Plugin SQLite ที่ใช้ร่วมกันของ OpenClaw โค้ดรันไทม์ใช้ สแนปช็อตของเจ้าของที่วงจรชีวิตเป็นผู้ดูแลเพื่อโหลด SQLite ระหว่างการเตรียมพรอมต์แบบอะซิงโครนัส การประกอบพรอมต์แบบซิงโครนัสจะไม่ดึงข้อมูลจาก Markdown หรืออ่านไฟล์แคช เอาต์พุตที่คอมไพล์แล้วยังขับเคลื่อนการทำดัชนีวิกิรอบแรกสำหรับการค้นหา/รับ การค้นหา ID การกล่าวอ้างย้อนกลับไปยังหน้าที่เป็นเจ้าของ ส่วนเสริมพรอมต์แบบกระชับ และการสร้าง รายงาน

การแก้ไขแหล่งข้อมูลและการคืนค่าห้องนิรภัยจะพร้อมให้เครื่องใช้งานหลังจาก คอมไพล์ครั้งถัดไปเท่านั้น การรีสตาร์ทหรือรีเฟรชวงจรชีวิตของ Plugin จะเปรียบเทียบ การเผยแพร่ผลคอมไพล์แบบเชื่อมโยงเหตุและผลของห้องนิรภัยกับ SQLite และปฏิเสธสแนปช็อตจาก สถานะที่ใหม่กว่าซึ่งถูกย้อนกลับ คอมไพเลอร์ที่เริ่มก่อนการย้อนกลับไม่สามารถ เผยแพร่ทับสถานะก่อนหน้าที่คืนค่าแล้วได้ การเตรียมพรอมต์จะไม่สำรวจ ห้องนิรภัยหรือติดตั้งตัวเฝ้าดูไฟล์ หลังจากกักกันการย้อนกลับ การคอมไพล์ในโปรเซสที่กำลังทำงานจะล้างเจ้าของ ทันที ส่วนโปรเซสคอมไพเลอร์แยกต่างหากต้องรีเฟรชวงจรชีวิตของ Plugin เพื่อให้ ดีมอนยืนยันการเผยแพร่แบบคงทนครั้งใหม่ แคชที่คอมไพล์แล้วสามารถสร้างใหม่ได้: แถวแคชจากก่อนยุคการเผยแพร่จะ ถูกถือว่าไม่พบและแทนที่ด้วยการคอมไพล์ครั้งถัดไป โดยจะไม่มีการย้ายข้อมูล

แดชบอร์ดและรายงานสุขภาพ

เมื่อเปิดใช้ render.createDashboards การคอมไพล์จะดูแลแดชบอร์ดภายใต้ reports/:

รายงาน ติดตาม
reports/open-questions.md หน้าที่มีคำถามซึ่งยังไม่ได้ข้อยุติ
reports/contradictions.md คลัสเตอร์บันทึกข้อขัดแย้ง
reports/low-confidence.md หน้าและการกล่าวอ้างที่มีความเชื่อมั่นต่ำ
reports/claim-health.md การกล่าวอ้างที่ไม่มีหลักฐานแบบมีโครงสร้าง
reports/stale-pages.md ความสดใหม่ที่เก่าหรือไม่ทราบ
reports/person-agent-directory.md การ์ดกำหนดเส้นทางบุคคล/เอนทิตี
reports/relationship-graph.md ขอบความสัมพันธ์แบบมีโครงสร้าง
reports/provenance-coverage.md ความครอบคลุมคลาสหลักฐาน
reports/privacy-review.md ระดับความเป็นส่วนตัวที่ไม่ใช่สาธารณะซึ่งต้องตรวจสอบก่อนใช้

การค้นหาและการเรียกข้อมูล

แบ็กเอนด์การค้นหาสองแบบ:

  • shared: ใช้ขั้นตอนการค้นหาหน่วยความจำที่ใช้ร่วมกันเมื่อพร้อมใช้งาน
  • local: ค้นหาวิกิภายในเครื่อง

คลังข้อมูลสามชุด: wiki, memory, all

  • wiki_search / wiki_get ใช้ไดเจสต์ที่คอมไพล์แล้วเป็นรอบแรกเมื่อทำได้
  • ID การกล่าวอ้างจะแปลงกลับไปยังหน้าที่เป็นเจ้าของ
  • การกล่าวอ้างที่ถูกโต้แย้ง/เก่า/สดใหม่มีผลต่อการจัดอันดับ
  • ป้ายกำกับที่มาจะคงอยู่ในผลลัพธ์

โหมดการค้นหา (พารามิเตอร์ --mode / เครื่องมือ mode):

โหมด เพิ่มประสิทธิภาพสำหรับ
auto ค่าเริ่มต้นแบบสมดุล
find-person เอนทิตีที่มีลักษณะเป็นบุคคล นามแฝง แฮนเดิล โซเชียล และ ID มาตรฐาน
route-question การ์ดเอเจนต์ คำแนะนำว่าใช้ถามเรื่องใด/เหมาะใช้กับอะไร และบริบทความสัมพันธ์
source-evidence หน้าต้นทางและเมทาดาทาหลักฐานที่มีโครงสร้าง
raw-claim การอ้างสิทธิ์ที่มีโครงสร้างซึ่งตรงกัน โดยส่งคืนเมทาดาทาของการอ้างสิทธิ์/หลักฐาน

เมื่อผลลัพธ์ตรงกับการอ้างสิทธิ์ที่มีโครงสร้าง wiki_search จะส่งคืน matchedClaimId, matchedClaimStatus, matchedClaimConfidence, evidenceKinds และ evidenceSourceIds ในเพย์โหลดรายละเอียด เอาต์พุตข้อความ จะมีบรรทัด Claim: และ Evidence: แบบกระชับเมื่อมีข้อมูล

เครื่องมือเอเจนต์

เครื่องมือ วัตถุประสงค์
wiki_status โหมดและขอบเขตของ vault ปัจจุบัน เอเจนต์ที่ได้รับการแก้ไขแล้ว สถานะความพร้อมใช้งาน และความพร้อมใช้งานของ Obsidian CLI
wiki_search ค้นหาหน้าวิกิและคลังหน่วยความจำที่ใช้ร่วมกันเมื่อกำหนดค่าไว้ รองรับ mode สำหรับค้นหาบุคคล กำหนดเส้นทางคำถาม ค้นหาหลักฐานต้นทาง หรือเจาะดูการอ้างสิทธิ์ดิบ
wiki_get อ่านหน้าวิกิตาม ID/พาธ โดยย้อนกลับไปใช้คลังหน่วยความจำที่ใช้ร่วมกันเมื่อเปิดใช้การค้นหาแบบใช้ร่วมกันและไม่พบรายการที่ค้นหา
wiki_apply การสังเคราะห์แบบจำกัดขอบเขต/การเปลี่ยนแปลงเมทาดาทา โดยไม่มีการแก้ไขหน้าแบบอิสระ
wiki_lint การตรวจสอบโครงสร้าง ช่องว่างด้านที่มา ข้อขัดแย้ง และคำถามที่ยังไม่มีคำตอบ

Plugin ยังลงทะเบียนส่วนเสริมคลังหน่วยความจำแบบไม่ผูกขาดด้วย เพื่อให้ memory_search และ memory_get แบบใช้ร่วมกันเข้าถึงวิกิได้ เมื่อ Plugin หน่วยความจำ ที่ใช้งานอยู่รองรับการเลือกคลังข้อมูล

พฤติกรรมของพรอมต์และบริบท

เมื่อเปิดใช้ context.includeCompiledDigestPrompt ส่วนหน่วยความจำของพรอมต์ จะผนวกสแนปช็อตที่คอมไพล์แบบกระชับจากสถานะ Plugin ได้แก่ เฉพาะหน้ายอดนิยม เฉพาะการอ้างสิทธิ์ยอดนิยม จำนวนข้อขัดแย้ง จำนวนคำถาม และตัวระบุ ความมั่นใจ/ความสดใหม่ ฟีเจอร์นี้ต้องเปิดใช้โดยเลือกเองเนื่องจากเปลี่ยนรูปแบบพรอมต์ โดยมีความสำคัญหลัก ต่อกลไกบริบทหรือการประกอบพรอมต์ที่ใช้ส่วนเสริมหน่วยความจำ อย่างชัดเจน

การกำหนดค่า

ใส่การกำหนดค่าไว้ใต้ plugins.entries.memory-wiki.config:

json5
{  plugins: {    entries: {      "memory-wiki": {        enabled: true,        config: {          vaultMode: "isolated",          vault: {            scope: "global",            path: "~/.openclaw/wiki/main",            renderMode: "obsidian",          },          obsidian: {            enabled: true,            useOfficialCli: true,            vaultName: "OpenClaw Wiki",            openAfterWrites: false,          },          bridge: {            enabled: false,            readMemoryArtifacts: true,            indexDreamReports: true,            indexDailyNotes: true,            indexMemoryRoot: true,            followMemoryEvents: true,          },          unsafeLocal: {            allowPrivateMemoryCoreAccess: false,            paths: [],          },          ingest: {            autoCompile: true,            maxConcurrentJobs: 1,            allowUrlIngest: true,          },          search: {            backend: "shared",            corpus: "wiki",          },          context: {            includeCompiledDigestPrompt: false,          },          render: {            preserveHumanBlocks: true,            createBacklinks: true,            createDashboards: true,          },        },      },    },  },}

ตัวเลือกหลัก:

คีย์ ค่า / ค่าเริ่มต้น หมายเหตุ
vaultMode isolated (ค่าเริ่มต้น), bridge, unsafe-local เลือกพฤติกรรมของอินพุตและการผสานรวม
vault.scope global (ค่าเริ่มต้น), agent vault ที่ใช้ร่วมกันหนึ่งรายการ หรือ vault ลูกหนึ่งรายการต่อเอเจนต์
vault.path ค่าเริ่มต้นส่วนกลาง ~/.openclaw/wiki/main vault ที่แน่นอนสำหรับขอบเขตส่วนกลาง ส่วนไดเรกทอรีแม่ของขอบเขตเอเจนต์มีค่าเริ่มต้นเป็น ~/.openclaw/wiki
vault.renderMode native (ค่าเริ่มต้น), obsidian
bridge.readMemoryArtifacts ค่าเริ่มต้น true นำเข้าอาร์ติแฟกต์สาธารณะของ Plugin หน่วยความจำที่ใช้งานอยู่
bridge.followMemoryEvents ค่าเริ่มต้น true รวมบันทึกเหตุการณ์ในโหมดบริดจ์
unsafeLocal.allowPrivateMemoryCoreAccess ค่าเริ่มต้น false จำเป็นสำหรับการเรียกใช้การนำเข้า unsafe-local
unsafeLocal.paths ค่าเริ่มต้น [] พาธภายในเครื่องที่ระบุอย่างชัดเจนเพื่อนำเข้าในโหมด unsafe-local
search.backend shared (ค่าเริ่มต้น), local
search.corpus wiki (ค่าเริ่มต้น), memory, all
context.includeCompiledDigestPrompt ค่าเริ่มต้น false ผนวกสแนปช็อตสรุปแบบกระชับของเอเจนต์ที่เลือกไว้เข้ากับส่วนหน่วยความจำของพรอมต์
render.createBacklinks ค่าเริ่มต้น true สร้างบล็อกที่เกี่ยวข้องแบบกำหนดผลลัพธ์ได้แน่นอน
render.createDashboards ค่าเริ่มต้น true สร้างหน้าแดชบอร์ด

vault แยกตามเอเจนต์

ตั้งค่า vault.scope เป็น agent เพื่อให้เอเจนต์ที่กำหนดค่าแต่ละตัวมีวิกิแยกกัน ในขอบเขตนี้ vault.path คือไดเรกทอรีแม่ และ OpenClaw จะผนวก ID เอเจนต์ที่ผ่านการปรับรูปแบบ:

json5
{  agents: {    list: [{ id: "support" }, { id: "marketing" }],  },  plugins: {    entries: {      "memory-wiki": {        enabled: true,        config: {          vaultMode: "bridge",          vault: {            scope: "agent",            path: "~/.openclaw/wiki",          },          bridge: {            enabled: true,            readMemoryArtifacts: true,          },        },      },    },  },}

การตั้งค่านี้จะแก้ไขเป็น ~/.openclaw/wiki/support และ ~/.openclaw/wiki/marketing หากละเว้น vault.path ในขอบเขตเอเจนต์ ไดเรกทอรีแม่จะมีค่าเริ่มต้นเป็น ~/.openclaw/wiki ดังนั้นเอเจนต์ main เริ่มต้นจึงยังคงใช้ พาธ ~/.openclaw/wiki/main ที่มีอยู่

เครื่องมือเอเจนต์ สรุปพรอมต์ที่คอมไพล์ และส่วนเสริมวิกิที่เปิดเผยผ่าน memory_search / memory_get จะแก้ไข vault จากบริบทเอเจนต์ที่ใช้งานอยู่ สำหรับการเรียก CLI และ Gateway ในการตั้งค่าที่มีเอเจนต์หลายตัว ให้ระบุ เอเจนต์อย่างชัดเจนด้วย openclaw wiki --agent <agentId> ... หรือ agentId ของคำขอ Gateway เอเจนต์ที่กำหนดค่าไว้เพียงตัวเดียวยังคงเป็นค่าเริ่มต้นเมื่อไม่ได้ระบุ ID

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

ตัวอย่าง: QMD + โหมดบริดจ์

ใช้รูปแบบนี้เมื่อต้องการใช้ QMD สำหรับการเรียกคืนข้อมูล และใช้ memory-wiki เป็น ชั้นความรู้ที่ได้รับการดูแล แต่ละชั้นจะมุ่งเน้นหน้าที่ของตนเอง โดย QMD ทำให้บันทึกดิบ การส่งออก เซสชัน และคอลเลกชันเพิ่มเติมยังค้นหาได้ ขณะที่ memory-wiki คอมไพล์ เอนทิตีที่เสถียร การอ้างสิทธิ์ แดชบอร์ด และหน้าต้นทาง

json5
{  memory: {    backend: "qmd",  },  plugins: {    entries: {      "memory-wiki": {        enabled: true,        config: {          vaultMode: "bridge",          bridge: {            enabled: true,            readMemoryArtifacts: true,            indexDreamReports: true,            indexDailyNotes: true,            indexMemoryRoot: true,            followMemoryEvents: true,          },          search: {            backend: "shared",            corpus: "all",          },          context: {            includeCompiledDigestPrompt: false,          },        },      },    },  },}

รูปแบบนี้ทำให้ QMD ยังคงรับผิดชอบการเรียกคืน Active Memory, memory-wiki มุ่งเน้น หน้าที่คอมไพล์และแดชบอร์ด และรูปแบบพรอมต์ยังคงไม่เปลี่ยนแปลงจนกว่าจะ เปิดใช้พรอมต์สรุปที่คอมไพล์โดยตั้งใจ

CLI

bash
openclaw wiki statusopenclaw wiki doctoropenclaw wiki initopenclaw wiki ingest ./notes/alpha.mdopenclaw wiki compileopenclaw wiki lintopenclaw wiki search "alpha"openclaw wiki get entity.alphaopenclaw wiki apply synthesis "Alpha Summary" --body "..." --source-id source.alphaopenclaw wiki bridge importopenclaw wiki obsidian status

ดูข้อมูลอ้างอิงคำสั่งทั้งหมดที่ CLI: wiki ซึ่งรวมถึง wiki okf import, wiki apply metadata, wiki unsafe-local import, wiki chatgpt import / wiki chatgpt rollback และชุดคำสั่งย่อย wiki obsidian ทั้งหมด

การรองรับ Obsidian

เมื่อ vault.renderMode เป็น obsidian Plugin จะเขียน Markdown ที่เหมาะกับ Obsidian และเลือกใช้ CLI obsidian อย่างเป็นทางการได้สำหรับการตรวจสอบ สถานะ การค้นหา vault การเปิดหน้า การเรียกคำสั่ง และการไปยัง บันทึกประจำวัน ฟีเจอร์นี้เป็นทางเลือก วิกิยังคงทำงานในโหมดเนทีฟได้โดยไม่มี Obsidian

vault ที่มีขอบเขตตามเอเจนต์ยังคงใช้ Markdown ที่เหมาะกับ Obsidian ได้ แต่การตรวจสอบ การกำหนดค่าจะปฏิเสธ obsidian.useOfficialCli: true เมื่อใช้ร่วมกับ vault.scope: "agent" การตั้งค่า obsidian.vaultName ปัจจุบันเป็นแบบส่วนกลางและไม่สามารถเลือก Obsidian vault ที่แตกต่างกันสำหรับเอเจนต์แต่ละตัวได้ ให้ใช้เครื่องมือวิกิและการดำเนินการ CLI แทน หรือเก็บวิกิที่ดำเนินการด้วย Obsidian ไว้ในขอบเขตส่วนกลาง

เวิร์กโฟลว์ที่แนะนำ

  • คง Plugin หน่วยความจำที่ใช้งานอยู่ไว้สำหรับการเรียกคืน

    การเรียกคืน การเลื่อนระดับ และ Dreaming ยังคงอยู่ภายใต้การดูแลของแบ็กเอนด์หน่วยความจำที่กำหนดค่าไว้

  • เปิดใช้ memory-wiki

    เริ่มด้วยโหมด isolated เว้นแต่ต้องการใช้โหมดบริดจ์อย่างชัดเจน

  • ใช้ wiki_search / wiki_get เมื่อที่มาของข้อมูลมีความสำคัญ

    ควรใช้รายการเหล่านี้แทน memory_search เมื่อต้องการการจัดอันดับเฉพาะของวิกิหรือโครงสร้างความเชื่อระดับหน้า

  • ใช้ wiki_apply สำหรับการสังเคราะห์แบบเฉพาะเจาะจงหรือการอัปเดตข้อมูลเมตา

    หลีกเลี่ยงการแก้ไขบล็อกที่ระบบจัดการและสร้างขึ้นด้วยตนเอง

  • เรียกใช้ wiki_lint หลังการเปลี่ยนแปลงที่มีนัยสำคัญ

    ตรวจจับข้อขัดแย้ง คำถามที่ยังไม่มีคำตอบ และช่องว่างของที่มาข้อมูล

  • เปิดแดชบอร์ดเพื่อให้มองเห็นข้อมูลล้าสมัยและข้อขัดแย้ง

    ตั้งค่า render.createDashboards: true (ค่าเริ่มต้น)

  • เอกสารที่เกี่ยวข้อง

    Was this useful?
    On this page

    On this page