کلود کد (Claude Code) یکی از محبوبترین ابزارهای عامل (Agent) برای کدنویسی است. روش متداول، لاگین مستقیم با حساب Anthropic است؛ اما با اتصال آن به یک درگاه مانند آشا، کنترل بیشتری روی هزینه، پایداری و مدلها به دست میآورید. در این راهنما یاد میگیرید کلود کد را طوری وصل کنید که همهٔ درخواستها از API آشا، با کلید خودتان و بهصورت روشن و قابل ردیابی رد شوند.
چرا کلود کد را به آشا وصل کنیم؟
وقتی کلود کد مستقیماً به یک ارائهدهنده وصل است، قطعی یا محدودیت ترافیک آن ارائهدهنده به معنی توقف کار شماست. اتصال از طریق درگاه سه مزیت اصلی دارد:
- پایداری با جابهجایی خودکار (Failover): اگر یک ارائهدهنده قطع یا پرترافیک باشد، آشا درخواست را به ارائهدهندهٔ دیگری هدایت میکند و نشست کدنویسی شما قطع نمیشود.
- کنترل هزینهٔ تیم: سقف هزینه تعیین کنید، اعتبار را بین اعضای تیم تقسیم کنید و از پرش هزینهٔ ناگهانی جلوگیری کنید؛ همه در کیف پول به تومان خودتان.
- شفافیت مصرف: گزارش لحظهای از اینکه کدام مدل، روی کدام پروژه و توسط کدام عضو تیم مصرف شده؛ همه قابل مشاهده در داشبورد فعالیت.
یادتان باشد: آشا با API سازگار با Anthropic کار میکند؛ یعنی کلود کد بهصورت بومی با آن صحبت میکند و به هیچ پروکسی محلی نیازی نیست.
گام ۱ — نصب کلود کد
اگر هنوز نسخهٔ رسمی را نصب نکردهاید، با یکی از دو دستور زیر نصب کنید:
curl -fsSL https://claude.ai/install.sh | bash
irm https://claude.ai/install.ps1 | iex
گام ۲ — اتصال به آشا با متغیرهای محیطی
بهجای لاگین مستقیم با Anthropic، کلود کد را با چهار متغیر محیطی به API آشا وصل میکنیم. در macOS و Linux این متغیرها را به فایل پوستهٔ خود اضافه کنید (~/.bashrc، ~/.zshrc یا ~/.config/fish/config.fish)؛ در ویندوز با [Environment]::SetEnvironmentVariable آنها را بهصورت پایدار (persistent) ثبت کنید تا برای همهٔ ترمینالهای بعدی معتبر باشند.
macOS · Linux · WSL — به فایل پوسته اضافه کنید (~/.zshrc):
export ASHA_API_KEY="sk-asha-your-key"
export ANTHROPIC_BASE_URL="https://app.asha-ai.ir"
export ANTHROPIC_API_KEY="$ASHA_API_KEY"
export ANTHROPIC_AUTH_TOKEN="" # مهم: باید صریحاً خالی باشد
export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1
export CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT=1
Windows PowerShell — این دستورها را یکبار اجرا کنید تا متغیرها بهصورت پایدار (persistent) در سطح کاربر ثبت شوند:
[Environment]::SetEnvironmentVariable("ASHA_API_KEY", "sk-asha-your-key", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_BASE_URL", "https://app.asha-ai.ir", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "sk-asha-your-key", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "", "User")
[Environment]::SetEnvironmentVariable("CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY", "1", "User")
[Environment]::SetEnvironmentVariable("CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT", "1", "User")
نکتهٔ بسیار مهم — راهاندازی مجدد: بعد از تغییر تنظیمات، حتماً برنامه را دوباره راهاندازی کنید. اگر از رابط فرمان (CLI) کلود کد استفاده میکنید، یک پنجرهٔ PowerShell جدید باز کنید — متغیرهای محیطی جدید در پنجرههای از قبل باز شده بارگذاری نمیشوند. اگر از افزونهٔ Claude Code در VSCode استفاده میکنید، همهٔ پنجرههای VSCode را کاملاً بسته و سپس دوباره اجرا کنید تا تغییرات اعمال شوند.
ترتیب متغیرها مهم است. مقدار $ASHA_API_KEY در لحظهٔ خواندن فایل جایگذاری میشود؛ اگر کلید بعداً تعریف شده باشد یا از یک ابزار مدیریت اسرار تزریق شود، مقدار خالی میماند و همهٔ درخواستها با خطای احراز هویت رد میشوند. در ویندوز، متغیرها را بعد از ثبت، در یک ترمینال جدید (یا همان جلسه) با claude /status بررسی کنید؛ اگر برنامهٔ فعلی باز است، آن را بستن و یکبار دیگر اجرا کنید تا متغیرهای پایدار بارگیری شوند.
بهداشت کلید: قرار دادن کلید بهصورت متنی در فایل پوسته یا در دستورهای PowerShell، ریسک انتشار تصادفی در یک مخزن dotfiles یا تاریخچهٔ ترمینال را دارد. در macOS میتوانید از Keychain تانک بزنید: export ASHA_API_KEY="$(security find-generic-password -s asha -w)". و اگر کلیدی درز کرد، فوراً آن را در پنل بچرخانید.
گام ۳ — پاککردن لاگین قبلی
اگر پیش از این با حساب Anthropic وارد کلود کد شدهاید، یکبار /logout بزنید تا نشست قدیمی حذف شود. همزمانیِ لاگین ذخیرهشده و ANTHROPIC_API_KEY باعث هشدار تداخل و خطاهای عجیب «مدل پیدا نشد» میشود.
/logout
اگر هرگز با Anthropic وارد نشدهاید، این گام را نادیده بگیرید.
گام ۴ — شروع نشست
به پوشهٔ پروژهٔ خود بروید و کلود کد را اجرا کنید:
cd /path/to/your/project
claude
به همین سادگی. از این لحظه هر دستوری بدهید، از طریق آشا به مدل انتخابی شما میرود و هزینهاش در کیف پول شما ثبت میشود.
گام ۵ — بررسی اتصال
برای اطمینان، دستور /status را داخل کلود کد اجرا کنید:
Auth token: ANTHROPIC_API_KEY
Anthropic base URL: https://app.asha-ai.ir
همچنین میتوانید داشبورد فعالیت آشا را بررسی کنید تا درخواستها را در همان لحظه ببینید.
انتخاب مدل برای هر نقش
کلود کد با چند متغیر محیطی تعیین میکند هر کار با کدام مدل انجام شود. رایجترین آنها اینهاست. مقادیر را مثل گام ۲، در macOS/Linux به فایل پوسته و در ویندوز با [Environment]::SetEnvironmentVariable بهصورت پایدار ثبت کنید:
export ANTHROPIC_DEFAULT_SONNET_MODEL="~anthropic/claude-sonnet-latest"
export ANTHROPIC_DEFAULT_OPUS_MODEL="~anthropic/claude-opus-latest"
export CLAUDE_CODE_SUBAGENT_MODEL="~anthropic/claude-opus-latest"
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_SONNET_MODEL", "~anthropic/claude-sonnet-latest", "User")
[Environment]::SetEnvironmentVariable("ANTHROPIC_DEFAULT_OPUS_MODEL", "~anthropic/claude-opus-latest", "User")
[Environment]::SetEnvironmentVariable("CLAUDE_CODE_SUBAGENT_MODEL", "~anthropic/claude-opus-latest", "User")
ANTHROPIC_DEFAULT_SONNET_MODEL— برای کارهای کدنویسی عمومی.ANTHROPIC_DEFAULT_OPUS_MODEL— برای استدلال پیچیدهتر.CLAUDE_CODE_SUBAGENT_MODEL— برای وظایفی که سابایجنتها انجام میدهند.
متغیر CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 که در گام ۲ گذاشتیم، انتخابگر مدل را در داخل کلود کد فعال میکند تا بتوانید از لیست، مدل را عوض کنید. بعد از تغییر این متغیرها، کلود کد را دوباره راهاندازی کنید.
رفع اشکال متداول
خطای «مدل پیدا نشد» برای مدلهای درگاه
رایجترین علت، یک لاگین قدیمی Anthropic است. ابتدا /logout بزنید و کلود کد را تازه اجرا کنید. اگر باز هم ادامه داشت، مطمئن شوید ANTHROPIC_AUTH_TOKEN="" در فایل پوسته هست و نه undefined؛ اگر خالی نباشد، کلود کد بهسمت خود Anthropic برمیگردد و مدلهای آشا را نمییابد.
هشدار «is not a model this version of Claude Code recognizes»
کلود کد مدلهای درگاه (مانند ~anthropic/claude-sonnet-latest) را در فهرست داخلی خود نمیشناسد و یک هشدار در بارهٔ context window نشان میدهد. این متغیر CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT=1 (که در گام ۲ تعریف کردیم) هشدار را خاموش میکند؛ نشست بهصورت عادی کار میکند.
خطای احراز هویت
مطمئن شوید کلید آشا معتبر است و ANTHROPIC_AUTH_TOKEN دقیقاً خالی (رشتهٔ تهی) است. با /status بررسی کنید که توکن از متغیر ANTHROPIC_API_KEY آمده و Base URL به آشا اشاره میکند. در ویندوز [Environment]::GetEnvironmentVariable("ANTHROPIC_AUTH_TOKEN", "User") را صدا کنید تا مقدار واقعی را با ترمینال بررسی کنید.
خطای طول context
اگر به سقف حافظه برخوردید، کار را به بخشهای کوچکتر بشکنید یا نشست تازهای شروع کنید.
جمعبندی
با این پنج گام، کلود کد شما به آشا وصل شد: پایداری بهتر، کنترل هزینه برای تیم و صورتحساب شفاف به تومان؛ همه با یک کلید. برای انتخاب مدلها و مقایسهٔ قیمتها، به صفحهٔ مدلهای آشا سر بزنید.