SSD Nodes Learn Hosting plans →
راهنماها Matt Connorتوسط Matt Connor

استفاده از API Key در Claude Code بدون اشتراک

آیا Claude Code بدون اشتراک Claude Pro کار می‌کند؟ بله، این ابزار با API Key مجزا اجرا می‌شود. با دستور claude config ببینید نشست شما از کدام اعتبار استفاده می‌کند.

نشست Claude Code شما از چه اعتباری استفاده می‌کند؟

ورود به Claude Code به یکی از دو روش زیر انجام می‌شود. شما یا با یک حساب اشتراک Claude از claude.ai وارد می‌شوید، یا با یک سازمان در Anthropic Console احراز هویت می‌کنید که در آن صورت، تمام توکن‌ها بر اساس موجودی API (رابط برنامه‌نویسی اپلیکیشن) آن سازمان محاسبه می‌شوند. دستور /status را در یک نشست فعال اجرا کنید تا ببینید کدام‌یک فعال است: زبانه Status یک ردیف Login method برای حسابی که با آن وارد شده‌اید نشان می‌دهد، و در صورتی که یک کلید API اعتبار را تأمین کند، یک ردیف اضافی API key ظاهر می‌شود.

این‌که آیا این ابزار اصلاً تحت پوشش طرح شما قرار دارد یا خیر، موضوع جداگانه‌ای است که در اینکه آیا Claude Code در اشتراک Claude Pro گنجانده شده است به آن پاسخ داده شده، و سازوکار کلیدها در برابر API شرکت Claude در نحوه عملکرد احراز هویت API شرکت Claude پوشش داده شده است. آنچه در ادامه می‌آید بخشی است که آن دو مورد پوشش نمی‌دهند: اینکه یک نشست در واقع کدام اعتبار را انتخاب کرده است و چگونه می‌توان آن را تغییر داد.

رفتار زیر برگرفته از مستندات احراز هویت Claude Code متعلق به Anthropic است که در تاریخ 6 اکتبر 2026 مطالعه شده است. Claude Code به‌طور مکرر عرضه (ship) می‌شود و چندین مورد از این رفتارها به حداقل نسخه نیاز دارند، بنابراین پیش از آنکه نتیجه بگیرید دستگاه شما خراب است، دستور claude --version را اجرا کنید.

دو حساب کاربری که می‌توانند از یک آدرس ایمیل مشترک استفاده کنند

حساب claude.ai و حساب Claude Console در آدرس platform.claude.com دو حساب کاربری متفاوت هستند. این دو می‌توانند آدرس ایمیل یکسانی داشته باشند و همچنان به عنوان ورودهای مجزا با موجودی‌های جداگانه و در سازمان‌های متفاوت باقی بمانند. ایجاد یکی از این حساب‌ها، دیگری را ایجاد نمی‌کند. پرداخت هزینه برای طرح Max، هیچ اعتباری به سازمان Console اضافه نمی‌کند و شارژ کردن یک سازمان Console نیز تأثیری بر طرح اشتراک شما ندارد.

تفاوت موجودی‌ها به دلیل تفاوت در مدل‌های صورت‌حساب است. ورود از طریق اشتراک، از سهمیه مصرف طرح شما استفاده می‌کند که در یک بازه زمانی متغیر 5 ساعته و یک بازه هفتگی بازنشانی می‌شود و این سهمیه با Claude در وب مشترک است. اعتبار Console بر اساس هر توکن برای سازمان صورت‌حساب می‌شود و ارقام دقیق در صفحه مصرف Console قابل مشاهده است. این‌که این تفاوت در کارهای واقعی چه هزینه‌ای دارد، موضوع پرداخت به ازای هر توکن در مقابل پرداخت برای اشتراک است.

