شرحexplainer · 2026-10-08

أول سير عمل لك: من رسالة واردة إلى إشعار في Slack — بدون كتابة سطر برمجي واحد

أول سير عمل في n8n هو أربعة صناديق وأسهم بينها: مُحفِّز يقرّر متى يبدأ، وعُقد تعمل صفاً صفاً، ووصلات تنقل الجدول بينها. سنبنيه من رسالة واردة إلى إشعار في Slack، خطوة بخطوة من الواجهة، بلا سطر برمجي واحد.

نُشر 8 أكتوبر 2026 · قبل 3 ساعاتconfidence 0.882 مصادرrecheck 2027-01-06
مخطط من مستويين: المستوى الأول يوضّح العناصر الأربعة — مُحفِّز وعقدتان وعقدة ثالثة — مع أسئلة تقابل كل جزء. المستوى الثاني مثال عملي: رسالة واردة، تحليل الحقول، ثم شرط يتفرّع إلى إشعار أو أرشفة. سهم يحمل رمز عنصر البيانات.

ليس مشروعاً ولا تحدياً. أول سير عمل في n8n (تُنطق «n-eight-n»، أي «إن إتش إن» نطقاً) هو أربعة صناديق، وأسهم بينها، وضغطة واحدة — ولن أكتب في هذه المقالة سطر برمجي واحد، ولن أطلب منك فتح محرّر أكواد.

وإن لم يكن قرارك قد اتُّخذ بعد، فابدأ من ما هو n8n بالضبط؟ ومتى يكون هو الأداة الصحيحة — ومتى لا يكون. هذه المقالة تفترض أن n8n هي اختيارك، وتشرح الخطوة التالية فقط.

ما الذي يكوّن أي سير عمل؟ أربعة أشياء لا خامس لها

سير العمل أربعة أشياء: مُحفِّز يبدأ، وعُقد تعمل، ووصلات تنقل، ونهاية تنتهي عندها. لو فهمت هذه الأربعة، فقد فهمت n8n كلها.

أولها المُحفِّز — نقطة البداية الوحيدة. وهذا تعريف n8n له حرفياً:

A trigger node is a special node responsible for executing the workflow in response to certain conditions. All production workflows need at least one trigger to determine when the workflow should run.

— معجم المفاهيم في توثيق n8n

وثانيها العقد — كل صندوق على اللوحة، ولكل صندوق عملية واحدة محدّدة يعرفها من إعداداته: أرسل رسالة، اقرأ ملفاً، فرّع حسب شرط. العقدة لا تقرّر متى تعمل؛ هي تنتظر أن تصلها وصلة تحمل ما تعمل عليه.

وثالثها الوصلة — هي السهم بين صندوقين. وهي ليست زينة ولا رابطاً منطقياً: هي الطريق الذي تسير عليه البيانات، وما لم تُوصل عقدةً بسهم فستبقى ساكنة.

ورابعها النهاية — وهنا فخّ صامت: في n8n غالباً لا توجد عقدة اسمها «نهاية». ينتهي سير العمل حين تنتهي آخر عقدة في المسار ولا يعود منها سهم إلى أحد. إن أردت نهاية مرئية — لأن مُحفِّزك Webhook ينتظر جواباً — فعليك عقدة صريحة تجيب، اسمها Respond to Webhook.

انظر إليهم إذن هكذا: متى يعمل؟ المُحفِّز. ماذا يفعل؟ العقد. بماذا يصل؟ الوصلات. أين ينتهي؟ النهاية.

هل أثبّته على جهازي أم أستخدم n8n Cloud؟

الأقصر: سجّل في n8n Cloud وابدأ فوراً، بلا تثبيت وبلا صيانة. الأطول طريقاً، لكنه الطريق الذي يعطيك نسخة على جهازك أنت.

قبل أن تختار، صحّح خطأً شائعاً: n8n لم يعد يوماً أداة تُثبَّت كما تُثبَّت حزمة برمجية عادية. الطريقة الرسمية اليوم تمرّ عبر Docker، حتى في أبسط سيناريو. وإن أردت أن تعرف متى تكون النسخة الذاتية قراراً مفيداً ومتى تكون عبئاً تشتريه بلا داعٍ، فمقالة ما هو n8n بالضبط تجيب عن ذلك.

