Claude Code را مثل ChatGPT استفاده نکنید. تفاوت این دو، یک مسئله ظاهری نیست؛ یک تغییر شغلی است. وقتی مدل ذهنی‌تان از «دستیار چت» به «هم‌تیمی ایجنت» عوض شود، پرامپت‌نویسی، استراتژی Git، ساختار مستندات و حتی زمان‌بندی Extended Thinking همه دگرگون می‌شوند. این مقاله، همان مدل ذهنی ایجنتی و ابزارهای عملی‌اش را از صفر توضیح می‌دهد.

Claude Code دقیقاً چیست و چه تفاوتی با Claude API و چت وب دارد؟#

Claude Code یک ایجنت کدنویسی ترمینالی (Terminal-based Coding Agent) است که فایل‌ها را می‌خواند، کد می‌نویسد، دستورات اجرا می‌کند و تصمیم می‌گیرد؛ برخلاف Claude API که صرفاً رابط برنامه‌نویسی است و Claude.ai که یک چت‌باکس وب است.

سه لایه استفاده از Claude: API، چت وب، و ایجنت ترمینالی#

Anthropic سه سطح دسترسی به مدل Claude ارائه می‌دهد که هر کدام مخاطب و کاربرد متفاوتی دارند. Claude API برای توسعه‌دهندگانی است که می‌خواهند مدل را داخل اپلیکیشن خودشان جاسازی کنند. Claude.ai برای کاربری است که سؤال می‌پرسد و خروجی متنی می‌گیرد. Claude Code لایه سوم است: یک CLI که داخل پروژه شما اجرا می‌شود، به فایل‌ها دسترسی دارد، دستورات را اجرا می‌کند و نتیجه را مستقیم در کدبیس اعمال می‌کند.

تفاوت کلیدی در «عاملیت» (Agency) است. در API و چت، شما خروجی می‌گیرید و خودتان تصمیم می‌گیرید چه‌کار کنید. در Claude Code، ایجنت خودش تصمیم می‌گیرد کدام فایل را بخواند، چه دستوری بزند و چه زمانی از شما تأیید بخواهد.

معماری ایجنتی: حلقه Plan-Act-Observe در مقابل حلقه Prompt-Response#

حلقه Prompt-Response ساده است: سؤال می‌پرسید، جواب می‌گیرید. حلقه Plan-Act-Observe سه مرحله دارد: ایجنت اول برنامه می‌ریزد، بعد اقدام می‌کند، بعد نتیجه را مشاهده و تنظیم می‌کند. این حلقه تکرارشونده است تا تسک تمام شود.

در عمل، وقتی می‌گویید «یک endpoint برای ثبت کاربر بنویس»، Claude Code اول ساختار فعلی پروژه را بررسی می‌کند، بعد تصمیم می‌گیرد کجا فایل بسازد، بعد کد را می‌نویسد، بعد تست می‌زند، و بعد اگر تست شکست خورد، اصلاح می‌کند. شما فقط هدف را تعریف کرده‌اید؛ بقیه را ایجنت خودش مدیریت می‌کند.

چرا این تفاوت فقط یک مسئله UI نیست و مدل ذهنی شما را عوض می‌کند#

اگر فکر کنید Claude Code فقط یک چت‌باکس داخل ترمینال است، پرامپت‌های مرحله‌به‌مرحله می‌نویسید و ایجنت گیج می‌شود. اگر مدل ذهنی‌تان «هم‌تیمی» باشد، هدف و محدودیت تعریف می‌کنید و ایجنت خودش مسیر را پیدا می‌کند. این تفاوت، نه در ابزار، بلکه در نحوه فکر کردن شماست.

مدل ذهنی ایجنتی در مقابل چت و کپی‌پیست: چرا پرامپت‌نویسی‌تان باید عوض شود#

در مدل چتی شما به یک دستیار دستور می‌دهید و خروجی را کپی می‌کنید؛ در مدل ایجنتی با یک هم‌تیمی کار می‌کنید که خودش scope را مدیریت می‌کند، فایل می‌خواند و اجرا می‌کند؛ پرامپت‌نویسی برای ایجنت یعنی تعریف محدودیت و هدف، نه دستورالعمل مرحله‌به‌مرحله.

الگوی scope creep detection: وقتی ایجنت بیش از خواسته‌ی شما کار را گسترش می‌دهد#