یک نوع حساب کاربری اصلاً نمی‌تواند مسیر اشتراک را طی کند. Anthropic حساب‌هایی که می‌توانید با آن‌ها به عنوان اشتراک Pro یا Max، جایگاه Claude for Teams یا Enterprise، حساب Claude Console، ارائه‌دهنده ابری و Cloud gateway وارد شوید را فهرست می‌کند؛ به این معنی که یک gateway برنامه‌های Claude که خودتان میزبانی می‌کنید و سازمان شما آن را اجرا می‌کند و شما با SSO (ورود تکی) شرکتی از طریق /login به آن وارد می‌شوید. حساب رایگان claude.ai در این فهرست نیست، بنابراین کاربر طرح رایگان هیچ اعتبار اشتراکی برای ورود ندارد و آنچه سطح رایگان Claude شامل آن می‌شود و نمی‌شود، ابزار خط فرمان را در بر نمی‌گیرد. مسیر باقی‌مانده، یک سازمان Console با اعتبار API است که یک حساب پولی با ساختاری متفاوت محسوب می‌شود.

مسیر اول: ورود با اشتراک Claude

دستور claude را در دایرکتوری پروژه اجرا کنید. در اولین اجرا، این دستور یک پنجره مرورگر باز می‌کند تا با حساب claude.ai که طرح اشتراک شما روی آن فعال است، وارد شوید.

claude

دو مورد در سرور رفتار متفاوتی دارند. اگر مرورگر باز نشد، c را فشار دهید تا URL ورود در کلیپ‌بورد شما کپی شود و آن را در مرورگر سیستم خود پیست کنید. اگر آن مرورگر به‌جای بازگرداندن شما به ترمینال، یک کد ورود نمایش داد، کد را در پرامپتی که آن را درخواست می‌کند، وارد کنید. این حالت دوم در اتصال SSH، در WSL2 و داخل کانتینرها طبیعی است، زیرا مرورگر نمی‌تواند به callback server محلی که Claude Code روی ماشین راه دور راه‌اندازی کرده است، دسترسی پیدا کند.

پس از پایان ورود، به‌جای فرض کردن موفقیت، آن را بررسی کنید. یک نشست (session) را شروع کرده و /status را اجرا کنید. زبانه Status روش ورود، به همراه سازمان و آدرس ایمیلی که ذخیره شده است را نمایش می‌دهد. /login فرآیند ورود را مجدداً برای یک حساب دیگر اجرا می‌کند و /logout اعتبارنامه ذخیره‌شده را حذف می‌کند. خروج از حساب (logout) همچنین وضعیت راه‌اندازی اولیه را بازنشانی می‌کند، بنابراین اجرای بعدی claude شما را دوباره از مراحل onboarding عبور می‌دهد.

دانستن محل ذخیره این اعتبارنامه هنگام بازسازی یک سرور یا تحویل آن اهمیت دارد:

  • لینوکس: ~/.claude/.credentials.json، با مجوز فایل 0600.
  • مک‌او‌اس: Keychain رمزنگاری‌شده. هنگامی که Keychain نوشتن را رد می‌کند (که در نشست‌های SSH قفل‌شده رخ می‌دهد)، Claude Code به همان فایل 0600 بازمی‌گردد. ورود از طریق کنسول که یک API key ایجاد می‌کند، از این حالت fallback استفاده نمی‌کند و تا زمانی که Keychain قابل نوشتن نباشد، با خطا مواجه می‌شود.
  • ویندوز: %USERPROFILE%\.claude\.credentials.json، که توسط کنترل‌های دسترسی دایرکتوری پروفایل کاربر محدود شده است.
  • هر پلتفرمی که CLAUDE_CONFIG_DIR در آن تنظیم شده باشد: فایل به زیر آن دایرکتوری منتقل می‌شود و ورودی Keychain در مک‌او‌اس نیز بر اساس آن کلیدگذاری می‌شود، بنابراین نشستی که با یک CLAUDE_CONFIG_DIR متفاوت شروع شود، اعتبارنامه متفاوتی را می‌خواند.

Claude Code این فایل را از طریق /login و /logout مدیریت می‌کند. ویرایش دستی این فایل روش پشتیبانی‌شده‌ای برای تغییر حساب نیست.

مسیر دوم: احراز هویت در یک سازمان Console

