أدوات مطوري الذكاء الاصطناعي · Claude Code

Claude Code Mods: طبقة أحداث لتخصيص أدوات البرمجة

تستطيع Mods الجديدة من Anthropic إعادة كتابة أحداث Claude Code وواجهته. هذا تصميم آمن للترتيب والاختبار والاختيار بينها وبين Hooks وSkills وMCP.

المسار المرتبطالذكاء الاصطناعي وRAG والبحث المتجهي
تصور تحريري لسلسلة أحداث Claude Code تربط prompt والأداة والصلاحية والسياسة والواجهة كطبقات middleware مستقلة.
تصوّر بصري للفكرة — يتبعه شرح ومخطط تنفيذي داخل المقال.

Claude Code Mods هي دوال JavaScript أو TypeScript تعترض أحداث Claude Code، ويمكنها مراقبة السلوك أو إعادة كتابته أو استبداله أو تغليفه. أطلقت Anthropic الميزة في 1 أكتوبر 2026 للإصدار 2.1.287 أو أحدث، وتستطيع تعديل prompts وtool calls ومسارات الصلاحيات وعناصر الواجهة. هذه القوة تجعلها مفيدة لتخصيص سير عمل المطورين، لكنها تجعلها أيضًا كودًا ذا صلاحيات عالية؛ توضح Anthropic أن Mods تعمل بصلاحيات المستخدم وليست داخل sandbox. لذلك عاملها كـproduction dependency لا كتعليمة prompt.

يشرح هذا الدليل الإعلان والوثائق الرسمية التي راجعتها في 5 أكتوبر 2026، ويفصل السلوك الموثق عن التوصيات الهندسية. الأمثلة توضيحية، ويجب التحقق من type declarations وواجهات API التي تأتي مع إصدار Claude Code الفعلي لأن Anthropic تنبه إلى احتمال تغير API بين الإصدارات.

ماذا أطلقت Anthropic في 1 أكتوبر 2026؟

يصف الإعلان الرسمي الـMod بأنه دالة TypeScript صغيرة تغير طريقة عمل Claude Code أو مظهره. تستطيع إعادة كتابة prompt، أو منع tool call أو إعادة محاولته، أو الرد على permission request، أو إخفاء أسرار من ناتج أداة، أو استبدال ميزة مدمجة، أو رسم واجهة جديدة في terminal وتطبيق سطح المكتب. تُحزم Mods داخل Plugins، لذلك تبقى آليات تثبيت Plugins وتوزيعها والتحكم الإداري بها هي طبقة التغليف.

التغيير المهم ليس مجرد «واجهة قابلة للتخصيص». تشغل settings hooks أوامر أو endpoints عند أحداث دورة الحياة؛ وتقدم Skills تعليمات قابلة لإعادة الاستخدام؛ وتقدم MCP servers أدوات خارجية. أما Mods فتسجل دوال داخل event pipeline الخاص بـClaude Code. تستطيع استدعاء handler التالي، أو تغيير الحدث الممرر له، أو إرجاع جواب دون متابعة السلسلة. هذا يجعلها middleware حول agent runtime.

الميزة متاحة في CLI وتطبيق سطح المكتب. تشترط نظرة Mods العامة الإصدار 2.1.287 أو أحدث وتذكر أنها مفعلة افتراضيًا. يعتمد رسم الواجهة على السطح؛ فقد تعمل hooks في جلسات غير تفاعلية لا تعرض panes أو bands. لذلك يجب أن تبقى سياسة Mod صحيحة حتى عندما تختفي الواجهة.

فكّر كسلسلة Middleware لا Callbacks منفصلة

يعرض دليل البدء الرسمي العقد الأساسي: `register(on)` وhandlers تستقبل Mods API وبيانات الحدث و`next`. يمرر `next(e)` الحدث إلى plugin التالي ثم إلى Claude Code. الكود قبل `next` مرحلة مسبقة، وبعده مرحلة لاحقة، وتمرير حدث معدل يعيد كتابة السلوك، وإرجاع نتيجة دون `next` يجيب عن الحدث أو يمنعه.