في ما يلي نثبّت نسخة ذاتية، لأن أصعب ما في n8n هو أوّل مرة — لا ما بعدها.

كيف أشغّل n8n بأمر واحد؟

الطريقة الرسمية تسمّيها n8n «الإعداد بسطر واحد»، وهي هذا الأمر:

curl -fsSL https://get.n8n.io | sh

انسخه والصقه في الطرفية على macOS أو Linux، أو في PowerShell على ويندوز، ثم انتظر حتى ينتهي. ما يفعله باختصار: يتأكد أن Docker وdocker compose موجودان، ثم يكتب ملفات التشغيل، ثم يرفع حاويات n8n، حتى ينتهي السطر هكذا:

n8n is running at: http://localhost:5678

— صفحة one-line setup في توثيق n8n

افتح http://localhost:5678 في متصفحك. ستجد محرّر سير العمل نفسه، لا لوحة تحكّم ولا صفحة ترحيب (المصدر نفسه أعلاه). وفي أول تشغيل يطلب منك إنشاء حساب صاحب النسخة، ثم تدخل المحرّر مباشرة.

وشرط لا يُخالَف: الأمر يتطلّب إضافة docker compose بإصدار v2 تحديداً (المصدر نفسه أعلاه). أي أن Docker ليس خياراً تجميلياً في هذه الطريقة، بل شرط تشغيل. فإن لم يكن Docker مثبَّتاً عندك، فراجع مقال ما هو n8n لترى إن كانت السحابة اختيارك الأنسب، لا لتجّب طريقاً ملتوياً.

الأوامر الثلاثة التي ستحتاجها

احفظها، فستعيش معها:

# إيقاف n8n دون حذف أي شيء
docker compose -f ./n8n/compose.yml down

# ترقية n8n
curl -fsSL https://get.n8n.io | sh -s -- --upgrade

# إزالة n8n — وحذف كل بياناته
docker compose -f ./n8n/compose.yml down -v

الأمر الثاني حرفية من صفحة n8n، وكذلك الأمر الثالث إلا أن التوثيق يذكره مربوطاً بـ-v مباشرة. أما أوّلها فاجتهادنا: نسخة من أمر الإزالة ناقصةً الوسيط -v — وهذا هو بالضبط ما تفعله حين تريد الإيقاف دون أن تفقد بياناتك. وهذا هو الفخّ: حذّر منه مرتين.

⚠️ قبل أن تبدأ: -v يعني «احذف كل شيء»

التوثيق نفسه يحذّر في السطر نفسه: To uninstall: docker compose -f ./n8n/compose.yml down -v # -v DELETES all n8n data — one-line setup

كل سيرَيات عملك وعُقدك وبيانات اعتمادك وسجل تنفيذاتك تعيش في مجلد البيانات. وأي أمر ينتهي بـ-v يمحوها بلا رجعة ولا نسخة احتياطية. اكتب أمر الترقية وحده إن أردت التحديث.

⚠️ قبل أن تبدأ: n8n 3.0 لن يقبل التثبيت بـ npm أو npx

هذه المقالة لا تنصحك بتثبيت n8n عبر npm ولا عبر npx n8n. لا لأن الأمر صعب، بل لأن هذا الباب يُغلق:

Self-hosted n8n will require a Docker-based deployment. n8n 3.0 will no longer support installations run using npmornpx n8n.

n8n 3.0 doesn't publish a runnable n8n package to npm

— [تغييرات n8n 3.0 الكاسِرة](صفحة تغييرات n8n 3.0)

أي دليل قديم يقترح npm install -g n8n يكتب لك إجابة منتهية الصلاحية. ابدأ من Docker من اليوم الأول.

ما «المُحفِّز»؟ ولماذا يبدأ من أول اللوحة؟

المُحفِّز هو العقدة التي تقرّر: الآن. تصلك رسالة؟ حان موعد؟ ضغطت زراً؟ عليه أن يقرّر. كل ما عدا ذلك هو عمل يُنفَّذ بعد أن يقرّر هو.

وأهم ما في المُحفِّز أنه شرط وجود لا مجرّد بداية: All production workflows need at least one trigger to determine when the workflow should run. (المصدر نفسه أعلاه). هذه الجملة وحدها تفسّر لماذا يبدو الأمر غريباً حين تضغط عقدة فتتوقف: لأن شيئاً لم يستدعيها.

