مؤخراً، أطلقتُ رسمياً الشيفرة المصدرية المفتوحة لأحد تطبيقات Mac التي طورتها، واسمه DevFlow.

أنشأت هذه الأداة أساساً لأنني واجهت مراراً مشكلات مشابهة أثناء استخدام Codex وClaude Code لتطوير المشاريع.

لم أطلب سوى شيء بسيط، لكن الذكاء الاصطناعي ظل منشغلاً لساعات، ثم أخبرني:

«اكتمل التنفيذ، واجتازت جميع الاختبارات.»

لكن عندما فتحت البرنامج، وجدت أن الوظيفة لا تعمل كما توقعت. أحياناً تظل الأخطاء البرمجية موجودة، وأحياناً يُصلح مشكلةً فتظهر مشكلتان جديدتان.

والأكثر إزعاجاً أنني لا أعرف إطلاقاً ما الذي فعله في أثناء ذلك.

ما الملفات التي عُدّلت؟ وما الأوامر التي نُفذت؟ هل شُغّلت الاختبارات فعلًا؟ وكم مرة فشلت؟ ولماذا اختير هذا الأسلوب في التنفيذ؟

عندما يكون المشروع صغيرًا، يمكن الرجوع إلى سجل المحادثات. لكن مع ازدياد الشيفرة وطول دورة التطوير، يصبح من الصعب فهم كل هذه الأمور بالاعتماد على سجل المحادثات وحده.

لذلك أردت إنشاء أداة تتيح لي الاطلاع على عملية تطوير الذكاء الاصطناعي في أي وقت، وتمكّنني من معالجة المشكلات فور اكتشافها.

وهكذا وُلد DevFlow.

لوحة إشراف مشروع DevFlow نفسه: المتطلبات الأصلية، وسجلات المهام، وملخصات الأدلة، والمسائل التي تتطلب تدخلًا.

──── ✦ ────

أولًا: ما وظيفة DevFlow؟

باختصار، هو تطبيق Mac مخصص لمراجعة عملية التطوير بالذكاء الاصطناعي والإشراف عليها.

يركز حاليًا على خمسة أمور:

① هل فُهمت المتطلبات على نحو صحيح؟

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

تتبّع المتطلبات من نصها الأصلي، مرورًا بتقسيمها والافتراضات ومعايير القبول والمهام والاختبارات، وصولًا إلى أدلة التنفيذ.

② ما الذي نُفذ أثناء التطوير؟

يمكنك مراجعة الأوامر التي نفذها الوكيل، وتعديلات الملفات، واستدعاءات الأدوات، ونتائج التنفيذ، ومصادرها، ضمن السجلات المرتبطة بالفعل.

أوامر الفحص ورموز الخروج والمخرجات من جلسات فعلية: اجتياز الفحوصات الـ58 من أصل 58، مع توضيح أن نجاح الأمر لا يعني بالضرورة اجتياز القبول الوظيفي.

③ هل اجتازت الاختبارات فعلًا؟

هذا جانب أوليه اهتمامًا خاصًا.

قد يخبرك الذكاء الاصطناعي بأن الاختبارات اجتازت بنجاح، لكن ما الميزات التي اختُبرت تحديدًا؟ وهل نُفذت الاختبارات فعلًا؟ وهل عُدّلت الشيفرة بعد اكتمالها؟

تُدرج حالات الاختبار بوضوح، مع المدخلات والنتائج المتوقعة ومستوى التحقق والمتطلبات المرتبطة بها.

يربط DevFlow تصميم الاختبارات بنتائج تنفيذها الفعلية وأدلة القبول، ويشير أيضًا إلى المواضع التي تفتقر إلى الأدلة.

يحتفظ سجل التنفيذ بحالة «ناجح»، لكن بعد تغيّر الشيفرة المصدرية تُعلّم صلاحية الدليل الحالي بأنها «دليل منتهي الصلاحية».

④ هل أُصلح الخطأ؟

