
احتفظ بالبيانات الخاصة والبنية التحتية الداخلية والأسرار بعيدًا عن وكلاء البرمجة السحابيين دون تعطيل سير عملك.
احتفظ بالبيانات الخاصة والبنية التحتية الداخلية والأسرار بعيدًا عن وكلاء البرمجة السحابيين دون تعطيل سير عملك.
التثبيت · البدء السريع · السياسات · المراقبة · Pi / OMP · الأمان
Cover هو وكيل خصوصية ثنائي الاتجاه لوكلاء البرمجة بالذكاء الاصطناعي. يستبدل القيم الحساسة المطابقة محليًا ببدائل واقعية وحتمية قبل أن يغادر الطلب جهازك، ثم يترجم البدائل المطابقة في الاستجابات العادية والمتدفقة مرة أخرى إلى القيم الأصلية. يحصل النموذج على سياق متماسك؛ ويستمر وكيلك وأدواتك في العمل مع البيئة الحقيقية.
استخدم قواعد pseudonymize أو placeholder القابلة للعكس عندما يجب أن
تستمر المحادثة في العمل من البداية إلى النهاية. استخدم قواعد mask أو redact
أحادية الاتجاه عندما لا تكون الاستعادة ضرورية، وblock لإيقاف الطلب محليًا،
وallow لاستثناء صريح.
تشمل العملاء المدعومين Codex وClaude Code وCursor وPi / Oh My Pi وحزم SDK والموجّهات المتوافقة مع OpenAI أو Anthropic.
يقوم المثبّت بتنزيل الإصدار الخاص بنظام التشغيل والمعالج لديك، والتحقق منه مقابل
مجموعات اختبار SHA-256 المنشورة، وتثبيته بشكل ذري في
~/.local/bin/cover، وتهيئة العملاء المحددين، وبدء الوكيل.
curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | bash
لا حاجة إلى سلسلة أدوات Go أو نسخة Git محلية. تحتاج فقط إلى curl، وأداة لاستخراج الأرشيف (tar على Linux/macOS أو unzip على Windows)، وsha256sum أو shasum أو openssl للتحقق.
تتوفر أرشيفات جاهزة لأنظمة Linux وmacOS وWindows مع مجاميع التحقق الخاصة بها من إصدارات GitHub.
للتثبيت غير التفاعلي:
curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | \
COVER_AGENTS=openai,claude bash
ثبّت إصدارًا محددًا أو ثبّت الملف التنفيذي فقط مع متغيرات البيئة المطبقة على
عملية bash:
curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | \
COVER_VERSION=v0.1.0 COVER_SKIP_SETUP=1 bash
git clone https://github.com/DavidCarliez/cover.git
cd cover
go build -o cover ./cmd/cover
install -m 0755 cover ~/.local/bin/cover
لا يعتمد الملف التنفيذي الأساسي على cgo. يعمل التصريف المتقاطع القياسي لـ Go:
GOOS=linux GOARCH=arm64 go build -o cover-linux-arm64 ./cmd/cover
GOOS=windows GOARCH=amd64 go build -o cover.exe ./cmd/cover
| المجال | الوظائف المغطاة |
|---|---|
| السياسة | قواعد تصريحية مع إجراءات allow وplaceholder وpseudonymize وmask وredact وblock |
| بدائل واقعية | مولّدات حتمية لعناوين IP والمضيفين والنطاقات والبريد الإلكتروني وأسماء المستخدمين وكلمات المرور ومعرّفات UUID وعناوين URL والأسماء المستعارة والمعرّفات الرقمية وأرقام IBAN وأرقام الهواتف |
| قواعد واعية بالسياق | مفاتيح JSON داخل سلاسل نتائج الأدوات، وترويسات HTTP، وملفات تعريف الارتباط، ومعاملات الاستعلام وحقول النماذج، إضافة إلى التعبيرات النمطية والكاشفات المدمجة |
| هويات مستقرة | تبقى الأسماء المستعارة HMAC المرتبطة بمفتاح التثبيت متسقة عبر الطلبات والجلسات وعمليات إعادة التشغيل |
| أمان التعيينات | تعيينات عكسية محدودة ومعزولة لكل جلسة وقائمة على الذاكرة فقط مع TTL وحدود للسعة |
| الفحص | يعرض cover inspect معاينة لـ JSON المحمي دون الاتصال بنموذج لغوي |
| التشخيص | يتحقق cover doctor من السياسة وصحة الخدمة الخلفية وسلوك الفشل المغلق المحلي وتوجيه Codex |
| المراقبة | عروض تدقيق ومراقبة للبيانات الوصفية فقط، إضافة إلى فحص مباشر صريح للمحتوى الملتقط والمُمرَّر |
| تقوية الوكيل | مستمعات على loopback افتراضيًا، وحدود للنصوص والتدفقات، وأخطاء آمنة عامة، وتحليل مغلق عند الفشل |
| توافق البث | استعادة OpenAI Responses وChat Completions وAnthropic SSE عبر أحداث delta والنبضات والقنوات المتداخلة؛ وسائط أدوات آمنة لـ JSON |
| توافق Codex | إعداد Responses API والموجّه، وفحوصات الضغط، وحقول encrypted_content غير القابلة للتغيير |
| تمرير دلالي اختياري | يمكن لكاشف llama.cpp محلي فحص النص الحر الذي تفوته التعبيرات النمطية |
cover init # write ~/.config/cover/config.yaml
cover start --detach # run in the background
cover doctor # verify the local setup
cover test # local redaction round trip, no network call
cover monitor # watch privacy-safe request metadata
cover init يطلب OpenAI أو Anthropic أو خدمة upstream مخصصة. التوثيق الكامل
للإعدادات موجود في configs/config.example.yaml.
| الأمر | الغرض |
|---|---|
cover install | إعداد العملاء وتصديرات shell والوكيل الخلفي |
cover init | إنشاء ملف الإعدادات |
cover start [--detach] | تشغيل Cover في المقدمة أو الخلفية |
cover stop | إيقاف العملية الخلفية |
cover restart | إعادة تشغيلها في الخلفية |
cover status [--json] | عرض حالة العملية والمستمع وupstream مع إخفاء البيانات الحساسة |
cover version [--json] | عرض إصدار البناء والcommit والتاريخ |
cover update [--version vX.Y.Z] | تثبيت إصدار GitHub موثّق؛ إعادة التشغيل وفحص السلامة إذا كان قيد التشغيل (Linux/macOS) |
cover update --rollback | استعادة الملف التنفيذي السابق مع الحفاظ على الإعدادات |
cover env | طباعة تصديرات shell للعملاء المُعدّين |
cover test | تشغيل فحص محلي اصطناعي لإخفاء البيانات واستعادتها |
cover inspect request.json | معاينة ما سيقوم Cover بتمريره بالضبط |
cover doctor [--json] | تشغيل فحوصات الإعدادات والخصوصية والخدمة الخلفية والتوجيه |
cover monitor | عرض البيانات الوصفية الآمنة الأخيرة ومتابعة الأحداث الجديدة |
cover monitor --show-content | عرض زوج واحد من الأصل الحساس → البديل في كل سطر؛ أضف --json للأحداث الكاملة |
cover models pull | تنزيل وقت تشغيل الكاشف المحلي الاختياري والنموذج |
cover models status | الإبلاغ عن تثبيت الكاشف المحلي وإعداداته |
cover completion | إنشاء سكربتات إكمال shell |
إيقاف Cover لا يغيّر إعدادات العميل. العميل الذي لا يزال موجهاً إلى Cover سيفشل في الاتصال حتى يُعاد تشغيل Cover أو يُعاد توجيه العميل إلى مزوّده المباشر أو الموجّه الخاص به.
stop وrestart وupdate ترسل إشارة فقط إلى عملية تكون Cover: يجب أن
يُبلّغ المستمع عن تلك العملية على نقطة النهاية /__cover/health المقتصرة على
loopback، أو يجب أن يكون اسم الملف التنفيذي للعملية cover. يُزال أي pidfile
قديم، بما في ذلك الذي أصبح معرّف العملية فيه ملكاً لبرنامج آخر،
ولا يتم إيقاف برنامج آخر على منفذ Cover أبداً.
تُفرّغ عمليات الإيقاف وإعادة التشغيل الطلبات النشطة لمدة تصل إلى 30 ثانية، قابلة
للضبط عبر shutdown_timeout_ms. على Windows، الذي لا يملك SIGTERM، يُنهي cover stop
العملية دون تفريغ. بعد هذا الموعد النهائي، تُغلق الاتصالات المتبقية.
قد تفشل الاتصالات الجديدة لفترة وجيزة أثناء إعادة التشغيل؛ هذا ليس تسليماً
بدون توقف. يُبلّغ cover status وcover doctor عندما تختلف الخدمة الخلفية قيد التشغيل
عن الملف التنفيذي المثبّت.