⚙️ اتوماسیون · ایستگاه ۴ از مسیر صعود

آنتی‌گراویتی گوگل را به داکر و n8n وصل کن 🐳🔗🤖

یک IDE هوش مصنوعی که خودش برایت ورک‌فلوهای اتوماسیون می‌سازد و می‌آزماید.
«برای رسیدن به قله باید از سنگ‌ریزه عبور کرد.»
🕒 حدود ۹۰ دقیقه 🎯 سطح: متوسط 🧩 از صفرِ صفر

🎯 قرار است چه کار کنیم؟

در پایان این آموزش، یک دستیارِ هوش مصنوعی خواهی داشت که می‌توانی به فارسیِ ساده به آن بگویی «یک ورک‌فلو بساز که هر صبح ایمیل‌های مهم را خلاصه کند» و او واقعاً داخل n8n تو آن را بسازد و بررسی کند. برای این کار سه قطعه را کنار هم می‌گذاریم:

📌 فرض‌های این آموزش
فرض کرده‌ایم روی یک کامپیوتر ویندوز، مک یا لینوکس هستی، اینترنت پایدار داری، و یک حساب گوگل (Gmail) در اختیارت هست. هیچ دانش قبلی دربارهٔ داکر یا n8n لازم نیست؛ همه‌چیز را از پایه توضیح می‌دهیم. اگر تازه‌کاری، بهتر است ایستگاه‌های ۱ تا ۳ مسیر صعود را قبلاً دیده باشی، اما اجباری نیست.
⚠️ دربارهٔ دسترسی از داخل ایران
برای نصب و ورود به Google Antigravity باید با حساب گوگل وارد شوی و این سرویس به شبکهٔ گوگل وصل است؛ ممکن است دسترسی به آن و به بعضی از این دانلودها از داخل ایران با محدودیت روبه‌رو باشد. این آموزش صرفاً مراحل فنیِ اتصال را توضیح می‌دهد و راهکاری برای دور زدن محدودیت‌ها ارائه نمی‌کند.

🗺️ نقشهٔ مسیر

  1. این کلمه‌ها یعنی چه؟ (داکر، کانتینر، n8n، API، MCP، آنتی‌گراویتی)
  2. پیش‌نیازها و یک نگاه به کل نقشه
  3. مرحله ۱ — نصب Docker Desktop
  4. مرحله ۲ — راه‌اندازی n8n در یک کانتینر
  5. مرحله ۳ — تکمیل ثبت‌نام اولیهٔ n8n
  6. مرحله ۴ — ساخت کلید API در n8n
  7. مرحله ۵ — نصب Google Antigravity
  8. مرحله ۶ — باز کردن فایل پیکربندی MCP
  9. مرحله ۷ — افزودن سرور n8n-MCP و کلید
  10. مرحله ۸ — رفرش و تأیید اتصال
  11. مرحله ۹ — اولین تست واقعی
  12. 🔧 رفع اشکال
  13. 📖 واژه‌نامه
  14. 🎉 پایان و مرحلهٔ بعد

این کلمه‌ها یعنی چه؟

قبل از این‌که دست به کار شویم، بیایید چند اصطلاح را با یک تشبیه ساده جا بیندازیم. اگر همین‌ها را بفهمی، بقیهٔ راه خیلی روان می‌شود.