يخلق هذا النموذج سلوكًا يعتمد على الترتيب. يوضح إعلان Anthropic أن Mods التي تعالج الحدث نفسه تعمل حسب ترتيب التحميل: أول Mod ترى الطلب أولًا وترى النتيجة أخيرًا. هذا يشبه middleware متداخلة. قد يرى audit Mod بيانات منقحة في مسار الطلب وبيانات خامًا في مسار رجوع آخر بحسب الترتيب والتنفيذ. وثّق السلسلة المقصودة بدل افتراض استقلال كل Mod.

قسّم handlers داخليًا إلى أربعة أنواع: observer وtransformer وpolicy gate وUI adapter. يجب ألا يغير observer الأحداث. ويجب أن يحدد transformer الحقول التي يحق له تعديلها. ويجب أن يفشل policy gate بصورة مغلقة عندما لا تتوفر أدلة القرار. ولا يجوز أن تكون UI adapter طبقة الإنفاذ الوحيدة. يجعل هذا التصنيف المراجعة والاختبارات أكثر دقة.

اختر بين Mods وHooks وSkills وMCP بوضوح

استخدم Mod عندما يجب أن يدخل المتطلب في event chain داخل Claude Code: pane جديدة، إعادة كتابة tool call، command مخصص، state للجلسة أو تغليف handler آخر. استخدم settings hook عندما يستطيع shell script أو HTTP endpoint أو prompt منع حدث أو السماح به أو تسجيله أو إثراءه دون واجهة مخصصة. توثق مرجعية Hooks أحداث الجلسة والـprompt والصلاحيات والأدوات والمهام والضغط وتغيير النموذج وقراراتها.

استخدم Skill عندما تكون المشكلة خبرة أو إجراءً يعاد استخدامه: مراجعة migration أو إنشاء تقرير أو اتباع معايير الفريق. تغير Skill ما يعرفه Claude وما يفعله، لكنها ليست security boundary. واستخدم MCP عندما يحتاج Claude إلى interface مكتوبة لأداة خارجية مثل deployment service أو issue tracker أو database. توسع MCP مساحة الأدوات، بينما تستطيع Mod مراقبة طريقة استخدام Claude Code لهذه الأدوات أو ضبطها.

يمكن جمع الآليات داخل Plugin واحد، لكن لا تبنِ package غامضة تمزج السياسة والمعرفة والاتصال والواجهة دون حدود. أبقِ Skill قابلة للقراءة، وMCP server مصرحًا لها مستقلة، وpolicy Mod صغيرة، وUI Mod اختيارية. يجب أن يتمكن الفريق من تعطيل طبقة العرض دون تعطيل الإنفاذ.

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

عامل كل Mod ككود Supply Chain عالي الصلاحيات

تحذر Anthropic بوضوح من أن Mods ليست sandboxed وتعمل بصلاحيات Claude Code. تذكر وثائق الأمان أن Mod المحملة تستطيع قراءة الملفات وكتابتها، وبدء البرامج، وإجراء network requests، وقراءة environment variables والإعدادات، ورؤية prompts وtool calls، وتغيير الجلسة، والموافقة على بعض tool calls، واستهلاك استخدام النموذج. ولا يحتوي Bash sandbox تلقائيًا العمليات التي تبدأها Mod.

النموذج الأمني العملي أقرب إلى IDE extension أو package-manager dependency منه إلى prompt template. ثبّت مصدر Plugin وإصدارها، وراجع manifest وhook module، وتحقق من الأحداث وMods API calls التي تعلنها، وانشر عبر marketplace مسموحة. لا تثبت Mod مجهولة لأن مخرجاتها تبدو مفيدة. افصل تجارب المطورين عن workstations المُدارة.

شغّل `claude plugin validate ./plugin-path` قبل تحميل Mod. توثق Anthropic أن validation تستطيع عرض hooks المسجلة والاستدعاءات المطلوبة دون تشغيل Mod. هذه static evidence مفيدة وليست إثبات أمان؛ ما زالت مراجعة الكود والاعتماديات وضوابط egress لازمة. احفظ ناتج validation ضمن release artifacts وقارن الفرق بين الإصدارات.

تحتاج الأسرار معاملة خاصة. فضّل credentials قصيرة العمر خارج البيئة التفاعلية، وقلص نطاق tokens، ونقح tool results قبل وصولها إلى النموذج أو السجلات. لكن Mod التي تنقح السر تراه أصلًا. إذا كان المتطلب لا يسمح لعملية Mod برؤية credential، فانقل العملية الحساسة خلف خدمة مستقلة بتفويضها بدل الاعتماد على redaction داخل العملية.

