Deepseek ArtifactsDeepseek Artifacts
دليل إضافة Claude Code

Ponytail لـ Claude Code: التثبيت والإعداد وما الذي يتغيّر

Ponytail موجّه مجاني برخصة MIT يدفع Claude Code نحو «أصغر تغيير يحل المهمة فعلاً»: هل يحتاج هذا الكود إلى الوجود، هل المستودع يملكه أصلاً، هل تكفي المكتبة القياسية — وبعد ذلك فقط يكتب. هنا طريقة التثبيت، وما يفعله كل مستوى، وما قاسه اختبار المؤلف نفسه فعلاً.

Ponytail في لمحة

  • القلب موجّه واحد: الملف skills/ponytail/SKILL.md هو كل القواعد، وإضافة Claude Code ليست إلا ما يحمّله تلقائياً في كل جلسة.
  • التثبيت أمران منفصلان بهذا الترتيب: /plugin marketplace add DietrichGebert/ponytail ثم /plugin install ponytail@ponytail.
  • ثلاثة مستويات — lite وfull (الافتراضي) وultra — تُبدَّل بـ /ponytail lite أو /ponytail ultra وتُطفأ بـ /ponytail off.
  • الأمر ليس «كتابة أقل» فحسب: /ponytail-review يراجع تعديلاً، و/ponytail-audit يرتّب مستودعاً كاملاً، و/ponytail-debt يجمع الاختصارات المؤجلة.

DietrichGebert/ponytail — README

المصدرGitHubchecked 2026-11-12

فتح

skills/ponytail/SKILL.md — the prompt itself

المصدرGitHubchecked 2026-11-12

فتح

INSTALL.md — per-agent install steps

المصدرGitHubchecked 2026-11-12

فتح

skills/ponytail-help/SKILL.md — levels, band, defaults

المصدرGitHubchecked 2026-11-12

فتح

benchmarks/results/2026-10-07-agentic.md

المصدرGitHubchecked 2026-11-12

فتح

dsh-ponytail — DeepSeek Harness port (unofficial)

المصدرdeepseekharnessplugins.comchecked 2026-11-12

فتح

كل أمر واسم مستوى ومفتاح إعداد ورقم في هذه الصفحة قُرئ من المستودع الأصلي في 2026-11-12. أوامر الشرطة المائلة تُركت بلا ترجمة عن قصد: الأمر المترجم لا يعمل.

بيانات المستودع من GitHub API في 2026-11-12: 189,276 نجمة، و10,531 fork، أُنشئ في 2026-06-12، وآخر إصدار v5.3.3 نُشر في 2026-10-29. عدد النجوم يتغيّر يومياً؛ اعتبره لقطة لا ثابتاً.