ایجنت‌ها ذاتاً تمایل دارند کار را گسترش دهند. می‌گویید «فقط این تابع را اصلاح کن»، ایجنت کل ماژول را refactor می‌کند. راه‌حل: در پرامپت، مرز صریح بگذارید. «فقط فایل X را تغییر بده. اگر نیاز به تغییر فایل دیگر بود، قبلش از من بپرس.»

این الگو در پروژه‌های واقعی مکرر دیده شده: تیم‌هایی که از Claude Code در production استفاده می‌کنند، یک قانون ثابت در CLAUDE.md دارند که scope را محدود نگه می‌دارد.

استفاده از XML tags در پرامپت‌های Claude (تأثیر بیشتر نسبت به ChatGPT)#

Claude در مستندات رسمی Anthropic با استفاده از XML tags بهینه شده است. برچسب‌هایی مثل <task>، <constraints> و <success_criteria> در پرامپت‌های Claude تأثیر بیشتری نسبت به ChatGPT دارند. این یک الگوی تکرارشونده است: پرامپت‌های ساختاریافته با XML tags، خروجی‌های دقیق‌تری از ایجنت می‌گیرند.

ساختار پرامپت: هدف، محدودیت، و معیار موفقیت — نه دستورالعمل اجرایی#

سه جزء یک پرامپت ایجنتی مؤثر:

  1. هدف (Goal): چه چیزی باید ساخته شود؟ «یک REST endpoint برای ثبت کاربر با اعتبارسنجی ایمیل»
  2. محدودیت (Constraints): چه چیزهایی نباید تغییر کند؟ «فقط در پوشه /src/api اضافه کن. schema فعلی را دست نزن.»
  3. معیار موفقیت (Success Criteria): از کجا بفهمم کار درست است؟ «تست واحد باید پاس شود و lint خطا ندهد.»

اشتباه رایج: فرستادن پرامپت‌های ChatGPT-style به Claude Code و انتظار نتیجه مشابه#

بسیاری از کاربران، پرامپت‌های «قدم به قدم انجام بده» را به Claude Code می‌فرستند. ایجنت این دستورالعمل‌ها را جدی می‌گیرد و مرحله‌به‌مرحله اجرا می‌کند، اما چون خودش هم‌تیمی است، این دستورات اضافه، سرعتش را کم و تمرکزش را پخش می‌کنند. پرامپت‌های ChatGPT-style برای ایجنت، نویز هستند.

CLAUDE.md: فایلی که باید زنده باشد، نه یک‌بار نوشته شود#

CLAUDE.md یک فایل پیکربندی پروژه‌محور (Project Configuration File) است که رفتار ایجنت را در هر جلسه تعریف می‌کند؛ ارزش واقعی آن نه در نوشتن اولیه، بلکه در به‌روزرسانی مداوم مثل یک README زنده است.

ساختار مؤثر CLAUDE.md: چه بخش‌هایی بیشترین تأثیر را بر رفتار ایجنت دارند#

در پروژه‌هایی که اعضای کامیونیتی به‌صورت عمومی مستند کرده‌اند، این بخش‌ها بیشترین تأثیر را بر رفتار ایجنت داشته‌اند:

  • Architecture Overview: ساختار پوشه‌ها و ماژول‌های اصلی
  • Coding Conventions: نام‌گذاری، الگوهای معماری، ابزارهای lint و format
  • Do/Don't Rules: قوانین صریح مثل «هرگز schema migration دستی ننویس»
  • Testing Strategy: کجا تست بنویسد، چه framework، چه سطح پوششی

الگوی آپدیت تدریجی: هر بار که ایجنت اشتباه می‌کند، یک قانون به CLAUDE.md اضافه کنید#

این الگو در چندین پروژه‌ی واقعی که در گفتگوهای اعضا بازتاب یافته تکرار شده است: ایجنت یک اشتباه تکراری انجام می‌دهد — مثلاً import را از مسیر اشتباه می‌زند. به‌جای اصلاح دستی، یک خط به CLAUDE.md اضافه می‌کنید: «از alias @/ برای import استفاده کن.» دفعه بعد، ایجنت خودش رعایت می‌کند. CLAUDE.md در عمل، یک log زنده از اشتباهات تکراری ایجنت است.

تفاوت CLAUDE.md با System Prompt: یکی پروژه‌محور و ماندگار است، دیگری جلسه‌ای#