📖 Docker و «کانتینر» چیست؟
یک کانتینر۱ را مثل یک «ظرفِ غذای دربسته و آماده» تصور کن: نرم‌افزار به‌همراه هرچه لازم دارد داخل این ظرف بسته‌بندی می‌شود، پس روی هر کامپیوتری یک‌جور اجرا می‌شود و کامپیوترت را شلوغ نمی‌کند. Docker همان «آشپزخانه و قفسه‌ای» است که این ظرف‌ها را می‌سازد و اجرا می‌کند. ما n8n را داخل یکی از این ظرف‌ها اجرا می‌کنیم تا نصب و پاک‌کردنش تمیز باشد.
📖 n8n چیست؟
n8n (بخوان: «اِن‌اِیت‌اِن») یک ابزار اتوماسیون است؛ مثل یک تابلوی سیم‌کشی بلوکی که در آن جعبه‌ها را با سیم به هم وصل می‌کنی تا کارها خودکار انجام شوند: «وقتی ایمیلی رسید ← خلاصه‌اش کن ← در تلگرام بفرست». هر جعبه یک «نُود»۲ است.
📖 «کلید API»۳ چیست؟
یک رشتهٔ رمزیِ مخصوص که مثل کلید خانه است: هر برنامه‌ای این کلید را داشته باشد، اجازه دارد از طرف تو با n8n کار کند. ما یک کلید می‌سازیم و آن را به آنتی‌گراویتی می‌دهیم. چون این کلید مثل رمز عبور است، آن را جایی عمومی منتشر نکن.
📖 MCP و n8n-MCP چیست؟
MCP۴ یک «زبانِ مشترکِ استاندارد» است تا هوش مصنوعی بتواند با ابزارهای بیرونی حرف بزند — مثل یک درگاه USB-C برای هوش مصنوعی که همه‌چیز را به هم وصل می‌کند. n8n-MCP هم یک قطعهٔ آمادهٔ کوچک است که مثلِ یک «مترجمِ متخصصِ n8n» عمل می‌کند: به هوش مصنوعی یاد می‌دهد که نُودهای n8n را بشناسد و برایت ورک‌فلو بسازد و اعتبارسنجی کند.
📖 Google Antigravity چیست؟
یک ویرایشگر کدِ هوشمند از گوگل که ظاهرش شبیه VS Code است، اما یک «عامل»۵ (agent) دارد که خودش برنامه‌ریزی، کدنویسی و آزمایش می‌کند. با موتور Gemini کار می‌کند و در حال حاضر به‌صورت نسخهٔ پیش‌نمایشِ رایگان با حساب گوگل در دسترس است.
🧭 کل نقشه در یک نگاه
🤖 Antigravityعاملِ هوش مصنوعی
🔌 n8n-MCPمترجم (در داکر)
🔧 n8nکارخانهٔ اتوماسیون (در داکر)
آنتی‌گراویتی با «مترجمِ» n8n-MCP حرف می‌زند، و آن مترجم از طریق کلید API با نمونهٔ n8n تو کار می‌کند. هر دو قطعهٔ داکری روی همان کامپیوتر تو اجرا می‌شوند.

پیش‌نیازها

۰

چه چیزهایی لازم داری

  1. یک کامپیوتر با ویندوز ۱۰ (۶۴بیتی) به بالا، مکِ ۱۲ (Monterey) به بالا، یا لینوکس نسبتاً جدید.
  2. اینترنت پایدار (هم برای دانلود ایمیج‌های داکر، هم چون آنتی‌گراویتی به‌صورت آنلاین کار می‌کند).
  3. یک حساب گوگل (Gmail) برای ورود به آنتی‌گراویتی.
  4. حدود ۴ تا ۸ گیگابایت رمِ آزاد؛ داکر و n8n سنگین نیستند اما به کمی جا نیاز دارند.
✅ ایست بازرسی
اگر این چهار مورد را داری، آماده‌ای. اگر حساب گوگل نداری، اول یک حساب بساز و بعد ادامه بده.

مرحله ۱ — نصب Docker Desktop

۱

داکر را نصب و روشن کن

🕒 ~۱۵ دقیقه
مرحله ۱ از ۹
  1. به نشانی https://www.docker.com/products/docker-desktop/ برو.
  2. نسخهٔ مناسب سیستم‌عاملت را دانلود کن (Windows / Mac / Linux).
  3. فایل نصب را اجرا کن و مراحل نصب را «بعدی، بعدی» جلو ببر. (روی ویندوز ممکن است از تو بخواهد یک قابلیت به نام WSL 2۶ را فعال کنی؛ اگر پرسید، اجازه بده.)
  4. بعد از نصب، برنامهٔ Docker Desktop را باز کن و منتظر بمان تا وضعیتش سبز/«running» شود.
  5. برای اطمینان، ترمینال۷ را باز کن و این دستور را بنویس و Enter بزن:
# © Gravel — بررسی نصب داکر
docker --version
✅ ایست بازرسی
اگر خطی شبیه Docker version 27.x.x دیدی، داکر نصب و آماده است. اگر پیام «command not found» یا خطای اتصال دیدی، مطمئن شو برنامهٔ Docker Desktop باز و «در حال اجرا» باشد، بعد دوباره امتحان کن.
💡 نکته
روی ویندوز و مک، داکر باید مثل یک برنامهٔ معمولی «باز» باشد تا دستورها کار کنند. اگر آن را ببندی، کانتینرها هم متوقف می‌شوند.