ثبّت Ponytail واستخدمه خطوة بخطوة

  1. 1

    اعرف ما الذي تثبّته

    Ponytail مجموعة قواعد لوكلاء البرمجة، ينشرها Dietrich Gebert برخصة MIT على github.com/DietrichGebert/ponytail. جوهرها ملف موجّه واحد، skills/ponytail/SKILL.md؛ وكل ما في المستودع من غيره موجود لتحميل هذا الموجّه في وكيل بعينه. إضافة Claude Code هي مسار «العمل الدائم»: بعد التثبيت تعمل في كل جلسة، وتضيف شارة في شريط الحالة ومجموعة أوامر /ponytail-*.

    يقول README صراحة إن السلّم يُطبَّق بعد أن يفهم الوكيل المشكلة، لا بدلاً من ذلك. تكاسل في الحل، ولا تتكاسل أبداً في قراءة الكود.

  2. 2

    تحقق من المتطلبات

    تحتاج نسخة Claude Code فيها الأمر /plugin، وNode.js على PATH. تشغّل الإضافة خطّافَي دورة حياة صغيرين بـ Node.js؛ وبدون node تعمل المهارات كما هي، لكن كل استدعاء خطّاف يطبع رسالة غير مؤذية node: command not found. لمستخدمي Nix وnvm: يجب أن يكون node على PATH للصدفة غير التفاعلية، لا التفاعلية فقط.

    الأوامر

    node --version

    إن لم يُعرَف /plugin إطلاقاً فنسختك قديمة. حدّثها وأعد التشغيل قبل المتابعة.

  3. 3

    أضف المتجر — الأمر الأول

    أرسل هذا داخل Claude Code. يسجّل المستودع متجر إضافات باسم ponytail؛ ولم يُثبَّت شيء بعد.

    الأوامر

    /plugin marketplace add DietrichGebert/ponytail

    يحتوي المستودع على .claude-plugin/marketplace.json خاص به، ولهذا تكفي الإشارة owner/repo — بلا URL وبلا مسار محلي.

  4. 4

    ثبّت الإضافة — الأمر الثاني

    هذا يجب إرساله في موجّه منفصل. الصيغة plugin@marketplace، أي أن ponytail@ponytail تعني «إضافة ponytail من متجر ponytail». يقول INSTALL.md بوضوح إنه يجب إرسال موجّهين منفصلين لكي ينجح التثبيت، ودمجهما في رسالة واحدة هو السبب الأشيع لفشل التثبيت بصمت.

    الأوامر

    /plugin install ponytail@ponytail

    في تطبيق Claude Code لسطح المكتب، تبويب Code، يمكنك كتابة الأمرين نفسيهما في صندوق الموجّه، أو استخدام زر + ← Plugins ← Add plugin لتصفّح متاجرك المضبوطة.

  5. 5

    تأكد أنه يعمل فعلاً

    شغّل /ponytail بلا وسيط. إن كان Ponytail مطفأً فسيُشغَّل على المستوى الافتراضي، وإن كان مشتغلاً فسيبلغ بالمستوى الحالي. يظهر الوضع النشط أيضاً في نص البدء وتغيير المستوى، وتحتفظ به شارة شريط الحالة بقية الجلسة.

    الأوامر

    /ponytail

    اختبار وظيفي سريع: اطلب شيئاً يغري بالهندسة الزائدة، مثل منتقي تاريخ، وانظر هل يبحث الوكيل أولاً عن مكوّن Input موجود وعن منتقي المتصفح الأصلي قبل أن يكتب شيئاً.

  6. 6

    اختر مستوى

    lite يبني ما طُلب بالضبط ويسمّي الخيار الأصغر في سطر واحد لتختار. full هو الافتراضي: السلّم، واختبار صغير حيث تحتاجه المنطق، وردّ يسمّي ما تم تجاوزه. ultra يعترض أيضاً على الطلب نفسه قبل البناء. يبقى المستوى حتى تغيّره أو تنتهي الجلسة.

    الأوامر

    /ponytail lite/ponytail full/ponytail ultra/ponytail off

    مخرجان آخران: قل stop ponytail أو normal mode بلغة عادية، أو شغّل /ponytail off.

  7. 7

    راجع تعديلاً بالقواعد نفسها

    /ponytail-review ليس linter. يقرأ الكود الذي يمسّه تعديلك، لا التعديل وحده، ويبلّغ بهذا الترتيب: صحيح، آمن، يتحمّل الحمل الحقيقي، مُختبَر، سريع، بلا حشو. كل ملاحظة يجب أن تقول ما يفعله الكود، وما ينكسر، وكيف يُصلَح، وماذا يحدث إن تُرك. يمكنك تحديد الهدف بكلمات عادية لتضييق المراجعة أو توسيعها.

    الأوامر

    /ponytail-review/ponytail-review staged/ponytail-review branch

    بلا هدف يراجع التغييرات غير المُودَعة، أو آخر commit إن لم توجد.

  8. 8

    افحص المستودع كله واجمع الدين

    /ponytail-audit يجري الفحوص نفسها على المستودع كله: يرسم نقاط الدخول ومسار البيانات أولاً، ويفترض مستوى حمل ويقول أيّه، ثم يرتّب النتائج لتعرف ما تصلحه أولاً. /ponytail-debt يحصد تعليقات shortcut: التي تركها الوكيل عمداً في سجل، حتى لا يتحول «لاحقاً» بهدوء إلى «أبداً».

    الأوامر

    /ponytail-audit/ponytail-debt

    صيغة التعليق ثابتة: shortcut: <الحد>, <متى يُرقّى>. هذا الثبات هو ما يجعل الحصاد ممكناً.

  9. 9

    اضبط افتراضياً وأبقِه محدَّثاً

    طريقتان لتغيير المستوى الذي تبدأ به كل جلسة جديدة: متغيّر البيئة PONYTAIL_DEFAULT_MODE، أو حقل defaultMode في ~/.config/ponytail/config.json. ترتيب الحسم: متغيّر البيئة، ثم ملف الإعداد، ثم full. للتحديث، فعّل التحديث التلقائي مرة من /plugin ← Marketplaces ← ponytail، أو حدّث يدوياً ثم أعد تحميل الإضافات.

    الأوامر

    export PONYTAIL_DEFAULT_MODE=ultra/plugin marketplace update ponytail/reload-plugins

    للإزالة، شغّل أولاً node scripts/uninstall.js الخاص بالإضافة ثم /plugin remove ponytail — فالسكربت نفسه ملف داخل الإضافة ويختفي معها.