دسترسی به Console با یک مدیر سیستم آغاز می‌شود. آن‌ها شما را از طریق Console در بخش Settings، سپس Members و در نهایت Invite دعوت می‌کنند. آن‌ها همچنین یک نقش به شما اختصاص می‌دهند: نقش Claude Code فقط می‌تواند API keyهای مخصوص Claude Code را ایجاد کند، در حالی که نقش Developer امکان ایجاد هر نوع کلیدی را دارد. سپس شما حساب Anthropic Console خود را در پرامپت /login انتخاب می‌کنید.

از نسخه Claude Code v2.1.242 به بعد، دو مسیر برای Console وجود دارد که داده‌های متفاوتی را ذخیره می‌کنند. ورود با حساب Console، توکن OAuth (مجوز باز) حاصل از ورود در مرورگر را حفظ کرده و آن را به عنوان یک پروفایل Anthropic ذخیره می‌کند؛ در این حالت هیچ API key ایجاد نمی‌شود. Claude Code به‌طور خودکار این ورود را تمدید می‌کند و در صورت شکست در تمدید، درخواست‌ها تا زمانی که دوباره وارد شوید با خطا مواجه می‌شوند. این ورود بدون کلید (keyless)، شما را از هرگونه ورود به claude.ai که روی دستگاه ذخیره شده باشد نیز خارج می‌کند. ایجاد یک API key که در پرامپت با عنوان legacy مشخص شده، یک کلید Console تولید کرده و آن را همراه با سایر اعتبارنامه‌های شما ذخیره می‌کند. یک کلید ایستا (static) هرگز نیاز به تمدید ندارد و تا زمانی که توسط شخصی ابطال نشود، به کار خود ادامه می‌دهد. این ویژگی برای سرورهای build مفید است اما برای لپ‌تاپ یک ریسک امنیتی محسوب می‌شود.

پیش از شروع ورود بدون کلید به Console، مقدار ANTHROPIC_API_KEY را unset کنید. اگر این متغیر تنظیم شده باشد، Claude Code از پرامپت ورود صرف‌نظر کرده و مستقیماً از شما می‌خواهد کلیدی را که پیدا کرده است تأیید کنید.

شما همیشه حق انتخاب ندارید. Claude Code در شرایط زیر بدون پرسش، یک کلید ایجاد می‌کند: زمانی که نشست (session) روی یک ارائه‌دهنده ابری اجرا می‌شود، زمانی که هر فایل تنظیماتی مقدار forceLoginOrgUUID را تعیین کرده یا forceLoginMethod را به "claudeai" یا "console" محدود (pin) کرده باشد، یا زمانی که یک منبع تنظیمات مدیریت‌شده روی دستگاه وجود داشته باشد و Claude Code نتواند آن را بخواند. این‌ها تصمیمات مدیر سیستم هستند؛ بنابراین اگر گزینه ورود بدون کلید برای شما ظاهر نمی‌شود، از کسی که مدیریت ناوگان (fleet) را بر عهده دارد سؤال کنید. دستور /status همچنین یک خط Setting sources چاپ می‌کند که نام تمام فایل‌های تنظیماتی بارگذاری‌شده در نشست را ذکر کرده و در صورت اعمال منبع مدیریت‌شده، نام آن را نیز نمایش می‌دهد.

اولین باری که Claude Code را در یک سازمان Console احراز هویت می‌کنید، Console یک فضای کاری (workspace) به نام "Claude Code" برای آن ایجاد می‌کند. این فضای کاری برای این است که هزینه‌های Claude Code در یک مکان واحد ردیابی شود و شما نمی‌توانید داخل آن API key ایجاد کنید.

چرا پس از ورود به سیستم، ANTHROPIC_API_KEY اولویت دارد