ضع ضوابط المؤسسة أولًا واجعل الترتيب صريحًا

ترتيب التحميل جزء من سياسة الأمان. توثق Anthropic وجود Mod مُدارة باسم `sec-default` في إعدادات مؤسسات مدعومة، وتذكر أنها تُحمّل قبل Mods التي يثبتها المستخدم لتقييد التجاوزات الخطرة. وإذا استبدل المسؤولون قائمة التحميل الأولى، توصي Anthropic بالإبقاء على `sec-default`. وبغض النظر عن الافتراضي، يجب جرد الترتيب الفعلي على كل سطح مُدار.

صمم Mod المؤسسة الخارجية كنواة سياسة صغيرة. تثبت القيود غير القابلة للتجاوز، وتسجل correlation ID، وتشتق فئة البيئة، وترفض العمليات المخالفة. تعمل productivity Mods داخل هذا الحد. ويسجل audit logic النية الأصلية والـtool call المنفذة النهائية عندما تسمح السياسة، دون تسجيل الأسرار.

لا تجعل warning pane وسيلة الحماية الوحيدة. يستطيع مثال Anthropic المسمى Blast Radius إيقاف أوامر وطلب تأكيد، لكن الدليل نفسه يقول إن تصنيف نص الأمر safety net وليس permission system؛ فقد تتجاوز aliases والscripts وcommand substitution مطابقة النص. افرض القواعد الصلبة عبر permission policy وعزل البيئة وleast-privilege credentials وتفويض الخادم.

صمّم Handlers بموثوقية وLatency محدودة

يقع event interceptor على critical path. تزيد Mod البطيئة تأخر الوكيل، وقد يوقف policy handler العالق العمل، وقد يترك exception المستخدم غير متأكد هل نُفذت الأداة. حدد time budget لكل handler، واستخدم cancellation signals، وأبعد remote calls عن المسارات المتزامنة إلا عندما يعتمد القرار عليها فعلًا. خزّن الإعدادات الثابتة مؤقتًا، لكن لا تخزن التفويض أطول من صلاحيته.

يجب أن يكون كل transformer حتميًا للحدث وإصدار السياسة نفسيهما. اربط Mod version وسبب القرار بكل trace. عند إعادة tool call ميّز «لم تنفذ» من «نتيجة التنفيذ مجهولة»، وإلا قد تكرر side effect خارجيًا. مرر idempotency key للأدوات المعدلة أو نفذ reconciliation قبل الإعادة.

اختر fail-open أو fail-closed لكل handler. يمكن لمقياس tokens زخرفي أن يختفي عند الفشل. أما production safeguard فيجب أن يفشل غالبًا بصورة مغلقة، مع recovery path طارئ لا يعطل الضوابط بصمت. اختبر safe mode والسلوك المُدار قبل الاعتماد عليهما وقت الحوادث.

يجب أن تبقى state صحيحة بعد hot reload. يوصي دليل Anthropic باستخدام `$.state` المُدارة من المضيف للبيانات التي تستمر بعد reload، ويعرض typed state declarations. لا تستخدم module globals لقرارات جلسة دائمة لأنها تعاد إلى الصفر. قيد حجم state وأصدرها حتى تستطيع الترقية تجاهل القيم غير المتوافقة أو ترحيلها.

مثال: بوابة تغييرات Production بقرارات قابلة للتدقيق

يحرس النمط المبسط التالي Bash tool calls التي تبدو موجهة إلى الإنتاج. لا يحلل shell semantics وليس security control مكتملًا. الهدف توضيح policy gate محدودة: اشتقاق المخاطر، وطلب قرار صريح للعمليات عالية المخاطر، والاحتفاظ بسجل، والرفض عند عدم اليقين.

export function register(on) {
  on('tool.call', { tool: 'Bash' }, async ($, event, next) => {
    const decisionId = crypto.randomUUID();
    const risk = classifyProductionRisk(event.command);
    if (risk === 'none') return next(event);

    const decision = await withDeadline(
      $.http.request('https://policy.example/decide', {
        method: 'POST',
        body: { decisionId, risk, commandDigest: sha256(event.command) },
      }),
      1500,
    );

    if (decision?.allow !== true) {
      return { deny: `Production policy denied \${decisionId}` };
    }

    const result = await next(event);
    await auditBestEffort({ decisionId, result: summarize(result) });
    return result;
  });
}