السلّم: ما يغيّره Ponytail فعلاً

تغيير السلوك كله سلّم قرارات. قبل كتابة الكود يتوقف الوكيل عند أول درجة تعمل تماماً:

  • 1هل يحتاج هذا إلى الوجود أصلاً؟ الميزات والخيارات والمرونة التي لم يطلبها أحد تُترك وتُسمّى في سطر واحد. الطلب الغامض («اصنع لي X») يحصل على أصغر نسخة تؤدي الجوهر.
  • 2هل هو موجود في هذه القاعدة البرمجية — دالة مساعدة أو مكوّن أو خدمة أو نمط قائم؟ فيُستخدم كما يستخدمه الكود المحيط.
  • 3هل تؤديه المكتبة القياسية أو ميزة من المنصّة؟ فيُستخدم، إلا إن كان للمشروع مكوّنه الخاص الأفضل من الودجت الأصلي.
  • 4هل هو في تبعية مثبّتة أصلاً؟ فيُستخدم. لا تُضاف تبعية من أجل بضعة أسطر أبداً.
  • 5هل يمكن أن يكون سطراً واحداً يفهمه القارئ من نظرة؟ فسطر واحد.
  • 6وإلا: أقل كود يعمل — مع اختبار صغير أو تحقّق ذاتي مبني على assert إن كان فيه تفريع أو حلقة أو محلّل أو مال أو أمن.

ما لا يقطعه صراحةً أبداً

القاعدة هي «اكتب ما تحتاجه المهمة فقط»، لا «اكتب أقل ما يمكن». يسمّي الموجّه خمسة أشياء تبقى في أي مستوى:

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

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

كل الأوامر وما يفعله كل منها

يضيف Ponytail ثمانية أوامر. الأربعة الأخيرة هي التي يفوّتها من يثبّته متوقعاً مجرد أسلوب كتابة.

  • /ponytail [lite | full | ultra | off]ضبط الشدة أو الإطفاء. بلا وسيط يشغّل Ponytail على المستوى الافتراضي إن كان مطفأً، وإلا يبلغ بالمستوى الحالي.
  • /ponytail band [on | off]Claude Code فقط: إخفاء أو إظهار الشريط فوق الموجّه. بلا وسيط يبدّل؛ والمستوى لا يتأثر.
  • /ponytail band importClaude Code فقط: إضافة جلساتك السابقة إلى اللوحة المحلية مع كلفتها وزمن الوكيل والرموز.
  • /ponytail-reviewمراجعة التعديل الحالي كالمطوّر الكبير الذي يُتّصل به حين ينكسر كل شيء: أخطاء، وأمن، وحمل حقيقي، وكود خطر بلا اختبار، ومسارات بطيئة، وما يمكن قطعه. يقبل هدفاً بكلمات عادية: uncommitted أو staged أو branch أو رابط PR.
  • /ponytail-auditالفحص نفسه على المستودع كله، الأهم أولاً.
  • /ponytail-debtحصد تعليقات shortcut: المؤجلة في سجل، حتى لا يصبح «لاحقاً» «أبداً».
  • /ponytail-gainعرض لوحة الأثر المقيس من اختبار المؤلف.
  • /ponytail-helpبطاقة مرجعية لمرة واحدة للمستويات والمهارات والأوامر. لا تغيّر الوضع ولا تحفظ شيئاً.

وكلاء آخرون، ونسخة DeepSeek Harness

الموجّه قابل للنقل، ويوفّر المستودع محوّلات لقائمة طويلة من المضيفين. الثلاثة الأهم:

  • 1Codex: الأمر codex plugin marketplace add DietrichGebert/ponytail ثم codex plugin add ponytail@ponytail، وبعدها افتح /hooks في Codex ووثق بخطّافَي دورة الحياة وابدأ خيطاً جديداً. في Codex الأوامر مهارات ذات نطاق أسماء تُستدعى مثل $ponytail:ponytail-review.
  • 2Cursor: استنسخ المستودع بـ git clone ثم شغّل node ponytail/scripts/cursor-hooks.js install. يدمج ذلك خطّافين أصليين في ~/.cursor/hooks.json ويترك خطّافاتك القائمة كما هي. يُبدَّل المستوى بإرسال رسالة عادية مثل /ponytail lite؛ والوكلاء الفرعيون لا يتلقون القواعد أبداً لأن subagentStart في Cursor لا يستطيع حقن سياق.
  • 3أي وكيل آخر: الأمر npx skills add DietrichGebert/ponytail ينسخ المهارات الست إلى مجلد مهارات ذلك الوكيل، ونسخ AGENTS.md إلى المشروع يمنح القواعد الدائمة بلا أي آلية إضافات.
  • 4لمستخدمي DeepSeek Harness توجد نسخة غير رسمية هي dsh-ponytail، ومهاراتها مقتبسة من هذا المستودع نفسه برخصة MIT. هي تعديل طرف ثالث لا شيء ينشره Dietrich Gebert، فسلوكها مسؤولية من نقلها.