System Prompt در هر جلسه باید دوباره فرستاده شود و فقط برای آن session معتبر است. CLAUDE.md در ریشه پروژه قرار می‌گیرد و در هر اجرای جدید به‌صورت خودکار خوانده می‌شود. اگر قانونی دارید که باید همیشه رعایت شود، جای آن در CLAUDE.md است، نه در پرامپت جلسه‌ای.

Model Context Protocol (MCP): اتصال Claude Code به ابزارهای خارجی#

MCP یک پروتکل متن‌باز برای اتصال ایجنت‌ها به ابزارهای خارجی (دیتابیس، Git، APIهای سازمانی) است که توسط Anthropic طراحی شده و Claude Code را از یک CLI ساده به یک پلتفرم یکپارچه تبدیل می‌کند.

اتصال هسته‌ی مرکزی به ماژول‌های خارجی مانند پایگاه داده و مرورگر از طریق رشته‌های درخشان داده در فضای تیره
هر ماژول یک ابزار مستقل است که ایجنت خود تصمیم می‌گیرد از آن استفاده کند

نحوه اتصال MCP Server به Claude Code: پیکربندی و دستورات#

اتصال MCP Server به Claude Code از طریق یک فایل پیکربندی انجام می‌شود. شما مشخص می‌کنید کدام server با چه command اجرا شود و چه متغیرهای محیطی نیاز دارد. بعد از restart، ایجنت به ابزارهای آن server دسترسی پیدا می‌کند. برای جزئیات دقیق پیکربندی، مستندات رسمی Anthropic را بررسی کنید.

بهترین MCP Serverهای موجود: database, filesystem, GitHub#

در اکوسیستم فعلی، serverهای MCP برای چند ابزار پرکاربرد موجودند. server دیتابیس به ایجنت اجازه می‌دهد کوئری بنویسد و نتیجه بخواند. server filesystem دسترسی گسترده‌تری به فایل‌ها می‌دهد. server GitHub امکان خواندن issue، commit و PR را فراهم می‌کند. انتخاب server بستگی به workflow شما دارد.

ساخت MCP Server سفارشی برای APIهای داخلی سازمان#

اگر API داخلی دارید که ایجنت باید به آن دسترسی داشته باشد، می‌توانید یک MCP Server سفارشی بنویسید. این server یک رابط استاندارد بین API شما و ایجنت ایجاد می‌کند. الگوی رایج: هر endpoint را به یک tool map کنید، schema ورودی/خروجی تعریف کنید، و ایجنت خودش فراخوانی می‌کند.

Claude Code یا Cursor؟ مقایسه عملی با Copilot و Aider#

Claude Code یک ایجنت ترمینالی خودمختار است، Cursor یک IDE هوشمند با ایجنت داخلی، Copilot یک autocomplete خطی، و Aider یک CLI متن‌باز؛ مقایسه این‌ها بدون توجه به تفاوت بنیادی مدل تعامل، گمراه‌کننده است.

جدول مقایسه‌ای: مدل تعامل، محیط، دسترسی به فایل، و نوع خروجی#

ابزار مدل تعامل محیط دسترسی به فایل نوع خروجی
Claude Code ایجنت خودمختار ترمینال (CLI) کامل — خواندن و نوشتن اعمال مستقیم در کدبیس
Cursor ایجنت + IDE IDE گرافیکی کامل اعمال در IDE با preview
GitHub Copilot Autocomplete خطی IDE (VS Code, JetBrains) محدودتر از ایجنت — context خط و فایل فعلی پیشنهاد درون خطی
Aider ایجنت CLI متن‌باز ترمینال کامل اعمال مستقیم + Git commit

چه زمانی Claude Code مناسب نیست و باید سراغ ابزار دیگر بروید#

اگر کارتان autocomplete خطی است و نمی‌خواهید ایجنت تصمیم بگیرد، Copilot ساده‌تر است. اگر به GUI و preview قبل از اعمال نیاز دارید، Cursor مناسب‌تر است. اگر متن‌باز بودن و کنترل کامل روی مدل‌ها اولویت دارد، Aider گزینه بهتری است. Claude Code وقتی بهترین است که تسک‌های چندفایلی با نیاز به اجرای تست و تصمیم‌گیری دارید.

ترکیب بهینه: Claude Code + Cursor در یک workflow#

