کاهش مصرف توکن Claude Code: اندازه‌گیری، ccusage و RTK

کاهش مصرف توکن Claude Code با اندازه‌گیری شروع می‌شود. ccusage، دستورهای /usage و /context، عادت‌های مدیریت context و فشرده‌سازی خروجی با RTK را مرور می‌کنیم.

تیم نقطه۱۴ آبان ۱۴۰۵۱۳ دقیقه مطالعه
کاهش مصرف توکن Claude Code: اندازه‌گیری، ccusage و RTK

کاهش مصرف توکن Claude Code (کلاد کد) از یک اصل ساده شروع می‌شود: هزینه با اندازهٔ context بالا می‌رود، و بیشترِ context در sessionهای واقعی را چیزهایی پر می‌کنند که خودتان ننوشته‌اید؛ خروجی طولانی دستورها، فایل‌هایی که کامل خوانده می‌شوند، تاریخچهٔ گفتگو و ابزارهای نصب‌شده. پس راه درست این است که اول اندازه بگیرید، بعد فقط همان منبعی را که بیشترین سهم را دارد اصلاح کنید.

در این مقاله مراحل را به ترتیب می‌بینیم: اندازه‌گیری مصرف با ccusage و دستورهای خود Claude Code، چهار منبع اصلی هدررفت، عادت‌هایی که بدون هیچ ابزاری کار می‌کنند، فشرده‌کردن خروجی دستورها با RTK، و در پایان برنامهٔ ده‌دقیقه‌ای و فهرستی از چیزهایی که این ابزارها حل نمی‌کنند. اگر Claude Code را تازه نصب کرده‌اید، ابتدا آموزش Claude Code از صفر را بخوانید.

صرفه‌جویی را روی Claude Code خودتان بسنجید

با کلید اختصاصی نقطه، Claude Code از ایران بدون فیلترشکن و کارت خارجی و با پرداخت ریالی کار می‌کند؛ راه‌اندازی حدود ۵ دقیقه است.

آموزش اتصال Claude Code به نقطه

اگر اکانت شخصی ندارید یا بسته شده، راهنمای Claude Code بدون اکانت Anthropic را ببینید.

کاهش مصرف توکن Claude Code از اندازه‌گیری شروع می‌شود

پیش از هر بهینه‌سازی باید بدانید مصرف شما کجاست. دو ابزار برای این کار هست؛ یکی داخل خود Claude Code و دیگری ابزار بیرونی ccusage.

دستورهای داخلی Claude Code

طبق مستندات رسمی، /usage هزینهٔ session، محدودیت‌های پلن و آمار فعالیت را نشان می‌دهد (/cost هم نام دیگر همان است). دستور /context مصرف فعلی context را به‌صورت یک جدول رنگی نشان می‌دهد و برای ابزارهای پرمصرف و حافظهٔ متورم پیشنهاد می‌دهد؛ اگر نمی‌دانید چه چیزی جا را گرفته، اولین جایی که باید نگاه کنید همین است. مستندات همچنین پیشنهاد می‌کند وضعیت context را در status line دائماً نمایش بدهید.

ccusage برای مقایسهٔ روزها و sessionها

ابزار ccusage مصرف توکن و هزینه را از دادهٔ محلی ابزارهای کدنویسی (از جمله Claude Code) می‌خواند و گزارش روزانه، هفتگی، ماهانه و بر اساس session می‌دهد. طبق README رسمی:

npx ccusage@latest
ccusage claude daily
اندازه‌گیری و کاهش مصرف توکن Claude Code با دستور ccusage
اندازه‌گیری مصرف توکن Claude Code با ccusage: گزارش کلی و گزارش روزانهٔ Claude Code.

دستور دوم (پس از نصب سراسری) فقط گزارش Claude Code را به‌صورت روزانه می‌دهد. ccusage session گزارش را به تفکیک session می‌دهد و ccusage blocks طبق README پنجره‌های پنج‌ساعتهٔ Claude Code را نشان می‌دهد. این ابزار داده را از فایل‌های محلی می‌خواند.