Claude Code هرگز نمی‌پرسد که کدام اعتبارنامه را ترجیح می‌دهید. این ابزار منابع را با ترتیبی ثابت بررسی کرده و اولین موردی را که پیدا کند، انتخاب می‌کند. طبق مستندات اکتبر 2026، این ترتیب به شرح زیر است:

  1. اعتبارنامه‌های ارائه‌دهنده ابری، زمانی که CLAUDE_CODE_USE_BEDROCK، CLAUDE_CODE_USE_VERTEX یا CLAUDE_CODE_USE_FOUNDRY تنظیم شده باشند.
  2. ANTHROPIC_AUTH_TOKEN، که به عنوان هدر Authorization: Bearer ارسال می‌شود، برای درگاه‌هایی که با توکن‌های bearer احراز هویت می‌کنند.
  3. ANTHROPIC_API_KEY، که به عنوان هدر X-Api-Key ارسال می‌شود.
  4. خروجی یک اسکریپت apiKeyHelper که در فایل تنظیمات نام‌گذاری شده است.
  5. CLAUDE_CODE_OAUTH_TOKEN، توکن با عمر طولانی از claude setup-token.
  6. اعتبارنامه‌های پروفایل و فدراسیون Anthropic، همان اعتبارنامه‌هایی که CLI مربوط به ant و Workload Identity Federation استفاده می‌کنند.
  7. اعتبارنامه اشتراک که توسط /login نوشته شده است.

دو استثنا در این لیست وجود دارد. یک پروفایل در موقعیت 6 قرار می‌گیرد زمانی که آن را در ANTHROPIC_PROFILE نام‌گذاری کنید، زمانی که متغیرهای فدراسیون تنظیم شده باشند، یا زمانی که پروفایل فعال یک پروفایل Workload Identity Federation باشد. یک پروفایل فعال در حالت user_oauth، که نوعی از آن توسط ant auth login یا ورود بدون کلید به Console نوشته می‌شود، در رتبه‌ای پایین‌تر از یک اعتبارنامه فعال /login قرار می‌گیرد. و یک نشست درگاه برنامه‌های Claude که در آن وارد سیستم شده‌اید، کاملاً خارج از این لیست قرار دارد: این نشست از تمام موارد موجود در لیست، از جمله متغیرهای ارائه‌دهنده ابری، اولویت بالاتری دارد. هنگامی که تنظیمات مدیریت‌شده توسط مدیر سیستم، ورود به درگاه را الزامی می‌کند، Claude Code سایر منابع را نادیده گرفته و از شما می‌خواهد از طریق /login وارد شوید.

هیچ‌کدام از این استثناها اشتراک شما را از یک کلید export شده نجات نمی‌دهند. بدون درگاه، همه موارد از موقعیت 1 تا 5 بر حسابی که با آن وارد شده‌اید اولویت دارند، بنابراین یک ANTHROPIC_API_KEY که در هر جایی از محیط پردازش export شده باشد، برنده است و هزینه نشست به حساب یک سازمان در Console منظور می‌شود، در حالی که شما تصور می‌کنید از طرح اشتراک خود استفاده می‌کنید. هیچ چیزی خراب نیست. این ترتیب دقیقاً همان کاری را انجام می‌دهد که مستند شده است، و به همین دلیل است که هیچ هشداری دریافت نمی‌کنید.

دو جزئیات باعث می‌شود این موضوع به‌راحتی نادیده گرفته شود. در یک نشست تعاملی، Claude Code یک بار می‌پرسد که آیا از کلیدی که پیدا کرده استفاده کند یا خیر و پاسخ شما را به خاطر می‌سپارد، بنابراین انتخابی که یک ماه پیش انجام داده‌اید، همچنان امروز اعمال می‌شود. در حالت غیرتعاملی با -p، هیچ درخواستی وجود ندارد و کلید همیشه در صورت وجود استفاده می‌شود. -p حالتی است که یک cron job یا یک مرحله CI (یکپارچه‌سازی مداوم) در آن اجرا می‌شود، بنابراین یک job بدون نظارت دقیقاً جایی است که اعتبارنامه اشتباه برای طولانی‌ترین مدت بدون شناسایی باقی می‌ماند.

یک بررسی بصری سریع در داخل نشست وجود دارد. تا زمانی که ANTHROPIC_API_KEY تنظیم شده باشد، /config یک گزینه "Use custom API key" را نمایش می‌دهد. این گزینه فقط زمانی وجود دارد که متغیر تنظیم شده باشد، بنابراین عدم وجود آن به این معنی است که محیط پاک است.

یافتن کلید سرگردان روی سرور