ولهذا لا تبدأ بعقدة تطبيق. ابدأ بمُحفِّز، ثم اصنع العقد التي تريدها أن تعمل.

العناصر: كل عقدة تستقبل جدولاً لا رسالة واحدة

هذه أهم فقرة في المقالة. خذها من توثيق n8n حرفياً:

In n8n, all data passed between nodes is an array of objects.

— فهم بنية البيانات في n8n

Nodes process multiple items automatically. When a node receives an array of data items, it processes each item individually and performs the configured operation for each one.

— المصدر نفسه

ماذا يعني ذلك عملياً؟ اقرأه هكذا:

  • مصفوفة العناصر = جدول.
  • العنصر = سطر واحد في الجدول. هذا هو الاسم الذي يستعمله n8n نفسه — العنصر (item) — وهو ما ستراه في الواجهة.
  • الحقول داخل العنصر = أعمدة الجدول.

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

هاتان الجملتان معًا تقوّمان فهمك لـ n8n كلها:

  • أولاً: كل ما يمرّ بين عقدتين جدول، لا رسالة واحدة.
  • ثانياً: كل عقدة تفعل عملية واحدة، ثم تكرّرها على كل سطر.

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

أين ترى ذلك بنفسك؟ بعد التشغيل، اضغط أي عقدة، وستفتح لوحة بجانبها تعرض ما استقبلته وما أرسلته. اقلبها إلى العرض الجدولي: هذا هو جدولك بعينه، كل سطر عنصر، وكل عمود حقل. أما العرض الخام المجاور له فهو خارج نطاق هذه المقالة عمداً — سنعود إليه في مقال التعبيرات.

الوصلة: هي التي تنقل، لا زينة

تُسحب الوصلة من النقطة الدائرية على يمين العقدة إلى النقطة على يسار العقدة التالية. بعد هذه النقرة تنتقل البيانات تلقائياً. لا يوجد زر «نسخ البيانات»، ولا زر «حفظ كـ...».

والوصلة قرار لا مجرد سلك: كل سهم يحدّد من يُنفَّذ ومتى. إن وصلت عقدة واحدة بمُحفِّز ومُحفِّز آخر، فهي تعمل مرتين. وإن لم تصلها وصلة، فلا تعمل مهما كانت جاهزة.

البناء خطوة بخطوة

سنبني الآن هذا المسار: رسالة واردة ← تنظيف الحقول ← شرط ← إشعار Slack. جرّبه كما هو، ثم بدّل تطبيق الإشعار إلى أي تطبيق تعرفه؛ المنطق واحد، والخدمة وحدها تتبدّل.

أوّل خطوة: عقدة Webhook

في سير العمل الجديد، مرّر المؤشر فوق اللوحة فيظهر زر +. انقر عليه، فتُفتح أمامك لوحة العقد، اكتب في خانة البحث Webhook، واختر Webhook.

اضغط Listen for test event أعلى العقدة. ستعطيك n8n رابطاً تجريبياً — انسخه. هذا هو المُحفِّز، وقد جعل n8n نفسه مستمعاً الآن.

افتح الرابط في تبويب متصفح جديد. جرّبه فارغاً أوّلاً، ثم أضف بعد علامة استفهام حقلاً تجريبياً مثل ?from=ahmed وأعد الفتح. ستلاحظ مفاجأة لطيفة: ما يصلك ليس رسالة واحدة بل جدول لا يتجاوز صفاً واحداً، وحقل from بداخله.

الخطوة الثانية: عقدة Edit Fields

من النقطة الدائرية على يمين Webhook اسحب سهماً إلى زر + الجديد، وابحث عن Edit Fields وأضفها.

داخلها تجد جدول حقول. احذف الصفوف الافتراضية إن ظهرت، وأضف حقلاً واحداً: الاسم source والقيمة Slack. هذا الحقل ليس زينة، بل عمود جديد في جدولك، وستستخدمه في العقدة التالية.

ابحث عن Edit Fields، فإن ظهر لك Edit Fields (Set) فالناتج واحد.

الخطوة الثالثة: عقدة If