مرحله ۲ — راه‌اندازی n8n در یک کانتینر

۲

n8n را با یک دستور بالا بیاور

🕒 ~۱۰ دقیقه
مرحله ۲ از ۹

حالا با یک دستورِ ساده، n8n را داخل داکر اجرا می‌کنیم. این دستور ایمیج رسمی n8n را دانلود و یک کانتینر می‌سازد که روی درگاهِ۸ 5678 در دسترس است و اطلاعاتت را ذخیره نگه می‌دارد.

  1. ترمینال را باز کن.
  2. این دستور را کامل کپی کن، بچسبان و Enter بزن:
# © Gravel — اجرای n8n در داکر (ذخیرهٔ دائمی داده‌ها + روشن‌ماندن خودکار)
docker run -d --restart unless-stopped \
  --name n8n \
  -p 5678:5678 \
  -v n8n_data:/home/node/.n8n \
  docker.n8n.io/n8nio/n8n
🧩 این دستور چه می‌کند؟
-d یعنی در پس‌زمینه اجرا شود · --restart unless-stopped یعنی اگر کامپیوتر ری‌استارت شد، خودش دوباره بالا بیاید · --name n8n یک اسم به کانتینر می‌دهد · -p 5678:5678 درگاه را باز می‌کند · -v n8n_data:... داده‌هایت (ورک‌فلوها و کلیدها) را برای همیشه نگه می‌دارد.

چند لحظه صبر کن؛ بار اول ایمیج دانلود می‌شود. بعد برای اطمینان از روشن‌بودن کانتینر:

docker ps
✅ ایست بازرسی
در خروجی docker ps باید یک خط با نامِ n8n و درگاهِ 5678 ببینی. حالا مرورگر را باز کن و به نشانی http://localhost:5678 برو — باید صفحهٔ خوش‌آمدِ n8n بالا بیاید.
⚠️ اشتباه رایج
اگر پیامی شبیه «port is already allocated» گرفتی، یعنی درگاه 5678 قبلاً اشغال شده. یا برنامهٔ اشغال‌کننده را ببند، یا در دستور بالا و در همهٔ مراحل بعد، به‌جای 5678:5678 از 5679:5678 استفاده کن (آن‌وقت آدرست می‌شود http://localhost:5679 و در پیکربندی MCP هم باید عدد 5679 بگذاری).

مرحله ۳ — تکمیل ثبت‌نام اولیهٔ n8n

۳

حساب مالکِ n8n را بساز

🕒 ~۵ دقیقه
مرحله ۳ از ۹
  1. در همان صفحهٔ http://localhost:5678، فرم ساخت حساب مالک (owner account) را می‌بینی.
  2. یک ایمیل، نام، و یک رمز عبور بگذار. (این حساب فقط روی کامپیوتر خودت است.)
  3. ثبت‌نام را کامل کن تا به داشبورد اصلی n8n برسی.
✅ ایست بازرسی
اگر محیط اصلی n8n با گزینه‌هایی مثل Workflows و Credentials را می‌بینی، این مرحله تمام است.
💡 نکته
رمزی که این‌جا می‌گذاری با «کلید API» مرحلهٔ بعد فرق دارد. این رمز برای ورودِ خودت به صفحهٔ n8n است؛ کلید API را بعداً به هوش مصنوعی می‌دهیم.

مرحله ۴ — ساخت کلید API در n8n

۴

یک کلید API بساز و کپی کن

🕒 ~۵ دقیقه
مرحله ۴ از ۹
  1. در n8n، از پایینِ منوی سمت، روی نام کاربری/تنظیمات کلیک کن تا وارد Settings شوی.
  2. در تنظیمات، بخش n8n API (یا API Keys) را پیدا کن. (نام دقیق ممکن است بسته به نسخه کمی فرق کند.)
  3. روی Create an API key بزن، یک نام دلخواه بده (مثلاً antigravity) و بسازش.
  4. کلیدِ ساخته‌شده که با n8n_api_ شروع می‌شود را همان لحظه کپی کن و جایی امن نگه دار.
⚠️ خیلی مهم
این کلید معمولاً فقط یک بار کامل نمایش داده می‌شود. اگر صفحه را ببندی و کپی نکرده باشی، باید کلید تازه بسازی. مثل رمز عبور با آن رفتار کن و در جای عمومی (مثل مخزن گیت عمومی) منتشرش نکن.
✅ ایست بازرسی
اگر یک رشتهٔ بلندِ شروع‌شونده با n8n_api_... در دستت داری، آمادهٔ اتصال هستی.

مرحله ۵ — نصب Google Antigravity

۵

آنتی‌گراویتی را نصب و وارد شو

🕒 ~۱۵ دقیقه
مرحله ۵ از ۹
  1. به صفحهٔ رسمی دانلود برو: https://antigravity.google/download
  2. نسخهٔ سیستم‌عاملت را دانلود کن (روی ویندوز معمولاً x64، روی مک بین Apple Silicon و Intel نسخهٔ درست را انتخاب کن).
  3. فایل نصب را اجرا و برنامه را نصب کن.
  4. برنامه را باز کن و با حساب گوگل وارد شو؛ مراحل احراز هویت و سیاست استفاده را تأیید کن.
  5. اگر بین «Antigravity» و «Antigravity IDE» انتخاب داشتی، برای این آموزش Antigravity IDE را نصب کن (همان ویرایشگرِ شبیه VS Code که برای توسعه توصیه می‌شود).
✅ ایست بازرسی
اگر محیط آنتی‌گراویتی با یک ویرایشگرِ کد و یک پنلِ «عامل/Agent» در کنارش باز شده، این مرحله تمام است.
💡 نکته
محصولات آنتی‌گراویتی به‌سرعت به‌روزرسانی می‌شوند و ممکن است نام دقیق دکمه‌ها کمی فرق کند. اگر چیزی دقیقاً مطابق این متن نبود، دنبال دکمه‌ای با معنیِ مشابه بگرد.

مرحله ۶ — باز کردن فایل پیکربندی MCP

۶

به فایل خام تنظیمات MCP برو

🕒 ~۵ دقیقه
مرحله ۶ از ۹

آنتی‌گراویتی سرورهای MCP را از یک فایل به‌نام mcp_config.json می‌خواند. مسیر رسیدن به آن معمولاً این‌طور است:

  1. وارد Settings شو (معمولاً از گوشهٔ پایین-چپ یا منوی تنظیماتِ ویرایشگر).
  2. به تبِ Customizations برو.
  3. دنبال دکمه‌ای مثل Open MCP Config یا Manage MCP Servers → View raw config بگرد و رویش بزن تا فایل mcp_config.json باز شود.
🧭 مسیر جایگزین
اگر آن دکمه را ندیدی: در پنلِ «عامل»، روی منویِ «» بالای پنل بزن ← گزینهٔ MCP Servers ← از داخل فروشگاهِ MCP، Manage MCP ServersView raw config.
✅ ایست بازرسی
اگر یک فایل با محتوای JSON۹ (چیزی شبیه { "mcpServers": { ... } }) جلوی رویت باز شد، درست آمده‌ای. اگر فایل خالی بود، اشکالی ندارد؛ در مرحلهٔ بعد محتوایش را می‌گذاریم.

مرحله ۷ — افزودن سرور n8n-MCP و کلید

۷

پیکربندی را بچسبان و کلیدت را جا بزن

🕒 ~۱۰ دقیقه
مرحله ۷ از ۹

حالا این قطعهٔ پیکربندی را داخل فایل mcp_config.json قرار می‌دهیم. این تنظیم به آنتی‌گراویتی می‌گوید سرورِ n8n-MCP را با داکر اجرا کند و آن را به n8n تو وصل کند:

// © Gravel — پیکربندی سرور n8n-MCP برای Google Antigravity
{
  "mcpServers": {
    "n8n-mcp": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "MCP_MODE=stdio",
        "-e", "LOG_LEVEL=error",
        "-e", "DISABLE_CONSOLE_OUTPUT=true",
        "-e", "N8N_API_URL=http://host.docker.internal:5678",
        "-e", "N8N_API_KEY=YOUR_N8N_API_KEY_HERE",
        "ghcr.io/czlonkowski/n8n-mcp:latest"
      ]
    }
  }
}
  1. اگر فایلت خالی بود، همهٔ متن بالا را در آن بگذار.
  2. عبارتِ YOUR_N8N_API_KEY_HERE را پاک کن و به‌جایش کلیدِ n8n_api_...ای که در مرحلهٔ ۴ ساختی بچسبان (بین همان دو گیومه).
  3. اگر در مرحلهٔ ۲ درگاه را به 5679 تغییر داده بودی، این‌جا هم عدد داخلِ host.docker.internal:5678 را به 5679 عوض کن.
  4. فایل را ذخیره کن (Ctrl+S در ویندوز/لینوکس، ⌘+S در مک).