یک کلید صادرشده (exported) در مکان‌هایی فراتر از پروفایل شل باقی می‌ماند:

  • ~/.bashrc، ~/.bash_profile، ~/.profile یا ~/.zshrc، که توسط هر شل ورود جدید خوانده می‌شوند.
  • یک unit در systemd، از طریق Environment= یا EnvironmentFile=، برای هر چیزی که به عنوان سرویس اجرا می‌کنید.
  • سرور tmux، که نسخه‌ای از محیطی که با آن شروع شده را نگه می‌دارد. پنجره‌ای (pane) که امروز باز می‌کنید می‌تواند متغیری را به ارث ببرد که هفته پیش از پروفایل خود حذف کرده‌اید، زیرا سرور از قبل از آن ویرایش در حال اجرا بوده است.
  • یک image کانتینر یا تعریف job در CI، که در آن متغیر خارج از هر فایلی که بتوانید از داخل شل بخوانید، تنظیم شده است.
  • بلوک env در فایل تنظیمات Claude Code، که یک کلید تنظیمات معمولی است و از اولویت‌بندی عادی تنظیمات پیروی می‌کند.

پیش از صرف هر هزینه دیگری، آن‌ها را بررسی کنید:

[ -n "$ANTHROPIC_API_KEY" ] && echo "ANTHROPIC_API_KEY is set" || echo "not set"
env | grep -E '^(ANTHROPIC_|CLAUDE_CODE_)' | cut -d= -f1
grep -n 'ANTHROPIC_API_KEY' ~/.bashrc ~/.bash_profile ~/.profile ~/.zshrc 2>/dev/null
tmux show-environment 2>/dev/null | grep ANTHROPIC
grep -n 'ANTHROPIC_API_KEY\|apiKeyHelper' ~/.claude/settings.json .claude/settings.json .claude/settings.local.json 2>/dev/null

دستور دوم عمداً خروجی را به cut پایپ می‌کند تا نام متغیرها را بدون چاپ مقادیر محرمانه روی صفحه‌ای که ممکن است در حال اشتراک‌گذاری یا ضبط آن باشید، نمایش دهد. دستور اول تکلیف را مشخص می‌کند: اگر بگوید متغیر تنظیم شده است، claude بعدی که از این شل شروع می‌کنید از آن کلید استفاده خواهد کرد. سکوت از هر پنج مورد به این معنی است که هیچ اعتبارنامه‌ای در محیط وجود ندارد، بنابراین نشست شروع‌شده در اینجا به اعتبارنامه /login شما بازمی‌گردد.

برای هر سرویسی که Claude Code را اجرا می‌کند، systemctl cat your-unit.service | grep -i environment را اضافه کنید، زیرا یک فایل unit محیط خاص خود را تنظیم می‌کند و هرگز پروفایل شل شما را نمی‌خواند.

تغییر نشست از یک اعتبارنامه به اعتبارنامه دیگر

برای بازگشت به اشتراک خود:

unset ANTHROPIC_API_KEY
[ -n "$ANTHROPIC_API_KEY" ] && echo "still set" || echo "clear"
claude

منتظر clear بمانید، سپس در نشست جدید /status را اجرا کنید و تأیید کنید که ردیف API key حذف شده است. حذف متغیر در shell شما تأثیری بر فرآیند در حال اجرای Claude Code ندارد، زیرا هر فرآیند محیطی را که با آن شروع شده است حفظ می‌کند. نشست را مجدداً راه‌اندازی کنید.

سپس دستور export را از فایلی که آن را تنظیم کرده است حذف کنید، در غیر این صورت shell ورود بعدی آن را بازمی‌گرداند. در داخل tmux، دستور tmux set-environment -u ANTHROPIC_API_KEY آن را برای پنل‌هایی که پس از آن لحظه در نشست باز می‌شوند پاک می‌کند، در حالی که پنل‌های از پیش باز شده کپی خود را حفظ می‌کنند.

