Deepseek ArtifactsDeepseek Artifacts
تخصيص الطرفية · /statusline بتعمق

تخصيص شريط الحالة في Claude Code: السكربتات والأفكار

تجاوز الإعداد الأول: JSON الذي يستقبله سكربت statusline، والحقول التي تستحق العرض — الموديل والرموز والتكلفة والسياق وgit — وأفكار الألوان والتخطيط، وسكربت من المجتمع يستحق الاقتباس.

الخلاصة السريعة

  • يكتب /statusline السكربت عنك. اذكر نظام التشغيل، واطلب النطاق العام وملف .sh/.ps1 منفصلًا، ثم وافق على ملفين: إدخال statusLine في ~/.claude/settings.json والسكربت الذي يشير إليه.
  • يقرأ السكربت كائن JSON واحدًا من الإدخال القياسي — model.display_name وworkspace.current_dir وcontext_window.used_percentage وcost.total_cost_usd وrate_limits — ويطبع ما تريد رؤيته.
  • اطلب الحقول بقائمة مرقمة، ولوّن شريط السياق حسب الحدود (أخضر تحت 50% وأحمر بعد 75%)، وقرّب الرموز إلى وحدات K، وانتقل إلى عدة أسطر عندما يزدحم السطر الواحد.
  • أو ثبّت سكربتًا من المجتمع: npx contextbricks يمنحك الموديل وفرع git والكومِيت وعدّاد رموز على شكل طوب وتحذير الحد الأسبوعي — فتقرر متى تشغّل /compact أو /clear.

Claude Code's Hidden Status Line: Tokens, Model and Project, Your Way

القناة: 호두의 AI 분석실 (Waldo AI Lab)5:27

فتح

ContextBricks: My Custom Claude Code Status Line

سكربت المجتمع: Jeremy Dawes6:17

فتح

Status line — official documentation

الوثائق: code.claude.com/docs

فتح

تمت مطابقة حقائق هذه الصفحة مع وثائق status line الرسمية والتسجيلين أعلاه، وأسماء حقول JSON المذكورة هنا تطابق المرجع الرسمي حرفيًا. لقطات الشاشة إطارات من تلك التسجيلات.

لقطات الشاشة إطارات من دروس 호두의 AI 분석실 وJeremy Dawes (ContextBricks)، استُخدمت مع نسب المصدر ومرتبطة بالوقت الأصلي في كل خطوة.

خصّص شريط الحالة، خطوة بخطوة

اكتب أمر /statusline بشكل صحيح مرة واحدة

  1. 1

    أمر /statusline واحد يذكر نظامك ونطاقك وملف السكربت

    شغّل /statusline وبيّن ثلاثة أمور أولًا: نظامك (Mac أو Linux أو Windows أو WSL)، وأن السطر يجب أن يُضبط عالميًا، وأنك تريد ملف .sh منفصلًا — أو .ps1 على Windows. وإلا فسوف يخمّن وكيل الإعداد بيئتك وقد يخطئ الصدفة، والسكربت على مستوى المشروع لا يظهر في مستودع واحد فقط. يتسع الأمر في أربعة أسطر؛ احتفظ به في ملاحظة لإعادة استخدامه.

    Word document with the exact Claude Code /statusline prompt asking to set up the status line globally with a separate ps1 or sh script file beside the VS Code editor
    أمر /statusline المُجهّز: النظام، والنطاق العام، وملف سكربت منفصل — جاهز للصق.شاهد عند 1:15
  2. 2

    وافق على الملفين اللذين ينشئهما وكيل الإعداد

    امنح أذونات القراءة والكتابة، وسيبلّغ الوكيل بالضبط عمّا لمسه: ~/.claude/settings.json أصبح يتضمن إعداد statusLine، وسكربت مثل ~/.claude/statusline-command.sh يولّد محتوى شريط الحالة. بقاء المنطق في ملف منفصل يعني أن Claude يعدّل السكربت لاحقًا — لا إعداداتك. أعد تشغيل Claude Code ليظهر السطر.

    Claude Code statusline-setup summary listing files created, a settings.json holding the statusLine configuration and statusline-command.sh that generates the status line content
    الملفات المنشأة/المحدثة: settings.json يحمل إدخال statusLine، والسكربت يبني المحتوى.شاهد عند 3:20
  3. 3

    اقرأ مواصفات السطر الافتراضي قبل أن تضيف

    افتراضيًا يعرض السطر المولّد: الدليل الحالي، واسم الموديل مثل [Claude Opus 4.5]، ونمط الإخراج إن لم يكن الافتراضي، ووضع vim، وفرع git عندما تكون داخل مستودع، ونسبة استخدام نافذة السياق — مثلًا Claude-project [Claude Opus 4.5] (git:main) 12%. ولأن الإعداد عالمي، فهو يسري على كل جلسات Claude Code في الجهاز.

    Claude Code panel listing the default status line fields, current directory, model name, output style, vim mode, git branch and context window percentage, with the ordered add request below
    قائمة العرض الافتراضية ومثال مُصيَّر للسطر المولّد.شاهد عند 2:45

