ما الذي يجعل وثيقة خطة تخفيض جيدة لمشروع تطوير برمجيات؟ ما الفرق بين الخطة الجيدة والخطة الرائعة؟ دائما ما أتحدث كثيرا عن أنني أقضي 85٪+ من وقتي وطاقتي في مراحل التخطيط. حسنا، ماذا يعني ذلك بالضبط؟ من الصعب شرحه بشكل مجرد؛ تحتاج إلى مثال ملموس لتوضيح التفاصيل الدقيقة. لذا فكرت أن أشارك مثالا جيدا من اليوم. هذا أيضا يجيب على سؤال حديث أتلقاه حول نهجي. يبدو أن الناس يعتقدون أنه يجب عليك إنجاز كل شيء في مشروعك دفعة واحدة. وفي طريقتي، هذا صحيح، لكن فقط للإصدار الأول! إذا قررت إضافة ميزات جديدة أو تغيير طريقة عمل الأشياء، يمكنك بالطبع فعل ذلك بمجرد أن يكون لديك نسخة 1 تعمل. والطريقة التي تفعل بها ذلك هي نفس الطريقة التي تصنع بها v1، بإنشاء خطة تخفيض مفصلة جدا أولا ثم تحويلها إلى خرز. سأعطيك مثالا من Cass، برنامجي Coding Agent Session Search الخاص بي، وهو برنامج Rust معقد جدا يكتشف تلقائيا ويحلل ويخزن ويفهرس جميع سجلات الجلسات السابقة من كل وكيل ترميز تقريبا. يقدم "بحث فوري" تحت 50 مللي ثانية عبر كل تلك السجلات ويحتوي على العديد من الميزات الجيدة الأخرى. قررت أن أضيف ميزة إلى Cass مشابهة لميزة أمتلكها بالفعل في MCP Agent Mail وفي beads_viewer (bv): القدرة على تصدير إعدادك كموقع ثابت يمكن تقديمه باستخدام GitHub Pages. يمكنك رؤية مثال على التهاب البكتيريا الدماغية لهذا المشروع بالذات، وهو النتيجة النهائية لعملية التخطيط التي سأصفها في هذا المنشور: تجعل هذه الوظيفة من السهل جدا إنشاء ونشر الموقع المصدر باستخدام أداة gh. الموقع نفسه عادة ما يتكون من ملف sqlite ومجموعة من Typescript وWSM التي تعمل بالكامل في المتصفح، ولكن بأداء ممتاز وميزات وتنسيق جميل، يمكنك ملاحظتها في المثال المذكور للتو. الآن، مشاركة رسائل بريد وكيل MCP أو مجموعة من الخرز شيء، لكن مشاركة سجلات جلسات وكلاء البرمجة أمر مختلف تماما؛ هذه الأشياء غالبا ما تكون مليئة بالمعلومات الحساسة، ومفاتيح واجهات برمجة التطبيقات (APIs)، والشتائم/الشتائم (على الأقل ما أعرفه!)، ومواد أخرى لا ترغب في كشفها للعالم بالتأكيد. لكن GitHub Pages، رغم روعته، يعمل فقط مع المستودعات العامة (بالمناسبة، أدواتي تدعم أيضا صفحات Cloudflare، لكن GH Pages أفضل وأسهل لهذا الاستخدام). فكيف نتعامل مع هذه المشاكل؟ الإجابة هي التشفير: يختار المستخدم أولا أي وكلاء الترميز يجب تضمينها، ومجلدات المشاريع، والفترة الزمنية، وما إلى ذلك، ويتم توليد حزمة (لاحظ أن هذه الحزمة بالصيغة الرسمية التي يحول إليها Cass جميع رسائل وكلاء الترميز داخليا من صيغها الأصلية) ثم يقدم المستخدم كلمة مرور لاستخدامها لتشفير تلك الحزمة. لذا الفكرة هي أنه رغم أن المستودع والصفحة العامة عامة، إلا أن الجميع ما عدا أنت وآخرين تخبرهم بكلمة المرور سيرى حقل كلمة المرور ولن يتمكنوا من قراءة أي من الرسائل. بمجرد إدخال كلمة المرور، سيفتح واجهة مستخدم جميلة وسريعة الاستجابة تتيح لك البحث بسهولة عبر الرسائل بسرعة وكفاءة تقريبا كما تفعل كاس. وإذا لم يكن لديك ما تخفيه حقا، يمكنك ترك كلمة المرور مغلقة وجعلها علنية. ...