برای تغییر در جهت دیگر، ANTHROPIC_API_KEY را در محیط تنظیم کنید، یا /login را اجرا کرده و حساب Console را انتخاب کنید. برای پاک کردن کامل یک ورود ذخیره‌شده، /logout را اجرا کنید. پس از ورود بدون کلید به Console، دستور /logout اعتبارنامه‌ای را که آن ورود ایجاد کرده است، حذف و ابطال می‌کند.

اگر /status همچنان با آنچه انتظار دارید مغایرت دارد، claude doctor را اجرا کنید. این دستور ورودی‌های تنظیماتی را که Claude Code رد کرده است فهرست می‌کند؛ این کار به شناسایی فایل تنظیماتی که در تجزیه (parse) شکست خورده و در نتیجه هرگز اعمال نشده است، کمک می‌کند.

احراز هویت در محیط‌های بدون مرورگر

claude setup-token همان جریان احراز هویت مرورگر را مانند /login باز می‌کند و یک توکن OAuth یک‌ساله را در ترمینال چاپ می‌کند.

claude setup-token

این توکن در هیچ کجا ذخیره نمی‌شود، بنابراین هنگام نمایش، آن را کپی کنید. آن را به عنوان CLAUDE_CODE_OAUTH_TOKEN روی ماشینی که به آن نیاز دارد تنظیم کنید. این توکن با اشتراک شما احراز هویت می‌شود، بنابراین به یک طرح Pro، Max، Team یا Enterprise نیاز دارد و فقط می‌تواند درخواست‌های مدل را انجام دهد. حالت Bare این توکن را نمی‌خواند، بنابراین اسکریپتی که --bare را ارسال می‌کند، به جای آن به ANTHROPIC_API_KEY یا یک apiKeyHelper نیاز دارد.

اولویت‌بندی در اینجا نیز مشکل‌ساز است. اگر CLAUDE_CODE_OAUTH_TOKEN در یک پروفایل شل قرار داشته باشد، اجرای /login نشست فعلی را به ورود جدید تغییر می‌دهد و هر نشست جدید تا زمانی که متغیر را حذف نکنید، دوباره آن را می‌خواند.

اگر سازمان شما استنتاج (inference) را از طریق Amazon Bedrock، Google Cloud یا Microsoft Foundry اجرا می‌کند، آن اعتبارنامه‌ها در بالاترین سطح اولویت قرار می‌گیرند و هیچ ورود به مرورگری انجام نمی‌شود. تنظیم این مورد یک کار جداگانه است که در اجرای Claude Code روی Bedrock یا Vertex پوشش داده شده است.

یک نشست طولانی‌مدت روی یک VPS (سرور مجازی خصوصی) جایی است که این مشکلات در آن متمرکز می‌شوند، زیرا شلی که آن را شروع کرده ممکن است ماه‌ها پیش پیکربندی شده باشد و از آن زمان هرگز ری‌استارت نشده باشد. اجرای Claude Code روی VPS داخل tmux جنبه‌های مربوط به نشست در آن تنظیمات را پوشش می‌دهد.

بررسی میزان مصرف واقعی هر اعتبارنامه

در ورود به سیستم اشتراکی، /usage نوارهای میزان استفاده از طرح و تفکیک مواردی که باعث مصرف آن‌ها شده است را نمایش می‌دهد. رقم دلاری در بلوک Session به‌صورت محلی و بر اساس تعداد توکن‌ها با قیمت لیست محاسبه می‌شود، بنابراین آن را به‌عنوان یک تخمین برای کاربران API در نظر بگیرید، نه به‌عنوان صورت‌حساب نهایی. مشترکین باید به نوارها توجه کنند، نه به مبالغ دلاری.

در مورد اعتبارنامه Console، اعدادی که اهمیت دارند در خود Console قرار دارند: صفحه usage برای هزینه‌ها و داشبورد Claude Code برای ارقام مربوط به هر عضو. هیچ چیزی که در ترمینال شما چاپ می‌شود، مرجع معتبری برای صورت‌حساب نیست.