🧩 چرا host.docker.internal؟
این یک آدرسِ مخصوص است که به کانتینرِ n8n-MCP اجازه می‌دهد با کانتینرِ n8n که روی همان کامپیوتر (میزبان) اجرا می‌شود حرف بزند. اگر به‌جای آن localhost بگذاری، کانتینر فکر می‌کند «خودش» است و اتصال شکست می‌خورد.
⚠️ اگر از قبل سرور MCP دیگری داری
اگر فایل از قبل داخل "mcpServers" چند سرور داشت، این تکه را جایگزینِ کل فایل نکن؛ فقط بلوکِ "n8n-mcp": { ... } را کنارِ بقیه، داخل همان آکولادِ "mcpServers"، اضافه کن و یادت نرود بین سرورها ویرگول بگذاری. یک ویرگولِ جاافتاده، کل JSON را خراب می‌کند.
✅ ایست بازرسی
فایل باید ذخیره شود بدون این‌که آنتی‌گراویتی زیرِ آن خطِ قرمزِ خطای JSON نشان دهد. اگر خطا دیدی، معمولاً یک گیومه یا ویرگول جا افتاده — بخش رفع اشکال را ببین.

مرحله ۸ — رفرش و تأیید اتصال

۸

سرور را فعال کن

🕒 ~۵ دقیقه
مرحله ۸ از ۹
  1. به بخشِ Installed MCP Servers در تنظیمات برگرد و روی Refresh بزن. (یا کلاً آنتی‌گراویتی را ببند و دوباره باز کن.)
  2. سرورِ n8n-mcp باید در فهرست ظاهر شود.
  3. بارِ اول که هوش مصنوعی بخواهد از این سرور استفاده کند، داکر ایمیجِ ghcr.io/czlonkowski/n8n-mcp را دانلود می‌کند؛ کمی صبر لازم است.
  4. اگر آنتی‌گراویتی برای استفاده از ابزارِ جدید از تو «اجازه» (Allow) خواست، تأیید کن.
✅ ایست بازرسی
اگر n8n-mcp در فهرستِ سرورهای نصب‌شده با وضعیتِ سالم دیده می‌شود، اتصال برقرار است. حالا وقتِ آزمایشِ واقعی است.

مرحله ۹ — اولین تست واقعی

۹

از عامل بخواه با n8n تو کار کند

🕒 ~۱۰ دقیقه
مرحله ۹ از ۹

در پنلِ عاملِ آنتی‌گراویتی، این جمله را بنویس و بفرست:

لیست ورک‌فلوهای n8n من را نشان بده.

عامل باید از ابزارِ n8n-MCP استفاده کند و به n8n تو وصل شود. چون تازه n8n را ساختی، احتمالاً فهرست خالی است — و همین یعنی اتصال کار می‌کند. حالا یک قدم جلوتر برو و بگو:

یک ورک‌فلوی ساده در n8n بساز که وقتی یک وب‌هوک صدا زده شد،
پیام «سلام از گراول» را برگرداند. بعد ساختش را اعتبارسنجی کن.
✅ ایست بازرسی
اگر بعد از این درخواست، به http://localhost:5678 بروی و ورک‌فلوی تازه‌ساخته را در فهرستِ n8n ببینی — تبریک! عاملِ هوش مصنوعی حالا واقعاً به کارخانهٔ اتوماسیونِ تو دسترسی دارد.
💡 نکته
هرچه خواسته‌ات را دقیق‌تر و مرحله‌ای‌تر بگویی، خروجی بهتر است: به عامل بگو دقیقاً چه تریگری، چه نُودهایی، و چه خروجی‌ای می‌خواهی.

🔧 رفع اشکال

🔧

