Plan mode چیست و چرا اهمیت دارد
وقتی برای اولین بار با یه ابزار کدنویسی AI مثل Claude Code، Cursor یا Aider کار میکنی، معمولاً یه الگوی اشتباه طی میشه: یه درخواست کوتاه مینویسی، AI شروع…

وقتی برای اولین بار با یه ابزار کدنویسی AI مثل Claude Code، Cursor یا Aider کار میکنی، معمولاً یه الگوی اشتباه طی میشه: یه درخواست کوتاه مینویسی، AI شروع به ویرایش فایلها میکنه، چند دقیقه بعد میفهمی که مسیر اشتباه بوده و باید همه چیز رو rollback کنی. Plan mode دقیقاً برای جلوگیری از این سناریو طراحی شده.
Plan mode چیه؟
Plan mode (که در بعضی ابزارها به اسم «think before act» یا «architect mode» هم شناخته میشه) یه رژیم اجرایی در coding agentهاست که در اون AI قبل از اینکه حتی یه فایل لمس کنه، یه نقشهٔ کامل از کار طراحی میکنه و به تو نشون میده.
در این حالت، agent فقط میخونه، به فایلها نگاه میکنه، ساختار پروژه رو میفهمه، dependencies رو بررسی میکنه، ولی هیچ writeای انجام نمیده. خروجی این مرحله یه plan متنیه: «من قصد دارم فلان فایل رو به این شکل تغییر بدم، بعد اون فایل رو اضافه کنم، و این تابع رو refactor کنم.» تو این plan رو میخونی، تأیید میکنی (یا رد میکنی و اصلاح میخوای)، و بعد agent اجرا میکنه.
چرا این مهمه؟
یه coding agent بدون plan mode مثل یه نقشهکشه که مستقیم شروع به تخریب دیوار میکنه، بدون اینکه نقشه نشون بده. ممکنه درست بره، ممکنه اشتباه بره. در هر صورت هزینهٔ اشتباه خیلی بالاست.
در پروژههای بزرگ، مشکل تشدید میشه. وقتی کدبیس چند هزار خط داره و چندین ماژول به هم وابستهان، یه تغییر اشتباه در جای درست میتونه باگهای غیرمنتظره تولید کنه. Plan mode میذاره تو قبل از هر تغییر بدونی دقیقاً چی قراره اتفاق بیفته.
سه فایدهٔ اصلی:
۱. کنترل روی scope: خیلی وقتها وقتی یه درخواست کوچیک میدی، AI تصمیم میگیره «در راه» چند چیز دیگه هم اصلاح کنه. بدون plan mode نمیفهمی تا وقتی تموم بشه. با plan mode، قبل از اجرا scope رو میبینی و میتونی محدودش کنی.
۲. درک بهتر کد: وقتی plan رو میخونی، یاد میگیری. میفهمی AI کجا نگاه کرده، چه اتصالاتی دیده، و چرا اون مسیر رو انتخاب کرده. این خودش یه ارزش آموزشیه.
۳. اعتماد تدریجی: وقتی با یه codebase جدید کار میکنی، plan mode بهت اجازه میده قبل از اینکه به AI اعتماد کامل بدی، عملکردش رو ارزیابی کنی.
Plan mode در ابزارهای مختلف
Claude Code: با دستور claude --plan یا داخل تنظیمات، میتونی agent رو به حالت برنامهریزی قبل از اجرا ببری. Claude نقشه رو مینویسه و منتظر تأیید میمونه.
Cursor: حالت «Yolo mode» در مقابل «Ask mode» قرار داره، در Ask mode، Cursor اعمال تغییرات رو به تأیید تو موکول میکنه.
Aider: با flag --no-auto-commits و بررسی diff قبل از commit، یه نوع plan review دستی داری.
Windsurf: Cascade editor به صورت پیشفرض قبل از هر write، یه خلاصهٔ برنامه نشون میده.
تفاوت Plan mode با پرامپتنویسی دقیقتر
یه سوال رایج اینه: «مگه نمیشه با نوشتن پرامپت دقیقتر همون نتیجه رو گرفت؟» جواب: نه کاملاً.
پرامپت دقیقتر scope رو محدودتر میکنه، ولی plan mode یه مرحلهٔ تأیید اضافه میکنه که در هر صورت لازمه. حتی با کاملترین پرامپت، agent ممکنه چیزی در کد ببینه که تو ندیدی و یه تغییر اضافه بکنه. plan mode این تغییرها رو قبل از اجرا به تو نشون میده.
چه وقت Plan mode رو خاموش کنی؟
Plan mode همیشه بهترین انتخاب نیست. وقتی داری یه کار تکراری و مشخص انجام میدی، مثلاً «این ۲۰ فایل رو به TypeScript strict تبدیل کن»، توقف برای تأیید plan فقط کند میکنه. در این موارد میتونی plan mode رو غیرفعال کنی. ولی برای هر کار معماری، refactor بزرگ، یا تغییری که چند ماژول رو درگیر میکنه، plan mode رو روشن نگه دار.
نسبت با حافظهٔ پروژه
یه مشکل پنهان در plan mode اینه: اگه agent هر بار از صفر با پروژهات آشنا بشه، plan هایی که مینویسه ممکنه context مهم رو از دست بده. مثلاً اگه قبلاً تصمیم گرفتی از یه library خاص استفاده نکنی، agent جدید این رو نمیدونه.
اینجاست که AiraCode با شناخت پیوسته فرق میکنه، plan هایی که مینویسه از context واقعی پروژهات اومده، نه از یه cold start. تصمیمهای قبلی، pattern های کدبیس، و محدودیتهای خاصی که تو تعریف کردی، همه داخل plan منعکس میشن.
یه مثال عملی
فرض کن میخوای authentication رو به پروژه اضافه کنی. بدون plan mode، agent شروع میکنه، middleware مینویسه، routeها اضافه میکنه، شاید session store هم setup میکنه، همه اینها در یه اجرا. تو میبینی ۱۵ فایل تغییر کرده و نمیدونی کجا شروع به بررسی کنی.
با plan mode، قبل از شروع میخونی:
- افزودن middleware در
src/middleware/auth.ts - اضافه کردن routeهای
/loginو/logoutدرsrc/routes/auth.ts - بروزرسانی
app.tsبرای mount کردن middleware - افزودن
SESSION_SECRETبه.env.example
این رو میخونی، متوجه میشی session-based auth میخواد بنویسه ولی تو JWT میخوای، قبل از شروع میگی «از JWT استفاده کن، نه session.» Plan تغییر میکنه، بعد اجرا میشه.
جمعبندی
Plan mode یه قابلیت اختیاری نیست، برای هر کار جدی با coding agent، یه ضرورته. فرقش با کار بدون plan مثل فرق بین جراحی برنامهریزیشده و اورژانسه: هر دو ممکنه نتیجهٔ خوب بدن، ولی ریسک دومی خیلی بالاتره.
همچنین بخوان
ادامهٔ مسیر
همهٔ مقالهها ←
Agentic coding، نسل جدید کدنویسی
کدنویسی با AI در چند سال گذشته سه مرحله داشته. اول autocomplete بود، GitHub Copilot تابع رو کامل میکرد.