قرر ماذا يعرض السطر

  1. 4

    اطلب الحقول التي تريد — مرقمة

    اطلب الإضافات كقائمة مرتبة وسيرد الوكيل بترتيب عرض مرقم. أنتجت هذه الجولة: اسم الموديل، وشريط تقدم من 20 حرفًا، ونسبة مثل 20%، والرموز بصيغة 40000/200000، وgit:main، ثم دليل المشروع — مصورةً هكذا: Claude 3.5 Sonnet [==== ] 20% 40000/200000 git:main Claude-project. تصل التغييرات إلى ملف السكربت؛ أعد تشغيل Claude Code لتراها.

    Claude Code statusline-setup reply listing the display order from model name to project name with an example line reading Claude 3.5 Sonnet, progress bar, 20 percent, 40000/200000, git:main
    ترتيب العرض 1-6 مع سطر مثال مصيَّر، مكتوبة داخل السكربت.شاهد عند 3:45
  2. 5

    أعطِ كل عنصر لونًا ذا معنى

    اطلب لونًا لكل عنصر فيحصل السكربت على أكواد ANSI بحدود فاصلة. الجدول المتفق عليه هنا: الموديل سماوي؛ شريط التقدم أخضر تحت 50%، وأصفر بين 50 و75%، وأحمر فوق 75%؛ النسبة بلون الشريط؛ الرموز أرجواني؛ الفرع أخضر؛ اسم المشروع أزرق؛ والفواصل رمادية. اترك الأحمر لشريط السياق حتى يبقى لون الإنذار محفوظًا للضغط الحقيقي.

    Element and color table for a Claude Code status line, model name cyan, progress bar green under 50 percent, yellow from 50 to 75, red above 75, tokens magenta, git branch green
    جدول ألوان عنصرًا بعنصر مع حدود فاصلة لشريط التقدم.شاهد عند 4:15
  3. 6

    قرّب الرموز إلى وحدات K وطابقها مع /context

    الأرقام الخام مثل 21373/200000 يصعب مسحها بنظرة. اطلب وحدات K فيقرأ السطر 21k/200k — مع تنبيه الوكيل إلى أن القيمة مقرَّبة. ثم تحقق: شغّل /context في الجلسة نفسها وقارن؛ الإجماليات متطابقة. ومما ورد في العرض: بعد التقريب قد تظهر جلسة 22k وجلسة 23K بالشكل نفسه — وهذا كافٍ لسطر يُقرأ بلمحة.

    Claude Code statusline-setup formatting tokens in k units, changing 21373 of 200000 tokens to 21k/200k, beside the status line color table and a rendered example
    أصبح 21373/200000 هو 21k/200k؛ وأكد /context الإجماليات نفسها.شاهد عند 4:30
  4. 7

    شغّل جلستين وتأكد أن كل سطر يتتبع نفسه

    افتح طرفيتين وشغّل Claude Code في كلتيهما. كل شريط حالة يبلّغ عن جلسته هو: 11% و22k/200k على اليسار، و9% و18k/200k على اليمين، بينما يطابق /context في كل نافذة سطرها. لهذا يستحق الفرع والمشروع مكانًا في السطر — فمع عدة تبويبات تعمل ترى بنظرة أي جلسة أثقل بدل تشغيل /context في كل مكان.

    Two terminal panels side by side each running Claude Code with its own status line, one showing 11 percent and 22k/200k tokens, the other 9 percent and 18k/200k
    جلستان من Claude Code، وكل شريط حالة يبلّغ عن سياقه الخاص.شاهد عند 5:15