یک نکته برای کاربران نقطه: عددهای ccusage برآورد آن ابزار از دادهٔ محلی است و لزوماً با نحوهٔ محاسبهٔ مصرف در پلن نقطه یکی نیست. آن را برای مقایسهٔ روزها و sessionها با هم به کار ببرید، نه برای تطبیق با صورت‌حساب؛ مصرف رسمی را در صفحهٔ مصرف نقطه ببینید.

چهار منبع اصلی هدررفت توکن

در بیشتر sessionهای پرمصرف، سهم اصلی از یکی از این چهار منبع می‌آید:

  1. خروجی دستورهای shell: تست، build، git، فهرست فایل‌ها. هر خط خروجی وارد context می‌شود، چه به کارتان بیاید چه نه.
  2. خواندن فایل‌های کامل برای پیدا کردن یک تابع.
  3. تاریخچهٔ طولانی گفتگو: با طولانی‌شدن session، هر پیام جدید کل تاریخچه را همراه دارد.
  4. ابزارها و Skillهای زیاد: هر چه نصب باشد بخشی از context را اشغال می‌کند (مستندات رسمی برای پلاگین‌های رسمی «Context cost» نشان می‌دهد).

منبع سوم را بیشتر کاربران دست‌کم می‌گیرند. در یک گفتگوی طولانی، هر پیام تازه فقط شامل جملهٔ شما نیست؛ Claude باید کل مسیر قبلی، یعنی پیام‌ها، خروجی دستورها و فایل‌های خوانده‌شده را دوباره در نظر بگیرد. به همین خاطر session‌ای که ساعت‌ها باز مانده، حتی برای یک سؤال کوتاه هم گران‌تر از یک گفتگوی تازه است. Claude Code خودش از prompt caching و خلاصه‌سازی خودکار هنگام نزدیک‌شدن به سقف context استفاده می‌کند، اما این‌ها جای مدیریت شما را نمی‌گیرند.

منبع هدررفت نشانه اولین اقدام
خروجی دستورها لاگ‌های بلند تست و build در گفتگو فشرده‌سازی با RTK یا hook فیلتر
خواندن فایل کامل Claude چند فایل بزرگ را برای یک سؤال می‌خواند درخواست مشخص‌تر، ابزار فهم کد
تاریخچهٔ طولانی session ساعت‌ها باز است و موضوع عوض شده /clear یا /compact
ابزار و Skill زیاد /context سهم بزرگی برای ابزارها نشان می‌دهد غیرفعال‌کردن موارد بلااستفاده
نمودار مصرف توکن Claude Code روی گوشی کنار ترمینال
اول مصرف توکن را اندازه بگیرید، بعد سراغ ابزار کاهش مصرف بروید.

عادت‌هایی که بدون ابزار هم مصرف را کم می‌کنند

پیش از نصب هر چیز، این عادت‌ها را از مستندات رسمی مدیریت هزینه ببینید؛ هزینه‌شان صفر است و اثرشان معمولاً کمتر از ابزارهای جانبی نیست.

  • بین کارهای نامرتبط /clear بزنید. مستندات می‌گوید context کهنه روی هر پیام بعدی توکن هدر می‌دهد. اگر بعداً به همان گفتگو نیاز دارید، پیش از پاک‌کردن با /rename اسمی بگذارید و با /resume برگردید.
  • برای ادامهٔ همان کار /compact را با دستور تمرکز بدهید. مثلاً /compact Focus on code samples and API usage به Claude می‌گوید در خلاصه‌سازی چه چیزی را نگه دارد. می‌توانید همین را در بخشی با عنوان «Compact instructions» در CLAUDE.md هم بنویسید.
  • درخواست را مشخص کنید. «کل پروژه را بررسی کن» یعنی خواندن فایل‌های زیاد؛ «اعتبارسنجی ورودی را به تابع login در auth.ts اضافه کن» ارزان‌تر است. مستندات همین مثال‌ها را می‌آورد.
  • برای کارهای پیچیده اول plan mode. با Shift+Tab به حالت برنامه‌ریزی بروید تا Claude قبل از ویرایش رویکرد را بگوید و جهت اشتباه گران تمام نشود. اگر وسط کار مسیر غلط شد، Escape بزنید و در صورت نیاز با /rewind به نقطهٔ قبل برگردید.
  • مدل را متناسب انتخاب کنید. مستندات می‌گوید Sonnet بیشتر کارهای کدنویسی را خوب انجام می‌دهد و ارزان‌تر از Opus است؛ Opus را برای تصمیم‌های معماری یا استدلال چندمرحله‌ای نگه دارید. با /model وسط session عوض می‌شود.
  • عملیات پرخروجی را به زیرعامل بسپارید. اجرای تست، خواندن مستندات یا پردازش لاگ در context زیرعامل می‌ماند و فقط خلاصه به گفتگوی اصلی برمی‌گردد. توجه کنید خود زیرعامل هم از مصرف شما کم می‌کند.
  • دستورالعمل‌های تخصصی را از CLAUDE.md به Skill ببرید. CLAUDE.md در شروع session کامل لود می‌شود، اما Skill فقط وقتی صدا زده شود. مستندات پیشنهاد می‌کند CLAUDE.md را زیر حدود ۲۰۰ خط و فقط با موارد ضروری نگه دارید. نحوهٔ ساخت Skill در راهنمای پلاگین Claude Code آمده است.
