التوثيق
مشاركة خوادم MCP والإعدادات والسجل
تُرجمت هذه الصفحة آليًا من الإنجليزية. التصحيحات مرحب بها. عدّل هذه الصفحة على GitHub
في هذه الصفحة
يحتفظ كل حساب بتسجيل دخوله الخاص. أما كل ما عدا ذلك فيمكن مشاركته عنصرًا عنصرًا: يربط ccam ملف الحساب أو مجلده بمجلد مجموعة مشترك، فيظهر التغيير الذي يُجرى في حساب واحد في كل حسابات تلك المجموعة.
ما الذي يمكن مشاركته
| العنصر | الخيار | ما يُشارَك |
|---|---|---|
| خوادم MCP | --mcp |
ملف mcp.json الخاص بالمجموعة، ويُمرَّر إلى Claude Code عند التشغيل |
| الإعدادات | --settings |
settings.json: الأذونات والخطافات (hooks) والنموذج وسطر الحالة |
| الذاكرة العامة | --memory |
CLAUDE.md |
| الإضافات | --extensions |
agents/، commands/، skills/، plugins/، output-styles/، rules/ |
| سجل المحادثات | --history |
projects/ وhistory.jsonl |
تشارك الحسابات الجديدة كل شيء ما عدا سجل المحادثات.
ملفا تسجيل الدخول .credentials.json و.claude.json لا يُشارَكان أبدًا. لا يربط ccam إلا مسارات من قائمة ثابتة، وهذان الملفان ليسا فيها.
المجموعات
القيمة on تعني المجموعة default. ويمكنك أيضًا تحديد اسم، بحيث لا يشارك عنصرًا ما إلا بعض الحسابات:
ccam share work --history team
ccam share side --history teamأصبح work وside الآن يتشاركان المحادثات فيما بينهما، ولكن ليس مع حساباتك الأخرى.
تفعيل المشاركة
عندما يبدأ حساب بمشاركة عنصر ما، فإن ccam:
- يطبع خطة بكل ملف سينقله أو ينسخه أو يربطه، ويسألك قبل أن يبدأ؛
- ينقل ملفات الحساب إلى مجلد المجموعة إذا كانت المجموعة لا تزال فارغة، أو يضيف الملفات التي لا تملكها المجموعة بعد؛
- عندما يختلف الملف نفسه، يسألك هل تريد الاحتفاظ بنسخة المجموعة، أم استخدام نسختك، أم دمج JSON؛
- يحتفظ بملفك الأصلي في
.ccam-backup/<time>/داخل مجلد الحساب؛ - يستبدل الملف الأصلي برابط إلى المجموعة.
تُسمّى ملفات المحادثات باسم معرّف الجلسة، لذلك تُدمج السجلات القادمة من عدة حسابات دون تعارضات.
لا يغيّر ccam المشاركة ما دام Claude Code يعمل بالحساب، لأن الجلسة تظل تكتب في الملفات التي يجري نقلها. أنهِها أولًا.
إيقاف المشاركة
ccam share work --history offيُزال الرابط ويحصل الحساب على نسخته الخاصة من المحتوى الحالي للمجموعة. أضف --fresh لتبدأ فارغًا بدلًا من ذلك. وتحتفظ المجموعة بمحتواها للحسابات الأخرى.
نسخ إعداد موجود
إذا كنت قد استخدمت Claude Code قبل ccam، فإعداداتك موجودة في ~/.claude. ينسخها ccam migrate إلى مجموعة، فتحصل عليها كل الحسابات التي تشارك هذه العناصر:
ccam migrateفي الطرفية، يعرض ccam أولًا قائمة اختيار بالعناصر. كل شيء محدد ما عدا سجل المحادثات؛ اضغط مفتاح المسافة لتغيير عنصر وEnter لعرض الخطة. والعناصر التي لا يحتوي المجلد على شيء لها تُعلَّم بـ not found.
ما الذي ينسخه:
settings.jsonوملفCLAUDE.mdالعام؛- الإضافات
agents/وcommands/وskills/وplugins/وoutput-styles/وrules/؛ - خوادم MCP الخاصة بالمستخدم، أي المدخل
mcpServersفي~/.claude.json، إلى ملفmcp.jsonالخاص بالمجموعة؛ - تسجيلات الدخول المحفوظة (OAuth) لخوادم MCP التي ينسخها، إلى ملف تسجيل الدخول الخاص بكل حساب؛
- سجل المحادثات (
projects/وhistory.jsonl)، ولكن فقط عندما تضيف--history.
يُقرأ المجلد المصدر فقط: لا يُنقل أي شيء فيه ولا يُربط ولا يُغيَّر، ويستمر claude العادي في العمل كما كان. ولا تُنسخ ملفات تسجيل الدخول .credentials.json و.claude.json إلى المجموعة أبدًا.
خوادم MCP التي تسجّل الدخول عبر OAuth تحتفظ برموزها في تسجيل الدخول، لا في قائمة الخوادم. وكي لا تضطر إلى تسجيل الدخول إليها مرة أخرى، ينسخ ccam تسجيلات الدخول هذه إلى ملف تسجيل الدخول في كل حساب يحصل على الخوادم عبر المجموعة، ما لم يكن لدى الحساب تسجيلاته الخاصة. ويتخطى الحسابات التي تعمل حاليًا، أو التي لم تسجّل الدخول بعد، أو المسجلة في مكانها باستخدام ccam import، أو التي تحتفظ بتسجيل دخولها في سلسلة المفاتيح على macOS، ويذكر أسماءها؛ سجّل الدخول إلى الخوادم فيها باستخدام /mcp. والحساب الذي يبدأ مشاركة خوادم MCP لاحقًا يحصل على تسجيلات الدخول عندما تشغّل ccam migrate مرة أخرى.
يطبع ccam الخطة ويسألك قبل أن ينسخ أي شيء:
$ ccam migrate
Copy from /home/me/.claude into group default (/home/me/.local/share/ccam/groups/default):
mcp ~/.claude.json new: context7, fs
settings settings.json new: 80 B
memory CLAUDE.md new: 31 B
extensions agents/ add 1 file the group lacks (17 B)
commands/ add 1 file the group lacks (15 B)
skills/ add 1 file the group lacks (32 B)
not found, skipped: plugins/, output-styles/, rules/
Conversation history (projects/, history.jsonl) is not included; add --history to copy it.
Copy these into group default? [y/N] y
✓ Copied into group default: 2 MCP servers, settings.json, CLAUDE.md, agents/, commands/, skills/
Accounts that share these through group default:
mcp personal
settings personal
memory personal
extensions personalفي النهاية، يسرد ccam الحسابات التي تشارك كل عنصر عبر المجموعة. وإذا كانت هناك حسابات لا تشاركه، يطبع أوامر ccam share التي تفعّل المشاركة لها.
عندما تملك المجموعة نسخة مختلفة من ملف ما، يسألك ccam كما يفعل عند تفعيل المشاركة: الاحتفاظ بنسخة المجموعة أم استخدام نسختك. ويمكن أيضًا دمج settings.json وملفات JSON الأخرى، ودمج history.jsonl سطرًا بسطر. تُحفظ النسخ السابقة للمجموعة في .ccam-backup/<time>/ داخل مجلد المجموعة.
| الخيار | التأثير |
|---|---|
--settings، --memory، --extensions، --mcp، --history |
ينسخ العناصر التي تحددها فقط، دون قائمة الاختيار؛ ودونها وخارج الطرفية ينسخ كل شيء ما عدا سجل المحادثات |
-g، --group <group> |
ينسخ إلى هذه المجموعة بدلًا من default |
-y، --yes |
ينسخ دون سؤال؛ وعندما يختلف ملف، يحتفظ بنسخة المجموعة |
ضع --dry-run قبل الأمر، كما في ccam --dry-run migrate، لترى الخطة دون نسخ أي شيء. وللنسخ من مجلد آخر، حدّده: ccam migrate ~/.claude-work --group work.
خوادم MCP
يخزّن Claude Code خوادم MCP في .claude.json مع تسجيل الدخول، لذلك لا يمكن مشاركة هذا الملف. يحتفظ ccam بالخوادم المشتركة في ملف mcp.json الخاص بالمجموعة، ويشغّل Claude Code مع --mcp-config=<group>/mcp.json. وتظل خيارات --mcp-config الخاصة بك سارية فوق ذلك.
ccam mcp add fs -- npx -y @modelcontextprotocol/server-filesystem ~/code
ccam mcp listالخادم الذي تضيفه داخل جلسة باستخدام claude mcp add يُحفظ لذلك الحساب فقط. في المرة التالية التي تشغّل فيها ذلك الحساب، يذكر ccam اسم الخادم والأمر الذي ينقله إلى المجموعة:
ccam mcp import work ghإذا كان لدى المجموعة بالفعل خادم مختلف بهذا الاسم، يتخطّاه ccam ويخبرك بذلك. ويستبدل --force خادم المجموعة ويحتفظ بملف mcp.json القديم في مجلد .ccam-backup/ الخاص بالمجموعة.
خوادم MCP التي تسجّل الدخول عبر OAuth تخزّن رموزها مع تسجيل دخول الحساب، لذا امنحها التفويض مرة واحدة في كل حساب، أو انسخ تسجيلات الدخول من ~/.claude باستخدام ccam migrate.
إذا كنت تفضّل أن تظهر الخوادم في claude mcp list و/mcp كخوادم مستخدم عادية، فعيّن mcp_strategy = "sync" في ~/.config/ccam/config.toml. عندها يكتبها ccam في ملف .claude.json الخاص بكل حساب قبل التشغيل، مستخدمًا قفل الملف الخاص بـ Claude Code نفسه ومع نسخة احتياطية.
حسابان في المجلد نفسه
الحسابات التي تتشارك سجل المحادثات تكتب في الملفات نفسها. إذا شغّلت نسخة ثانية من Claude Code في مجلد يعمل فيه بالفعل حساب آخر من المجموعة نفسها، يحذّرك ccam ويسألك هل تريد المتابعة.
عندما يتعطل شيء ما
ccam doctor
ccam doctor --fixإذا تحوّل مسار مشترك إلى ملف عادي، مثلًا بعد أن استعدت نسخة احتياطية يدويًا، يتوقف ccam قبل تشغيل Claude Code ويوجّهك إلى ccam doctor --fix، الذي يدمج الملف في المجموعة ويحتفظ بنسخة احتياطية.