claude-code-notifier
طريقة العمل الأدلة الأسئلة الشائعة
◐العربية
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
ابدأ الآن
كل الأدلة

إشعارات Claude Code على Windows (PowerShell وWSL)

آخر تحديث 31 أكتوبر 2026 · قراءة في 6 دقيقة
في هذه الصفحة 01Windows الأصلي أم WSL: أين تعمل الـ hooks 02اختبار سريع: جرس الـ terminal 03Notification hook باستخدام PowerShell 04إشعار toast حقيقي باستخدام BurntToast 05من WSL: استدعِ Windows عبر interop 06أين يأتي دور Claude Code Notifier 07الأسئلة الشائعة

لا يعرض Claude Code افتراضيًا أي إشعار على سطح المكتب في Windows Terminal أو PowerShell أو terminal ‏VS Code، لذا عليك إضافته بنفسك على Windows. ضع hook من نوع Notification (وhook من نوع Stop لإشعار الانتهاء) في %USERPROFILE%\.claude\settings.json يشغّل PowerShell: صندوق الرسائل يعمل دون تثبيت أي شيء، ووحدة BurntToast تمنحك إشعار toast حقيقيًا. وإذا كان Claude Code يعمل داخل WSL، فإن الـ hook يعمل في Linux، ولذلك يجب أن يستدعي powershell.exe عبر آلية interop في Windows ليصل إلى سطح مكتب Windows.

01Windows الأصلي أم WSL: أين تعمل الـ hooks

يعمل Claude Code إما مباشرة على Windows أو داخل WSL، وهذا ما يحدد طريقة عمل hook الإشعارات.

  • Windows الأصلي. توجد الإعدادات في %USERPROFILE%\.claude\settings.json. ووفقًا لـمرجع الـ hooks من Anthropic، تعمل hooks الأوامر افتراضيًا في Git Bash، أو في PowerShell إذا لم يكن Git Bash مثبتًا. يمكنك فرض PowerShell لـ hook واحد باستخدام "shell": "powershell"؛ وعندها يستخدم Claude Code ‏pwsh.exe (PowerShell 7) إن وجده، وإلا فيستخدم powershell.exe (Windows PowerShell 5.1).
  • WSL. أنت تثبّت claude وتشغّله داخل terminal ‏WSL، لذا فملف الإعدادات هو ملف Linux، أي ~/.claude/settings.json داخل التوزيعة، وتعمل الـ hooks في shell ‏Linux. وعادةً لا يصل notify-send من هناك إلى سطح مكتب Windows، لذا استدعِ برامج Windows بدلًا منه.

02اختبار سريع: جرس الـ terminal

أبسط إشارة هي الجرس. أضف ما يلي إلى ملف الإعدادات:

{
  "preferredNotifChannel": "terminal_bell"
}

بعد ذلك يرسل Claude Code رمز الجرس عندما ينتهي أو ينتظرك. في Windows Terminal، يُحدَّد سلوك الجرس لكل profile عبر bellStyle في ملف settings.json الخاص به. فالقيمة "bellStyle": ["window", "taskbar"] تجعل النافذة وزرها في شريط المهام يومضان بدلًا من تشغيل صوت. وفي دليل جرس الـ terminal مزيد من التفاصيل حول هذا الأسلوب. لكنه لا يفيد إلا عندما يكون الـ terminal ظاهرًا أمامك.

03Notification hook باستخدام PowerShell

هذا مثال Windows من دليل الـ hooks الخاص بـ Anthropic، ويعمل دون تثبيت أي شيء:

{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "powershell.exe -Command \"[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Claude Code needs your attention', 'Claude Code')\""
          }
        ]
      }
    ]
  }
}

يفتح هذا مربع حوار وليس إشعار toast في زاوية الشاشة، وقد يظهر المربع خلف الـ terminal. اختبر الأمر في PowerShell أولًا، ثم اكتب /hooks في Claude Code للتأكد من تحميل الـ hook.

الـ matcher الفارغ يُطلق مع كل أنواع الإشعارات، بما فيها permission_prompt (طلب موافقة انتظر نحو ست ثوانٍ) وidle_prompt (انتهى Claude قبل نحو 60 ثانية). يشرح دليل Notification hook هذه التوقيتات.

04إشعار toast حقيقي باستخدام BurntToast