الگوی عملی که در پروژه‌های واقعی دیده شده: Claude Code برای تسک‌های بزرگ (ساخت ماژول، refactor، نوشتن تست) استفاده می‌شود. Cursor برای ویرایش‌های ظریف و خواندن کد. این دو مکمل‌اند، نه رقیب.

مدل‌سازی هزینه: اشتراک Claude Code در مقابل مصرف API#

Claude Code در حالت اشتراک (Pro و Max) دسترسی با محدودیت تعداد پیام و مدل‌های متفاوت دارد، در حالی که مصرف API بر اساس توکن محاسبه می‌شود؛ برای پروژه‌های بزرگ با تعاملات مکرر، اشتراک معمولاً به‌صرفه‌تر است.

تفاوت دسترسی به Opus و Sonnet در سطوح مختلف اشتراک#

سطح اشتراک Pro و Max دسترسی به مدل‌های مختلف را با محدودیت‌های متفاوت فراهم می‌کنند. برای جزئیات دقیق سطوح و محدودیت‌ها، صفحه قیمت‌گذاری رسمی Anthropic را بررسی کنید، چون این اعداد به‌صورت دوره‌ای تغییر می‌کنند.

الگوی مصرف API: چه زمانی pay-per-token ارزان‌تر است#

اگر از Claude Code به‌صورت پراکنده استفاده می‌کنید — مثلاً هفته‌ای چند بار — مصرف API بر اساس توکن معمولاً ارزان‌تر از اشتراک ماهانه تمام‌وقت است. اگر روزانه ساعت‌ها با ایجنت کار می‌کنید، اشتراک به‌صرفه‌تر می‌شود.

هزینه Extended Thinking: چرا روشن‌کردن بی‌دلیل، بودجه‌تان را می‌بلعد#

Extended Thinking توکن‌های reasoning اضافه تولید می‌کند. هر بار روشن باشد، هزینه بالاتر می‌رود. اگر تسک ساده‌ای دارید، روشن‌کردن Extended Thinking بی‌فایده و پرهزینه است. فقط وقتی واقعاً به planning عمیق نیاز دارید، آن را فعال کنید.

Extended Thinking در ایجنت: ابزار معماری‌سازی، نه فقط حل مسئله#

در Claude Code، Extended Thinking به‌عنوان planning phase عمل می‌کند: ایجنت قبل از نوشتن کد، معماری را طراحی می‌کند؛ این با چت معمولی که صرفاً reasoning می‌کند متفاوت است و برای تصمیمات معماری و refactoringهای بزرگ مؤثر است.

کِی روشن کنید: معماری، refactoring، و تسک‌های چندفایلی#

وقتی تسک شما شامل تصمیمات ساختاری است — مثلاً «این ماژول را به microservice تبدیل کن» یا «الگوی repository را در کل پروژه اعمال کن» — Extended Thinking کمک می‌کند ایجنت اول نقشه بکشد بعد اجرا کند. بدون آن، ایجنت ممکن است وسط کار مسیر را عوض کند و کد ناسازگار تولید کند.

کِی خاموش بگذارید: تغییرات خطی ساده و bugfixهای محدود#

اگر می‌گویید «این typo را اصلاح کن» یا «این import را اضافه کن»، Extended Thinking فقط تأخیر و هزینه اضافه است. تسک‌های تک‌خطی و محدود، نیازی به planning ندارند.

تأخیر و هزینه: trade-off واقعی Extended Thinking در پروژه‌های عملی#

Extended Thinking زمان پاسخ را افزایش می‌دهد و توکن‌های بیشتری مصرف می‌کند. trade-off واقعی این است: تأخیر بیشتر در ازای کیفیت بالاتر در تصمیمات پیچیده. برای تسک‌های روزمره، این trade-off به نفع شما نیست.

مدیریت context window و استراتژی checkpoint: وقتی پروژه بزرگ می‌شود#

Claude 3.5 Sonnet از پنجره context حدود 200K توکن پشتیبانی می‌کند، اما در پروژه‌های واقعی با ده‌ها فایل، مدیریت این فضا به‌صورت دستی ضروری است؛ الگوی checkpoint and commit در Git، کلید جلوگیری از گم‌شدن ایجنت است.

استراتژی تقسیم کار: تسک‌های بزرگ را به زیرتسک‌های context-friendly بشکنید#