اگر هنگام کار، نوارهای طرح هرگز تغییر نمی‌کنند، یک اعتبارنامه محیطی (environment credential) در اولویت قرار دارد. این نشانه، مطمئن‌ترین علامت برای این است که اعتبارنامه اشتباهی در حال استفاده است و ردیابی هزینه‌های یک نشست Claude Code جزئیات بیشتری در مورد اندازه‌گیری آن ارائه می‌دهد. زمانی که نوارها حرکت می‌کنند و سپس متوقف می‌شوند، به سقف طرح رسیده‌اید که نحوه عملکرد محدودیت‌های استفاده از Claude و پنجره‌های بازنشانی آن را توضیح می‌دهد.

حالت‌های شکست و موارد قابل بررسی

همه چیز کار می‌کند، اما میزان مصرف طرح (plan) شما تغییر نمی‌کند. یک اعتبارنامه محیطی (environment credential) در حال اعمال است. دستور /status یک ردیف API key را نشان می‌دهد و بررسی shell در بالا، متغیر مربوطه را نمایش می‌دهد.

درخواست‌ها با وجود فعال بودن اشتراک شما با شکست مواجه می‌شوند. کلیدی متعلق به یک سازمان غیرفعال یا منقضی‌شده در Console، اولویت بالاتری نسبت به ورود شما پیدا کرده است. دستور unset ANTHROPIC_API_KEY را اجرا کنید، یک نشست (session) جدید شروع کنید و دوباره /status را بررسی کنید. اگر خطا به یک کلید API نامعتبر اشاره دارد، رفع خطای کلید API نامعتبر در Claude Code این مورد را به‌طور کامل پوشش می‌دهد، از جمله اینکه چرا اجرای مجدد /login مشکل را برطرف نمی‌کند.

هشدار هنگام شروع برنامه مبنی بر انقضای ورود شما. نسخه‌های اخیر در صورتی که اعتبارنامه /login کمتر از سه روز تا انقضا داشته باشد، هشدار می‌دهند. پس از انقضای واقعی، /status ردیف ورود را در وضعیت منقضی‌شده به همراه سازمان و ایمیل ذخیره‌شده نشان می‌دهد. برای تمدید، /login را اجرا کنید. این هشدار هرگز مانع از ارسال درخواست نمی‌شود، به همین دلیل نادیده گرفتن آن تا زمانی که یک نشست بدون نظارت (unattended session) از کار بیفتد، آسان است.

یک apiKeyHelper که کند است یا با شکست مواجه می‌شود. Claude Code به‌طور پیش‌فرض helper را هر پنج دقیقه یک‌بار دوباره اجرا می‌کند (که با CLAUDE_CODE_API_KEY_HELPER_TTL_MS قابل تنظیم است) و اگر اجرای آن بیش از ده ثانیه طول بکشد، اعلانی در نوار اعلان (prompt bar) نمایش می‌دهد. helperای که هیچ کلیدی برنمی‌گرداند، چه به دلیل خطا و چه به دلیل اتمام زمان (timeout)، باعث شکست درخواست‌ها در کمتر از سه تلاش می‌شود.

اعتبارنامه درست، سازمان اشتباه. یک آدرس ایمیل می‌تواند متعلق به دو سازمان باشد. دستور /status نام سازمانی که در آن احراز هویت شده‌اید را ذکر می‌کند؛ بنابراین به‌جای فرض کردن اینکه در کدام سازمان هستید، آن خط را بخوانید.

FAQ

چگونه بفهمم Claude Code در حال حاضر از کدام حساب استفاده می‌کند؟

در نشست جاری دستور /status را اجرا کنید. زبانه Status ردیف Login method را برای حسابی که با آن وارد شده‌اید نشان می‌دهد و در صورتی که یک API key اعتبارنامه را تأمین کند، ردیف API key را اضافه می‌کند. هنگامی که یک پروفایل Anthropic یا اعتبارنامه فدراسیون انتخاب شده باشد، ردیف Profile جایگزین ردیف ورود می‌شود. خارج از نشست، بررسی اینکه آیا ANTHROPIC_API_KEY در shell شما تنظیم شده است یا خیر، مشخص می‌کند که آیا اعتبارنامه‌ای در سطح محیط (environment) وجود دارد که اولویت بالاتری نسبت به ورود شما داشته باشد یا خیر.