دستورهای /context، /compact و /clear برای کاهش مصرف توکن Claude Code
سه دستور داخلی Claude Code برای دیدن و کوچک‌کردن context.

تفکر گسترده و سرورهای MCP

مستندات رسمی دو منبع دیگر را هم نام می‌برد. اول، extended thinking به‌صورت پیش‌فرض روشن است و توکن‌های تفکر مثل خروجی حساب می‌شوند؛ برای کارهای ساده می‌توانید سطح effort را با /effort پایین بیاورید (روی بعضی مدل‌ها تفکر قابل خاموش‌کردن نیست). دوم، تعریف ابزارهای MCP به‌صورت پیش‌فرض دیرهنگام (deferred) لود می‌شود و در ابتدا فقط نام ابزارها وارد context می‌شود؛ با /context ببینید چه چیزی جا می‌گیرد و با /mcp سرورهای بلااستفاده را غیرفعال کنید. مستندات حتی می‌گوید ابزارهای خط فرمان مثل gh هنوز از سرور MCP کم‌هزینه‌ترند، چون فهرست ابزار اضافه نمی‌کنند.

RTK: فشرده‌کردن خروجی دستورها

RTK («Rust Token Killer») یک باینری Rust است که خروجی دستورها را پیش از رسیدن به LLM فشرده می‌کند. README آن می‌گوید بیش از ۱۰۰ دستور پشتیبانی می‌شود و سربار کمتر از ۱۰ میلی‌ثانیه دارد. مثال‌ها از README: git log فقط هش، نویسنده و عنوان می‌دهد؛ pytest فقط شکست‌ها را؛ git add/commit/push یک خط تأیید. این مقاله تصویر کلی کاهش مصرف را می‌دهد؛ اگر تصمیم‌تان برای RTK گرفته شده و فقط نصب، راه‌اندازی و دستورهایش را می‌خواهید، مستقیم آموزش RTK در Claude Code را بخوانید.

عددی که پروژه ادعا می‌کند «تا ۹۰٪ کوچک‌تر» است، ولی README خودش صادقانه یادآوری می‌کند که این رقم فقط خروجی bash را می‌سنجد و با کم‌شدن همان درصد از صورت‌حساب شما برابر نیست، چون خروجی bash فقط یکی از اجزای ورودی است و ورودی هم فقط بخشی از هزینه است. پس «تا ۹۰٪» را روی صورت‌حساب انتظار نداشته باشید. README همچنین می‌گوید RTK کش prompt در Claude را خراب نمی‌کند، چون خروجی یک بار فیلتر و در تاریخچه ذخیره می‌شود.

RTK طبق README از چهار راهکار برای هر نوع دستور استفاده می‌کند: فیلتر هوشمند (حذف نویز مثل کامنت و فاصله‌های اضافه)، گروه‌بندی (مثلاً فایل‌ها بر اساس پوشه یا خطاها بر اساس نوع)، برش (نگه‌داشتن زمینهٔ مرتبط و حذف تکرار) و حذف تکراری‌ها (جمع‌کردن خطوط تکراری لاگ با شمارنده). دلیل اینکه می‌توان به آن اعتماد کرد همین است که کار را بر اساس نوع دستور انجام می‌دهد، نه با حدس زدن روی متن آزاد. برای اندازه‌گیری، rtk gain خلاصهٔ صرفه‌جویی را نشان می‌دهد و rtk discover فرصت‌های از دست‌رفته را پیدا می‌کند؛ جزئیات این دستورها در راهنمای RTK آمده است.

