# ccam وأدوات تبديل حسابات Claude Code الأخرى

> كيف يقارَن ccam بأدوات claude-swap وCCS وclausona وclauth وCAAM وcux وغيرها لتبديل حسابات Claude Code، وأي طريقة تناسب أي استخدام.

Source: https://ccam.dev/ar/compare/account-switchers/ · Updated 2026-10-20

تتبع أدوات تبديل حسابات Claude Code إحدى طريقتين. معظمها يبدّل تسجيل الدخول داخل مجلد `~/.claude` الوحيد، فيكون حساب واحد نشطًا في كل مرة. وأخرى، ومنها ccam، تمنح كل حساب مجلده الخاص باستخدام `CLAUDE_CONFIG_DIR`، فيبقى كل حساب مسجّل الدخول ويمكن تشغيل عدة حسابات في آن واحد. ويضيف ccam مشاركة الإعدادات وخوادم MCP، ويتابع المحادثة في مجلد حساب آخر.

## تبديل تسجيل دخول واحد أم مجلدات منفصلة؟

**تبديل تسجيل الدخول** يُبقي مجموعة واحدة من الإعدادات وخوادم MCP والسجل، لأن هناك مجلدًا واحدًا فقط. التبديل سريع، ويمكن لجلسة قيد التشغيل أن تلتقط تسجيل الدخول الجديد. لكن حسابًا واحدًا فقط يكون نشطًا في كل مرة، لكل الطرفيات والمحررات معًا.

وللتبديل، تحتفظ الأداة بنسخة من تسجيل دخول كل حساب آخر وتكتبها في مكانه. ويستبدل Claude Code رمز التحديث (refresh token) في تسجيل الدخول كلما جدّده، لذا يجب أن تبقى كل نسخة محفوظة متوافقة مع الجلسات الجارية. والحسابات التي يُسجَّل خروجها أو تحتاج إلى `/login` من جديد بعد التبديل من أكثر المشكلات التي تصلحها هذه المشاريع.