اقتبس سكربتًا واقرأه يوميًا

  1. 8

    تجاوز الكتابة: ثبّت سكربت مجتمعي بأمر npx

    لست مضطرًا لكتابة السكربت بنفسك. يتثبت ContextBricks بأمر واحد — npx contextbricks — فيكتب ~/.claude/statusline.sh ويحدّث settings.json بعد حفظ نسخة احتياطية. قائمته: اسم الموديل، ورسالة git repo:branch [commit]، ومؤشرات التغييرات غير المُوَلَّجة والتقدم والتأخر، والأسطر المتغيرة في الجلسة، واستخدام السياق في الوقت الحقيقي برسوم «الطوب»، وتفصيل الرموز. الإزالة بـ ./uninstall.sh؛ ومسار النسخة الاحتياطية المطبوع يعيد سكربتك السابق.

    Terminal running npx contextbricks showing installation complete, statusline.sh installed under .claude, settings.json updated with a backup, and the list of what the status line will show
    npx contextbricks: السكربت ثُبّت، وsettings.json حُدّث، والقدرات عُدّت.شاهد عند 0:20
  2. 9

    اقرأ العدّاد أثناء عمل الوكيل

    يتجلى السطر المخصص في منتصف الجلسة. في العرض يقرأ [Sonnet 4.5]، و+2381/-0 سطرًا، ثم شريط سياق عند 18% (36k/200k tokens) مع التفصيل sys:4k tools:16k mcp:2k mem:10k msg:4k و163k حرًا. يحسب المؤلف الرموز بتحليل سجل المحادثة — تقدير وليس رقم API — ويراه دقيقًا بما يكفي ليقرر متى يضغط السياق أو يمسحه.

    Claude Code writing planning documents with the ContextBricks status line showing Sonnet 4.5, lines added and removed, an 18 percent context bar at 36k of 200k tokens and 163k free
    36k/200k tokens مع تفصيل حسب الفئة أثناء كتابة وثائق التخطيط.شاهد عند 5:00
  3. 10

    اختم بإشارة: الكومِيت يحلّ، والحد الأسبوعي يقترب

    بعد كومِيت git يلتقط السطر الفرع والكومِيت: contextbricks:master [ffe9523] Add comprehensive planning documentation. ويضيف الطرف الأيمن إشارة ثانية — Approaching weekly limit. وبين نسبة السياق وعلامة الكومِيت وتحذير الحد، تعرف متى تشغّل /compact أو /clear بقصد بدل أن يقطع الضغط التلقائي مهمتك في منتصفها.

    Claude Code status line after a commit showing contextbricks master with commit ffe9523 message, a 19 percent context bar at 38k of 200k tokens and an Approaching weekly limit warning
    الفرع والكومِيت يظهران في السطر؛ وتحذير الحد الأسبوعي على اليمين.شاهد عند 6:02

ما يمكن لسكربتك قراءته — حقلًا بحقل

