Headless mode
كان كل ما سبق محادثة: تكتب، يجيب Claude، تكتب من جديد. أما headless mode فيُسقط المحادثة. تعطي Claude تعليمة واحدة، فينجز المهمة، ويطبع الجواب، وينتهي.
شغّل
claude -p "تعليمتك هنا"فينجز Claude المهمة ويطبع النتيجة مباشرة إلى الـ terminal — لا محادثة، ولا أخذٌ وردّ. والـ-pاختصارٌ لـ print.
claude -p "summarize what this project does in three bullet points"
يفكّر، ويطبع ثلاث نقاط، وتعود إلى الـ prompt الخاص بك. طلقةٌ واحدة.
لا يبدو ذلك بالشيء الكبير. لكن القوة تظهر حين تتوقّف عن التفكير في Claude بوصفه مكانًا تزوره وتبدأ بالتفكير فيه بوصفه أمرًا تدمجه مع أوامر أخرى.
Claude داخل pipe
في المستوى 1 كان الـ terminal يدور حول ربط أوامر صغيرة في سلسلة. ورمز | (الـ pipe) يأخذ مُخرج أمر ويغذّيه إلى التالي. وheadless Claude يندمج مباشرة في تلك السلسلة:
git diff | claude -p "write a clear commit message for these changes"
اقرأه كجملة: خذ الـ diff، سلّمه إلى Claude، اطلب commit message. يقرأ Claude ما غذّاه به الـ pipe ويطبع رسالة. وإليك بعضًا آخر يستحقّ مكانه:
cat error.log | claude -p "what is the root cause of this crash?"
claude -p "list every TODO comment in this folder and who should own it"
أصبح Claude الآن مجرد tool آخر في الـ pipeline، يجلس بين برامج لا فكرة لديها أصلًا أنه ذكاء اصطناعي.
لماذا هذا هو التحرير
في headless mode يصبح Claude composable. وأي شيء يستطيع الـ terminal الخاص بك فعله، يمكنك الآن أن تلفّ حوله قليلًا من الذكاء.
ولأنه أمر صرف، فإنه يستطيع الذهاب إلى أي مكان يذهب إليه الأمر — داخل shell script، أو ملف Makefile، أو scheduled job، أو pipeline مؤتمت. وهذا هو الجسر إلى الدروس الثلاثة الأخيرة من هذا المستوى. لا تستطيع نافذة محادثة العيش داخل script. أما الأمر فيستطيع.
مصنوع للـ scripts
حين تمرّر Claude عبر الـ pipe إلى برامج أخرى، كثيرًا ما تريد مُخرجًا نظيفًا متوقّعًا بدلًا من نثرٍ ودود. وثمة flags تساعدان:
--output-format json— يعيد نتيجة مهيكلة يستطيع الـ script قراءتها بموثوقية، بدلًا من نصّ حرّ.--allowedTools— يوافق مسبقًا على الـ tools التي يجوز لـ Claude استخدامها بالضبط، كي لا يتوقّف تشغيلٌ غير مراقَب أبدًا ليطلب permission (المستوى 6 لا يزال ساريًا — أنت تقرّر الـ blast radius مقدمًا بدلًا من اللحظة).
تلك النقطة الأخيرة هي النقلة الذهنية. في الـ session العادية، يتوقّف Claude ويسأل قبل الخطوات الخطيرة. أما في headless، فلا أحد هناك ليجيب — لذا تمنح مجموعة permissions حذرة وضيقة مسبقًا وتتركه يعمل.
ما التالي
الـ headless mode هو Claude بوصفه أمرًا واحدًا. أما Agent SDK فهي الخطوة التالية أعلى: بناء برنامج كامل حول المحرّك نفسه — agent مخصّص خاص بك، والـ harness بين يديك.