BurntToast وحدة PowerShell واسعة الانتشار يصونها المجتمع، مخصصة لإشعارات toast في Windows. ثبّتها مرة واحدة لمستخدمك:

Install-Module -Name BurntToast -Scope CurrentUser

ثم تحقق من أنها تعمل:

New-BurntToastNotification -Text 'Claude Code', 'Claude needs your attention'

استخدمها في hook. يشغّل هذا الإصدار PowerShell دون profile ويتجاوز سياسة التنفيذ لهذا الاستدعاء فقط، فيتصرف بالطريقة نفسها سواء من Git Bash أو PowerShell:

{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command \"New-BurntToastNotification -Text 'Claude Code', 'Claude needs your attention'\""
          }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command \"New-BurntToastNotification -Text 'Claude Code', 'Claude has finished'\"",
            "async": true
          }
        ]
      }
    ]
  }
}

يعمل hook ‏Stop في نهاية كل دور، فتعرف بانتهاء المهمة فورًا لا بعد دقيقة؛ راجع دليل Stop hook. أما "async": true فيشغّل الـ hook في الخلفية حتى لا يؤخر بطء تشغيل PowerShell عمل Claude Code.

إذا لم تظهر الإشعارات أبدًا، فافحص Settings > System > Notifications: يجب أن تكون الإشعارات مفعّلة ووضع Do Not Disturb متوقفًا. تظهر إشعارات BurntToast عادةً هناك تحت Windows PowerShell، والذي يجب السماح له بالإشعارات أيضًا.

05من WSL: استدعِ Windows عبر interop

داخل WSL يعمل الـ hook في Linux، لكن WSL يستطيع تشغيل برامج Windows باسمها مع اللاحقة .exe. ويشير دليل Anthropic إلى أن powershell.exe يجب أن يكون ضمن PATH عبر interop في Windows. وهذا هو الوضع الافتراضي، ويتحكم فيه الإعداد appendWindowsPath في قسم [interop] من /etc/wsl.conf. تحقق من ذلك من shell ‏WSL:

command -v powershell.exe

بعد تثبيت BurntToast على جانب Windows، يكون الـ hook في ملف ~/.claude/settings.json داخل WSL هو الأمر نفسه:

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "powershell.exe -NoProfile -ExecutionPolicy Bypass -Command \"New-BurntToastNotification -Text 'Claude Code', 'Claude has finished'\"",
            "async": true
          }
        ]
      }
    ]
  }
}

قد يستغرق تشغيل Windows PowerShell من WSL ثانية أو أكثر، وهذا سبب إضافي لاستخدام "async": true.

06أين يأتي دور Claude Code Notifier

الـ hooks السابقة مناسبة ما دمت أمام جهازك، لكنها لا تفيدك بشيء حين تبتعد عنه، ولا يمكن لإشعار toast أن يوافق على أمر نيابةً عن Claude.

Claude Code Notifier أداة مستقلة (من تطوير TouchTap، لا Anthropic) مبنية على hooks ‏Claude Code. أداة سطر الأوامر المجانية التابعة لها، ccn، تعمل على Mac وWindows وLinux، ودعم Windows في مرحلة beta. على Windows الأصلي، ثبّتها من PowerShell:

irm https://claudecodenotifier.com/install.ps1 | iex

تضيف الأداة إدخالات الـ hooks الخاصة بها إلى إعدادات Claude Code، وتترك بقية الملف كما هو، وتحتفظ بنسخة احتياطية. ومباشرةً تعرض إشعار toast في Windows عندما ينتهي Claude أو يحتاج إلى إذن أو يطرح سؤالًا، دون الحاجة إلى هاتف أو اتصال بالشبكة. ولأنها ترتبط بـ Claude Code لا بالـ terminal، فإنها تعمل بالطريقة نفسها في Windows Terminal وPowerShell والـ terminal المدمج في بيئات التطوير.

إذا كان Claude Code يعمل في WSL، فثبّت ccn داخل WSL باستخدام أمر Linux، لأن Claude Code وإعداداته موجودة هناك:

curl -fsSL https://claudecodenotifier.com/install.sh | sh