في التصميم الحقيقي توثق policy service الجهاز وتفوض المستخدم والبيئة، ولا تقبل roles يعلنها العميل. يدعم command digest الترابط دون تخزين أسرار خام. مهلة 1.5 ثانية مثال وليست توصية. تبقى العمليات ذات side effects بحاجة إلى server-side controls لأن من يسيطر على الجهاز يستطيع إزالة Mod محلية أو تعديلها ما لم تمنع الإدارة ذلك.

اختبر Mods وانشرها كبرمجيات

توفر Anthropic الأمرين `claude plugin validate` و`claude plugin test`. يعرض الدليل اختبارات أمام runtime الحقيقي لـClaude Code مع event stubs وتركيب UI. استخدم unit tests للمصنفات والتحويلات، واختبارات chain للترتيب، واختبارات permissions لمساري المنع والسماح، واختبارات cancellation وhot reload والأسطح: terminal وdesktop والجلسات headless.

أضف حالات عدائية: أوامر shell متداخلة، arguments مشفرة، نتائج أدوات ضخمة، prompt injection داخل tool output، فشل الشبكة، سياسة قديمة، أحداث مكررة وMod لا تستدعي `next`. اختبر التركيبات لا Plugins منفردة فقط؛ فقد تنتج Modان صحيحتان تركيبًا غير آمن عند تغير الترتيب.

ثبّت الحد الأدنى لإصدار Claude Code واختبر الإصدار الذي ستوزعه. تذكر Anthropic أن type declarations المولدة داخل `.claude-plugin/types/` هي المرجع لذلك build وأن API قد تتغير. مرر التحديث عبر canary group، وقارن telemetry القرارات والlatency، واحتفظ بحزمة rollback. لا تعمل hot reload لكود غير مراجع على أجهزة مُدارة.

متى لا تستخدم Mod؟

لا تستخدم Mod إذا كانت permission rule تصريحية تفرض المتطلب بصورة أبسط. لا تنقل تفويض خدمة خارجية إلى TypeScript محلية إذا كان النظام مالك المورد يستطيع فرضه. لا تستخدم Mod لتعليم Claude checklist؛ هذه Skill. ولا تلف business API مباشرة عندما تكون MCP server بصلاحيات محدودة وschemas قابلة للتدقيق أوضح.

تجنب Mods للضوابط التي يجب أن تبقى خارج Claude Code. لا يستطيع interceptor محلي حماية أفعال تتم عبر client آخر أو API مباشر أو credentials مخترقة. تحسن Mod سير عمل المطور وتضيف defense in depth، لكن system of record يبقى المرجع.

للتخصيصات الشخصية الصغيرة قد يكون status line أو setting موجودة أقل تكلفة. تستحق Mod عندما تعطي إعادة كتابة الأحداث أو state داخل الجلسة أو UI مدمجة قيمة تكفي ثمن التوافق والأمان.

قائمة إطلاق Production

قبل الإطلاق، حدد الأحداث والحقول التي يحق لـMod رؤيتها أو تعديلها؛ واختر بينها وبين hooks وSkills وMCP بوضوح؛ وثبّت إصداري Claude Code وPlugin؛ وراجع الاعتماديات؛ وتحقق من hooks وAPI calls المعلنة؛ ووثق ترتيب التحميل؛ وأبقِ ضوابط المؤسسة أولًا؛ وقلص credentials؛ وحدد timeouts وcancellation؛ واجعل retries للعمليات idempotent؛ وقيد state؛ واختبر كل سطح؛ واختبر تركيبات Mods والمدخلات العدائية؛ وقس latency والرفض؛ وأطلق عبر canary؛ واحتفظ بالrollback والتعافي الآمن؛ وافرض التفويض النهائي في النظام مالك المورد.

للتوسع اقرأ تقييم وكلاء MCP، وتنفيذ وكلاء AI بصورة دائمة، ومعمارية الثقة لـComputer Use، وتمرير سياق العميل بأمان.

المراجع الرسمية

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

إعداد: Noor Yasser

من القرار إلى التنفيذ

تعمل على تحدٍ تقني مشابه؟

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

احجز لقاءً لمدة ٣٠ دقيقةالخدمة المرتبطةتكاملات الذكاء الاصطناعي وأنظمة RAGمشروع من الأعمالAI Action Studio