روش‌های مکمل: hook و ابزار فهم کد

خود مستندات Claude Code هم همین ایده را تأیید می‌کند: یک hook می‌تواند داده را پیش از رسیدن به Claude پیش‌پردازش کند؛ مثلاً به‌جای خواندن یک فایل لاگ ده‌هزار خطی، فقط خطوط ERROR را برگرداند. RTK نسخهٔ آمادهٔ همین کار برای دستورهای رایج است. برای بخش خواندن فایل‌ها هم مستندات پیشنهاد می‌کند پلاگین‌های code intelligence به Claude امکان «رفتن به تعریف» بدهند تا به‌جای grep و خواندن چند فایل، یک فراخوانی کافی باشد. برای پروژه‌های بزرگ، Context7 و ابزارهای فهم کد و CodeGraph همین نقش را بازی می‌کنند.

یک تفکیک مهم: صرفه‌جویی خروجی bash، صرفه‌جویی ورودی و صرفه‌جویی صورت‌حساب سه عدد جدا هستند. RTK فقط عدد اول را اندازه می‌گیرد. اگر مصرف شما بیشتر از گفتگوهای طولانی و فایل‌های بزرگ می‌آید، حتی یک فشرده‌ساز عالی هم روی صورت‌حساب شما اثر کمی خواهد داشت. برای همین ترتیب این مقاله با اندازه‌گیری شروع شد، نه با نصب ابزار.

چه چیزهایی را این روش‌ها حل نمی‌کنند؟

  • طبق README، hook فقط روی فراخوانی‌های Bash کار می‌کند؛ ابزارهای داخلی Read، Grep و Glob از آن عبور نمی‌کنند.
  • شمارش توکن RTK تخمینی است (bytes / 4)؛ درصدها قابل اتکا ولی عدد مطلق تقریبی است.
  • هزینهٔ تاریخچه و prompt شما را کم نمی‌کند.
  • خلاصه‌سازی ممکن است جزئیاتی را که برای دیباگ لازم است حذف کند؛ در آن حالت خروجی کامل را یک بار جدا بگیرید.
  • ccusage برآورد از دادهٔ محلی است، نه صورت‌حساب رسمی.

مصرف رسمی را در داشبورد نقطه ببینید

وقتی Claude Code با کلید نقطه وصل باشد، تعداد درخواست‌ها و سهمیهٔ ۵ ساعته و ۷ روزه را زنده در داشبورد می‌بینید؛ کنار ccusage عدد رسمی هم دارید.

راه‌اندازی Claude Code با نقطه

برنامهٔ ده‌دقیقه‌ای برای کاهش مصرف توکن Claude Code

  1. npx ccusage@latest را اجرا کنید و ببینید کدام روزها و sessionها از بقیه گران‌تر بوده‌اند.
  2. در همان sessionها بپرسید: چه چیزی وارد context شد؟ لاگ بلند تست؟ فایل‌های کامل؟ تاریخچهٔ خیلی طولانی؟ داخل session فعلی هم /context را نگاه کنید.
  3. اگر خروجی دستورها مقصر بود، RTK را نصب و با rtk gain اثرش را بسنجید.
  4. اگر خواندن فایل‌ها مقصر بود، به CodeGraph نگاه کنید.
  5. اگر فقط session خیلی طولانی بود، عادت /clear و /compact را امتحان کنید.
  6. یک هفته بعد دوباره ccusage را اجرا کنید و مقایسه کنید.

این یک آزمایش ساده است، نه تضمین؛ تفاوت پروژه‌ها و نوع کار زیاد است و عدد شما ممکن است با گزارش‌های دیگران فرق کند. برای اینکه این صرفه‌جویی‌ها در یک گردش‌کار کامل جا بگیرد، راهنمای گردش‌کار توسعه با Claude Code را هم ببینید.

