امازون وب‌سرویس‌ها (AWS) یک اپلیکیشن دسکتاپ متن‌باز به نام پیتزا بات (Pizza Bot) را منتشر کرده که نحوه تعامل با عامل‌های هوش مصنوعی را بازتعریف می‌کند: به جای چت، یک جعبه‌ورودی سبک ایمیل. ایده محوری ساده است؛ عامل‌هایی که در حالی‌که شما آفلاین‌ید کار می‌کنند، به جای لاگ‌های خشک، «رشته‌های خوانده‌نشده» تحویل می‌دهند و فقط در لحظات تصمیم‌گیری شما را درگیر می‌کنند.

چرا چت برای عامل‌های پس‌زمینه جواب نمی‌دهد؟

رابط‌های چت برای مکالمات لحظه‌به‌لحظه طراحی شده‌اند. اما عامل‌های خودمختار و زمان‌بندی‌شده (Scheduled Agents) اغلب ساعت‌ها یا روزها طول می‌کشند—مثلاً بررسی امنیتی کدها در شب، جمع‌آوری داده از وب، یا همگام‌سازی CRM. در این سناریو، کاربر «تماشاچی» نیست؛ او «مدیر عامل» است. جوزف دولیو (Joseph Dolivo)، پیش‌گام تکنولوژی استارتاپ‌های AWS و از خالقان پروژه، در پست لینکدین روز پنج‌شنبه توضیح می‌دهد: «بار نظارت بر کار عامل از دوش کاربر برداشته می‌شود. عامل‌ها به صورت خودمختار اجرا شده و آپدیت‌ها مستقیماً در جعبه‌ورودی شما برای تریاژ (اولویت‌بندی) قرار می‌گیرند.»

فلسفه طراحی: «رابط فرض می‌کند شما در حال تماشا نیستید»

این جمله در پست رسمی وبلاگ پروژه تکرار شده و ستون فقرات تجربه کاربری پیتزا بات است. سه خروجی مستقیم از این فرضیه:

  • مکث‌های طولانی‌تر از جلسه: عامل می‌تواند روزها صبر کند تا کاربر تایید کند.
  • اعلان‌های قابل اقدام: فقط مواردی که واقعاً نیاز به تصمیم انسان دارند به سطح می‌آیند.
  • رشته‌ها به جای لاگ: تاریخچه کار به صورت مکالمه قابل ردیابی (Thread) ذخیره می‌شود، نه باینری‌های دیباگ.
نمونه رابط کاربری پیتزا بات با پنل فعالیت و رشته‌های عامل
پنل Activity در پیتزا بات: پیشرفت عامل‌های متخصص و استفاده از ابزارها در یک نگاه

پروژه جامعه‌محور، نه سرویس AWS

با وجود ریشه‌های آمازونی، پیتزا بات در سازمان گیت‌هاب مستقل می‌زیست و هیچ SLA یا پشتیبانی رسمی AWS ندارد. این تصمیم استراتژیک، انعطاف‌پذیری و اعتماد جامعه متن‌باز را تضمین می‌کند. اپلیکیشن دسکتاپ برای macOS، ویندوز و لینوکس موجود است و کلاینت‌های مرورگر و ترمینال هم عرضه شده‌اند.

انتخاب مدل، در دست توسعه‌دهنده

به صورت پیش‌فرض سرور محلی روی ماشین اجرا می‌شود و توسعه‌دهنده می‌تواند لایه مدل را از بین گزینه‌های زیر برگزیند:

  • Anthropic (Claude)
  • Amazon Bedrock
  • Google Gemini
  • OpenAI
  • OpenRouter
  • مدل‌های محلی از طریق Ollama

قابلیت توسعه با MCP و Agent Skills

معماری پیتزا بات از Model Context Protocol (MCP) و سیستم مهارت‌های عامل (Agent Skills) پشتیبانی می‌کند. مهارت خودکارسازی مرورگرِ پیش‌فرض، از Playwright MCP برای ناوبری و تعامل با وب‌سایت‌ها بهره می‌برد. سرور هم می‌تواند روی هاست همیشه‌فعال یا در کانتینر داکر مستقر شود تا عامل‌ها با لپ‌تاپ بسته هم کار کنند و نتایج از دستگاه دیگر قابل بازیابی باشند.

