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

صادرات المسارات الفرعية العامة

بالإضافة إلى نقطة دخول المكون الإضافي الرئيسية، يعرّض opencode-mem مسارًا فرعيًا مستقرًا واحدًا يمكن لمكونات opencode الإضافية الأخرى استيراده مباشرة. هذا يتجنب الحاجة إلى هندسة عكسية لاصطلاحات علامات الحاوية عند كتابة أدوات طرف ثالث تقرأ أو تكتب في نفس مخزن الذاكرة.

مساعدات علامات الحاوية القانونية. نفس الدوال التي يستخدمها opencode-mem نفسه لتحديد نطاق الذكريات الملتقطة تلقائيًا.

import { getProjectTagInfo, getUserTagInfo, getTags } from "opencode-mem/tags";
// Canonical project tag derived from cwd (git remote URL if present, else
// the project root path). Format: `opencode_project_<sha16>`.
const projectTag = getProjectTagInfo(process.cwd()).tag;
// Canonical user tag derived from `git config user.email`.
// Format: `opencode_user_<sha16>`.
const userTag = getUserTagInfo().tag;
// Both at once.
const { user, project } = getTags(process.cwd());

العلامات التي تنتجها هذه المساعدات تطابق ما يكتبه الالتقاط التلقائي، لذا مكونات الطرف الثالث التي تستدعي POST /api/memories ستصل إلى نفس الأجزاء التي يفهمها باقي النظام بالفعل. العلامات اليدوية التي لا تحتوي سلسلتها الفرعية على _project_ أو _user_ تنتهي في أجزاء ظلّية تفلترها /api/stats و /api/memories بصمت — استخدام هذه المساعدات يتجنب ذلك المأزق.