توجيه الوكلاء والمهارات — claude-wayfinder

مجانًا

إضافة لـ Claude Code تقيّم وصف المهمة ومسارات ملفاتها مقابل كتالوج يُبنى من حقول triggers في وكلائك ومهاراتك، ثم تعيد واحدًا من سبعة قرارات، مثل delegate و needs_more_detail، مع درجة ثقة وسبب مكتوب. ومعها خمس مهارات لتشغيل المطابق وإعداده وبناء الكتالوج وكتابة triggers وفحص صحة التوجيه.

  • مجاني، ولا يتطلب أي دفع
  • تنزيل فوري بعد إتمام الطلب
  • مشترياتك محفوظة في حسابك

حين يكثر الوكلاء الفرعيون والمهارات في Claude Code، يختار النموذج من ينفّذ المهمة بقراءة أوصافها النثرية، فقد يختلف اختياره لطلبين متشابهين دون أثر تراجعه. تنقل claude-wayfinder هذا القرار إلى مطابِق يقيّم سياقًا بصيغة JSON، فيه جملة المهمة ومسارات ملفاتها وأسماء الوكلاء والأدوات، مقابل كتالوج محلي يُبنى من حقول triggers، ويعيد قرارًا مع درجة ثقة بين 0 و1 وسبب مكتوب وبدائل. ويؤكد مؤلفها أن السياق والكتالوج نفسيهما يعطيان الجواب نفسه. وهي إضافة لـ Claude Code، لا لـ claude.ai أو Codex.

القرارات السبعة

  • delegate: وكيل واحد بدرجة 0.85 فأكثر، متقدم على التالي بفارق 0.2 فأكثر.
  • self_handle: لا وكيل غالب، ومهارة بلغت 0.5 يعمل بها Claude بنفسه.
  • advisory: وكيل مقترح بدرجة 0.5 فأكثر لم يبلغ شرط delegate.
  • mixed_content: وكيلان أو أكثر بدرجة تقارب 1، لكل منهما ملفات مختلفة من المهمة.
  • needs_more_detail: السياق يملأ أقل من بُعدين، فلا يبدأ التقييم.
  • self_handle_unaided: لا وكيل ولا مهارة فوق الحد.
  • ask_user: محجوز، ولا يصدره المطابق حاليًا.

خمس مهارات وتسعة خطافات

  • /dispatch: يشغّل المطابق على كتالوجك، أو على عيّنات مرفقة مع --demo. وإن غاب الكتالوج أظهر [CATALOG ERROR] ولم يلجأ إلى العيّنات.
  • /setup-wayfinder: يبحث عن Python 3.11 أو أحدث، وينشئ venv خاصًا بالإضافة، ويثبّت فيه إصدارها المطابق من PyPI.
  • /refresh-catalog: يعيد بناء الكتالوج يدويًا حين لا يلتقط الخطاف التلقائي تعديلك.
  • /router-health: تقرير للقراءة فقط عن معدل استدعاء التوجيه وتجاوزه وحالة الكتالوج، ويحلّل كل مؤشر فاشل.
  • dispatch-authoring: مرجع لكتابة ملف triggers الجانبي لكل مهارة أو وكيل: كلمات مفتاحية بأوزان 0.25 و0.5 و1.0، وأنماط مسارات، وأسباب إخفاق المطابقة.
  • hooks.json: تسعة أوامر Node على ستة أحداث، تفحص الكتالوج عند بدء الجلسة، وتعيد بناءه إن تقادم، وتسجّل استدعاءات الوكلاء والمهارات، وترصد الانحراف (drift).

مثال: فرع delegate في العيّنات

في عيّنات /dispatch --demo مهمة «implement the authentication module» مع الملف src/auth.py. ويحسب المؤلف في ملف العيّنات درجة الوكيل code-writer: 0.5 للكلمة implement بوزن 1.0، و0.4 لنمط المسار **/*.py، فالمجموع 0.9 والقرار delegate، مع سبب يسمّي implement.

من التثبيت إلى التوجيه

  • فكّ الضغط في مجلد ثابت وشغّل claude --plugin-dir "PATH/TO/EXTRACTED/plugin" لتحميلها في الجلسة، أو ثبّتها دائمًا من سوق المؤلف: /plugin marketplace add glitchwerks/claude-wayfinder ثم /plugin install claude-wayfinder@glitchwerks.
  • شغّل /setup-wayfinder مرة واحدة حين يظهر تنبيه الإعداد، ثم افتح جلسة جديدة وجرّب /dispatch --demo.
  • للتوجيه الحقيقي أضف triggers إلى مهاراتك ووكلائك، وابنِ الكتالوج بـ /refresh-catalog، وأضف الأداة Skill إلى وكيل التوجيه لديك مع مقطع التعليمات في docs/integration.md.

قبل الاعتماد عليها

  • تحتاج Python 3.11 أو أحدث، وNode.js 20 أو أحدث، واتصالًا بـ PyPI أثناء الإعداد.
  • لا تضم الحزمة وكيل توجيه (router agent)، بل تفترض أن لديك وكيلًا يكتب سياق المهمة ويستدعي /dispatch.
  • يكتب /refresh-catalog الكتالوج إلى ~/.claude/dispatch-catalog.json ما لم تضبط DISPATCH_CATALOG_PATH، بينما يقرأ /dispatch افتراضيًا من ~/.claude/state/dispatch-catalog.json، فوحّدهما بهذا المتغير.
  • يحفظ خطاف PostToolUse مقتطفًا من نص المهمة في ~/.claude/state/dispatch-log.jsonl، ولا يوقفه متغير بيئة؛ لإيقافه احذف مدخل log-dispatch-decision.js من hooks/hooks.json.
  • الملفات بالإنجليزية كما كتبها مؤلفها في الإصدار 2.0.0، وأرفقتُ دليلًا عربيًا.

الترخيص

claude-wayfinder من تأليف Christopher Beaulieu، بترخيص MIT المرفق نصه في الحزمة، ومصدرها glitchwerks/claude-wayfinder.