ثلاث طرق للمساهمة
هناك ثلاث طرق للمساهمة في وولف فيش:الكود
TypeScript - إصلاح الأخطاء، إضافة الميزات، تحسين بيئة التشغيل.
القدرات
SKILL.md + إضافة اختيارية - علّم وولف فيش أشياء جديدة.
التوثيق
صفحات MDX - حسّن أو ترجم الوثائق.
المساهمات البرمجية
سير العمل
- انسخ المستودع واستنسخ نسختك
- أنشئ فرع ميزة:
- أجرِ تغييراتك
- تحقق:
- اختبر تغييرات الواجهة في المتصفح (
npm run dev) - أنشئ التزامًا بالتنسيق التقليدي
- ادفع وافتح طلب سحب ضد
main
رسائل الالتزام
استخدم الالتزامات التقليدية:feat، fix، refactor، docs، chore، test
اتفاقيات الكود
لا تعليقات إلا إذا كان السبب غير واضح
لا تعليقات إلا إذا كان السبب غير واضح
يجب أن يكون الكود موثقًا ذاتيًا. إذا احتجت لتعليق، اشرح لماذا وليس ماذا.
لا إفراط في التجريد
لا إفراط في التجريد
لا تُنشئ تجريدات حتى يكون لديك ثلاث حالات استخدام ملموسة. إصلاح الخطأ هو إصلاح خطأ - لا تُعد هيكلة العالم حوله.
لا تبعيات غير ضرورية
لا تبعيات غير ضرورية
قبل إضافة حزمة، تحقق مما إذا كانت المكتبة القياسية أو التبعيات الحالية تغطيها بالفعل. يستخدم وولف فيش
fetch() مباشرة بدلاً من Axios، و mitt بدلاً من EventEmitter3، وهكذا.IPC هي القناة الوحيدة بين main و renderer
IPC هي القناة الوحيدة بين main و renderer
لا تستورد أبدًا من
@main/* في كود العارض. جميع الاتصالات تمر عبر قنوات IPC المعرّفة في طبقة preload.لا تكتب أبدًا خارج ~/.wolffish/
لا تكتب أبدًا خارج ~/.wolffish/
البصمة الكاملة للتطبيق موجودة في
~/.wolffish/. لا تكتب أبدًا على سطح المكتب أو المستندات أو المجلدات المؤقتة أو أي مكان آخر. إذا احتاجت ميزة لتخزين، ضعها داخل مساحة العمل.المساهمة بالقدرات
القدرات هي أسهل طريقة لتوسيع وولف فيش دون المساس بالكود الأساسي.إنشاء قدرة
-
أنشئ مجلدًا في
src/defaults/workspace/brain/cerebellum/: -
اكتب
SKILL.mdمع البيانات الوصفية المناسبة: - اختبر مع النماذج السحابية (DeepSeek، Claude، GPT) والنماذج المحلية (Ollama) - يجب أن يكون السلوك متسقًا.
مشاركة القدرات
يمكن أن تكون القدرات أيضًا في مستودعات مستقلة. يستنسخها المستخدمون مباشرة في مجلد~/.wolffish/workspace/brain/cerebellum/:
المساهمة في التوثيق
الإعداد
الوثائق موجودة في مستودعwolffish-docs (منفصل عن التطبيق):
التنسيق
- ملفات MDX مع مكونات Mintlify (
Card،CardGroup،Note،Tip،Warning،Tabs،Accordion، إلخ.) - حافظ على المحتوى عمليًا وموجزًا
- استخدم كتل الكود بكثرة
الترجمات
لكل صفحة جديدة فيsection/page.mdx، أنشئ صفحة مقابلة في ar/section/page.mdx بنفس البنية والمحتوى المترجم. حدّث تنقل mint.json لكلا الإصدارين.
إعداد بيئة التطوير
شغّل بيئة التطوير أولاً.
إضافة وحدات الدماغ
تساهم بوحدة بيئة تشغيل جديدة؟ اقرأ هذا.