يمكن توثيق كل مراحل العمل: اكتشاف المشكلة، وتعديل الشيفرة، وإعادة الاختبار.

مثلًا، إذا قال الذكاء الاصطناعي إن الخطأ أُصلح، لكن لم يُعثر على نتيجة تحقق لاحقة مرتبطة به، فلا تزال المشكلة بحاجة إلى مزيد من التحقق.

عرض تصريح الإصلاح ونتيجة التحقق اللاحقة الصالحة كلٌّ على حدة، مع الاحتفاظ بالسبب الجذري وسبب عدم اكتشاف المشكلة والسجلات المرتبطة.

⑤ هل يمكن مراجعة سجل التطوير السابق؟

إذا استغرق تطوير مشروع عدة أشهر، فلماذا صُمم بهذه الطريقة؟ وما المتطلبات التي عُدّلت؟ وما المشكلات التي واجهناها؟

ما دامت المعلومات ذات الصلة موثقة، يمكن الرجوع إليها.

أريد ألّا أضطر، عندما أفتح مشروعًا مرة أخرى مستقبلًا، إلى البحث عن الإجابات بين آلاف رسائل الدردشة.

──── ✦ ────

ثانيًا: كيف يتكامل مع Codex وClaude Code؟

أعددت لـ DevFlow مجموعتين مستقلتين من مهارات الوكلاء.

devflow-record

مسؤول عن توثيق المتطلبات، وتقسيم المهام، والإجراءات المنفذة، ونتائج الاختبارات، والأدلة ذات الصلة أثناء التطوير بالذكاء الاصطناعي.

devflow-resolve

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

يمكن تلخيص سير العمل كما يلي:

طرح المتطلبات ← التطوير والتوثيق بواسطة الذكاء الاصطناعي ← فحص DevFlow ← اكتشاف مشكلة ← نسخ الملاحظات وإرسالها إلى الذكاء الاصطناعي ← الإصلاح وإعادة التحقق وتحديث السجل.

إليك مثالًا بسيطًا.

طلبت من Codex إضافة ميزة، فأخبرني أنها أُنجزت.

فتحت DevFlow، فوجدت أن الشيفرة عُدّلت بالفعل، لكن لا يوجد سجل يثبت تشغيل الاختبارات المرتبطة بها.

عندها يمكنني إرسال هذه المشكلة مباشرةً إلى Codex وطلب استكمال التحقق.

بعد أن ينتهي من معالجتها، أعود إلى DevFlow لأرى السجلات الجديدة وما إذا كانت المشكلة قد حُلّت فعلًا.

بهذه الطريقة، لا أضطر في كل مرة إلى الحكم بالحدس على ما إذا كان الذكاء الاصطناعي قد أنجز العمل كما ينبغي.

بالطبع، لا يستطيع DevFlow حاليًا معرفة كل ما فعله الذكاء الاصطناعي تلقائيًا. وما يمكنه رؤيته يعتمد على الجلسات والسجلات التي جرى ربطها فعليًا. أما ما لا يتوفر عليه دليل، فيظل مصنفًا بوضوح على أنه مجهول.

──── ✦ ────

ثالثًا: ما أقدّره أكثر هو قدرته على مساعدة الذكاء الاصطناعي في تحسين عملية التطوير

هذه فكرة ظللت أطمح إلى تحقيقها أثناء تصميم DevFlow.

عندما أستخدم Codex لتطوير المشاريع، ألاحظ أن كثيرًا من المشكلات تتكرر.

مثلًا، قد لا تُقسّم المتطلبات بما يكفي من التفصيل، أو يُغفل اختبار ميزة ما، أو لا يُعاد التحقق بعد إصلاح خطأ، أو يُعدّل أحدهم وحدةً من دون التحقق من تأثير ذلك في الميزات الأخرى.

إذا كان اكتشاف هذه المشكلات والتنبيه إليها يقع على عاتق المطور في كل مرة، فسيصبح الأمر مرهقًا فعلًا مع مرور الوقت.

لذلك أريد أن يتكامل DevFlow مع Codex.