كل ما في السطر يأتي من كائن JSON واحد يستقبله السكربت من الإدخال القياسي — عند بدء الجلسة ثم بعد كل تحديث: رسالة مساعد جديدة، أو /compact مكتمل، أو تغيير وضع الأذونات. هذه الحقول الرسمية تستحق سطرًا خاصًا بها.

  • 1الموديل والجهد — model.display_name كتسمية (Sonnet 4.5 وOpus 4.5)، وeffort.level إن أردت إظهار مستوى الاستدلال بجانبه.
  • 2المكان — workspace.current_dir هو الحقل المفضّل للدليل الحالي، وworkspace.project_dir دليل الإطلاق، وworkspace.repo.owner/.name يحددان المستودع المستخرج من origin؛ والفرع مع git branch --show-current.
  • 3السياق — context_window.used_percentage وremaining_percentage محسوبان سلفًا، وcontext_window.current_usage يفصل الإدخال والإخراج وإنشاء الكاش وقراءته، وcontext_window.context_window_size افتراضه 200000 (ومليون في الموسع).
  • 4المال والوقت — cost.total_cost_usd لتكلفة الجلسة (تصفر مع /clear)، وcost.total_duration_ms وtotal_api_duration_ms للوقت الفعلي مقابل انتظار API، إضافة إلى cost.total_lines_added وtotal_lines_removed.
  • 5الحدود — rate_limits.five_hour وrate_limits.seven_day يكشفان used_percentage وresets_at في خطتي Pro وMax؛ وتتضمن الوثائق أيضًا كائن prompt_cache بحقلي hit_ratio وexpires_at لأسطر واعية بالكاش.

عمليّات من الوثائق: كل echo أو print سطر قائم بذاته، فالتخطيطات متعددة الأسطر مجرد print إضافية؛ وأكواد ANSI تلوّنها؛ ومتغيرتا البيئة COLUMNS وLINES تخبرانك بعرض الطرفية؛ وكل حقل قد يغيب يستحق احتياطي jq مثل .context_window.used_percentage // 0 ليعبر السطر ثواني الجلسة الأولى سالمًا.

عندما يسيء السطر التصرف

معظم أعطال شريط الحالة ترجع إلى خمسة أسباب — وكل إصلاح على بُعد أمر prompt واحد أو أمر طرفية واحد.

  • 1سطر فارغ أو شرطات (--) — تلك حقول فارغة قبل أول استجابة API. توصي الوثائق باحتياطيات jq (// 0 و// empty)، ويجب قبول إشارة الثقة في مساحة العمل وإلا بقي السطر فارغًا.
  • 2السكربت لا يعمل — اجعله قابلًا للتنفيذ بـ chmod +x، واطبع إلى stdout لا stderr، وشغّل claude --debug لرؤية أخطائه.
  • 3أرقام تبدو خاطئة — يقول مؤلف ContextBricks إن Claude أخطأ حساب الرموز عدة محاولات متتالية. اطلب من الوكيل تفريغ JSON الخام في ملف تصحيح وإعادة كتابة السكربت على أساسه، ثم قارن السطر مع /context.
  • 4ارتباك الصدفة في Windows — يستخدم Claude Code قشرة Git Bash إن كانت مثبتة وإلا PowerShell؛ اكتب المسارات بشرطات مائلة أمامية وضع السكربت في ملف .ps1 خاص به.
  • 5أكثر من اللازم في سطر — اطلب تعدد الأسطر (ينتقل المسار ومعلومات المستودع إلى سطر ثان) أو اخفف: رموز بوحدات K، ولون واحد للفواصل، واحذف الحقول التي لا تلقي إليها نظرة أبدًا.

وإذا أردت الخروج تمامًا: /statusline delete (أو /statusline clear) يزيل الميزة، وuninstall.sh لمثبّت مجتمعي يتراجع عنها، والنسخة الاحتياطية للإعدادات التي تركها المثبّت تعيد سكربتك السابق.

أسئلة شائعة عن شريط حالة Claude Code

أدلة ذات صلة