Skip to main content

ثلاث طرق للمساهمة

هناك ثلاث طرق للمساهمة في وولفيش:

الكود

TypeScript - إصلاح الأخطاء، إضافة الميزات، تحسين بيئة التشغيل.

القدرات

SKILL.md + إضافة اختيارية - علّم وولفيش أشياء جديدة.

التوثيق

صفحات MDX - حسّن أو ترجم الوثائق.

المساهمات البرمجية

سير العمل

  1. انسخ المستودع واستنسخ نسختك
  2. أنشئ فرع ميزة:
  3. أجرِ تغييراتك
  4. تحقق:
  5. اختبر تغييرات الواجهة في المتصفح (npm run dev)
  6. أنشئ التزامًا بالتنسيق التقليدي
  7. ادفع وافتح طلب سحب ضد main

رسائل الالتزام

استخدم الالتزامات التقليدية:
الأنواع الشائعة: feat، fix، refactor، docs، chore، test

اتفاقيات الكود

يجب أن يكون الكود موثقًا ذاتيًا. إذا احتجت لتعليق، اشرح لماذا وليس ماذا.
لا تُنشئ تجريدات حتى يكون لديك ثلاث حالات استخدام ملموسة. إصلاح الخطأ هو إصلاح خطأ - لا تُعد هيكلة العالم حوله.
قبل إضافة حزمة، تحقق مما إذا كانت المكتبة القياسية أو التبعيات الحالية تغطيها بالفعل. يستخدم وولفيش fetch() مباشرة بدلاً من Axios، و mitt بدلاً من EventEmitter3، وهكذا.
لا تستورد أبدًا من @main/* في كود العارض. جميع الاتصالات تمر عبر قنوات IPC المعرّفة في طبقة preload.
البصمة الكاملة للتطبيق موجودة في ~/.wolffish/. لا تكتب أبدًا على سطح المكتب أو المستندات أو المجلدات المؤقتة أو أي مكان آخر. إذا احتاجت ميزة لتخزين، ضعها داخل مساحة العمل.

المساهمة بالقدرات

القدرات هي أسهل طريقة لتوسيع وولفيش دون المساس بالكود الأساسي.

إنشاء قدرة

  1. أنشئ مجلدًا في src/defaults/workspace/brain/cerebellum/:
  2. اكتب SKILL.md مع البيانات الوصفية المناسبة:
  3. اختبر مع النماذج السحابية (DeepSeek، Claude، GPT) والنماذج المحلية (Ollama) - يجب أن يكون السلوك متسقًا.

مشاركة القدرات

يمكن أن تكون القدرات أيضًا في مستودعات مستقلة. يستنسخها المستخدمون مباشرة في مجلد ~/.wolffish/workspace/brain/cerebellum/:
يكتشفها وولفيش عند التشغيل التالي.

المساهمة في التوثيق

الإعداد

الوثائق موجودة في مستودع wolffish-docs (منفصل عن التطبيق):

التنسيق

  • ملفات MDX مع مكونات Mintlify (Card، CardGroup، Note، Tip، Warning، Tabs، Accordion، إلخ.)
  • حافظ على المحتوى عمليًا وموجزًا
  • استخدم كتل الكود بكثرة

الترجمات

الترجمات العربية مطلوبة لجميع الصفحات الجديدة. يعكس مجلد ar/ بنية الإنجليزية بالضبط.
لكل صفحة جديدة في section/page.mdx، أنشئ صفحة مقابلة في ar/section/page.mdx بنفس البنية والمحتوى المترجم. حدّث تنقل mint.json لكلا الإصدارين.

إعداد بيئة التطوير

شغّل بيئة التطوير أولاً.

إضافة وحدات الدماغ

تساهم بوحدة بيئة تشغيل جديدة؟ اقرأ هذا.