يتولى Codex التطوير، ويساعدني DevFlow على فحص عملية التطوير، ثم يرسل المشكلات التي يكتشفها إلى Codex ليواصل التحسين.

مثلًا، إذا اكتشف DevFlow أثناء إحدى مراحل التطوير أن أحد المتطلبات يفتقر إلى دليل قبول، يمكنني إرسال المشكلة المحددة والسجلات المرتبطة بها إلى Codex.

يعيد Codex التحقق باستخدام devflow-resolve، ويضيف الاختبارات أو يصلح الشيفرة، ثم يحدّث السجلات بعد إتمام التحقق مجددًا.

تحويل المشكلات الحقيقية ونقص الأدلة إلى ملاحظات قابلة للتحرير، ليعيدها المطور يدويًا إلى محادثة التطوير مع الذكاء الاصطناعي.

في المرة التالية التي أفتح فيها DevFlow، يمكنني مواصلة التحقق من نتيجة المعالجة.

التطوير بالذكاء الاصطناعي ← فحص DevFlow ← اكتشاف أوجه القصور ← إرسال الملاحظات إلى Codex ← الإصلاح وإعادة التحقق ← الفحص مجددًا.

يمكن تكرار سير العمل هذا.

والأهم من ذلك، أنه مع تقدم المشروع، يمكننا استخلاص المشكلات المتكررة من هذه السجلات.

ما المتطلبات التي يسهل إغفالها؟ وما الاختبارات التي غالبًا ما تكون ناقصة؟ وما خطوات التطوير التي تحتاج إلى ضوابط إضافية؟

يمكننا ترسيخ هذه الخبرات تدريجيًا والاستفادة منها لتحسين عمليات التطوير اللاحقة.

ما أطمح إلى أن يحققه DevFlow في نهاية المطاف هو توثيق كل عملية تطوير، وتقديم ملاحظات عن كل مشكلة، وإيجاد أساس يدعم كل تحسين.

──── ✦ ────

رابعًا: لماذا اخترت تطويره كتطبيق لسطح مكتب Mac؟

السبب الرئيسي هو أنني أعمل على التطوير باستخدام Mac في حياتي اليومية.

أريد أن يتمكن من إدارة ملفات المشاريع المحلية مباشرةً، من دون الحاجة إلى إنشاء حساب أو رفع الشيفرة وسجلات التطوير إلى منصات أخرى.

لا يستدعي DevFlow نفسه نماذج ذكاء اصطناعي خارجية، ولا يرسل تعليمات تلقائيًا إلى Codex أو Claude Code.

يمكنك مراجعة الملاحظات وتنظيمها بنفسك، ثم تقرر ما إذا كنت تريد من الذكاء الاصطناعي مواصلة العمل.

يدعم حاليًا الربط اليدوي بجلسات Codex المحلية، كما يمكن للوكلاء الآخرين إنشاء سجلات بتنسيق موحد باستخدام المهارات المصاحبة.

إضافة إلى ذلك، فعلت أمرًا آخر:

استخدمت DevFlow للإشراف على تطوير DevFlow نفسه.

حرصت قدر الإمكان على توثيق تغييرات المتطلبات، ومشكلات الاختبار، وعمليات الإصلاح التي واجهتها أثناء تطوير هذه الأداة بالطريقة نفسها.

عندما تطور أداة بنفسك، جرّبها أولًا على مشروعك.

──── ✦ ────

خامسًا: أصبح مفتوح المصدر، والجميع مدعوون لتجربته

الإصدار المتاح حاليًا من DevFlow هو إصدار معاينة لنظام macOS.

  • يدعم Apple Silicon وmacOS 14 أو أحدث

  • يتوفر كمثبت DMG

  • يتضمن مهارتي devflow-record وdevflow-resolve

  • مرخّص بموجب رخصة MIT مفتوحة المصدر

  • يعالج ملفات المشروع محليًا، ولا يتطلب حسابًا

