چطور مصرف توکن Claude Code را کم کنیم؟
هزینه و محدودیت مصرف در Claude Code بیشتر از هر چیز به حجم Context، مدل انتخابشده، تعداد فایلها و خروجی ابزارها بستگی دارد. با مدیریت درست گفتوگو، دستورهای پروژه و مدل میتوانید هم سرعت کار را بهتر کنید و هم توکن کمتری مصرف کنید.
یک باور اشتباه را اصلاح کنیم
صرفاً پنج دقیقه یا یک ساعت فاصلهگرفتن از Claude Code باعث گرانترشدن پیام بعدی نمیشود. آنچه مصرف را بالا میبرد، Context بزرگی است که در یک نشست طولانی جمع شده و ممکن است در درخواستهای بعدی دوباره پردازش شود. زمانِ گذشته عامل اصلی نیست؛ حجم اطلاعات موجود در نشست مهم است.
Claude Code برای انجام کار فقط پیام آخر شما را نمیبیند. گفتوگوی قبلی، دستورهای پروژه، فایلهایی که خوانده شدهاند، نتیجه فرمانها و اطلاعات ابزارها میتوانند بخشی از Context باشند. هرچه این Context بزرگتر شود، هر درخواست جدید ممکن است ورودی بیشتری برای پردازش داشته باشد.
چرا مصرف توکن در نشستهای طولانی بیشتر میشود؟
مستندات رسمی Anthropic توضیح میدهد که مصرف توکن با اندازه Context رشد میکند. Claude Code برای کاهش هزینه از Prompt Caching و Auto-compaction استفاده میکند؛ بااینحال، گفتوگویی که چند کار نامرتبط، فایلهای زیاد یا لاگهای طولانی را در خود نگه داشته باشد همچنان میتواند پرهزینهتر و کمتمرکزتر شود.
- تاریخچه طولانی و چند موضوع نامرتبط در یک نشست
- خواندن فایلها، لاگها و خروجی تستهای بسیار بزرگ
- فعالبودن ابزارها یا MCP Serverهای غیرضروری
- استفاده از مدل سنگین برای کارهای ساده
- پرامپتهای مبهم که Claude را مجبور به جستوجوی گسترده میکنند
- قرارگرفتن دستورهای طولانی و همیشگی در CLAUDE.md
۱. بین کارهای نامرتبط از /clear استفاده کنید
اگر کار قبلی تمام شده و میخواهید سراغ موضوعی کاملاً متفاوت بروید، دستور /clear یک نشست تازه ایجاد میکند. Context قدیمی در پیامهای بعدی حمل نمیشود و Claude روی مسئله جدید متمرکزتر میماند.
/rename auth-refactor
/clearقبل از پاککردن نشست میتوانید با /rename نام مشخصی برای آن بگذارید و بعداً با /resume به همان گفتوگو برگردید. برای ادامه همان کار، نشست قبلی را حفظ کنید؛ برای یک موضوع مستقل، نشست تازه معمولاً انتخاب بهتری است.
۲. برای کارهای طولانی از /compact استفاده کنید
وقتی هنوز روی همان پروژه کار میکنید اما گفتوگو بزرگ شده است، /compact تاریخچه را خلاصه میکند تا فضای Context آزاد شود. بهتر است مشخص کنید چه اطلاعاتی باید در خلاصه حفظ شود.
/compact Focus on changed files, test failures, decisions, and the next implementation stepبرای پروژههای تکرارشونده میتوانید دستور Compaction را کوتاه و مشخص داخل CLAUDE.md بنویسید؛ مثلاً از Claude بخواهید هنگام خلاصهسازی، تغییرات کد، نتیجه تست و تصمیمهای معماری را نگه دارد.
۳. با /usage و /context مصرف را پیدا کنید
بهجای حدسزدن، از ابزارهای داخلی برای دیدن وضعیت استفاده کنید:
| دستور | کاربرد |
|---|---|
/usage |
نمایش آمار مصرف نشست و وضعیت محدودیت پلن |
/context |
بررسی اینکه چه بخشهایی از Context فضا اشغال کردهاند |
/mcp |
دیدن و غیرفعالکردن MCP Serverهای غیرضروری |
/model |
انتخاب مدل متناسب با پیچیدگی کار |
در پلنهای Pro و Max هزینه نمایشدادهشده برای API الزاماً مبلغ صورتحساب اشتراک شما نیست؛ اما آمار مصرف و نشانههای Context طولانی همچنان برای مدیریت محدودیت پلن مفیدند.
۴. مدل مناسب را برای هر کار انتخاب کنید
استفاده از قویترین مدل برای همه کارها همیشه بهصرفه نیست. برای اصلاحهای روزمره، تولید تست، بازنویسیهای محدود و کارهای معمول کدنویسی، Sonnet در بسیاری از سناریوها کافی است. مدلهای سنگینتر را برای تصمیمهای معماری، تحلیلهای چندمرحلهای یا مسئلههایی نگه دارید که واقعاً به استدلال بیشتر نیاز دارند.
اگر Extended Thinking برای کار ساده لازم نیست، سطح Effort را کاهش دهید. Thinking Tokenها بخشی از خروجی محاسبه میشوند و میتوانند مصرف را بالا ببرند.
۵. پرامپت دقیق بنویسید
درخواست مبهمی مانند «کل پروژه را بهتر کن» Claude را وادار میکند فایلهای بیشتری بخواند و مسیرهای زیادی را بررسی کند. درخواست دقیق، Context و رفتوبرگشت اضافی را کم میکند.
این پروژه را بررسی کن و همه مشکلاتش را درست کن.
در فایل auth.ts فقط اعتبارسنجی ورودی تابع login را اصلاح کن، تستهای فعلی را اجرا کن و فایل دیگری را تغییر نده.
مسیر فایل، محدوده تغییر، خروجی مورد انتظار، تست پذیرش و مواردی که نباید تغییر کنند را از ابتدا بنویسید.
۶. لاگها و خروجیهای طولانی را خلاصه کنید
فرستادن هزاران خط لاگ، خروجی تست یا گزارش Build میتواند Context را سریع پر کند. ابتدا فقط خطاها و بخش مرتبط را جدا کنید. در کارهای حرفهای میتوان از Hook یا اسکریپت فیلتر استفاده کرد تا پیش از رسیدن خروجی به Claude، فقط خطهای مهم باقی بمانند.
pytest 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100۷. CLAUDE.md را کوتاه و کاربردی نگه دارید
فایل CLAUDE.md در شروع نشست وارد Context میشود. این فایل را به اطلاعاتی محدود کنید که تقریباً در هر کار لازماند: فرمانهای Build و Test، معماری اصلی، قواعد نامگذاری و محدودیتهای مهم پروژه. مستندات طولانی یا راهنمای یک کار خاص بهتر است در Ruleهای مسیرمحور یا Skill جدا قرار بگیرد و فقط هنگام نیاز بارگذاری شود.
Anthropic پیشنهاد میکند هر CLAUDE.md تا حد امکان کوتاه و مشخص باشد و برای خوانایی از تیتر و فهرست استفاده شود.
۸. کارهای پرخروجی را از گفتوگوی اصلی جدا کنید
جستوجوی وسیع در کد، خواندن مستندات یا اجرای تستهایی با خروجی طولانی میتواند Context اصلی را شلوغ کند. در صورت نیاز این کارها را به Subagent بسپارید تا فقط نتیجه خلاصهشده به گفتوگوی اصلی برگردد. برای یک کار ساده، ساخت چند Agent موازی لزوماً اقتصادی نیست؛ هر Agent Context مستقل خود را دارد.
چکلیست سریع کاهش مصرف Claude Code
- برای موضوع جدید و نامرتبط از
/clearاستفاده کنید. - در نشست طولانی با
/compactخلاصه هدفمند بسازید. - با
/usageو/contextعامل مصرف را پیدا کنید. - مدل و Effort را متناسب با پیچیدگی کار انتخاب کنید.
- پرامپت را به فایل، هدف و تست مشخص محدود کنید.
- لاگ و خروجی تست را قبل از ارسال فیلتر کنید.
- CLAUDE.md و ابزارهای فعال را سبک نگه دارید.
- تغییرات را مرحلهای اجرا و زود تست کنید.
جمعبندی
عامل اصلی مصرف بالاتر در Claude Code، گذشت زمان نیست؛ Context بزرگ و کار نامتمرکز است. با جداکردن کارهای نامرتبط، Compaction هدفمند، انتخاب مدل مناسب، پرامپت دقیق و فیلترکردن خروجیهای طولانی میتوانید نشستهای سریعتر و اقتصادیتری داشته باشید.
برای استفاده حرفهای از Claude به اشتراک Pro نیاز دارید؟
اشتراک Claude Pro روی ایمیل شخصی شما فعال میشود و جزئیات تحویل و گارانتی در صفحه محصول درج شده است.
مشاهده اشتراک Claude Proمنابع رسمی
راهنمای رسمی مدیریت هزینه و مصرف Claude Code