افتح صفحة نسخة dsh-ponytail

الأرقام المنشورة وكيف تُقرأ

يبدأ README بتخفيضات كبيرة. كلها من ملف واحد في المستودع، benchmarks/results/2026-10-07-agentic.md، وتصف إعداداً واحداً: Claude Code بلا واجهة، وOpus 5.5، وeffort افتراضي، وClaude Code CLI 2.1.288، و39 مهمة، و5 تشغيلات لكل مهمة وذراع، و585 جلسة. لا يُدّعى هنا أي تكرار مستقل.

  • 1أسطر الكود: ‑53% مقابل بلا مهارة، بفاصل bootstrap عند 95% من ‑63% إلى ‑41%. رموز الخرج ‑45%، والكلفة ‑26%، والزمن ‑41%.
  • 2الصحة لم تتغيّر: في المهام الـ18 ذات الفحوص المخفية نجح Ponytail 5 في 87 من 90 مقابل 86 من 90 بلا مهارة. وفي مهام الأمن الست نجحت الأذرع الثلاثة في 30 من 30.
  • 3الاختبارات زادت لا نقصت: ظهر اختبار حيث تحتاجه المنطق في 98% من الخلايا مقابل 68% بلا المهارة، والتقطت اختبارات الوكيل نفسها 66% من الأخطاء المحقونة مقابل 46%.
  • 4الردود فُضّلت في مقارنة عمياء، 110 مقابل 67 للإصدار السابق، بمعيار هل يقول الردّ للمراجع كل ما يجب أن يعرفه.
  • 5خليط المهام مهم: 12 تذكرة ميزة في مستودع FastAPI + React حقيقي، و18 مهمة جراحية بفحوص مخفية، و6 طلبات «اصنع تطبيقاً صغيراً»، و3 طلبات «أرني مثالاً». وقد عُطّل Bash في كل الأذرع، أي أن المقيس هو ما يكتبه الوكيل لا قدرته على التنقيح.

اقرأ هذه الأرقام على أنها «المؤلف قاس أداته على مجموعة مهامه». هو اختبار موثَّق بعناية — جداول لكل مهمة، وفواصل ثقة، وملاحظة خاصة عن خلل عزل في الأداة المبكرة — لكنه ليس تدقيقاً من طرف ثالث، ولا يَعِد بأن مستودعك سيرى النسب نفسها.

حدود صريحة قبل التثبيت

Ponytail موجّه. لا شيء يفرضه، وهناك أمور تستحق المعرفة قبل أن يدخل مستودع فريق.

  • 1هو مشروع طرف ثالث لا منتج من Anthropic. رخصة MIT، يصونه شخص واحد؛ ويحذّر README من أنه لا يوزّع ملفات .exe أو .dll أبداً، وأن أي نسخة تحويها ليست منه.
  • 2هو إرشاد لا بوابة. يمكن للنموذج أن يبالغ في البناء، وفي مهمة حلّها الأدنى واضح أصلاً يكون الفرق قريباً من الصفر؛ فالسلّم يفيد حيث كان الوكيل سيخترع بنية من عنده.
  • 3الشريط واللوحة خاصان بـ Claude Code، ويحتاجان 2.1.290 أو أحدث، ولا يظهران في لوحة محادثة VS Code ولا في الجلسات السحابية ولا في claude -p. تبقى بيانات الجلسة محلية في ~/.config/ponytail/band/ إلا إن أعددت أنت webhook الاختياري.
  • 4بعض المضيفين يفقد ميزات. بلا خطّافات دورة حياة لا يبقى المستوى بين الجلسات (Gemini CLI وQwen وAntigravity وGoose)؛ والوكلاء الفرعيون في Cursor لا يتلقون القواعد أبداً؛ ومحوّلات «ملف القواعد فقط» لا تملك أوامر إطلاقاً.
  • 5يترك حالة خارج مجلد الإضافة: ملف وضع، و~/.config/ponytail/config.json، ونسخة من سكربت شريط الحالة، وربما مدخل statusLine في ~/.claude/settings.json. إزالة الإضافة وحدها تُبقي الشارة تعرض آخر وضع.

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

أسئلة Ponytail الشائعة

تابع الاستكشاف