اسحب من يمين Edit Fields إلى +، وابحث عن If وأضفها. في قسم الشرط اجعل:

  • الحقل: source
  • النوع: String
  • المقارنة: Exists

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

الخطوة الرابعة: عقدة Slack

اسحب من المخرج الأول لـ If إلى +، وابحث عن Slack وأضفها. ستطلب منك n8n بيانات اعتماد، وهي أول مرة في هذه السلسلة تلمس فيها شيئاً سرياً بيدك: إما تسجيل دخول من داخل n8n إلى Slack، أو لصق رمز وصول. أدخلها مرة واحدة، فتحفظها n8n في نسختك، وتستخدمها كلما عملت هذه العقدة.

اضبط حقولها: القناة، ثم نص الرسالة. ثم من المخرج الثاني لـ If وصّل أي عقدة أخرى — نترك لك اختيارها. المهم أن يمتد المسار الثاني، لترى بعينك كيف يذهب كل صف إلى وجهته.

إن لم يكن لديك حساب Slack، ضع مكانه تطبيقاً تعرفه: بريداً إلكترونياً، أو Google Sheets، أو أي تطبيق آخر. العقدة الأخيرة تتبدّل، والمنطق لا يتبدّل.

الخطوة الخامسة: شغّله وشاهده ينفّذ

اضغط Execute workflow أعلى اللوحة، ثم افتح رابط الاختبار في المتصفح من جديد. هذه المرة تتحرك البيانات أمام عينيك: كل عقدة تُضيء، وبيانات كل عقدة تظهر بجانبها.

اضغط عقدة Slack في السجل، وستقرأ صفك — الاسم والحقول — كما أرسلته تماماً. هنا فقط تفهم ما تعنيه كلمة «عنصر» عملياً.

احفظ سير العمل، ثم شغّل مفتاح التشغيل في أعلى اللوحة، فيصبح السير العمل منشوراً ويعمل وحده. والانتباه إلى الفرق: المسودة هي ما تعدّله، والمنشور هو ما يعمل. عدّلتَ المسودة؟ انشر من جديد، وإلا بقي العالم يشغّل نسختك القديمة.

Execute step أم Execute Workflow؟

زرّان يقنعان المبتدئ بالاختيار بينهما بلا سبب حقيقي. الفرق بسيط:

  • Execute Workflow يشغّل السلسلة كلها ابتداءً من مُحفِّزها. هذا هو الاختبار الحقيقي.
  • Execute step يشغّل عقدة واحدة بما هو متاح في يدها الآن. مفيد للتفتيش، لكنه لن يجد بيانات إن لم تجرِ ما قبلها، ولهذا يبدو معطلاً في أوّل مرة.

القاعدة التي تُوفّر عليك وقتاً: للاختبار، شغّل سير العمل كاملاً، ولا تلوم العقدة قبل أن ترى ما استقبلته فعلاً.

⚠️ القوالب الجاهزة ليست أوّل سير عمل لك

القاعدة التي نبدأ بها: ما تستورده من قالب هو منطق شخص آخر بافتراضاته، لا اختصارٌ لمشغّلك. حين تضغط إنشاء سير عمل جديد تعرض n8n عليك معرض قوالب، وكأنها تختصر عليك شهوراً من العمل. لا تبني عليه. إليك ما يقوله التوثيق حرفياً:

n8n templates are pre-built workflows designed by n8n and community members that you can import into your n8n instance. When using templates, you may need to fill in credentials and adjust the configuration to suit your needs.

— صفحة use-templates في توثيق n8n

اقرأ الجملة الثانية مرتين: «قد تحتاج إلى ملء بيانات الاعتماد وضبط الإعدادات لتناسب حاجتك». أي أن ما تستورده بلا أي مفتاح، ولم يُختبَر على بياناتك. وهذا لا يتّضح إلا حين تشغّله.

ثلاث قواعد تجعل القالب نقطة بداية لا حلّاً:

  • املأ بيانات الاعتماد بنفسك، واحدة واحدة. ولا تسجّل الدخول بحساب شخصي.
  • اقرأ كل عقدة قبل تشغيلها. اسأل: هل تخدم الإجراء الذي تريده؟ أم هي من بقيّات صاحب القالب؟
  • اختبر على بيانات تجريبية لا على بياناتك الحقيقية. منطق كُتب لآخر قد يكون منطقياً لمتجر آخر تماماً.