**المجلدات المنفصلة** هي الطريقة التي [يصفها توثيق Claude Code](https://code.claude.com/docs/en/authentication#log-in-with-multiple-accounts). يبقى كل حساب مسجّل الدخول، ويمكنك تشغيل جلسة للعمل وأخرى شخصية جنبًا إلى جنب. ويبقى كل تسجيل دخول في مجلده، حيث يجدّده Claude Code كالمعتاد. والثمن أن كل مجلد يبدأ بإعداداته وخوادم MCP وسجله الخاصة، ما لم تشاركها أداة ما.

## مقارنة الأدوات

مأخوذة من توثيق كل مشروع وشيفرته المصدرية بتاريخ 2026-10-20 (clausona: v0.12.0-beta). تعني "غير موثّق" أن المشروع لا يذكر ذلك، لا أن الميزة غير موجودة.

| الأداة | الطريقة | عدة حسابات في آن واحد | استخدام الخمس ساعات والأسبوع | عند بلوغ الحد | الأنظمة |
| --- | --- | --- | --- | --- | --- |
| ccam | مجلدات منفصلة | نعم | نعم، `ccam usage` | تشغّل `ccam next --auto --continue` لمتابعة المحادثة في الحساب الذي لديه أكبر هامش؛ ويعيد `ccam --fallback` تشغيل مهام `-p` هناك بنفسه، ويوزّع `ccam pick` العمّال على الحسابات | Linux، macOS، Windows |
| [claude-swap](https://github.com/realiti4/claude-swap) | يبدّل تسجيل الدخول؛ مجلدات منفصلة مع `cswap run` | نعم، مع `cswap run` | نعم | يبدّل `cswap auto` تسجيل الدخول عند عتبة معيّنة؛ وتستمر الجلسة الجارية | Linux، macOS، Windows |
| [CCS](https://github.com/kaitranntt/ccs) | مجلدات منفصلة | نعم | جزئيًا | تمرّر مجموعات الحسابات الطلبات إلى الحساب التالي عبر وكيل (proxy) محلي | Linux، macOS، Windows |
| [clausona](https://github.com/larcane97/clausona) | مجلدات منفصلة | نعم | نعم | تختار المسارات (routes) حسابًا لديه حصة قبل كل تشغيل، ويمكنها انتظار إعادة الضبط، وتعطي العمّال حسابات مختلفة | Linux، macOS، Windows |
| [clauth](https://github.com/uwuclxdy/clauth) | يبدّل تسجيل الدخول؛ مجلدات منفصلة مع `clauth start` | نعم، مع `clauth start` | نعم | ينتقل عبر سلسلة حسابات احتياطية | Linux، macOS، Windows |
| [CAAM](https://github.com/Dicklesworthstone/coding_agent_account_manager) | يبدّل تسجيل الدخول، أو ملفات تعريف معزولة | نعم، مع ملفات التعريف المعزولة | نعم | يعيد `caam run` محاولة الأوامر غير التفاعلية على حساب آخر | Linux، macOS، Windows |
| [cux](https://github.com/inulute/cux) | يبدّل تسجيل الدخول ويغلّف `claude` | لا، حساب نشط واحد | نعم | يبدّل تسجيل الدخول ويستأنف المحادثة نفسها | Linux، macOS، Windows |
| [CCSwitcher](https://github.com/XueshiQiao/CCSwitcher) | يبدّل تسجيل الدخول | لا | نعم | تبديل اختياري عند عتبة معيّنة | macOS |
| [Claude Switcher](https://github.com/Symbioose/claude-account-switcher) | يبدّل تسجيل الدخول | لا | نعم | تبديل اختياري عند 100% | macOS |

ccswap نسخة متفرعة (fork) من claude-swap تدير أيضًا تسجيلات الدخول إلى Codex. وتمنح [claude-account](https://github.com/hamzarehmandeveloper/claude-account) و[claude-multiprofile](https://github.com/jmdarre-v/claude-multiprofile) و[claude-code-profiles](https://github.com/quinnjr/claude-code-profiles) أيضًا كل حساب مجلده الخاص. وكثير من هذه الأدوات يتعامل كذلك مع وكلاء برمجة آخرين، مثل Codex أو Gemini.

## كيف بُنيت

| الأداة | لغة البرمجة | أثناء عمل Claude Code | ينسخ تسجيلات الدخول بين الأماكن | ما يمكن للحسابات مشاركته |
| --- | --- | --- | --- | --- |
| ccam | Go، ملف تنفيذي ثابت واحد | لا شيء: يستبدل ccam نفسه بـ `claude` (وعلى Windows، الذي لا يتيح ذلك، ينتظره) | لا | كل عنصر على حدة: محلي أو مجموعة مسمّاة، لكل حساب |
| claude-swap | Python 3.12 أو أحدث، يُثبَّت عبر uv أو pipx | لا شيء مع `cswap run`؛ ويبقى `cswap auto` وتطبيق شريط القوائم قيد التشغيل | نعم، عندما يبدّل تسجيل الدخول | مع `cswap run`: الإعدادات و`CLAUDE.md` والإضافات معًا، والسجل اختياري؛ وتُنسخ خوادم MCP عند كل تشغيل |
| CCS | Node.js 18 أو أحدث، أو Bun | يبقى CCS العملية الأم؛ وتضيف مجموعات الحسابات وكيلًا محليًا | لا لمجلدات حساباته؛ ومجموعات الحسابات تحتفظ بتسجيلات دخولها الخاصة | مشترك أو محلي لكل حساب، والسجل في مجموعات سياق؛ وتُنسخ خوادم MCP |
| clausona | TypeScript، Node.js 20 أو أحدث | يعمل `claude` العادي عبر دالة في الصدفة؛ ويُبقي `clausona run` عملية Node أمًّا؛ وتعمل عملية Node في الخلفية بعد كل خروج | لا، لكنه يجدّد بنفسه رموز الحسابات الخاملة ليقرأ استخدامها | كل شيء ما عدا الملفات الخاصة بكل حساب، من حساب أساسي واحد؛ والسجل اختياري؛ ولا تُشارَك الخوادم المضافة عبر `claude mcp add` |
| clauth | Rust | يبقى clauth العملية الأم | نعم، عندما يبدّل تسجيل الدخول | كل `~/.claude`، أو لا شيء |
| CAAM | Go | يعتمد على الوضع؛ مع خدمة خلفية (daemon) اختيارية | نعم، في وضع الخزنة (vault) | يحدده الوضع؛ وتُنسخ خوادم MCP عند كل تشغيل |
| cux | Go | يبقى غلاف حول `claude` | نعم | كل شيء: مجلد واحد |
| CCSwitcher، Claude Switcher | تطبيقات macOS (Swift، Python) | تطبيق شريط القوائم | نعم | كل شيء: مجلد واحد |

## ما يتقنه ccam

### تبقى تسجيلات الدخول حيث وضعها Claude Code

لا ينسخ ccam أبدًا تسجيل دخول Claude من مكان إلى آخر. يبقى تسجيل دخول كل حساب في مجلده، أو على macOS في عنصر سلسلة المفاتيح الخاص بذلك المجلد، وClaude Code هو البرنامج الذي يجدّده. فلا توجد نسخة محفوظة قد تفقد توافقها. ومجلد `~/.claude` الموجود الذي يُسجَّل باستخدام `ccam import` يحتفظ بعنصر سلسلة المفاتيح الذي يستخدمه `claude` العادي، فيبقى مسجّل الدخول في الحالتين.

لا يجدّد ccam رمزًا منتهيًا بنفسه إلا عندما تشغّل `ccam usage --refresh`. فهو يأخذ قفلًا أولًا ويرفض التجديد ما دام ذلك الحساب قيد التشغيل، فلا يبدّل رمزًا تحت جلسة حية أبدًا.

### لا شيء يعمل بينك وبين Claude Code

يقرأ ccam ملفًا واحدًا، ويتحقق من روابطه، ثم يستبدل نفسه بـ `claude` (`exec`). وأثناء عملك لا توجد عملية لـ ccam ولا غلاف ولا وكيل ولا خدمة خلفية: فالإدخال القياسي والإشارات ورمز الخروج كلها لـ Claude Code، وتذهب طلباته مباشرة إلى Anthropic. لا يستطيع Windows استبدال عملية، لذا يشغّل ccam هناك Claude Code بوحدة التحكم نفسها وينتظر رمز خروجه، دون أن يفعل أي شيء آخر.

يضيف تشغيل حساب بهذه الطريقة نحو 4 ms، وأقل من 6 ms عند المئين 95، مع ذروة ذاكرة قدرها 8 MB ([`scripts/perf-check.sh`](https://github.com/jhyunwoo/ccam/blob/main/scripts/perf-check.sh) باستخدام hyperfine، 300 تشغيل). وعلى الحاسوب المحمول نفسه، يستغرق بدء مفسّر Python وحده 13 ms وNode.js 31 ms، قبل أن يفعل أي برنامج شيئًا.

### المشاركة عنصرًا عنصرًا وحسابًا حسابًا

خوادم MCP و`settings.json` و`CLAUDE.md` والإضافات (الوكلاء والأوامر والمهارات والمكوّنات الإضافية) وسجل المحادثات خمسة عناصر منفصلة. ويضبط كل حساب كل عنصر على `local` أو على مجموعة، فيمكن لحسابي عمل أن يتشاركا السجل في مجموعة `work` بينما يحتفظ حساب شخصي بسجله الخاص، وتتشارك الحسابات الثلاثة خوادم MCP نفسها.

- تُمرَّر خوادم MCP باستخدام `--mcp-config` عند التشغيل، لذا لا يعدّل ccam افتراضيًا أبدًا `.claude.json`، الملف الذي يعيد Claude Code كتابته أثناء عمله. ويضيف `ccam mcp add` خادمًا مرة واحدة للمجموعة كلها.
- العناصر الأخرى روابط إلى مجلد المجموعة، فيظهر أي تغيير في حساب واحد في الحسابات الأخرى فورًا. ولا يُنسخ شيء عند التشغيل.
- لا تُشارَك أبدًا تسجيلات الدخول ولا `.claude.json` ولا حالة التشغيل.

### كل تغيير يُعرض أولًا ويُنسخ احتياطيًا

يطبع `ccam share` و`ccam migrate` خطة ويسألان قبل نقل أي شيء. وعندما يختلف ملف بين حساب ومجموعته، تختار أنت: الإبقاء على نسخة المجموعة، أو استخدام نسختك، أو دمج JSON. وتذهب الملفات الأصلية إلى `.ccam-backup/<time>/`، ويذهب مجلد الحساب المحذوف إلى مجلد سلة المهملات، وتُستبدل الملفات بعملية إعادة تسمية واحدة، فالكتابة المقطوعة تترك الملف القديم كما هو. ويعرض `--dry-run` ما سيفعله التشغيل والمشاركة والترحيل والاختصارات والتحديثات والإصلاحات. ويصلح `ccam doctor --fix` الروابط والأذونات المعطوبة.

### المحادثة نفسها في الحساب التالي

مع السجل المشترك، يسأل `ccam next --auto --continue` جميع الحسابات عن استخدامها في آن واحد، ويفتح الحساب الذي لديه أكبر هامش ويتابع المحادثة. أنت من يقرر متى تبدّل؛ فـ ccam لا يراقب استخدامك في الخلفية. ويقترح سطر الحالة هذا الأمر بمجرد أن يبلغ حساب 90%.

لا تستطيع السكربتات انتظارك، لذا يبدّل `ccam --fallback work -p "…"` نيابةً عنها: عندما يبلغ الحساب حده، يُشغَّل الأمر نفسه مجددًا بالحساب الذي لديه أكبر هامش، ولا يُطبع إلا مخرج التشغيل الذي اكتمل. أما الفشل الذي لا يعود إلى حد الاستخدام فيُمرَّر كما هو. وللعمّال المتوازيين، يعطي `ccam pick` كل واحد منهم حسابًا مختلفًا لديه هامش، ويخرج الأمران بالرمز 75 عندما لا يتبقى لأي حساب هامش.

### الحساب المناسب في كل مجلد

يجعل `ccam folder work ~/code/company` كل تشغيل دون اسم حساب داخل ذلك المجلد يستخدم `work`، بينما تبقى بقية مشاريعك على الحساب الافتراضي. ويُحفظ هذا الإعداد في ملف `config.toml` نفسه الذي يقرؤه كل تشغيل، فلا يكلّف أي وقت.

### ملف تنفيذي واحد وتنزيلات متحقَّق منها

ccam ملف تنفيذي ثابت بحجم 10 MB تقريبًا، دون بيئة تشغيل يلزم تثبيتها، لأنظمة Linux وmacOS وWindows. ويتحقق سكربتا التثبيت (`install.sh` و`install.ps1`) و`ccam update` من كل تنزيل مقابل مجاميع SHA-256 الخاصة بالإصدار، ولا يبحث ccam عن تحديثات من تلقاء نفسه أبدًا. ولا يجمع أي بيانات قياس عن بُعد (telemetry): فالطلبات الوحيدة التي يرسلها هي استعلامات الاستخدام إلى Anthropic لحساباتك، بالتوازي مع مهلة 3 ثوانٍ وذاكرة مؤقتة لمدة 60 ثانية، والتنزيلات التي تطلبها.

## أين تقدّم الأدوات الأخرى أكثر

- تستطيع claude-swap وclauth وcux وCAAM وCCSwitcher تبديل جلسة تفاعلية قيد التشغيل من تلقاء نفسها عندما يتجاوز حساب عتبة استخدام. ويبدّل ccam تشغيلات `-p` باستخدام `--fallback` ويترك الجلسات التفاعلية لك.
- على Windows دون وضع المطور (Developer Mode)، يشارك ccam المجلدات لكنه لا يستطيع مشاركة الملفات المفردة مثل `settings.json`؛ أما claude-swap وCCS فتنسخانها هناك بدلًا من ذلك.
- تعرض CCSwitcher وClaude Switcher وclaude-swap الاستخدام في شريط القوائم على macOS.
- تدير CCS وclausona وCAAM وclauth وccswap وClaude Switcher أيضًا Codex ووكلاء برمجة آخرين.
- يشغّل clausona أيضًا الإضافات ويوقفها لكل حساب على حدة (أما `ccam ext` في ccam فيعرضها فقط)، ويتتبّع تكلفة الرموز (tokens) محليًا، ويأتي مع مكوّنات إضافية لـ Claude Code تشغّل أساطيل من العمّال في tmux وطرفيات أخرى.
- تُثبَّت CAAM وCCSwitcher وClaude Switcher عبر Homebrew، وتوقّع clauth وCAAM مجاميع التحقق لإصداراتهما. أما ccam فيُثبَّت عبر سكربته أو حزمة `.deb` أو `go install`، ويتحقق من المجاميع دون توقيع.

## أيها يناسبك؟

اختر أداة تبدّل تسجيل الدخول إذا كنت تستخدم حسابًا واحدًا في كل مرة أو تريد أن تُبدَّل الجلسات قيد التشغيل تلقائيًا. واختر ccam إذا أردت حسابات جنبًا إلى جنب، وإعدادًا مشتركًا واحدًا، والمحادثة نفسها في الحساب التالي، ولا شيء يعمل بجانب Claude Code، على Linux أو macOS أو Windows. وإذا لم تكن بحاجة إلى مشاركة أي شيء، فإن [الأسماء المستعارة البسيطة في الصدفة](https://ccam.dev/ar/compare/aliases.md) تكفي.

يعتمد السماح باستخدام عدة حسابات على شروط كل حساب. راجعها قبل أن تفعل ذلك.