لم يحصل بعد على توثيق Apple، لذا يجب اتباع التعليمات الواردة في README عند تثبيته للمرة الأولى.

التثبيت والربط سهلان أيضًا.

يمكنك حتى تزويد Codex مباشرةً بعنوان مستودع GitHub، ليقرأ وثائق المشروع ويساعدك على إتمام الربط وفقًا للتعليمات.

رابط مستودع GitHub مفتوح المصدر:

https://github.com/damobianyuan0325/DevFlow-Mac

تعليمات استخدام المستودع

إذا كنت تستخدم الذكاء الاصطناعي لكتابة الشيفرة كثيرًا، فأدعوك إلى تنزيله وتجربته.

يمكنك الإبلاغ عن المشكلات مباشرةً عبر Issue، وإذا وجدته مفيدًا، فسيسعدني أن تمنحه نجمة.

──── ✦ ────

سادسًا: وأخيرًا، لمحة عن مشروعي الثاني مفتوح المصدر: هندسة الـ Harness

في الواقع، كنت أفكر في أمر آخر طوال فترة تطوير DevFlow.

بما أننا أصبحنا قادرين على فحص عملية التطوير التي ينفذها الذكاء الاصطناعي واكتشاف مشكلات مثل إغفال المتطلبات، وقصور الاختبارات، وعدم اكتمال الإصلاحات، فهل يمكننا أن نجعل الذكاء الاصطناعي يتجنب هذه المشكلات قدر الإمكان أثناء التطوير؟

وهذا أيضًا سبب استعدادي لإطلاق مشروعي الثاني مفتوح المصدر.

هندسة الـ Harness (مهارات التطوير وهندسة الـ Harness).

أخطط لتنظيم الخبرات التي اكتسبتها من استخدام Codex لتطوير المشاريع، ومنها تقسيم المتطلبات، ومعايير التنفيذ، والاختبارات ومعايير القبول، ومراجعة الإخفاقات، والتحقق من التسليم، وتحويلها إلى مجموعة من مهارات التطوير وسير العمل الهندسي القابلة لإعادة الاستخدام.

يمكن أن يتكامل هذا المشروع مع DevFlow مستقبلًا:

تتولى هندسة الـ Harness وضع معايير لكيفية تطوير الذكاء الاصطناعي.

ويتولى DevFlow فحص جودة ما أنجزه الذكاء الاصطناعي فعليًا.

ثم تُنقل المشكلات المكتشفة إلى Codex عبر المهارات، لاستكمال التحقق وإصلاح العيوب وتحسين معايير التطوير لدينا تدريجيًا.

يمكن للمشروعين معًا تشكيل حلقة تطوير متكاملة، تبدأ بالمتطلبات والتطوير والفحص والملاحظات، وتمتد إلى التحسين المستمر.

بالطبع، ما زال العمل جاريًا على بناء منظومة التعاون الأكثر تكاملًا هذه. وسأشارك لاحقًا تفاصيل تطوير المشروع الثاني ورابطه مفتوح المصدر.

──── ✦ ────

خلال الفترة التي استخدمت فيها الذكاء الاصطناعي لتطوير المشاريع، كان أكبر ما لفت انتباهي هو السرعة التي بات يكتب بها الشيفرة. فأعمال كانت تستغرق أيامًا في السابق يمكن إنجازها الآن خلال ساعات.

لكن كلما ازدادت المشاريع تعقيدًا، ازداد اهتمامي بأمر آخر:

كلما قال الذكاء الاصطناعي إنه انتهى، أريد أن أعرف بوضوح ما الذي أنجزه بالضبط، وما الذي تثبت الأدلة اكتماله، وما الأمور التي لا تزال بحاجة إلى متابعة.

DevFlow هو محاولتي الأولى في هذا الاتجاه.

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

آمل أن تساعد هذه الأدوات المزيد من الأشخاص مثلي ممن يستخدمون الذكاء الاصطناعي في التطوير، على إنجاز مشاريعهم بمزيد من الثقة والاطمئنان.

#币安已处理46.5亿美元提款 #codex