والقاعدة التي نرجوها: استورد القالب، ثم أعد بناء ما تحتاج منه بنفسك. القالب معلم، لا معلّم.

أين تذهب بعد هذا؟

إن بنيت سير عملك هذا، فأنت جاهز لبقية السلسلة. ابدأ من حيث يناسبك:

  • التعبيرات في n8n — كيف تربط حقلاً من صف بحقل في العقدة التالية. هذه هي خطوتك التالية الطبيعية، وكل ما صبرت على عدم كتابته في هذه المقالة هو لها.
  • منطق المسار ومعالجة الأخطاء — ماذا يحدث حين تفشل خدمة في منتصف سير عملك. لا تؤجّل هذا إلى ما بعد الإطلاق.
  • ما هو n8n بالضبط — إن شككت أصلاً في اختيار الأداة، فعائدتك هنا أعلى من أيّ مقال آخر في السلسلة.

أما كل ما هو أحدث من هذه المقالات تجده في الصفحة الرئيسية للأخبار، مرتّبة في ترتيب القراءة.


أُراجع في n8n 2.42.5 (2026-10-08). n8n يُصدر نسخاً جديدة أسبوعياً تقريباً، فراجع التوثيق إن كان عمرك يتجاوز بضعة أشهر.


تحتاج أتمتة تعمل فعلاً؟

نصمّم ونبني أنظمة أتمتة للشركات والأفراد على n8n — من أول سير عمل يعمل خلال يوم، إلى وكيل يوثّق خطواته ويطلب موافقة بشرية قبل أي إجراء حسّاس. اكتب لنا وضعك من صفحة التواصل.

المصادر

كل ادعاء في المقال مرتبط بمصدره. الروابط تفتح في نافذة جديدة.

  1. 01
    n8n Changelog — v3.0 breaking changes (ما الذي يُحذف فعلياً) ↗

    docs.n8n.io

    n8n 3.0 لن يدعم التثبيتات التي تعمل بـ npm أو npx n8n، وسيصبح النشر عبر Docker إلزامياً.

  2. 02
    One-line setup — n8n docs ↗

    docs.n8n.io

    أمر الإزالة في التوثيق هو docker compose down مع الوسيط -v، وهو يعني حذف كل بيانات n8n.

  3. 03
    n8n releases — النسخة التي روجع عليها هذا المقال ↗

    github.com

    الإصدار المستقر الحالي هو n8n 2.42.5 بتاريخ 2026-10-08.

  4. 04
    Understand n8n's data structure — n8n docs ↗

    docs.n8n.io

    العقد تعالج عناصر متعددة تلقائياً: حين تستقبل عقدة مصفوفة عناصر، فإنها تعالج كل عنصر على حدة وتنفّذ العملية المضبوطة لكل واحد.

  5. 05
    One-line setup — n8n docs ↗

    docs.n8n.io

    توجد طريقة رسمية لتثبيت n8n بأمر واحد، تنتهي حالة نجاحها بالسطر n8n is running at http://localhost:5678.

  6. 06
    One-line setup — n8n docs ↗

    docs.n8n.io

    طريقة التثبيت بسطر واحد تتطلّب إضافة docker compose بإصدار v2 تحديداً.

  7. 07
    n8n Documentation — key concepts glossary ↗

    docs.n8n.io

    عقدة المُحفِّز هي عقدة مسؤولة عن تنفيذ سير العمل استجابةً لظروف معيّنة، وكل سير عمل إنتاجي يحتاج إلى مُحفِّز واحد على الأقل يحدّد متى يجب أن يعمل.

  8. 08
    use-templates — استخدام القوالب في توثيق n8n ↗

    docs.n8n.io

    قوالب n8n سيرَيات عمل جاهزة صمّمها n8n وأعضاء المجتمع، وعند استخدامها قد تحتاج إلى ملء بيانات الاعتماد وتعديل الإعداد ليناسب حاجاتك.

  9. 09
    Understand n8n's data structure — n8n docs ↗

    docs.n8n.io

    كل البيانات المارّة بين العقد في n8n هي مصفوفة من الكائنات.

شروح أخرى

الكل ←