معماری پیتزا بات: DeepAgents، LangGraph و ذخیره‌سازی محلی SQLite
لایه‌های فنی: DeepAgents بر روی LangGraph، چک‌پوینت‌ها در SQLite

زیرِ کاپوت: LangGraph، DeepAgents و قدرت Persistence

ران‌تایم عامل پیتزا بات روی DeepAgents (پیاده‌سازی متن‌باز LangChain برای تسک‌های طولانی) ساخته شده که خود بر LangGraph (موتور اجرای Stateful) تکیه دارد. کلید اینجا Persistence است: LangGraph در هر مرحله وضعیت عامل را چک‌پوینت می‌کند. این یعنی:

  • اجرا می‌تواند برای تایید انسان متوقف شود.
  • قطع ارتباط کلاینت عامل را نمی‌کشد.
  • ادامه کار بدون از‌سرگیری از صفر امکان‌پذیر است.

تمام چک‌پوینت‌ها، رشته‌ها و متادیتا به صورت محلی در SQLite و فایل‌های معمولی نگهداری می‌شوند—بدون نیاز به دیتابیس توزیع‌شده پیچیده.

Strands Agents یا LangGraph؟

AWS از مه ۲۰۲۵ SDK متن‌باز Strands Agents را دارد که به عنوان «سبک‌تر از LangGraph برای عامل‌هایی که کنترل جریان گراف صریح ندارند» معرفی می‌شود. اما پیتزا بات به طور گسترده از قابلیت‌های Interrupt و Persistence پیشرفته LangGraph استفاده می‌کند. دلیل دوگانه است: هم نیاز فنی پروژه به این قابلیت‌ها، هم ماهیت جامعه‌محور پروژه که الزام استفاده از تکنولوژی‌های داخلی AWS را ندارد.

از «جوبات» تا پیتزا بات: ریشه‌ها در آوریل ۲۰۲۵

پروژه از یک «پروژه شغف کنار میز» (Side-of-desk passion project) به نام جوبات (JoeBot) در آوریل ۲۰۲۵ آغاز شد تا ثبت‌های تکراری CRM را خودکار کند. دولیو بعدها با همکار خود ایگور فِیل (Igor Fil) مفهوم را به یک فریمورک عمومی برای عامل‌های محیطی (Ambient Agents) تعمیم داد—مفهومی که هریسون چیس (Harrison Chase)، مدیر عامل LangChain، در ژانویه ۲۰۲۵ ابداع کرده و پیاده‌سازی مرجع آن یک دستیار ایمیل بر پایه LangGraph بود.

چه زمانی از پیتزا بات استفاده کنیم؟

سناریوچرا پیتزا بات؟
عامل‌های امنیت/کامپلیانس شبانهرشته‌های تریاژ صبحگاهی به جای لاگ‌های غیروانموده
محققان وب خودکارمکث برای تایید قبل از ارسال فرم/خرید
همگام‌سازی داده‌های ERP/CRMپنل Activity برای عیب‌یابی ساده
تولید محتوا/کد در پس‌زمینهمدیریت نسخه‌ها از طریق Thread ها

نصب و راه‌اندازی سریع

# کلون مخزن
git clone https://github.com/pizza-bot/pizza-bot.git
cd pizza-bot

# نصب وابستگی‌ها (پیش‌نیاز: Node.js 20+، pnpm)
pnpm install

# بیلد و اجرا
pnpm build && pnpm start

پس از اجرا، اپلیکیشن دسکتاپ باز شده و سرور محلی روی http://localhost:3000 گوش می‌دهد. از منوی Settings مدل مورد نظر را انتخاب کرده و Agent Skillها را فعال کنید.

جمع‌بندی و نگاه به آینده

پیتزا بات نشان می‌دهد که آینده تعامل با عامل‌های هوش مصنوعی، «چت کردن» نیست؛ «مدیریت جعبه‌ورودی» است. با جدا کردن اجرا از نظارت، توسعه‌دهندگان می‌توانند اسکل واقعی اتوماسیون را بدون به‌دست‌آوردن خستگی هشدار (Alert Fatigue) تجربه کنند. به عنوان یک پروژه جامعه‌محور، مسیر توسعه‌اش اکنون در دست مشارکت‌کنندگان گیت‌هاب است—و این شاید بزرگ‌ترین قوته باشد.


آیا شما هم عامل‌های پس‌زمینه دارید که در چت گم می‌شوند؟ تجربه‌تان را در کامنت‌ها به اشتراک بگذارید.