تخطَّ إلى المحتوى

البدء

لـ OpenCode v2، أضف الحزمة إلى قائمة plugins الأصلية:

{
"plugins": ["opencode-mem@latest"],
}

يحمّل OpenCode أيضًا رفيق الحزمة ./tui تلقائيًا حتى تظهر إشعارات الالتقاط التلقائي / الملف / الأخطاء في TUI (مكونات الخادم الإضافية لا يمكنها استدعاء ui.toast مباشرة). لا تحتاج إدخالًا ثانيًا في plugins. إذا شغّلت TUI من سطر الأوامر فقط ضد خادم OpenCode بعيد، سجّل opencode-mem/tui في قائمة مكونات ذلك CLI (مثلًا cli.json) حتى يتمكن الرفيق من الاشتراك في أحداث toast عبر RPC.

لـ OpenCode v1، أضف نقطة الدخول الافتراضية إلى إعداداتك في ~/.config/opencode/opencode.json:

{
"plugin": ["opencode-mem@latest"],
}

مع @latest (أو نطاق semver) وautoUpdate: true في opencode-mem.jsonc (الافتراضي)، يمسح المكون الإضافي تثبيت OpenCode المخزَّن مؤقتًا عندما يتوفر إصدار npm أحدث ويطلب منك إعادة التشغيل. الإصدارات المثبتة مثل opencode-mem@2.26.0 لا تُحدَّث تلقائيًا أبدًا.

سياق الذاكرة التلقائي على OpenCode v2

Section titled “سياق الذاكرة التلقائي على OpenCode v2”

يوفّر مكون v2 الإضافي سياق ذاكرة تلقائيًا عبر سياق نظام النموذج. لا تُضاف هذه الكتل إلى مطالبة المستخدم المؤلفة ولا تُخزَّن في نص المحادثة. مع chatMessage.injectOn: "first" (الافتراضي)، يُحتفظ بالسياق الأولي للجلسة عبر دورات المستخدم وخطوات النموذج. مع "always"، يُحدَّث عند كل دورة مستخدم مؤلفة.

بعد إعادة تشغيل المضيف أو المكون الإضافي، تعيد الجلسة المستأنفة بناء سياقها من مخزن الذاكرة الحالي عند طلب النموذج التالي، حتى لو لم تصل مطالبة مستخدم جديدة. قد يختلف السياق المعاد بناؤه عن الأصلي مع تطوّر الذكريات والملف. لا تلتقط الاستعادة مطالبة مستخدم اصطناعية ولا تخزّن نسخة ثانية من نص الذاكرة في تخزين مكون OpenCode الإضافي. يُبطل الضغط (compaction) السياق التلقائي المخزَّن مؤقتًا؛ وتستمر أيضًا استعادة ذاكرة الضغط الحالية في العمل.