الـ Agent SDK
هذا الدرس لمن يكتبون الكود. إن لم تكن منهم، فاقرأه سريعًا للفكرة — «يمكنك بناء الـ tools الخاصة بك المدعومة بـ Claude» — وامضِ. لا شيء في بقية المستوى يعتمد عليه.
أتاح لك headless mode (الدرس 11.6) أن تستخدم Claude كأمر. أما Agent SDK فتتيح لك أن تبني به — أن تلفّ برنامجك الخاص حول المحرّك نفسه الذي يشغّل Claude Code.
الـ Claude Agent SDK هي toolkit (للـ TypeScript أو Python) تمنح كودك الخاص محرّك Claude Code كاملًا: الـ agent loop، والـ tools، وMCP، وhooks، وsubagents — كل ذلك، كمكتبة تستدعيها.
في Python تبلغ هذا الصِّغر تقريبًا:
from claude_agent_sdk import query
async for message in query(prompt="Find and fix the failing test in this repo"):
print(message)
هذه الأسطر القليلة تُطلق agent يقرأ الملفات، وينفّذ الأوامر، ويصلح الاختبار، ويبلّغ بالنتيجة — الـ loop نفسها التي ظللت تقودها يدويًا طوال الدورة، الآن داخل برنامجك أنت.
التمييز الذي يهمّ: API مقابل SDK
إن سبق لك أن لمست الذكاء الاصطناعي، فعلى الأرجح أنك استخدمت Anthropic API مباشرة — الخطّ الخام إلى الـ model. وهي tool رائع، لكنها تبادلٌ مفرد: ترسل رسائل، فتحصل على ردّ واحد. وإن أردت أن ينفّذ الـ model فعلًا أمرًا، ويقرأ النتيجة، ويقرّر ما يفعله بعدُ، فعليك أنت أن تبني تلك الـ loop بأكملها — استدعِ الـ tool، أعِد تغذية المُخرج، اسأل من جديد، كرّر، عالج الأخطاء. وتلك الـ loop هي معظم العمل الشاق في أي agent.
الـ API الخام يمنحك العقل. والـ Agent SDK تمنحك العقل زائدًا الجسد — الـ loop، والـ tools، ونظام الـ permissions، وإدارة الـ context — مبنيةً ومجرّبة في الميدان سلفًا.
ببساطة:
| تريد… | فالجأ إلى… |
|---|---|
| سؤال واحد، جواب واحد (صنّف هذا، لخّص ذاك) | الـ Anthropic API الخام |
| شيءٌ يعمل بوكالة — يستكشف، وينفّذ tools، وiterates | الـ Agent SDK |
الـ SDK هي، حرفيًا تقريبًا، Claude Code مع نزع بابه الأمامي كي تتمكّن من توصيل شيئك الخاص بالغرفة نفسها.
ماذا يبني الناس بها
- reviewer مخصّص مُضمَّن في منصّتهم الخاصة يقرأ diff وينشر الملاحظات.
- support agent يقرأ تذكرة عميل، وينقّب في الـ codebase، ويصوغ إصلاحًا.
- migration tool تجوب مئة repo وتطبّق التغيير نفسه على كل واحد.
والخيط الجامع: مهمةٌ متكرّرة، agentic، أكثر تفصيلًا لاحتياجاتك من أن يفي بها claude -p بسيط، وأكثر تعقيدًا من أن تجالسها يدويًا.
أين ينتهي headless وأين تبدأ الـ SDK
إنه طيف، لا جدار:
- مهمة لمرّة واحدة في script ← headless mode. لا تلجأ إلى الـ SDK.
- برنامج حقيقي يكون فيه الـ agent مكوّنًا — tools مخصّصة، وواجهتك الخاصة، ومنطق متشعّب ← الـ SDK.
معظم الناس لا يحتاجون الـ SDK أبدًا، ولا بأس في ذلك. لكن حين تتجاوز الأوامر ذات الطلقة الواحدة وتريد ذكاء Claude الكامل داخل شيء تبنيه، فهذا هو الباب — وهو المحرّك نفسه الذي تثق به سلفًا.
ما التالي
حتى الآن، لا تزال أنت من يُطلق كل شيء — prompt، أو أمر، أو script تشغّله. والدرسان الأخيران يزيلان حتى ذلك. Scheduled agents يتيحون لـ Claude أن يبدأ نفسه، على ساعة، وأنت بعيدٌ كل البعد عن لوحة المفاتيح.