Bundled plugin guides
ویکی حافظه
memory-wiki یک Plugin همراه است که حافظه پایدار را به یک
مخزن دانش کامپایلشده تبدیل میکند.
این Plugin جایگزین Plugin حافظه فعال نمیشود. Plugin حافظه فعال همچنان
مالک یادآوری، ارتقا، نمایهسازی، و Dreaming است. memory-wiki کنار آن قرار میگیرد
و دانش پایدار را به یک ویکی قابل پیمایش با صفحههای قطعی،
ادعاهای ساختیافته، منشأ، داشبوردها، و چکیدههای قابل خواندن توسط ماشین کامپایل میکند.
از آن زمانی استفاده کنید که میخواهید حافظه بیشتر شبیه یک لایه دانش نگهداریشده رفتار کند و کمتر شبیه تودهای از فایلهای Markdown باشد.
آنچه اضافه میکند
- یک مخزن ویکی اختصاصی با چیدمان صفحه قطعی
- فراداده ساختیافته ادعا و شواهد، نه فقط نثر
- منشأ، اطمینان، تناقضها، و پرسشهای باز در سطح صفحه
- چکیدههای کامپایلشده برای مصرفکنندگان عامل/زمان اجرا
- ابزارهای جستجو/دریافت/اعمال/بررسی بومی ویکی
- درونریزیهای Open Knowledge Format به مفاهیم ویکی کامپایلشده
- حالت پل اختیاری که مصنوعات عمومی را از Plugin حافظه فعال درونریزی میکند
- حالت رندر سازگار با Obsidian و یکپارچهسازی CLI اختیاری
نحوه جایگیری آن در کنار حافظه
این جداسازی را اینگونه در نظر بگیرید:
| لایه | مالک |
|---|---|
Plugin حافظه فعال (memory-core، QMD، Honcho، و غیره) |
یادآوری، جستجوی معنایی، ارتقا، Dreaming، زمان اجرای حافظه |
memory-wiki |
صفحههای ویکی کامپایلشده، ترکیبهای سرشار از منشأ، داشبوردها، جستجو/دریافت/اعمال اختصاصی ویکی |
اگر Plugin حافظه فعال مصنوعات یادآوری مشترک را ارائه کند، OpenClaw میتواند
هر دو لایه را در یک گذر با memory_search corpus=all جستجو کند.
وقتی به رتبهبندی اختصاصی ویکی، منشأ، یا دسترسی مستقیم به صفحه نیاز دارید، بهجای آن از ابزارهای بومی ویکی استفاده کنید.
الگوی ترکیبی پیشنهادی
یک پیشفرض قوی برای راهاندازیهای محلیاول این است:
- QMD بهعنوان پشتوانه حافظه فعال برای یادآوری و جستجوی معنایی گسترده
memory-wikiدر حالتbridgeبرای صفحههای دانش ترکیبشده و پایدار
این جداسازی خوب کار میکند، چون هر لایه متمرکز میماند:
- QMD یادداشتهای خام، خروجیهای نشست، و مجموعههای اضافی را قابل جستجو نگه میدارد
memory-wikiموجودیتهای پایدار، ادعاها، داشبوردها، و صفحههای منبع را کامپایل میکند
قاعده عملی:
- وقتی یک گذر یادآوری گسترده روی حافظه میخواهید، از
memory_searchاستفاده کنید - وقتی نتایج ویکی آگاه از منشأ میخواهید، از
wiki_searchوwiki_getاستفاده کنید - وقتی میخواهید جستجوی مشترک هر دو لایه را پوشش دهد، از
memory_search corpus=allاستفاده کنید
اگر حالت پل صفر مصنوع صادرشده گزارش کند، Plugin حافظه فعال در حال حاضر
ورودیهای عمومی پل را ارائه نمیکند. ابتدا openclaw wiki doctor را اجرا کنید،
سپس تأیید کنید که Plugin حافظه فعال از مصنوعات عمومی پشتیبانی میکند.
وقتی حالت پل فعال است و bridge.readMemoryArtifacts فعال شده،
openclaw wiki status، openclaw wiki doctor، و openclaw wiki bridge import از طریق Gateway در حال اجرا میخوانند. این کار بررسیهای پل CLI را
با زمینه Plugin حافظه زمان اجرا همراستا نگه میدارد. اگر پل غیرفعال باشد یا خواندن مصنوعات
خاموش شده باشد، آن دستورها رفتار محلی/آفلاین خود را حفظ میکنند.
حالتهای مخزن
memory-wiki از سه حالت مخزن پشتیبانی میکند:
isolated
مخزن خودش، منابع خودش، بدون وابستگی به memory-core.
وقتی میخواهید ویکی ذخیره دانش گزینششده خودش باشد، از این استفاده کنید.
bridge
مصنوعات عمومی حافظه و رویدادهای حافظه را از Plugin حافظه فعال از طریق مرزهای عمومی SDK Plugin میخواند.
وقتی میخواهید ویکی مصنوعات صادرشده Plugin حافظه را بدون ورود به درونسازهای خصوصی Plugin کامپایل و سازماندهی کند، از این استفاده کنید.
حالت پل میتواند این موارد را نمایه کند:
- مصنوعات حافظه صادرشده
- گزارشهای رویا
- یادداشتهای روزانه
- فایلهای ریشه حافظه
- لاگهای رویداد حافظه
unsafe-local
راه فرار صریح همانماشین برای مسیرهای خصوصی محلی.
این حالت عمداً آزمایشی و غیرقابلحمل است. فقط زمانی از آن استفاده کنید که مرز اعتماد را میفهمید و مشخصاً به دسترسی فایلسیستم محلی نیاز دارید که حالت پل نمیتواند فراهم کند.
چیدمان مخزن
Plugin یک مخزن را اینگونه مقداردهی اولیه میکند:
<vault>/ AGENTS.md WIKI.md index.md inbox.md entities/ concepts/ syntheses/ sources/ reports/ _attachments/ _views/ .openclaw-wiki/محتوای مدیریتشده داخل بلوکهای تولیدشده میماند. بلوکهای یادداشت انسانی حفظ میشوند.
گروههای اصلی صفحه عبارتاند از:
sources/برای مواد خام درونریزیشده و صفحههای پشتیبانیشده با پلentities/برای چیزها، افراد، سامانهها، پروژهها، و اشیای پایدارconcepts/برای ایدهها، انتزاعها، الگوها، و سیاستهاsyntheses/برای خلاصههای کامپایلشده و گردآوریهای نگهداریشدهreports/برای داشبوردهای تولیدشده
درونریزیهای Open Knowledge Format
memory-wiki میتواند بستههای بازشده Open Knowledge Format را با این دستور درونریزی کند:
openclaw wiki okf import ./bundles/ga4این تمیزترین تناسب را زمانی دارد که یک کاتالوگ داده، خزنده مستندات، یا
عامل غنیسازی از قبل OKF تولید میکند: OKF را بهعنوان مصنوع تبادل قابلحمل
نگه دارید، سپس بگذارید memory-wiki آن را به صفحههای مفهومی بومی OpenClaw و
چکیدههای کامپایلشده تبدیل کند.
درونریز از شکل OKF v0.1 پیروی میکند:
- فایلهای غیررزروشده
.mdسندهای مفهومی هستند - هر مفهوم درونریزیشده به یک فیلد frontmatter غیرخالی
typeنیاز دارد - مقادیر ناشناخته
typeدر OKF پذیرفته میشوند - فایلهای رزروشده
index.mdوlog.mdبهعنوان مفهوم درونریزی نمیشوند - پیوندهای Markdown خراب یا خارجی حفظ میشوند
صفحههای مفهومی درونریزیشده زیر concepts/ تخت میشوند تا مسیرهای موجود کامپایل،
جستجو، دریافت، داشبورد، و چکیده پرامپت آنها را بدون افزودن یک درخت دوم ویکی ببینند.
هر صفحه شناسه مفهوم OKF اصلی، مسیر منبع، type،
resource، tags، زمانمهر، و frontmatter کامل تولیدکننده را نگه میدارد. پیوندهای داخلی OKF
به صفحههای مفهومی تولیدشده ویکی بازنویسی میشوند و همچنین بهعنوان ورودیهای ساختیافته
relationships با kind: okf-link منتشر میشوند.
ادعاهای ساختیافته و شواهد
صفحهها میتوانند frontmatter ساختیافته claims داشته باشند، نه فقط متن آزاد.
هر ادعا میتواند شامل این موارد باشد:
idtextstatusconfidenceevidence[]updatedAt
ورودیهای شواهد میتوانند شامل این موارد باشند:
kindsourceIdpathlinesweightconfidenceprivacyTiernoteupdatedAt
این همان چیزی است که باعث میشود ویکی بیشتر شبیه یک لایه باور عمل کند تا یک انباشت منفعل از یادداشتها. ادعاها میتوانند ردیابی، امتیازدهی، به چالش کشیده، و به منابع برگردانده و حلوفصل شوند.
فراداده موجودیت روبهروی عامل
صفحههای موجودیت همچنین میتوانند فراداده مسیریابی برای استفاده عامل داشته باشند. این frontmatter عمومی است، بنابراین برای افراد، تیمها، سامانهها، پروژهها، یا هر نوع موجودیت دیگر کار میکند.
فیلدهای رایج شامل این موارد هستند:
entityType: برای مثالperson،team،system، یاprojectcanonicalId: کلید هویت پایدار که در نامهای مستعار و درونریزیها استفاده میشودaliases: نامها، شناسهها، یا برچسبهایی که باید به همان صفحه resolve شوندprivacyTier:public،local-private،sensitive، یاconfirm-before-usebestUsedFor/notEnoughFor: راهنماییهای فشرده مسیریابیlastRefreshedAt: زمانمهر تازهسازی منبع جدا از زمان ویرایش صفحهpersonCard: کارت مسیریابی اختیاری ویژه شخص با شناسهها، شبکههای اجتماعی، ایمیلها، منطقه زمانی، مسیر، موارد درخواست، مواردی که نباید درخواست شوند، اطمینان، و حریم خصوصیrelationships: یالهای نوعدار به صفحههای مرتبط با هدف، نوع، وزن، اطمینان، نوع شواهد، رده حریم خصوصی، و یادداشت
برای یک ویکی افراد، عامل معمولاً باید با
reports/person-agent-directory.md شروع کند، سپس پیش از استفاده از جزئیات تماس یا واقعیتهای استنباطشده،
صفحه شخص را با wiki_get باز کند.
مثال:
pageType: entityentityType: personid: entity.brad-grouxcanonicalId: maintainer.brad-grouxaliases: - Brad - bgrouxprivacyTier: local-privatebestUsedFor: - Microsoft Teams and Azure routingnotEnoughFor: - legal approvallastRefreshedAt: "2026-04-29T00:00:00.000Z"personCard: handles: - "@bgroux" socials: - "https://x.example/bgroux" emails: - brad@example.com timezone: America/Chicago lane: Microsoft ecosystem askFor: - Teams rollout questions avoidAskingFor: - unrelated billing decisions confidence: 0.8 privacyTier: confirm-before-userelationships: - targetId: entity.alice targetTitle: Alice kind: collaborates-with confidence: 0.7 evidenceKind: discrawl-statclaims: - id: claim.brad.teams text: Brad is useful for Microsoft Teams routing. status: supported confidence: 0.9 evidence: - kind: maintainer-whois sourceId: source.maintainers privacyTier: local-privateخط لوله کامپایل
مرحله کامپایل صفحههای ویکی را میخواند، خلاصهها را نرمال میکند، و مصنوعات پایدار روبروی ماشین را زیر این مسیرها منتشر میکند:
.openclaw-wiki/cache/agent-digest.json.openclaw-wiki/cache/claims.jsonl
این چکیدهها وجود دارند تا عاملها و کد زمان اجرا مجبور نباشند صفحههای Markdown را استخراج کنند.
خروجی کامپایلشده همچنین این موارد را تأمین میکند:
- نمایهسازی گذر نخست ویکی برای جریانهای جستجو/دریافت
- جستجوی شناسه ادعا به صفحههای مالک
- مکملهای فشرده پرامپت
- تولید گزارش/داشبورد
داشبوردها و گزارشهای سلامت
وقتی render.createDashboards فعال باشد، کامپایل داشبوردها را زیر
reports/ نگهداری میکند.
گزارشهای داخلی شامل این موارد هستند:
reports/open-questions.mdreports/contradictions.mdreports/low-confidence.mdreports/claim-health.mdreports/stale-pages.mdreports/person-agent-directory.mdreports/relationship-graph.mdreports/provenance-coverage.mdreports/privacy-review.md
این گزارشها مواردی مانند اینها را ردیابی میکنند:
- خوشههای یادداشت تناقض
- خوشههای ادعای رقیب
- ادعاهای فاقد شواهد ساختیافته
- صفحهها و ادعاهای کماطمینان
- تازگی کهنه یا نامعلوم
- صفحههای دارای پرسشهای حلنشده
- کارتهای مسیریابی شخص/موجودیت
- یالهای رابطه ساختیافته
- پوشش کلاس شواهد
- ردههای حریم خصوصی غیرعمومی که پیش از استفاده نیازمند بازبینی هستند
جستجو و بازیابی
memory-wiki از دو پشتوانه جستجو پشتیبانی میکند:
shared: استفاده از جریان جستجوی حافظه مشترک در صورت دسترسیlocal: جستجوی محلی ویکی
همچنین از سه پیکره پشتیبانی میکند:
wikimemoryall
رفتار مهم:
wiki_searchوwiki_getدر صورت امکان از چکیدههای کامپایلشده بهعنوان گذر نخست استفاده میکنند- شناسههای ادعا میتوانند به صفحه مالک برگردانده شوند
- ادعاهای مورد مناقشه/کهنه/تازه بر رتبهبندی اثر میگذارند
- برچسبهای منشأ میتوانند در نتایج باقی بمانند
- حالت جستجو میتواند رتبهبندی را برای یافتن شخص، مسیریابی پرسش، شواهد منبع، یا ادعاهای خام سوگیری دهد
قاعده عملی:
- برای یک گذر یادآوری گسترده از
memory_search corpus=allاستفاده کنید - وقتی رتبهبندی اختصاصی ویکی، منشأ، یا ساختار باور در سطح صفحه برایتان مهم است،
از
wiki_search+wiki_getاستفاده کنید
حالتهای جستجو:
auto: پیشفرض متوازنfind-person: تقویت موجودیتهای شبیه شخص، نامهای مستعار، شناسهها، شبکههای اجتماعی، و شناسههای canonicalroute-question: تقویت کارتهای عامل، راهنماییهای ask-for، راهنماییهای best-used-for، و زمینه رابطهsource-evidence: تقویت صفحههای منبع و فراداده شواهد ساختیافتهraw-claim: تقویت ادعاهای ساختیافته منطبق و بازگرداندن فراداده ادعا/شواهد در نتایج
وقتی یک نتیجه با یک ادعای ساختیافته منطبق شود، wiki_search میتواند
matchedClaimId، matchedClaimStatus، matchedClaimConfidence،
evidenceKinds، و evidenceSourceIds را در payload جزئیات خود برگرداند. خروجی متن
همچنین در صورت دسترسی، خطهای فشرده Claim: و Evidence: را شامل میشود.
ابزارهای عامل
Plugin این ابزارها را ثبت میکند:
wiki_statuswiki_searchwiki_getwiki_applywiki_lint
کاری که انجام میدهند:
wiki_status: حالت مخزن فعلی، سلامت، دسترسپذیری CLI Obsidianwiki_search: جستجوی صفحههای ویکی و، در صورت پیکربندی، پیکرههای حافظه مشترک؛modeرا برای یافتن شخص، مسیریابی پرسش، شواهد منبع، یا واکاوی ادعای خام میپذیردwiki_get: خواندن یک صفحه ویکی بر اساس شناسه/مسیر یا بازگشت به پیکره حافظه مشترکwiki_apply: جهشهای محدود ترکیب/فراداده بدون جراحی آزاد صفحهwiki_lint: بررسیهای ساختاری، شکافهای منشأ، تناقضها، پرسشهای باز
این Plugin همچنین یک مکمل غیرانحصاری برای پیکرهٔ حافظه ثبت میکند، بنابراین memory_search و memory_get مشترک میتوانند وقتی Plugin حافظهٔ فعال از انتخاب پیکره پشتیبانی میکند به ویکی دسترسی داشته باشند.
رفتار پرامپت و زمینه
وقتی context.includeCompiledDigestPrompt فعال باشد، بخشهای پرامپت حافظه یک اسنپشات فشرده و کامپایلشده از agent-digest.json را اضافه میکنند.
این اسنپشات عمداً کوچک و پرسیگنال است:
- فقط صفحههای برتر
- فقط ادعاهای برتر
- تعداد تناقضها
- تعداد پرسشها
- توصیفگرهای اطمینان/تازگی
این گزینه اختیاری است، چون شکل پرامپت را تغییر میدهد و عمدتاً برای موتورهای زمینه یا مونتاژ پرامپت قدیمی مفید است که بهطور صریح مکملهای حافظه را مصرف میکنند.
پیکربندی
پیکربندی را زیر plugins.entries.memory-wiki.config قرار دهید:
{ plugins: { entries: { "memory-wiki": { enabled: true, config: { vaultMode: "isolated", vault: { 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, }, 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-localvault.renderMode:nativeیاobsidianbridge.readMemoryArtifacts: وارد کردن مصنوعات عمومی Plugin حافظهٔ فعالbridge.followMemoryEvents: شامل کردن لاگهای رویداد در حالت پلsearch.backend:sharedیاlocalsearch.corpus:wiki،memory، یاallcontext.includeCompiledDigestPrompt: افزودن اسنپشات خلاصهٔ فشرده به بخشهای پرامپت حافظهrender.createBacklinks: تولید بلوکهای مرتبط قطعیrender.createDashboards: تولید صفحههای داشبورد
مثال: حالت QMD + پل
وقتی میخواهید QMD برای بازیابی و memory-wiki برای یک لایهٔ دانشی نگهداریشده باشد، از این استفاده کنید:
{ 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
- تمرکز
memory-wikiبر صفحهها و داشبوردهای کامپایلشده - شکل پرامپت بدون تغییر تا زمانی که عمداً پرامپتهای خلاصهٔ کامپایلشده را فعال کنید
CLI
memory-wiki همچنین یک سطح CLI سطحبالا ارائه میدهد:
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 را ببینید.
پشتیبانی Obsidian
وقتی vault.renderMode برابر obsidian باشد، Plugin Markdown سازگار با Obsidian مینویسد و میتواند بهصورت اختیاری از CLI رسمی obsidian استفاده کند.
گردشکارهای پشتیبانیشده شامل این موارد هستند:
- بررسی وضعیت
- جستوجوی vault
- باز کردن یک صفحه
- فراخوانی یک فرمان Obsidian
- رفتن به یادداشت روزانه
این اختیاری است. ویکی در حالت بومی بدون Obsidian همچنان کار میکند.
گردشکار پیشنهادی
- Plugin حافظهٔ فعال خود را برای بازیابی/ترفیع/Dreaming نگه دارید.
memory-wikiرا فعال کنید.- با حالت
isolatedشروع کنید، مگر اینکه صراحتاً حالت پل را بخواهید. - وقتی منشأ اهمیت دارد از
wiki_search/wiki_getاستفاده کنید. - برای سنتزهای محدود یا بهروزرسانیهای فراداده از
wiki_applyاستفاده کنید. - پس از تغییرات معنادار
wiki_lintرا اجرا کنید. - اگر دیدپذیری موارد کهنه/تناقضها را میخواهید، داشبوردها را روشن کنید.