تشغيل عدة حسابات Claude Code على جهاز واحد
كيفية استخدام حسابين (أو أكثر) من Claude Code جنبًا إلى جنب — شخصي وحساب الشركة — بعزل كامل باستخدام متغيّر بيئة واحد.
أستخدم Claude Code يوميًا لمشاريعي الشخصية ولعملي في الشركة على حدٍّ سواء. المشكلة أن هذين حسابان مختلفان تمامًا، بجلسات OAuth مختلفة، وتعليمات CLAUDE.md مختلفة، وخوادم MCP مختلفة، وذاكرة مشاريع مختلفة. وإليك كيف أُشغّلهما جنبًا إلى جنب على جهاز واحد بسطر واحد من alias في الـ shell.
المشكلة
يُخزّن Claude Code كل شيء في ~/.claude افتراضيًا — رمز OAuth، وسجل المحادثات، وملف CLAUDE.md العام، وذاكرة المشاريع، وإعدادات خوادم MCP، والتفضيلات. وعندما يكون لديك حسابان، فأنت بحاجة إلى عالمين منفصلين تمامًا:
- الحساب الشخصي: اشتراك Max/Pro الخاص بك، وملف CLAUDE.md شخصي بتفضيلاتك، وخوادم MCP الخاصة بك (Obsidian، أدوات شخصية)
- حساب الشركة: خطة تديرها الشركة، وملف CLAUDE.md للعمل بتعليمات تكامل Jira/Slack، وخوادم MCP الخاصة بالشركة
- جلسات OAuth مختلفة: لا يمكنك تسجيل الدخول إلى حسابين في دليل الإعدادات نفسه
- ذاكرة مشاريع مختلفة: لا تريد أن يتسرّب سياق مشاريع العمل إلى الجلسات الشخصية والعكس صحيح
تسجيل الخروج ثم الدخول من جديد في كل مرة تُبدّل فيها السياق ليس خيارًا مطروحًا. فأنت تفقد حالة الجلسة، والأمر مُرهق ببساطة.
الحل: CLAUDE_CONFIG_DIR
يحترم Claude Code متغيّر بيئة واحدًا: CLAUDE_CONFIG_DIR. اضبطه على أي مسار، وسيستخدم Claude ذلك الدليل بدلًا من ~/.claude لكل شيء — المصادقة والسجل والإعدادات والذاكرة، كل ذلك. يستغرق الإعداد بأكمله 60 ثانية.
الخطوة 1: أنشئ دليل إعدادات ثانيًا
اختر اسمًا يناسب حالة استخدامك:
mkdir ~/.claude-workهذا كل شيء. سيملأ Claude الدليل بالبنية اللازمة عند أول تشغيل.
الخطوة 2: صادِق على الحساب الثاني
شغّل Claude مرة واحدة بدليل الإعدادات الجديد لتشغيل عملية تسجيل الدخول عبر OAuth:
CLAUDE_CONFIG_DIR=~/.claude-work claudeسيفتح هذا متصفحك. سجّل الدخول بحساب الشركة. يُخزَّن رمز OAuth في ~/.claude-work — منفصلًا تمامًا عن جلستك الشخصية في ~/.claude.
الخطوة 3: أضِف alias في الـ shell
أضِف هذا إلى إعدادات الـ shell لديك حتى لا تضطر إلى تذكّر المتغيّر:
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'أعِد تحميل الـ shell:
source ~/.zshrcما الذي تحصل عليه
الآن لديك بيئتان معزولتان تمامًا من Claude:
claude— يُشغَّل بحسابك الشخصي، وملف CLAUDE.md الشخصي، والذاكرة الشخصيةclaude-work— يُشغَّل بحساب الشركة، وملف CLAUDE.md الخاص بالعمل، وذاكرة منفصلة- سجل معزول: محادثات العمل تبقى في العمل، والشخصية تبقى شخصية
- خوادم MCP منفصلة: خادم MCP لـ Obsidian vault الشخصي لا يظهر في جلسات العمل
- إعدادات مستقلة: أدوات مسموح بها مختلفة، ومستويات أذونات مختلفة، وتفضيلات نماذج مختلفة لكل حساب
كيف يعمل من الداخل
دليل الإعدادات هو المصدر الوحيد للحقيقة بشأن حالة Claude Code. وإليك ما يوجد داخل كل واحد منها:
~/.claude/ ← personal account
├── CLAUDE.md ← personal global instructions
├── projects/ ← personal project memory
├── settings.json ← personal permissions & MCP servers
└── ... ← OAuth session, history, cache
~/.claude-work/ ← corporate account
├── CLAUDE.md ← company-specific instructions (Jira, Slack, etc.)
├── projects/ ← separate project memory
├── settings.json ← different MCP servers, permissions
└── ... ← separate OAuth sessionعندما تُشغّل claude-work، يقرأ Claude كل شيء من ~/.claude-work. وهو لا يدرك أصلًا وجود ~/.claude. النسختان مستقلتان تمامًا — بل يمكنك تشغيلهما في آنٍ واحد في علامتي تبويب مختلفتين في الطرفية.
التوسّع إلى N من الحسابات
يمتد هذا النمط إلى أي عدد من الحسابات. مستقل لديه عدة عملاء؟ أضِف المزيد من الـ aliases:
# Personal (default — no alias needed)
# Just run: claude
# Corporate
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'
# Freelance client
alias claude-client='CLAUDE_CONFIG_DIR=~/.claude-client claude'يحصل كل alias على دليل إعدادات خاص به، وجلسة OAuth خاصة به، وملف CLAUDE.md خاص به بتعليمات مخصّصة للعميل. يمكن أن يكون لديك ملف CLAUDE.md للعميل A يعرف أعراف قاعدة الكود ومشروع Jira الخاص به، وآخر مختلف تمامًا للعميل B.
نصائح عملية
- سمِّ أدلّتك بوضوح:
~/.claude-work،~/.claude-clientname— ستشكر نفسك عندما يصبح لديك ثلاثة أو أربعة منها - اكتب ملف CLAUDE.md مخصّصًا لكل واحد: يمكن أن يتضمّن ملف العمل تعليمات خاصة بالشركة (كيفية إنشاء تذاكر Jira، وقنوات Slack المرجعية، وإجراءات النشر). ويبقى ملفك الشخصي مقتضبًا.
- خوادم MCP مختلفة لكل حساب: اضبط أدوات العمل (Jira MCP، Slack MCP، وواجهات API الداخلية) في إعدادات العمل فقط. وأبقِ إعداداتك الشخصية نظيفة.
- تحقّق من الحساب النشط: شغّل
claude config listداخل جلسة إن كنت غير متأكد من الحساب الذي أنت فيه — فهو يعرض مسار دليل الإعدادات
أين يقصُر هذا الأسلوب
CLAUDE_CONFIG_DIR يعزل حسب الحساب، لا حسب المشروع. فداخل ملف تعريف واحد، يرى Claude كل خادم MCP سجّلته يومًا لذلك الحساب — عبر جميع مشاريعك. وللاستخدام الشخصي الفردي، يكون هذا مقبولًا عادةً. لكن ما إن يصبح لديك عدة مشاريع حرجة للإنتاج تحت حساب واحد، خصوصًا في مجالات متداخلة كالفوترة أو أدوات الإدارة أو البنية التحتية، حتى يظهر خطر ملموس عابر للمشاريع: قد يستدعي مساعد الذكاء الاصطناعي أداةً من المشروع A أثناء عمله على المشروع B، لا سيما عندما يكشف كلاهما عمليات متشابهة الأسماء.
نمط ملفات التعريف يجيب عن سؤال في أي حساب أنا؟. لكنه لا يجيب عن سؤال أدوات أي مشروع ينبغي أن تكون نشطة الآن؟. وللأعمال الأعلى مخاطرةً، أضِف طبقة عزل ثانية فوق التقسيم حسب الحساب:
- ملف تعريف واحد لكل مشروع حرج للإنتاج، لا لكل حساب فحسب: بدلًا من
~/.claudeو~/.claude-work، أنشئ~/.claude-work-billingو~/.claude-work-admin. يرى كل ملف تعريف خوادم MCP التي يحتاجها فعليًا فقط. - MCP على مستوى المشروع عبر
.mcp.json: ضع ملف.mcp.jsonفي جذر المشروع يسرد خوادم MCP الخاصة بذلك المشروع فقط. يلتقطها Claude عند تشغيله من ذلك الدليل. أبقِ إعداداتك العامة في حدّها الأدنى — أدوات عامة فقط (ملاحظات، بحث)، دون أي نقاط نهاية إنتاجية. - سمِّ خوادم MCP بلا لبس: تجنّب الأسماء العامة مثل
adminوbillingوmcp-server. أضِف بادئة باسم المشروع:acme_billing_prod،acme_admin_stage. الاسم الوصفي يفرض توقّفًا لحظة أن يوشك شيء أن يُستدعى من السياق الخطأ. - راجِع كل استدعاء لأداة MCP قبل الموافقة عليه: استدعاءات مثل
*_create_*و*_delete_*و*_charge_*تستحق نظرة ثانية متأنّية. فأي سرعة تكسبها من الموافقة التلقائية الشاملة تتبخّر في أول مرة تنطلق فيها أداة من المشروع الخطأ نحو الإنتاج.
القاعدة العامة: قسّم ملفات التعريف بجرأة، وأبقِ خوادم MCP الإنتاجية بعيدًا عن ملف التعريف الافتراضي، وعامِل تداخل أسماء الأدوات بين المشاريع بوصفه علامةً تستحق إعادة الهيكلة.
الخلاصة
متغيّر بيئة واحد. alias واحد. عزل كامل بين الحسابات. لا رقصة تسجيل خروج ودخول، ولا تعارضات في الإعدادات، ولا تسرّب للسياق. إنه من نوع الحلول البسيطة إلى حدٍّ يكاد يخيّب الظن — لكن هذا بالضبط ما يجعله جيدًا. اضبطه مرة واحدة ولا تفكّر فيه مجددًا أبدًا.