عن المشروع

تعد Handoff مهارة وكيل مخصصة للمستودعات التي يتم فيها استئناف نفس العمل عبر جلسات متعددة لوكلاء الذكاء الاصطناعي. تتمثل مشكلتها في أن المهمة غير المحددة في القائمة ليست بالضرورة غير مكتملة، فقد يكون وكيل آخر قد نفذها، أو ربما أفتى بها التزام (commit)، أو تغير المتطلب، أو أن شخصاً آخر لا يزال يمتلك الملفات المتأثرة. تستخدم المهارة ملف سجل مشتركاً يسمى HANDOFF.md، إلى جانب أدلة المستودع مثل تاريخ Git، والشيفرة الحالية، والاختبارات، والملكية لتحديد ما هو معلق فعلياً. تتكون سير العمل المسجلة من ست مراحل. يطالب التحضير المسبق (Preflight) باسم الجلسة ويعيد، من لقطة واحدة مُصدرة، كل إدخال سجل مفتوح مع خطواته، وملخص للإدخالات المكتملة مؤخراً، وأخطاء الهيكل، وحالة Git. تحول مرحلة الاستقبال (Intake) كل طلب إلى إدخال مهمة مؤرخ مع خانات اختيار منفصلة قيد التنفيذ ومكتملة، والخطوات، والتحقق، وسطر الحالة. يقيم التدقيق التراجعي إدخالات السجل اللاحقة، والالتزامات، والمصدر الحالي، والملكية الحية، وخانات الإدخال الأقدم، ثم يصنف النطاق الفعال على أنه مكتمل، أو مكتمل جزئياً، أو متجاوز، أو غير مكتمل، أو غير معروف، مع إضافة تعليقات بدلاً من الحذف للحفاظ على السجل. يسأل حل الملكية عما إذا كان ينبغي إنهاء العمل المؤهل أولاً أو تركه مع مالكه الحالي قبل بدء مهمة جديدة، ما لم يكن المستخدم قد أعطى ترتيباً صريحاً بالفعل. تقوم الكتابات الآمنة بتوجيه التحديثات من خلال قفل مقارنة وتبديل (compare-and-swap) عندما قد يقوم النظراء بكتابة نفس الشجرة. أخيراً، يحدد الوكيل المسارات الصريحة، ويسجل معرفات التحقق والالتزام، ويترك حالة يمكن للوكيل التالي الاستمرار منها. تسجل إدخالات السجل تصنيفاً للمالك، وحقلاً اختيارياً للأداة المساعدة (يتم اكتشافه تلقائياً لـ Claude Code وCodex وCursor وVS Code، وقابل للتجاوز عبر متغير بيئي)، ومربعات الحالة، والخطوات المحددة وغير المحددة، وسطر الحالة، والإجراء التالي. تحتفظ المهام المكتملة بكلا المربعين محددين بحيث يقرأ السجل كسجل تاريخي. تطالب الجلسات بالأسماء من قائمة تضم مائة شخصية أسطورية، يتم توزيعها على أساس أسبقية الحضور ولا تكرر أبداً مالكاً موجوداً بالفعل في السجل. يقدم المشروع واجهة سطر أوامر (CLI) بايثون للمكتبة القياسية مع لوحة تحكم curses حية للوكلاء والمهام، توضح المهام المكتملة مقابل الإجمالية، وأعداد قيد التنفيذ والمعلقة، وتقدم الخطوات، وحيثما تم تسجيلها، الأداة التي استخدمها كل مالك. يمكن تشغيلها أيضاً في وضع لقطة النص العادي، أو وضع القراءة فقط، أو خلف مشغل PATH الذي يحل تثبيت الإصدار الحالي المثبت. تدعم لوحة التحكم قطع مهمة ولصقها على مالك آخر، مما يعيد كتابة تسمية المالك ويسجل النقل تحت نفس القفل. يطبع نص شريط الحالة صف تقدم من سطر واحد وموثق كونه يعمل مع خطوط حالة Claude Code وGrok CLI وKimi Code، مع غلاف tmux لـ Codex وواجهات سطر الأوامر الأخرى. تخزن قناة الوكيل المحلية الرسائل والإقرارات في ملف SQLite يتجاهله Git ومحصور في عملية سحب واحدة، بدون خادم دوني (daemon) أو مقبس (socket). يمكن للوكلاء إرسال الأسئلة، والرد، والإبلاغ عن التوافر، وإطلاق حاوية العمل غير المكتملة الخاصة بهم، وإعلان موعد نهائي للتجديد على عقد الإيجار، واستخدام تبادلات nonce للتحدي/الإثبات لإظهار أن وكيلًا آخر متجاوب. يُقدم التثبيت ككون صنف لـ Claude Code من سوق، أو استيراد سوق Cursor، أو عبر npx skills add للمضيفين الآخرين؛ ينص ملف README على أن Git، ووكيل يتمتع بصلاحية القراءة/التعديل للمستودع، وPython 3.9+ مطلوبة، بدون مفتاح API، أو خدمة مستضافة، أو حزمة Python خارجية. الميزة الوحيدة التي تغادر الجهاز هي خطوة نشر عبر ssh اختيارية تظل غير نشطة حتى يتواجد ملف تكوين. تغطي خمسة أوامر شرطية (slash commands) تهيئة السجل، وعرضه، وحالته، والاستمرار فيه، وتطهيره، ويشير ملف README إلى حدود Windows لوحة تحكم curses والمسار السريع لشريط الحالة.