چرا اشتراک Claude Pro یا Max من نادیده گرفته می‌شود؟

زیرا یک اعتبارنامه در سطح محیط (environment) اولویت بالاتری دارد. Claude Code اعتبارنامه‌ها را به ترتیب ثابتی جستجو می‌کند و اعتبارنامه اشتراک /login پایین‌تر از متغیرهای ارائه‌دهنده ابری، ANTHROPIC_AUTH_TOKEN، ANTHROPIC_API_KEY، apiKeyHelper، CLAUDE_CODE_OAUTH_TOKEN و هر پروفایل Anthropic یا اعتبارنامه فدراسیونی که با ANTHROPIC_PROFILE یا متغیرهای فدراسیون انتخاب کرده‌اید، قرار می‌گیرد. تنها یک پروفایل فعال در حالت user_oauth اولویت پایین‌تری از آن دارد و یک نشست دروازه (gateway) برنامه‌های Claude که با آن وارد شده‌اید، بر کل این لیست مقدم است. دستور unset ANTHROPIC_API_KEY را اجرا کنید، یک نشست جدید شروع کنید و با /status تأیید نمایید. سپس export مربوطه را از پروفایل shell، واحد systemd، محیط tmux یا تعریف container که آن را تنظیم کرده است حذف کنید، در غیر این صورت با ورود بعدی به shell دوباره ظاهر می‌شود.

آیا می‌توانم از Claude Code با یک حساب رایگان Claude استفاده کنم؟

خیر. انواع حساب‌هایی که Anthropic برای ورود فهرست می‌کند عبارتند از: اشتراک Pro یا Max، جایگاه Claude for Teams یا Enterprise، حساب Claude Console، ارائه‌دهنده ابری و دروازه ابری (Cloud gateway) که یک دروازه برنامه‌های Claude خود-میزبانی‌شده (self-hosted) است و با SSO سازمانی از طریق /login به آن وارد می‌شوید. حساب رایگان claude.ai جزو این موارد نیست، بنابراین اعتبارنامه اشتراکی برای ذخیره کردن وجود ندارد. جایگزین پولی برای اشتراک، یک سازمان در Claude Console با اعتبار API است که به ازای هر توکن صورت‌حساب صادر می‌شود و حتی در صورتی که از همان آدرس ایمیل استفاده کند، یک حساب جداگانه محسوب می‌شود.

آیا حساب claude.ai و حساب Console من موجودی مشترکی دارند؟

خیر. این‌ها حساب‌های جداگانه‌ای با صورت‌حساب‌های مجزا هستند، حتی اگر هر دو از یک آدرس ایمیل استفاده کنند. استفاده از اشتراک از سهمیه طرح شما کسر می‌شود که با Claude در وب مشترک است و در یک بازه زمانی متغیر 5 ساعته و یک بازه هفتگی بازنشانی می‌شود. استفاده از Console به ازای هر توکن برای سازمان محاسبه شده و در صفحه استفاده (usage) در Console نمایش داده می‌شود. افزودن اعتبار به یکی، تأثیری بر دیگری ندارد.

چگونه Claude Code را روی یک سرور بدون رابط کاربری (headless) احراز هویت کنم؟

دو گزینه وجود دارد. دستور claude را از طریق SSH اجرا کنید و ورود در مرورگر را روی دستگاه خود به پایان برسانید: کلید c را فشار دهید تا URL کپی شود، در آنجا وارد شوید و اگر مرورگر به جای هدایت خودکار، کدی را نمایش داد، آن را در ترمینال وارد کنید. یا دستور claude setup-token را روی دستگاهی که مرورگر دارد اجرا کنید، توکن یک‌ساله چاپ‌شده را کپی کرده و آن را به عنوان CLAUDE_CODE_OAUTH_TOKEN روی سرور تنظیم کنید. آن توکن به طرح Pro، Max، Team یا Enterprise نیاز دارد و فقط می‌تواند درخواست‌های مدل ایجاد کند، بنابراین اسکریپتی که از --bare استفاده می‌کند، به یک API key یا یک apiKeyHelper نیاز دارد.