● مجتمع
waynesutton
⚡ فوري
convexskills
بواسطة waynesutton · waynesutton/convexskills
12 مهارة متخصصة في Convex تغطي الدوال والمخطط الأساسي والوقت الفعلي والمهام المجدولة وإجراءات HTTP وتخزين الملفات والوكلاء والتدقيق الأمني والهجرات.
مجموعة مهارات مركزة لبناء تطبيقات على Convex. كل ملف SKILL.md (frontmatter صحيح + أمثلة + أفضل الممارسات) يعلم Claude أنماط Convex الاصطلاحية: الاستعلامات مقابل الطفرات مقابل الإجراءات، والوقت الفعلي التفاعلي، والمهام المجدولة، وخطافات HTTP، ومدققات المخطط الأساسي، والهجرات، والتدقيق الأمني. يتوقف Claude عن اختراع واجهات برمجية Convex.
لماذا تستخدمه
الميزات الأساسية
- 12 مهارة متخصصة في Convex مع أمثلة كود حقيقية
- تغطي الدوال (استعلام/طفرة/إجراء/HTTP) والمخطط الأساسي والوقت الفعلي والمهام المجدولة وتخزين الملفات والوكلاء
- مهارتان أمنيتان: convex-security-check و convex-security-audit
- أنماط الهجرة لتطور المخطط الأساسي
- convex-component-authoring لإنشاء مكونات قابلة لإعادة الاستخدام
عرض مباشر
كيف يبدو في الممارسة
convexskills-skill.replay
▶ جاهز
حالات الاستخدام
استخدامات عملية: convexskills
متى تستخدمه: أنت تبدأ من الصفر وتريد أنماط Convex الصحيحة من الملف الأول.
المتطلبات الأساسية
- Convex CLI — npm create convex
الخطوات
-
تصميم المخطط الأساسي
استخدم مهارة convex-schema-validator. صمم جداول للمستخدمين والمشاريع والملفات بفهارس صحيحة.✓ تم النسخ
→ المخطط الأساسي يستخدم v.id() والفهارس معلنة والعلاقات صحيحة
-
ربط الاستعلامات والطفرات
استخدم مهارة convex-functions. نفذ CRUD للمشاريع.✓ تم النسخ
→ استعلام للقراءات وطفرة للكتابات بدون إساءة استخدام الإجراء
-
إضافة الوقت الفعلي وتحميل الملفات
استخدم convex-realtime و convex-file-storage لجعل المشاريع تتحدث مباشرة مع ملحقات الملفات.✓ تم النسخ
→ React يشترك عبر useQuery والملفات مخزنة عبر storage.generateUploadUrl
النتيجة: تطبيق Convex منظم بشكل صحيح يمكنك البناء عليه.
المزالق
- استخدام الإجراءات حيث تكفي الطفرات — تفرض المهارة: طفرات لكتابات قاعدة البيانات وإجراءات لمخرجات خارجية
متى تستخدمه: تحتاج إلى مهمة مجدولة بدون تشغيل عامل.
الخطوات
-
استخدم مهارة cron
استخدم convex-cron-jobs. أضف مهمة يومية تحذف الصفوف الأقدم من 30 يومًا من جدول الجلسات.✓ تم النسخ
→ crons.ts entry + طفرة داخلية للتنظيف
-
اختبر
أعطني طريقة لتشغيل هذا يدويًا للاختبار.✓ تم النسخ
→ إجراء HTTP أو وصفة CLI خاصة بالمطورين فقط
النتيجة: مهمة cron تعمل على جدول المهام المدار من قبل Convex.
المزالق
- تشغل Cron استعلام بدلاً من طفرة داخلية — تفرض المهارة طفرة داخلية للحذف
متى تستخدمه: تطبيقك جاهز لكنك لم تختبر المصادقة تحت الضغط.
الخطوات
-
قم بتشغيل التدقيق
استخدم convex-security-audit على هذا المستودع. تحقق من كل طفرة عامة للمصادقة الصحيحة.✓ تم النسخ
→ موضع المصادقة لكل دالة مع الشدة
-
أصلح
طبق الإصلاحات مع فحوصات الهوية والعودة إلى إرجاع null للقراءات غير المصرح بها.✓ تم النسخ
→ تم تحديث الدوال مع فحوصات ctx.auth
النتيجة: تم تشديد المصادقة قبل الإنتاج.
المزالق
- الاعتماد على نموذج 'public=unauthenticated' الذهني — دوال Convex العامة قابلة للوصول عبر الإنترنت؛ تصر المهارة على فحوصات المصادقة
التركيبات
اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10
المهارة تصمم وتنفذ؛ GitHub MCP يفتح طلب الدمج
استخدم convexskills لبناء الميزة ثم افتح طلب دمج بالتغييرات.✓ تم النسخ
بناء Convex backend ثم اختبارات Playwright للواجهة من النهاية إلى النهاية
نفذ Convex backend ثم اكتب اختبار playwright-skill يضرب الواجهة ويتحقق من التحديثات في الوقت الفعلي.✓ تم النسخ
التكلفة والحدود
تكلفة التشغيل
- حصة API
- لا شيء للمهارة؛ Convex لديها مستويات مجانية وموجودة خاصة بها
- الرموز لكل استدعاء
- 2-6k لكل مهارة محملة
- التكلفة المالية
- مجاني — المهارة محلية. Convex لديها مستوى مجاني سخي.
- نصيحة
- سمّ المهارة المحددة (مثل convex-cron-jobs) لتجنب تحميل المجموعة الكاملة.
الأمان
الصلاحيات والأسرار ونطاق الأثر
تخزين بيانات الاعتماد: لا توجد بيانات اعتماد في المهارة. مفاتيح نشر Convex تبقى في .env الخاص بك.
نقل البيانات الخارجي: لا شيء من المهارة نفسها
- دوال Convex العامة قابلة للوصول عبر الإنترنت. شغّل دائمًا convex-security-audit قبل الذهاب إلى الإنتاج.
استكشاف الأخطاء
الأخطاء الشائعة وحلولها
Claude writes an action when a mutation suffices
القاعدة الذهبية التي تفرضها المهارة: DB-only → طفرة؛ external I/O → إجراء.
Schema change breaks existing data
استخدم مهارة convex-migrations — فهي تخطط انتقالات آمنة مع التعبئة الخلفية.
useQuery doesn't update in realtime
تحقق من التفاعلية: يجب أن يقرأ الاستعلام البيانات التي تغيرت وليس فهرسًا قديمًا.
البدائل
convexskills مقابل البدائل
| البديل | متى تستخدمها | المقايضة |
| مستندات Convex اليدوية + أمثلة | أنت بالفعل مطور Convex ذو خبرة | الإدراج الأبطأ بدون المهارة |
| مهارات fullstack خاصة بالإطار | أنت لست على Convex | مكدس مختلف |