پرتکرارترین مشکل‌ها و راه‌حل

نشانهعلتِ محتملراه‌حل
دستورهای docker کار نمی‌کنند یا خطای اتصال می‌دهند. برنامهٔ Docker Desktop باز/در حال اجرا نیست. Docker Desktop را باز کن و منتظر بمان تا وضعیتش سبز شود، بعد دوباره امتحان کن.
هنگام اجرای n8n خطای port is already allocated. درگاه 5678 اشغال است. برنامهٔ اشغال‌کننده را ببند، یا درگاه را به 5679:5678 عوض کن و در پیکربندی MCP هم عدد را 5679 بگذار.
عامل می‌گوید نمی‌تواند به n8n وصل شود / connection refused. آدرس اشتباه است یا کانتینرِ n8n روشن نیست. مطمئن شو docker ps کانتینرِ n8n را نشان می‌دهد و در پیکربندی از host.docker.internal استفاده کرده‌ای، نه localhost.
روی لینوکس اتصال به host.docker.internal برقرار نمی‌شود. در لینوکس این نام به‌صورت خودکار شناخته نمی‌شود. در آرایهٔ args، بعد از "--rm" این دو را اضافه کن: "--add-host=host.docker.internal:host-gateway".
خطای احراز هویت / 401 Unauthorized. کلید API اشتباه، ناقص یا منقضی است. در n8n یک کلید تازه بساز، کامل کپی کن و دقیقاً بین گیومه‌ها در N8N_API_KEY بگذار (بدون فاصلهٔ اضافه).
n8n-mcp بعد از رفرش در فهرست ظاهر نمی‌شود. خطای نگارشِ JSON یا نیاز به راه‌اندازی مجدد. گیومه‌ها و ویرگول‌ها را چک کن؛ فایل را ذخیره کن؛ آنتی‌گراویتی را کامل ببند و باز کن.
آنتی‌گراویتی خطا می‌دهد که فایل پیکربندی معتبر نیست. یک ویرگول یا آکولادِ جاافتاده در JSON. متن نمونهٔ این آموزش را دوباره با دقت بچسبان و فقط کلید را عوض کن؛ یک کاراکترِ اضافه کل فایل را خراب می‌کند.
در ورود به آنتی‌گراویتی گیر می‌کنی. محدودیت دسترسیِ منطقه‌ای یا مشکل اینترنت. اتصال اینترنتت را بررسی کن. همان‌طور که در ابتدای صفحه گفته شد، دسترسی از بعضی مناطق ممکن است محدود باشد.

📖 واژه‌نامه

۱ کانتینر (Container): بسته‌ای مستقل شامل نرم‌افزار و همهٔ نیازهایش که همه‌جا یک‌جور اجرا می‌شود.

۲ نُود (Node): هر جعبهٔ کاری در n8n؛ مثلاً «دریافت ایمیل» یا «ارسال پیام».

۳ کلید API: رشتهٔ رمزی که به یک برنامه اجازه می‌دهد از طرف تو با برنامهٔ دیگر کار کند.

۴ MCP (Model Context Protocol): استانداردی که هوش مصنوعی را به ابزارها و داده‌های بیرونی وصل می‌کند.

۵ عامل (Agent): یک هوش مصنوعی که خودش برنامه‌ریزی و اجرا می‌کند، نه فقط پاسخ‌دادن.

۶ WSL 2: لایه‌ای در ویندوز که اجازه می‌دهد ابزارهای مبتنی بر لینوکس (مثل داکر) اجرا شوند.

۷ ترمینال (Terminal): پنجرهٔ متنی برای اجرای دستور. در ویندوز «PowerShell» یا «Terminal»، در مک «Terminal».

۸ درگاه (Port): شمارهٔ «درِ» یک برنامه روی کامپیوتر؛ n8n روی درِ 5678 صدا زده می‌شود.

۹ JSON: یک قالبِ متنیِ ساختارمند برای تنظیمات که با { } و گیومه نوشته می‌شود.

🎉 تمام شد! حالا تو بلدی…

داکر و n8n را از صفر بالا بیاوری، برایش کلید API بسازی، و یک IDE هوش مصنوعی (Google Antigravity) را از طریق n8n-MCP به آن وصل کنی — تا با زبان ساده برایت ورک‌فلو بسازد و بیازماید.