ثم شغّل ccn test. وصول إشعار سطح المكتب من داخل WSL إلى سطح مكتب Windows يعتمد على إعداد WSL لديك، لذا فالهاتف هو الطريق الموثوق مع WSL. بعد ربط هاتف، تصلك الأحداث كإشعارات push، ويمكنك من الهاتف السماح بطلب الإذن مرة واحدة أو طوال الجلسة أو رفضه، والإجابة عن أسئلة Claude، وإرسال التعليمة التالية. راجع ربط الهاتف وصفحة ccn والأسعار لتطبيقات الهاتف.

إذا ثبّتَّ ccn، فاحذف hooks الـ toast الخاصة بك لتجنّب تكرار الإشعارات.

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

لماذا لا يفعل hook ‏PowerShell أي شيء على Windows؟

شغّل الأمر نفسه في PowerShell أولًا. إذا نجح هناك، فتحقّق من ظهور الـ hook في /hooks ومن صحة الـ escaping في JSON (كل " داخلية تحتاج إلى شرطة مائلة عكسية). أما مع BurntToast، فتأكّد من تثبيت الوحدة للمستخدم نفسه الذي يشغّل Claude Code، ومن إيقاف وضع «عدم الإزعاج».

هل يحتاج Claude Code على Windows إلى Git Bash لتشغيل hooks؟

لا. تعمل hooks في Git Bash إذا كان Git for Windows مثبّتًا، وفي PowerShell إن لم يكن كذلك. ويمكنك أيضًا ضبط "shell": "powershell" على أي hook بمفرده.

هل يعمل notify-send في WSL؟

غالبًا لا يصل إلى سطح مكتب Windows. الطريقة الموثوقة هي استدعاء powershell.exe من الـ hook عبر interop في WSL، كما هو موضّح أعلاه.

هل يستطيع Windows Terminal عرض إشعارات Claude Code بمفرده؟

ليس افتراضيًا. اضبط preferredNotifChannel على terminal_bell واختر قيمة bellStyle تجعل النافذة أو شريط المهام يومض، أو استخدم hook لعرض toast.

هل توجد طريقة مجانية للحصول على إشعار في Windows؟

نعم. hooks ‏PowerShell أعلاه وإشعارات سطح المكتب في ccn كلاهما مجاني. تطبيقات الهاتف وحدها تتطلّب اشتراكًا أو شراءً مدى الحياة.

Claude Code Notifier احصل على إشعار push على هاتفك عندما ينتهي Claude Code أو يحتاج إليك، ثم وافق أو ارفض أو أجب من هناك. أداة سطر الأوامر ccn مجانية على Mac وWindows وLinux.
نزّل لنظام iOS نزّل لنظام Android ثبّت ccn

أدلة ذات صلة

  • شرح hooks في Claude Code: كل حدث والغرض منهما هي hooks في Claude Code، وأين توضع في settings.json، وكيف تعمل الـ matchers والمدخلات ورموز الخروج، وما الغرض من كل حدث.
  • Notification hook في Claude Code: متى يُطلَق وكيف تستخدمهمتى يُطلَق Notification hook في Claude Code، وما معنى permission_prompt وidle_prompt، والمدخلات التي يتلقاها، ولماذا ينتظر قبل الإطلاق.
  • إشعارات Claude Code على Linuxاحصل على إشعار سطح مكتب في Linux عندما ينتهي Claude Code أو يحتاج إلى مدخلاتك: hooks باستخدام notify-send، أو أصوات، أو escape sequences في الـ terminal، أو ccn.
  • إشعارات Claude Code في طرفيات VS Code وCursor وJetBrainsلماذا تبقى طرفيات بيئات التطوير صامتة عندما ينتهي Claude Code، وكيف تحصل على تنبيهات في VS Code وCursor وJetBrains عبر إعداد أو hook.
claude-code-notifier

Claude Code Notifier تطبيق مستقل تابع لجهة خارجية. وهو غير تابع لشركة Anthropic, PBC ولا معتمد أو مموّل منها. "Claude" و"Claude Code" علامتان تجاريتان لشركة Anthropic, PBC.

التطبيقات تطبيق iOS تطبيق Android ccn لأنظمة macOS وWindows وLinux كل الأدلة
قانوني سياسة الخصوصية شروط الخدمة لغات أخرى © 2026 touchtap. جميع الحقوق محفوظة. شركة TouchTap Ltd مسجلة في إنجلترا وويلز، رقم الشركة 13942589.