بازبینی کد با هوش مصنوعی (AI Code Review)
هوش مصنوعی چطور کد را بازبینی میکند، چه باگهایی را واقعاً پیدا میکند و کجا اشتباه میکند؛ با مقایسهٔ ابزارها.

AI برای DevOps
DevOps از اول هم یه رشتهای بود که اتوماسیون قلبش بود. CI/CD pipeline ها، Infrastructure as Code، monitoring خودکار، اینا ذات DevOps هستن.

تستنویسی و دیباگ با هوش مصنوعی؛ از خطا تا تست رگرسیون
برای رفع باگ با هوش مصنوعی از کجا شروع کنیم؟ بازتولید خطا، بررسی علت، نوشتن تست رگرسیون و سنجش اصلاح با مثال فرم و پرامپتهای فارسی.
بیشتر در «کدنویسی با AI»
- آیرا کد یا Cursor؟ مقایسهٔ محیط کار، حافظه و هزینه
- مقایسهٔ آیرا کد و GitHub Copilot برای برنامهنویسی
- از جونیور تا سینیور در عصر هوش مصنوعی؛ نقشهای که مسیر رشد را حذف نمیکند
- نقشهٔ رشد Cursor؛ متدی که به یک میلیارد دلار درآمد سالانه رسید
- اولین ۲۰ کاربر محصول را از کجا پیدا کنیم؟ نقشهٔ عملی Base44
- AiraCode اکنون افزونهٔ کروم اختصاصی خودش را دارد: کنترل مرورگر واقعی تو از ترمینال
- جدول کامل قیمت مدلهای هوش مصنوعی برای کدنویسی (آپدیت شهریور ۱۴۰۵)
- Ox Alpha؛ مدل کدنویسی رایگان با کانتکست یک میلیونی و چیزی که باید قبل از استفاده بدونی
- کدنویسی با هوش مصنوعی چیست؟
- Cursor، ویرایشگر کدنویس هوشمند
- GitHub Copilot، راهنمای کامل
- Windsurf (سابق Codeium)
- Claude Code، Anthropic CLI کدنویسی
- آیرا کد چیست؟ دستیار برنامهنویسی با هوش مصنوعی در ترمینال
- استفاده از آیرا کد کنار Cursor؛ راهنمای گردش کار مشترک
- Aider، pair programming روی ترمینال
- Continue.dev، IDE-agnostic AI
- Cline، autonomous coding agent
- Bolt.new، Lovable و v0، ساخت اپ با پرامپت
- Devin AI، اولین مهندس نرمافزار هوشمند
- Vibe coding چیست؟
- MCP servers برای کدنویسی
- Sub-agents در Claude Code
- Tab completion هوشمند
- Multi-file edit با AI
- پرامپتنویسی برای کدنویسی
- Context-aware refactoring با AI
- آیندهٔ کدنویسی با AI
- چرا Cursor و Copilot هر روز با یه غریبه میبینندت