وقتی یک تسک بزرگ دارید — مثلاً «ساخت کل ماژول احراز هویت» — آن را به زیرتسک‌های کوچک‌تر بشکنید. هر زیرتسک باید در یک session قابل انجام باشد. این کار هم context را تمیز نگه می‌دارد، هم امکان review بین مراحل را فراهم می‌کند.

الگوی checkpoint and commit: چرا Git workflow شما در Claude Code باید تغییر کند#

در workflow سنتی، commit نهایی در پایان تسک انجام می‌شود. در Claude Code، بعد از هر زیرتسک موفق، یک commit بزنید. اگر ایجنت در مرحله بعدی اشتباه کند، به آخرین checkpoint برمی‌گردید بدون اینکه کل کار از بین برود. این الگو، ریسک ایجنت‌های خودمختار را به‌شدت کاهش می‌دهد.

نشانه‌های context overflow: وقتی ایجنت شروع به فراموشی می‌کند چه کنید#

نشانه‌ها: ایجنت فایلی را می‌خواند که قبلاً خوانده، تصمیمی را تکرار می‌کند که قبلاً رد شده، یا از قوانین CLAUDE.md سرپیچی می‌کند. راه‌حل: session را restart کنید، تسک را به زیرتسک‌های کوچک‌تر بشکنید، و مطمئن شوید CLAUDE.md قوانین کلیدی را دارد.

اشتباهات رایج و ضدالگوها: از کلاهبرداری‌های محتوایی تا اشتباهات فنی#

بزرگ‌ترین اشتباه، استفاده از Claude Code با مدل ذهنی چت‌باکس است؛ اما در فضای فارسی‌زبان، ادعاهای اغراق‌آمیز مثل «جایگزین کامل IDE» و «بهترین ابزار کدنویسی بدون محدودیت» هم یک ضدالگوی جدی است.

معرفی Claude Code به‌عنوان جایگزین IDE: چرا این ادعا نادرست است#

Claude Code یک ابزار CLI است. Debugging بصری، breakpoint، variable inspector و profiler ندارد. اگر کسی می‌گوید «Claude Code جای VS Code را می‌گیرد»، یا نمی‌داند از چه می‌گوید یا دارد محتوای clickbait تولید می‌کند. Claude Code مکمل IDE است، نه جایگزین آن.

نادیده گرفتن محدودیت‌های واقعی: عدم دسترسی به internet در حالت پیش‌فرض#

Claude Code در حالت پیش‌فرض به اینترنت دسترسی ندارد. اگر انتظار دارید ایجنت documentation آنلاین بخواند یا API خارجی را فراخوانی کند، باید از طریق MCP Server یا ابزارهای جانبی این امکان را فراهم کنید. بدون این، ایجنت فقط به فایل‌های محلی شما دسترسی دارد.

توصیه‌های کلی مثل «پرامپت خوب بنویسید» بدون الگوی مشخص#

محتوای فارسی‌زبان پر است از توصیه‌های بی‌محتوا: «پرامپت واضح بنویسید»، «context خوب بدهید». این‌ها درست‌اند ولی بی‌فایده‌اند. الگوی مشخص — مثل ساختار هدف/محدودیت/معیار که در بخش پرامپت‌نویسی توضیح دادم — ارزش واقعی دارد.

مقایسه ناعادلانه ایجنت با autocomplete#

مقایسه Claude Code با Copilot مثل مقایسه یک مهندس ارشد با یک کیبورد هوشمند است. این دو در سطوح کاملاً متفاوتی کار می‌کنند. مقایسه ناعادلانه، تصمیم‌گیری را گمراه می‌کند.

جمع‌بندی: Claude Code یک شغل متفاوت است#

Claude Code را با مدل ذهنی چت استفاده نکنید. مدل ایجنتی یعنی: هدف تعریف کنید، محدودیت بگذارید، معیار موفقیت مشخص کنید، و بقیه را به ایجنت بسپارید. CLAUDE.md را زنده نگه دارید، checkpoint بزنید، و Extended Thinking را فقط برای تصمیمات معماری روشن کنید.

اگر می‌خواهید این مدل ذهنی را در پروژه‌های واقعی تمرین کنید و از تجربه دیگران یاد بگیرید، کامیونیتی Claude در اسکول با دوره «آموزش جامع Claude و ابزارهای مشابه» دقیقاً همین مسیر را پوشش می‌دهد.

سرفصل‌ها و شرایط عضویت در دورهٔ جامع Claude و ابزارهای مشابه قابل مشاهده است.