اشتباهات رایج در صرفه‌جویی توکن

  • بهینه‌سازی قبل از اندازه‌گیری. نصب سه ابزار پشت هم و بعد ندانستن اینکه کدام اثر داشت.
  • نصب بیش از حد. هر Skill و ابزار نصب‌شده خودش هزینهٔ context دارد؛ ابزار صرفه‌جویی هم همین‌طور.
  • ادامه‌دادن یک session برای همه‌چیز. گفتگوی تازه معمولاً ارزان‌تر از کشیدن تاریخچهٔ بی‌ربط است.
  • اعتماد به یک عدد. ادعای «تا ۹۰٪» ادعای سازنده برای خروجی bash است، نه وعدهٔ صورت‌حساب.

جمع‌بندی

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

یک کلید برای Sonnet و Opus، با مصرف شفاف

کلید API نقطه فقط با پلن پرو باز می‌شود؛ پرداخت ریالی است و بین Sonnet و Opus با همان کلید جابه‌جا می‌شوید تا هزینه را با نوع کار تنظیم کنید.

دیدن پلن‌های پرو

این مقاله چگونه بررسی شد؟

دستورهای نصب و ویژگی‌ها از README رسمی RTK و ccusage و مفاهیم Claude Code از مستندات code.claude.com (بخش‌های مدیریت هزینه و دستورها) برداشته شد و در ۱۳ آبان ۱۴۰۵ (۴ نوامبر ۲۰۲۶) دوباره با نسخهٔ فعلی مقایسه شد. هر جا ادعایی از خود سازنده است («تا ۹۰٪») همین را نوشته‌ایم و آن را اندازه‌گیری مستقل نمی‌دانیم. اگر دستوری در نسخهٔ شما فرق داشت، README یا مستندات همان نسخه معتبرتر است.


منابع: README رسمی rtk-ai/rtk و ccusage؛ مستندات مدیریت هزینهٔ Claude Code و فهرست دستورها. تاریخ بررسی: ۱۳ آبان ۱۴۰۵ (۴ نوامبر ۲۰۲۶).

پاسخ‌های کوتاه و کاربردی

سوال‌های رایج

جواب پرسش‌هایی که معمولاً پیش از انتخاب ابزار یا شروع ساخت مطرح می‌شوند.

چطور مصرف توکن Claude Code را ببینم؟

داخل Claude Code از /usage برای هزینهٔ session و محدودیت‌ها و از /context برای دیدن اینکه چه چیزی context را پر کرده استفاده کنید. برای مقایسهٔ روزها و sessionها، ccusage گزارش روزانه و session می‌دهد.

آیا RTK خروجی را خراب نمی‌کند؟

خلاصه‌سازی ممکن است جزئیاتی را حذف کند. وقتی برای دیباگ خروجی کامل لازم است، دستور را بدون RTK اجرا کنید؛ README دستور rtk bypass <cmd> را برای اجرای بدون فیلتر معرفی می‌کند.

کدام روش بیشترین اثر را دارد؟

جواب ثابتی نیست و به نوع کار شما بستگی دارد. در بیشتر موارد، کوتاه‌نگه‌داشتن session و درخواست‌های مشخص بدون هیچ ابزاری اثر دارد؛ RTK وقتی مفید است که دستورهای shell پرخروجی زیاد اجرا کنید. اول با ccusage و /context منبع را پیدا کنید.

آیا باید ابزارها و پلاگین‌های بلااستفاده را حذف کنم؟

بله. نام و توضیح Skillها و ابزارها در context قرار می‌گیرد و از سهم شما کم می‌کند. موارد بلااستفاده را با /mcp یا /plugin غیرفعال کنید.

RTK و ccusage با کلاد کد روی اشتراک نقطه هم کار می‌کنند؟

RTK و ccusage هر دو روی کامپیوتر خود شما اجرا می‌شوند و به نحوهٔ اتصال Claude Code وابسته نیستند. RTK با یک hook روی دستورهای Bash کار می‌کند و ccusage فایل‌های محلی را می‌خواند. فقط یادتان باشد عددهای این ابزارها را با مصرف رسمی نقطه یکی فرض نکنید. برای اتصال خود Claude Code از ایران، مراحل در صفحهٔ کلاد کد در ایران آمده است؛ بدون فیلترشکن و کارت خارجی.

کاهش مصرف توکن Claude CodeClaude Codeکلاد کدccusageRTKcontext
کاهش مصرف توکن Claude Code با ccusage و RTK | نقطه