{
  "Language": {
    "followSystem": "اتباع النظام",
    "english": "الإنجليزية",
    "simplifiedChinese": "الصينية المبسطة",
    "traditionalChinese": "الصينية التقليدية",
    "japanese": "اليابانية",
    "korean": "الكورية",
    "spanish": "الإسبانية",
    "german": "الألمانية",
    "french": "الفرنسية",
    "portuguese": "البرتغالية",
    "arabic": "العربية"
  },
  "GitCredentialDialog": {
    "title": "المصادقة مطلوبة",
    "description": "يتطلب الخادم البعيد بيانات اعتماد. أدخل اسم المستخدم وكلمة المرور (أو رمز الوصول الشخصي).",
    "username": "اسم المستخدم",
    "usernamePlaceholder": "اسم المستخدم أو البريد الإلكتروني",
    "password": "كلمة المرور / الرمز",
    "passwordPlaceholder": "كلمة المرور أو رمز الوصول الشخصي",
    "passwordHint": "أدخل اسم المستخدم وكلمة المرور للخادم.",
    "cancel": "إلغاء",
    "authenticate": "مصادقة",
    "authenticating": "جارٍ المصادقة...",
    "invalidCredentials": "بيانات الاعتماد غير صالحة. يرجى المحاولة مرة أخرى.",
    "saveCredentials": "حفظ بيانات الاعتماد للعمليات المستقبلية",
    "githubTitle": "مصادقة GitHub",
    "githubDescription": "أدخل رمز وصول شخصي للاتصال بـ GitHub. سيتم التحقق من الرمز وحفظه تلقائيًا.",
    "githubToken": "رمز الوصول الشخصي",
    "githubTokenPlaceholder": "ghp_xxxxxxxxxxxx",
    "githubTokenHint": "أنشئ رمزًا في GitHub → Settings → Developer settings → Personal access tokens.",
    "githubAuthenticate": "التحقق والاتصال",
    "generateToken": "إنشاء رمز"
  },
  "SettingsShell": {
    "title": "الإعدادات",
    "preferences": "التفضيلات",
    "nav": {
      "general": "عام",
      "appearance": "المظهر",
      "agents": "الوكلاء",
      "mcp": "MCP",
      "skills": "Skills",
      "shortcuts": "الاختصارات",
      "version_control": "التحكم بالإصدارات",
      "system": "النظام",
      "chat_channels": "قنوات المحادثة",
      "web_service": "خدمة الويب",
      "model_providers": "مزودو النماذج",
      "experts": "الخبراء",
      "quick_messages": "رسائل سريعة"
    }
  },
  "AppearanceSettings": {
    "sectionTitle": "مظهر السمة",
    "sectionDescription": "اختر الفاتح أو الداكن أو اتباع النظام. يتم حفظ الإعدادات تلقائيًا.",
    "themeMode": "وضع السمة",
    "placeholder": "اختر وضع السمة",
    "system": "اتباع النظام",
    "light": "فاتح",
    "dark": "داكن",
    "currentTheme": "السمة الفعالة الحالية: {theme}",
    "resolvedTheme": {
      "light": "فاتح",
      "dark": "داكن",
      "unknown": "--"
    },
    "themeColor": {
      "sectionTitle": "لون السمة",
      "sectionDescription": "اختر لوحة ألوان للتمييزات والأزرار والإبرازات.",
      "current": "اللون الحالي: {color}",
      "options": {
        "neutral": "Neutral",
        "zinc": "Zinc",
        "slate": "Slate",
        "stone": "Stone",
        "gray": "Gray",
        "red": "Red",
        "rose": "Rose",
        "orange": "Orange",
        "green": "Green",
        "blue": "Blue",
        "yellow": "Yellow",
        "violet": "Violet"
      }
    },
    "zoomLevel": {
      "sectionTitle": "تكبير النافذة",
      "sectionDescription": "تكبير أو تصغير الواجهة بالكامل. يتم تطبيقه فوراً ويُحفظ لكل جهاز على حدة.",
      "placeholder": "اختر مستوى التكبير",
      "default": "افتراضي",
      "current": "التكبير الحالي: {zoom}%"
    },
    "fonts": {
      "sectionTitle": "الخطوط",
      "sectionDescription": "اختر خطوطًا للواجهة ومحرّر الأكواد والطرفية. تُحمّل الخطوط المضمّنة عند الحاجة؛ اختر «مخصّص…» لاستخدام أي خط مثبّت على نظامك.",
      "interface": "الواجهة",
      "editor": "المحرّر",
      "terminal": "الطرفية",
      "groupSans": "بلا زوائد",
      "groupMono": "ثابت العرض",
      "custom": "مخصّص…",
      "customPlaceholder": "اسم الخط، مثل Fira Code",
      "fontSize": "حجم الخط",
      "ligatures": "تفعيل الحروف المتصلة",
      "ligaturesUnavailable": "هذا الخط لا يحتوي على حروف متصلة",
      "terminalLigaturesHint": "تنطبق الحروف المتصلة في الطرفية على خطوط البرمجة المضمّنة فقط.",
      "preview": "معاينة"
    }
  },
  "SystemSettings": {
    "loading": "جارٍ التحميل...",
    "sectionTitle": "إدارة النظام",
    "sectionDescription": "إدارة وكيل الشبكة وتحديثات التطبيق وتفضيلات اللغة.",
    "proxyTitle": "وكيل الشبكة",
    "proxyDescription": "عند التفعيل، ستُفضَّل إعدادات هذا الوكيل في طلبات الشبكة اللاحقة (بما في ذلك دردشة ACP وتثبيت الوكلاء وعمليات Git البعيدة).",
    "loadFailed": "فشل التحميل: {message}",
    "enableProxy": "تفعيل وكيل النظام",
    "proxyAddress": "عنوان الوكيل",
    "proxyHint": "يدعم http(s)/socks5، مثال: {example}. يعمل فقط عند تفعيل وكيل النظام.",
    "save": "حفظ",
    "saving": "جارٍ الحفظ...",
    "proxyRequired": "عنوان URL للوكيل مطلوب عند تفعيل الوكيل",
    "saveSuccess": "تم حفظ إعدادات وكيل النظام",
    "saveFailed": "فشل الحفظ: {message}",
    "languageTitle": "اللغة",
    "languageDescription": "حدد لغة التطبيق. عند اتباع لغة النظام، ستعود اللغات غير المدعومة إلى الإنجليزية.",
    "appLanguage": "لغة التطبيق",
    "languageSaveSuccess": "تم حفظ إعدادات اللغة",
    "languageSaveFailed": "فشل حفظ إعدادات اللغة: {message}",
    "updateTitle": "تحديث التطبيق",
    "versionTitle": "تحديث البرنامج",
    "updateDescription": "تحقق من المصدر المهيأ للإصدارات الأحدث وثبّت التحديث مباشرة عند توفره.",
    "currentVersion": "الإصدار الحالي",
    "upgradableVersion": "أحدث إصدار",
    "none": "لا يوجد",
    "lastChecked": "آخر فحص: {time}",
    "updateError": "خطأ في التحديث: {message}",
    "checking": "جارٍ التحقق...",
    "checkUpdate": "التحقق من التحديثات",
    "updating": "جارٍ التثبيت...",
    "downloading": "جارٍ التنزيل...",
    "upgradeTo": "الترقية إلى v{version}",
    "viewRelease": "عرض إصدار v{version}",
    "foundUpdate": "تم العثور على إصدار جديد v{version}",
    "alreadyLatest": "أنت على أحدث إصدار",
    "checkUpdateFailed": "فشل التحقق من التحديثات: {message}",
    "installSuccess": "تم تثبيت التحديث. جارٍ إعادة تشغيل التطبيق.",
    "installFailed": "فشل التحديث: {message}",
    "upgradeSuccess": "اكتملت الترقية. جارٍ إعادة التحميل...",
    "restartTimeout": "لم يعد الخادم في الوقت المناسب. تحقق من سجلات الحاوية أو الخدمة.",
    "restartingIn": "إعادة التشغيل خلال {seconds} ثانية...",
    "waitingForServer": "في انتظار عودة الخادم...",
    "restartToUpdate": "أعد التشغيل للتحديث",
    "updateReadyHint": "تم تنزيل التحديث — أعد التشغيل لتطبيقه.",
    "restarting": "جارٍ إعادة التشغيل...",
    "dockerUpgradeHint": "يؤدي هذا إلى ترقية الحاوية قيد التشغيل الآن. وتُفقد عند إعادة إنشاء الحاوية — وللاحتفاظ بها، اسحب أو ابنِ صورة بالإصدار الجديد ثم أعد إنشاء الحاوية.",
    "upgradeRolledBack": "فشلت الترقية؛ عاد الخادم إلى الإصدار السابق.",
    "serverUnreachable": "تعذّر الوصول إلى الخادم لبدء الترقية. تأكد من أنه قيد التشغيل وحاول مرة أخرى.",
    "rollbackButton": "التراجع",
    "rollingBack": "جارٍ التراجع...",
    "rollbackDescription": "استعادة الإصدار المثبَّت قبل آخر ترقية.",
    "rollbackConfirmTitle": "التراجع إلى الإصدار السابق؟",
    "rollbackConfirmDescription": "ستعيد الخادم التشغيل على الإصدار المثبَّت قبل آخر ترقية. ويبقى الإصدار الأحدث متاحًا لإعادة التثبيت.",
    "rollbackConfirm": "التراجع",
    "rollbackCancel": "إلغاء",
    "rollbackSuccess": "تم التراجع إلى الإصدار السابق. جارٍ إعادة التحميل...",
    "rollbackFailed": "فشل التراجع. تحقّق من سجلات الخادم.",
    "updateErrors": {
      "sourceUnavailable": "تعذر الوصول إلى مصدر التحديث. تحقق من الشبكة أو الوكيل ثم أعد المحاولة.",
      "network": "فشل اتصال الشبكة. تحقق من الشبكة أو الوكيل ثم أعد المحاولة.",
      "downloadFailed": "فشل تنزيل حزمة التحديث. يرجى المحاولة مرة أخرى لاحقًا.",
      "installFailed": "فشل تثبيت التحديث. يرجى إغلاق التطبيق ثم إعادة المحاولة.",
      "unknown": "فشل التحديث. يرجى المحاولة مرة أخرى لاحقًا."
    }
  },
  "VersionControlSettings": {
    "loading": "جارٍ التحميل...",
    "sectionTitle": "التحكم بالإصدارات",
    "sectionDescription": "تكوين ملف Git التنفيذي وإدارة حسابات GitHub.",
    "gitTitle": "إعدادات Git",
    "gitDescription": "تكوين ملف Git التنفيذي المستخدم بواسطة التطبيق.",
    "gitDetected": "تم اكتشاف Git",
    "gitNotFound": "لم يتم العثور على Git في النظام",
    "gitVersion": "الإصدار",
    "gitPath": "المسار",
    "customGitPath": "مسار Git مخصص",
    "customGitPathPlaceholder": "/usr/bin/git",
    "customGitPathHint": "اتركه فارغًا لاستخدام المسار المكتشف تلقائيًا.",
    "test": "اختبار",
    "testing": "جارٍ الاختبار...",
    "testSuccess": "ملف Git التنفيذي صالح.",
    "testFailed": "فشل اختبار Git: {message}",
    "save": "حفظ",
    "saving": "جارٍ الحفظ...",
    "saveSuccess": "تم حفظ إعدادات Git.",
    "saveFailed": "فشل الحفظ: {message}",
    "githubTitle": "حسابات GitHub",
    "githubDescription": "إدارة حسابات GitHub للمصادقة. يتم تخزين الرموز محليًا.",
    "noAccounts": "لا توجد حسابات GitHub مكوّنة.",
    "addAccount": "إضافة حساب",
    "serverUrl": "عنوان الخادم",
    "serverUrlPlaceholder": "https://github.com",
    "token": "رمز الوصول الشخصي",
    "tokenPlaceholder": "ghp_xxxxxxxxxxxx",
    "generateToken": "إنشاء رمز",
    "tokenHint": "أنشئ رمزًا في GitHub → Settings → Developer settings → Personal access tokens.",
    "validateAndAdd": "التحقق والإضافة",
    "validating": "جارٍ التحقق...",
    "addSuccess": "تمت إضافة الحساب {username} بنجاح.",
    "addFailed": "فشل إضافة الحساب: {message}",
    "testConnection": "اختبار",
    "connectionSuccess": "نجح الاتصال.",
    "connectionFailed": "فشل الاتصال: {message}",
    "setDefault": "تعيين كافتراضي",
    "defaultLabel": "افتراضي",
    "defaultSet": "تم تحديث الحساب الافتراضي.",
    "removeAccount": "إزالة",
    "removeConfirmTitle": "إزالة الحساب",
    "removeConfirmMessage": "هل أنت متأكد من إزالة الحساب \"{username}\"؟",
    "removeConfirm": "إزالة",
    "removeCancel": "إلغاء",
    "removeSuccess": "تمت إزالة الحساب.",
    "scopes": "النطاقات",
    "loadFailed": "فشل تحميل الإعدادات: {message}",
    "gitAccount": {
      "sectionTitle": "حسابات خادم Git",
      "sectionDescription": "إدارة بيانات الاعتماد لخوادم Git غير GitHub (GitLab، Bitbucket، الخوادم الذاتية، إلخ).",
      "noAccounts": "لا توجد حسابات خادم Git مكوّنة.",
      "addAccount": "إضافة حساب",
      "addTitle": "إضافة حساب Git",
      "addDescription": "أدخل عنوان الخادم واسم المستخدم وكلمة المرور أو رمز الوصول.",
      "serverUrl": "عنوان الخادم",
      "serverUrlPlaceholder": "https://gitlab.example.com",
      "username": "اسم المستخدم",
      "usernamePlaceholder": "اسم المستخدم أو البريد الإلكتروني",
      "password": "كلمة المرور / الرمز",
      "passwordPlaceholder": "كلمة المرور أو رمز الوصول",
      "passwordHint": "أدخل كلمة مرور الخادم أو رمز الوصول.",
      "add": "إضافة",
      "serverRequired": "عنوان الخادم مطلوب.",
      "usernameRequired": "اسم المستخدم مطلوب.",
      "passwordRequired": "كلمة المرور مطلوبة."
    }
  },
  "ShortcutSettings": {
    "sectionTitle": "الاختصارات",
    "resetDefault": "استعادة الإعدادات الافتراضية",
    "recordInstruction": "انقر الزر في الجهة اليمنى ثم اضغط تركيبة مفاتيح. استخدم Ctrl/Cmd وAlt وShift. اضغط Esc لإلغاء التسجيل.",
    "recording": "اضغط اختصارًا...",
    "toasts": {
      "conflict": "الاختصار مستخدم بالفعل بواسطة \"{title}\"",
      "updated": "تم تحديث الاختصار",
      "invalid": "اختصار غير صالح، يرجى المحاولة مرة أخرى",
      "reset": "تمت استعادة الاختصارات الافتراضية"
    },
    "actions": {
      "toggle_search": {
        "title": "فتح البحث",
        "description": "إظهار أو إخفاء لوحة البحث في المحادثات"
      },
      "toggle_sidebar": {
        "title": "تبديل الشريط الجانبي الأيسر",
        "description": "إظهار أو إخفاء الشريط الجانبي لقائمة المحادثات"
      },
      "toggle_terminal": {
        "title": "تبديل الطرفية",
        "description": "إظهار أو إخفاء لوحة الطرفية السفلية"
      },
      "new_terminal_tab": {
        "title": "طرفية جديدة",
        "description": "إنشاء تبويب طرفية جديد عندما يكون التركيز على الطرفية"
      },
      "close_current_terminal_tab": {
        "title": "إغلاق الطرفية الحالية",
        "description": "إغلاق تبويب الطرفية الحالي عندما يكون التركيز على الطرفية"
      },
      "toggle_aux_panel": {
        "title": "تبديل اللوحة اليمنى",
        "description": "إظهار أو إخفاء لوحة المعلومات المساعدة"
      },
      "new_conversation": {
        "title": "محادثة جديدة",
        "description": "إنشاء تبويب محادثة جديد في المجلد الحالي"
      },
      "open_folder": {
        "title": "فتح مجلد",
        "description": "فتح منتقي المجلدات وفتح المجلد في نافذة جديدة"
      },
      "open_settings": {
        "title": "فتح الإعدادات",
        "description": "فتح نافذة الإعدادات"
      },
      "close_current_tab": {
        "title": "إغلاق التبويب الحالي",
        "description": "إغلاق المحادثة الحالية أو تبويب الملف الحالي"
      },
      "close_all_file_tabs": {
        "title": "إغلاق جميع تبويبات الملفات",
        "description": "إغلاق جميع تبويبات الملفات المفتوحة عندما تكون لوحة الملفات نشطة"
      },
      "next_tab": {
        "title": "علامة التبويب التالية",
        "description": "التبديل إلى علامة تبويب المحادثة أو الملف التالية"
      },
      "prev_tab": {
        "title": "علامة التبويب السابقة",
        "description": "التبديل إلى علامة تبويب المحادثة أو الملف السابقة"
      },
      "send_message": {
        "title": "إرسال الرسالة",
        "description": "إرسال الرسالة الحالية في مربع الإدخال"
      },
      "newline_in_message": {
        "title": "سطر جديد في الرسالة",
        "description": "إدراج سطر جديد في مربع الإدخال"
      }
    }
  },
  "SkillsSettings": {
    "title": "Skills",
    "description": "اختر Skill من الجهة اليسرى. تعرض الجهة اليمنى معاينة Markdown بشكل افتراضي؛ انتقل إلى وضع التحرير للتعديل والحفظ.",
    "loadingAgents": "جارٍ تحميل الوكلاء الذين يدعمون Skills...",
    "emptyNoManageableAgents": "لا توجد وكلاء متاحة لإدارة Skills.",
    "managedTarget": "الهدف المُدار",
    "selectAgentPlaceholder": "اختر وكيلًا",
    "searchPlaceholder": "ابحث بالاسم / المعرّف / المسار...",
    "skillsList": "قائمة Skills",
    "loadingSkills": "جارٍ تحميل Skills...",
    "agentNotSupported": "الوكيل الحالي لا يدعم إدارة Skills.",
    "emptySkills": "لا توجد Skills بعد. انقر \"Skill جديدة\" لإنشاء واحدة.",
    "newSkillTitle": "Skill جديدة",
    "skillInfo": "معلومات Skill",
    "skillIdPlaceholder": "skill-id (حروف/أرقام/-/_/.)",
    "skillsDirectoryWithPath": "دليل Skills: {path}",
    "skillsDirectoryNeedId": "دليل Skills: أدخل معرّف Skill لإنشاء المسار الكامل",
    "markdownContent": "محتوى Markdown",
    "editingStatus": "جارٍ التحرير",
    "previewStatus": "معاينة",
    "contentPlaceholder": "أدخل محتوى Markdown للSkill...",
    "metadataTitle": "بيانات Skills الوصفية",
    "onlyYamlMetadata": "تحتوي هذه Skill على بيانات YAML الوصفية فقط.",
    "emptyContentHint": "لا يوجد محتوى بعد. انقر \"تحرير\" للبدء.",
    "loadingSkill": "جارٍ تحميل Skill...",
    "emptyNoAgents": "لا يوجد وكيل متاح.",
    "noSelectionHint": "اختر Skill من اليسار، أو انقر على \"Skill جديد\" لإنشاء واحد.",
    "systemBadge": "نظام",
    "systemHint": "Skill مدمج في CLI · للقراءة فقط",
    "scope": {
      "global": "عام",
      "folder": "مجلد",
      "selectFolderPlaceholder": "اختر مجلدًا",
      "noFolders": "لم يتم العثور على مجلدات",
      "pickFolderHint": "اختر مجلدًا لعرض مهاراته."
    },
    "actions": {
      "preview": "معاينة",
      "edit": "تحرير",
      "openInWindow": "فتح في نافذة جديدة",
      "delete": "حذف",
      "deleting": "جارٍ الحذف...",
      "refresh": "تحديث",
      "newSkill": "Skill جديدة",
      "reset": "إعادة تعيين",
      "save": "حفظ",
      "saving": "جارٍ الحفظ...",
      "cancel": "إلغاء"
    },
    "deleteDialog": {
      "title": "حذف Skill",
      "confirm": "هل تريد حذف Skill الحالية؟ لا يمكن التراجع عن هذا الإجراء.",
      "confirmWithNamePrefix": "حذف Skill",
      "confirmWithNameSuffix": "؟ لا يمكن التراجع عن هذا الإجراء."
    },
    "toasts": {
      "loadFailed": "فشل تحميل Skill",
      "openFolderFailed": "فشل فتح المجلد",
      "noSkillDirectory": "لم يتم العثور على دليل Skills متاح للوكيل الحالي",
      "nameRequired": "لا يمكن أن يكون اسم Skill فارغًا",
      "updated": "تم تحديث Skill",
      "created": "تم إنشاء Skill",
      "saveFailed": "فشل حفظ Skill",
      "deleted": "تم حذف Skill",
      "deleteFailed": "فشل حذف Skill"
    },
    "templates": {
      "gemini": "---\nname: example-skill\ndescription: Describe when this skill should be used.\n---\n\n# Skill Name\n\nInstructions for the agent when this skill is active.\n\n## Workflow\n\n1. Add actionable step one.\n2. Add actionable step two.\n",
      "openCode": "---\nname: example-skill\ndescription: Describe when this skill should be used.\n---\n\n# Purpose\n\nDescribe what this skill helps with.\n\n# Steps\n\n1. Add actionable step one.\n2. Add actionable step two.\n",
      "openClaw": "---\nname: example-skill\ndescription: Describe when this skill should be used.\nuser-invocable: true\ndisable-model-invocation: false\n---\n\n# Purpose\n\nDescribe what this skill helps with.\n\n# Instructions\n\n1. Add actionable instruction one.\n2. Add actionable instruction two.\n",
      "default": "---\nname: example-skill\ndescription: Describe when this skill should be used.\n---\n\n# Skill: example-skill\n\n## When to use\n\n- Describe trigger conditions.\n\n## Instructions\n\n1. Add actionable instruction one.\n2. Add actionable instruction two.\n"
    }
  },
  "McpSettings": {
    "loading": "جارٍ التحميل...",
    "summary": {
      "missingCommand": "(لا يوجد أمر)",
      "missingUrl": "(لا يوجد رابط)"
    },
    "protocol": {
      "stdio": "Stdio"
    },
    "errors": {
      "selectInstallProtocol": "يرجى اختيار بروتوكول التثبيت",
      "fieldRequired": "{field} مطلوب",
      "fieldNeedsBoolean": "{field} يجب أن يكون true أو false",
      "fieldNeedsNumber": "{field} يجب أن يكون رقمًا",
      "fieldNeedsInteger": "{field} يجب أن يكون عددًا صحيحًا",
      "fieldInvalidJson": "{field} يحتوي JSON غير صالح: {message}",
      "fieldOutOfRange": "قيمة {field} خارج النطاق المسموح",
      "jsonEmpty": "{name} لا يمكن أن يكون فارغًا",
      "jsonInvalid": "{name} ليس JSON صالحًا: {message}",
      "jsonMustBeObject": "{name} يجب أن يكون كائن JSON",
      "specMustBeObject": "يجب أن يكون إعداد MCP كائن JSON.",
      "missingType": "حقل type غير موجود في إعداد MCP. حدد أحد القيم: stdio أو http (الأسماء البديلة: streamable-http و streamableHttp) أو sse.",
      "unsupportedType": "نوع MCP غير مدعوم {type}. المدعوم: stdio و http (الأسماء البديلة: streamable-http و streamableHttp) و sse.",
      "codexEntryUnsupportedType": "إدخال Codex MCP {id} له نوع غير مدعوم {type}. المدعوم: stdio و http (الأسماء البديلة: streamable-http و streamableHttp) و sse.",
      "unsupportedTransportType": "نوع transport غير مدعوم {type}. المدعوم: http (الأسماء البديلة: streamable-http و streamableHttp) و sse.",
      "stdioCommandRequired": "يتطلب MCP من نوع stdio حقل command غير فارغ.",
      "remoteUrlRequired": "تتطلب MCP البعيدة حقل url غير فارغ.",
      "appsRequired": "حدد تطبيقاً مستهدفاً واحداً على الأقل."
    },
    "jsonNames": {
      "localConfig": "إعداد MCP",
      "installConfig": "إعداد التثبيت"
    },
    "toasts": {
      "uninstalled": "تمت إزالة MCP",
      "uninstallFailed": "فشل الإزالة: {message}",
      "selectAtLeastOneApp": "يرجى اختيار تطبيق هدف واحد على الأقل",
      "saveSuccess": "تم الحفظ",
      "saveFailed": "فشل الحفظ: {message}",
      "installed": "تم تثبيت {name}",
      "installFailed": "فشل التثبيت: {message}",
      "serverIdRequired": "معرّف الخادم مطلوب",
      "serverIdExists": "معرّف الخادم \"{id}\" موجود بالفعل. عدّل العنصر الحالي أو اختر اسماً آخر.",
      "created": "تم إنشاء MCP"
    },
    "installDialog": {
      "title": "تأكيد تثبيت MCP",
      "descriptionWithName": "تثبيت {name} في الإعداد المحلي.",
      "description": "اختر التطبيقات المستهدفة للتثبيت.",
      "protocol": "البروتوكول",
      "selectProtocol": "اختر البروتوكول",
      "parameters": "معلمات الإعداد",
      "booleanPlaceholder": "يرجى اختيار true/false",
      "selectOneValue": "اختر قيمة",
      "targetApps": "التطبيقات المستهدفة"
    },
    "actions": {
      "cancel": "إلغاء",
      "confirmInstall": "تأكيد التثبيت",
      "installing": "جارٍ التثبيت",
      "uninstall": "إزالة التثبيت",
      "uninstalling": "جارٍ الإزالة",
      "viewDetails": "عرض التفاصيل",
      "save": "حفظ",
      "saving": "جارٍ الحفظ",
      "install": "تثبيت",
      "refresh": "تحديث",
      "newMcp": "MCP جديد",
      "create": "إنشاء",
      "creating": "جارٍ الإنشاء..."
    },
    "tabs": {
      "local": "MCP المحلي",
      "market": "سوق MCP"
    },
    "local": {
      "filterPlaceholder": "تصفية MCP المحلي...",
      "loadFailed": "فشل التحميل: {message}",
      "empty": "لم يتم اكتشاف MCP محلي.",
      "description": "يمكن تعديل إعداد MCP المحلي وحفظه مباشرة.",
      "enabledApps": "التطبيقات المفعلة",
      "configJson": "إعداد MCP (JSON)",
      "draftTitle": "MCP جديد",
      "draftDescription": "أدخل معرّف الخادم والإعدادات لإنشاء خادم MCP محلي.",
      "serverIdLabel": "معرّف الخادم",
      "serverIdPlaceholder": "معرّف الخادم (مثل: my-mcp)",
      "typeHint": "الأنواع المدعومة: stdio و http (الأسماء البديلة: streamable-http و streamableHttp) و sse. يُستخدم env مع stdio فقط؛ خوادم MCP البعيدة تحمل رموز المصادقة عبر headers.",
      "envOnRemoteWarning": "تم اكتشاف env على MCP بعيد. يُستخدم env مع stdio فقط؛ خوادم MCP البعيدة تحمل رموز المصادقة عبر headers، لذا سيتم تجاهل env عند الحفظ."
    },
    "market": {
      "selectMarketplace": "اختر السوق",
      "searchPlaceholder": "ابحث عن MCP...",
      "searchFailed": "فشل البحث: {message}",
      "loadingList": "جارٍ تحميل قائمة MCP...",
      "empty": "لا توجد نتائج MCP.",
      "loadingDetail": "جارٍ تحميل تفاصيل السوق...",
      "detailLoadFailed": "فشل تحميل التفاصيل: {message}",
      "owner": "المالك: {owner}",
      "namespace": "المجال: {namespace}",
      "defaultInstallProtocol": "بروتوكول التثبيت الافتراضي",
      "currentOptionParameterCount": "عدد معلمات الخيار الحالي: {count}",
      "installConfigDescription": "إعداد التثبيت (JSON، قابل للتعديل قبل التثبيت؛ ستتجاوز التعديلات نموذج البروتوكول/المعلمات)",
      "selectLeftToView": "اختر MCP من السوق في الجهة اليسرى لعرض التفاصيل."
    },
    "badges": {
      "verified": "موثّق",
      "remote": "بعيد",
      "hasHomepage": "له صفحة رئيسية",
      "uses": "{count} استخدام",
      "deployed": "منشور",
      "notDeployed": "غير منشور"
    },
    "selectLeftMcp": "اختر MCP من الجهة اليسرى."
  },
  "AcpAgentSettings": {
    "title": "إدارة Agent SDK",
    "description": "أدر اتصال Agent SDK وحالة التمكين ومتغيرات البيئة وإدارة الإعدادات ومعلومات فحص الإصدار المسبق في مكان واحد.",
    "loadingAgents": "جارٍ تحميل قائمة الوكلاء...",
    "agentList": "قائمة الوكلاء",
    "emptyNoAgent": "لا يوجد وكيل متاح.",
    "configManagement": "إدارة الإعدادات",
    "envVars": "متغيرات البيئة",
    "nativeJsonConfig": "إعداد JSON أصلي",
    "modelHintDefault": "اتركه فارغًا لاستخدام النموذج الافتراضي للنظام.",
    "generalConfigDescriptionClaude": "يدعم الإعداد السريع لـ API URL وAPI Key ونماذج Claude، ويتزامن مع إعداد JSON الأصلي.",
    "generalConfigDescriptionDefault": "يدعم إدخال الإعدادات المهمة (API URL وAPI Key وModel) وإدارة إعداد JSON الأصلي.",
    "multiAgent": {
      "title": "تعاون متعدد الوكلاء",
      "description": "اسمح للوكلاء النشطين بتفويض المهام الفرعية إلى وكلاء آخرين.",
      "enable": "تفعيل التفويض",
      "enableHint": "عند الإيقاف، يتم إخفاء أداة delegate_to_agent من قائمة أدوات MCP الخاصة بالوكيل.",
      "depthLimit": "أقصى عمق للتفويض",
      "depthHint": "النطاق المسموح: {min}–{max}. يحدّ من عمق سلسلة التفويض (جذر ← فرعي ← حفيد …).",
      "completedCacheLabel": "ذاكرة التخزين المؤقت للنتائج المكتملة (MB)",
      "completedCacheHint": "ذاكرة تخزين مؤقتة في الذاكرة لنتائج الوكلاء الفرعيين المكتملة، تُحفظ فقط أثناء تشغيل جلسة التفويض وتُحرَّر تلقائيًا عند انتهاء تلك الجلسة. وعند تجاوز هذه الميزانية، تُسقَط أقدم النتائج من الذاكرة أولًا (تظل قابلة للعرض في جلسة الوكيل الفرعي نفسه)؛ 0 = غير محدود (وتُحرَّر مع ذلك عند انتهاء الجلسة).",
      "save": "حفظ",
      "saving": "جارٍ الحفظ…",
      "saved": "تم حفظ إعدادات التفويض",
      "saveFailed": "فشل حفظ إعدادات التفويض",
      "loadFailed": "فشل تحميل إعدادات التفويض: {detail}",
      "tabGeneral": "عام",
      "tabAgentDefaults": "إعدادات الوكيل الفرعي",
      "agentDefaultsDescription": "تجاوزات لكل وكيل تُطبَّق عندما يقوم التعاون متعدد الوكلاء بتشغيل وكيل فرعي لاستدعاء تفويض. تأتي الخيارات المعروضة هنا من فحص حي، لذا فإن ما تختاره هو بالضبط ما سيقبله الوكيل.",
      "probing": "جارٍ تحميل الخيارات المتاحة من الوكيل…",
      "probeFailed": "فشل تحميل الخيارات: {detail}",
      "retry": "إعادة المحاولة",
      "noConfigAvailable": "لا يحتوي هذا الوكيل على خيارات قابلة للضبط.",
      "modeLabel": "الوضع",
      "agentDefaultHint": "افتراضي الوكيل: {value}",
      "defaultOptionLabel": "افتراضي ({value})"
    },
    "actions": {
      "dragSort": "اسحب لإعادة الترتيب",
      "dragSortAgent": "اسحب لإعادة ترتيب {name}",
      "refreshCheck": "تحديث الفحص",
      "refreshCheckAgent": "تحديث فحص {name}",
      "clickEnable": "انقر لتفعيل {name}",
      "clickDisable": "انقر لتعطيل {name}",
      "install": "تثبيت",
      "upgrade": "ترقية",
      "uninstall": "إزالة التثبيت",
      "uninstalling": "جارٍ إزالة التثبيت...",
      "saveEnvVars": "حفظ متغيرات البيئة",
      "saving": "جارٍ الحفظ...",
      "saveCodexConfig": "حفظ إعداد Codex",
      "saveGeminiConfig": "حفظ إعداد Gemini",
      "saveOpenCodeConfig": "حفظ إعداد OpenCode",
      "saveOpenClawConfig": "حفظ إعداد OpenClaw",
      "saveConfigManagement": "حفظ إدارة الإعدادات",
      "saveCurrentProvider": "حفظ المزود الحالي",
      "showApiKey": "إظهار مفتاح API",
      "hideApiKey": "إخفاء مفتاح API",
      "showKey": "إظهار المفتاح",
      "hideKey": "إخفاء المفتاح",
      "showToken": "إظهار الرمز",
      "hideToken": "إخفاء الرمز",
      "cancel": "إلغاء",
      "delete": "حذف",
      "deleting": "جارٍ الحذف...",
      "confirmDelete": "تأكيد الحذف",
      "confirmUninstall": "تأكيد إزالة التثبيت",
      "saveClineConfig": "حفظ تكوين Cline",
      "saveHermesConfig": "حفظ تكوين Hermes",
      "customInstall": "تثبيت مخصص"
    },
    "status": {
      "enabled": "مفعّل",
      "disabled": "معطّل",
      "unchecked": "غير مفحوص",
      "agentEnabledAria": "{name} مفعّل",
      "agentEnabledSwitch": "مفتاح تفعيل {name}"
    },
    "preflight": {
      "count": "عناصر الفحص المسبق: {count}",
      "notRun": "لم يتم تشغيل الفحوصات بعد."
    },
    "codex": {
      "configDescription": "يدعم الإعداد السريع لعنوان API ومفتاح API واسم النموذج وجهد الاستدلال، مع المزامنة مع `auth.json` / `config.toml`.",
      "authMode": "طريقة المصادقة",
      "chatgptSubscription": "اشتراك رسمي",
      "chatgptSubscriptionHint": "تسجيل الدخول باشتراك ChatGPT الرسمي، لا حاجة لـ API Key",
      "apiKeyHint": "الاتصال باستخدام API Key بخدمات OpenAI أو الخدمات المتوافقة",
      "selectProvider": "اختر المزود",
      "modelName": "اسم النموذج",
      "selectReasoningEffort": "اختر Reasoning Effort",
      "enableWebsocket": "تفعيل WebSocket",
      "enableWebsocketAria": "تفعيل WebSocket لـ Codex Provider",
      "enableSkills": "تفعيل Skills",
      "enableSkillsAria": "تفعيل Skills لـ Codex",
      "enableFast": "تفعيل Fast",
      "enableFastAria": "تفعيل مستوى خدمة Fast لـ Codex",
      "authJsonNative": "auth.json (أصلي)",
      "configTomlNative": "config.toml (أصلي)",
      "loginButton": "تسجيل الدخول باستخدام ChatGPT",
      "loginRequesting": "جارٍ طلب رمز تسجيل الدخول...",
      "loginStep1": "افتح الرابط التالي في متصفحك:",
      "loginStep2": "أدخل الرمز أدناه:",
      "loginPolling": "في انتظار التفويض...",
      "loginCancel": "إلغاء",
      "loginSuccess": "تم تسجيل الدخول بنجاح، تم حفظ الإعدادات!",
      "loginFailed": "فشل تسجيل الدخول: {message}",
      "loginRetry": "إعادة المحاولة",
      "loginCodeCopied": "تم نسخ الرمز",
      "loggedIn": "تم تسجيل الدخول",
      "loginRelogin": "إعادة تسجيل الدخول / تبديل الحساب",
      "loginTimeout": "انتهت مهلة تسجيل الدخول، يرجى المحاولة مرة أخرى",
      "loginSaveFailed": "تم تسجيل الدخول بنجاح ولكن فشل حفظ الإعدادات"
    },
    "gemini": {
      "authConfig": "إعداد مصادقة Gemini",
      "authConfigDescription": "متوافق مع وثائق مصادقة Gemini CLI، ويدعم endpoint مخصص وتسجيل دخول Google وGemini API Key وVertex AI ‏(ADC / حساب خدمة / API Key).",
      "authMode": "وضع المصادقة",
      "selectAuthMode": "اختر وضع المصادقة",
      "viewAuthDoc": "عرض وثائق المصادقة",
      "mode": {
        "custom": "Endpoint مخصص",
        "loginGoogle": "تسجيل دخول Google (OAuth)",
        "vertexServiceAccount": "Vertex AI (حساب خدمة)"
      },
      "hint": {
        "custom": "أدخل API URL وAPI Key وModel؛ وسيتم ربطها بـ GOOGLE_GEMINI_BASE_URL / GEMINI_API_KEY / GEMINI_MODEL.",
        "loginGoogle": "شغّل gemini في الطرفية وأكمل تسجيل دخول Google أولًا؛ لا حاجة إلى API key.",
        "geminiApiKey": "أدخل GEMINI_API_KEY عند استخدام Gemini API.",
        "vertexAdc": "استخدم gcloud ADC؛ ويوصى بتعيين GOOGLE_CLOUD_PROJECT وGOOGLE_CLOUD_LOCATION.",
        "vertexServiceAccount": "عيّن مسار JSON لحساب الخدمة في GOOGLE_APPLICATION_CREDENTIALS.",
        "vertexApiKey": "أدخل GOOGLE_API_KEY عند استخدام مفتاح Vertex AI API."
      }
    },
    "openCode": {
      "configManagement": "إدارة إعداد OpenCode",
      "configDescription": "متوافق مع مخطط `provider` في OpenCode، ويدعم إدارة متعددة المزودات ومزامنة ثنائية الاتجاه مع ملفات JSON الأصلية.",
      "providerManagement": "إدارة المزودات",
      "providerCount": "{count} مزودات",
      "addProvider": "إضافة مزود",
      "emptyProvider": "لا يوجد مزود بعد. أدخل معرّفًا ثم انقر \"إضافة مزود\".",
      "providerEnabledState": "حالة تفعيل {providerId}",
      "selectProviderNpm": "اختر provider.npm",
      "modelManagement": "إدارة النماذج",
      "modelCount": "{count} نماذج",
      "modelDescription": "متوافق مع `provider.models` في OpenCode. الإدارة السريعة تدعم حاليًا `name` / `id`؛ بينما تُحفظ الحقول المتقدمة الأخرى ويمكن تعديلها في JSON الأصلي أدناه.",
      "addModel": "إضافة نموذج",
      "emptyModel": "لا يوجد نموذج بعد. أدخل model id ثم انقر \"إضافة نموذج\".",
      "modelId": "معرّف النموذج",
      "modelName": "اسم النموذج",
      "deleteModel": "حذف النموذج {modelId}",
      "nativeJsonConfig": "إعداد JSON الأصلي لـ OpenCode",
      "mainModel": "النموذج الرئيسي",
      "smallModel": "النموذج الصغير",
      "noMatchingModels": "لا توجد نماذج مطابقة"
    },
    "openClaw": {
      "gatewayConfig": "إعداد Gateway",
      "gatewayDescription": "قم بإعداد اتصال OpenClaw Gateway. يدعم gateway محليًا أو بعيدًا.",
      "gatewayUrlHint": "اتركه فارغًا لاستخدام gateway.remote.url من إعداد openclaw المحلي.",
      "gatewayTokenPlaceholder": "رمز مصادقة Gateway",
      "gatewayTokenHint": "يُفضّل استخدام token-file بدل الرمز النصي متى أمكن؛ قم بالإعداد عبر openclaw CLI.",
      "sessionKeyHint": "اختياري. حدّد مفتاح جلسة gateway؛ واتركه فارغًا للتعيين التلقائي لجلسة معزولة."
    },
    "hermes": {
      "configManagement": "تكوين Hermes",
      "configDescription": "يدير Hermes بيانات اعتماده الخاصة في ~/.hermes/.env والإعدادات في ~/.hermes/config.yaml. اختر مزوّدًا، ثم عيّن مفتاح API والنموذج — وسيكتب codeg كلا الملفين نيابةً عنك.",
      "providerLabel": "المزوّد",
      "providerHint": "يحدّد المزوّد متغيّر مفتاح API و model.provider الذي يستخدمه Hermes. تُهيَّأ مزوّدات OAuth عبر إعداد الطرفية أدناه.",
      "groupApiKey": "مزودو مفاتيح API",
      "groupOauth": "مزودو OAuth",
      "groupAws": "AWS",
      "apiKeyHint": "يُحفظ في ~/.hermes/.env. ولا يُحقَن أبدًا في العملية — إذ يقرؤه Hermes من تكوينه الخاص.",
      "modelName": "النموذج",
      "oauthHint": "يستخدم هذا المزوّد OAuth. شغّل الإعداد أدناه للمصادقة في طرفيتك.",
      "awsHint": "يستخدم Bedrock بيانات اعتماد AWS الخاصة بك (البيئة أو الإعداد المشترك). حدّد معرّف النموذج أعلاه واضبط وصول AWS في بيئتك.",
      "unsupportedProvider": "لا يمكن تحرير هذا المزود عبر الحقول المنظمة. استخدم محرر config.yaml أدناه أو الإعداد عبر الطرفية.",
      "setupTitle": "إعداد ذاتي الإدارة",
      "setupHint": "يحتاج إعداد Hermes التفاعلي إلى طرفية. شغّله أدناه، أو انسخ الأمر لتشغيله بنفسك.",
      "runSetup": "تشغيل إعداد Hermes",
      "configureModel": "تهيئة النموذج",
      "openConfigFolder": "فتح ~/.hermes",
      "copyCommand": "نسخ الأمر",
      "commandCopied": "تم نسخ الأمر إلى الحافظة",
      "advancedTitle": "متقدّم: تحرير config.yaml",
      "rawConfigHint": "حرّر ~/.hermes/config.yaml مباشرةً. الحفظ هنا يستبدل الملف حرفيًا.",
      "saveRawConfig": "حفظ config.yaml"
    },
    "authModeOfficialSubscription": "الاشتراك الرسمي",
    "authModeCustomEndpoint": "نقطة نهاية مخصصة",
    "authModeCustomEndpointHint": "تكوين عنوان API ومفتاح API يدوياً لنقطة نهاية مخصصة.",
    "authModeModelProvider": "مزود النموذج",
    "modelProvider": "مزود النموذج",
    "modelProviderHint": "استخدم عنوان API ومفتاح API والنموذج من مزود نموذج مُعدّ.",
    "selectModelProvider": "اختر مزود النموذج",
    "noModelProviderAvailable": "لا يوجد مزود نموذج مُعدّ لهذا الوكيل. انتقل إلى إعدادات مزود النموذج لإضافة واحد.",
    "claude": {
      "authMode": "وضع المصادقة",
      "officialSubscription": "الاشتراك الرسمي",
      "officialSubscriptionHint": "استخدم اشتراك Anthropic الرسمي، لا حاجة لمفتاح API.",
      "mainModel": "النموذج الرئيسي",
      "reasoningModel": "نموذج الاستدلال (thinking)",
      "haikuDefaultModel": "نموذج Haiku الافتراضي",
      "sonnetDefaultModel": "نموذج Sonnet الافتراضي",
      "opusDefaultModel": "نموذج Opus الافتراضي",
      "effortLevel": "مستوى الاستدلال",
      "effortLevelDefault": "المستوى الافتراضي",
      "effortLevel_low": "منخفض",
      "effortLevel_medium": "متوسط",
      "effortLevel_high": "مرتفع",
      "effortLevel_xhigh": "مرتفع جداً"
    },
    "dialogs": {
      "confirmDeleteProvider": "حذف المزود {providerId}؟",
      "confirmDeleteProviderDescription": "سيتم تحديث إعداد OpenCode وauth JSON معًا. لا يمكن التراجع عن هذا الإجراء.",
      "confirmUninstall": "إزالة تثبيت {name}؟",
      "confirmUninstallDescription": "سيؤدي هذا إلى إزالة الإصدار المثبت محليًا. يمكنك إعادة التثبيت لاحقًا.",
      "customInstallTitle": "تثبيت مخصص لـ {name}",
      "customInstallDescription": "أدخل الإصدار المراد تثبيته. سيؤدي ذلك إلى إعادة التثبيت واستبدال الإصدار المثبت حاليًا.",
      "customInstallVersionLabel": "رقم الإصدار",
      "customInstallInvalid": "أدخل رقم إصدار صالحًا، مثل 1.2.3.",
      "customInstallSubmit": "تثبيت"
    },
    "errors": {
      "nativeJsonMustBeObject": "يجب أن يكون إعداد JSON الأصلي كائنًا",
      "nativeJsonInvalid": "خطأ في تنسيق إعداد JSON الأصلي: {message}",
      "openCodeAuthMustBeObject": "يجب أن يكون OpenCode auth.json كائن JSON",
      "openCodeAuthInvalid": "خطأ في تنسيق OpenCode auth.json: {message}",
      "authMustBeObject": "يجب أن يكون auth.json كائن JSON",
      "authInvalid": "خطأ في تنسيق auth.json: {message}",
      "providerIdPattern": "يدعم معرّف المزود الأحرف والأرقام والشرطة السفلية والنقطة والشرطة فقط",
      "providerExists": "المزوّد {providerId} موجود بالفعل",
      "modelIdPattern": "يدعم معرّف النموذج الأحرف والأرقام والشرطة السفلية والنقطة والنقطتين والشرطة فقط",
      "modelExists": "النموذج {modelId} موجود بالفعل"
    },
    "warnings": {
      "nativeJsonRecoveredStructured": "إعداد JSON الأصلي غير صالح؛ تمت إعادة التعيين إلى إعداد مُهيكل",
      "nativeJsonRecoveredOpenCode": "إعداد JSON الأصلي غير صالح؛ تمت إعادة التعيين إلى إعداد OpenCode المُهيكل",
      "openCodeAuthRecovered": "ملف OpenCode auth.json غير صالح؛ تمت إعادة التعيين إلى الإعداد الافتراضي",
      "authRecoveredStructured": "ملف auth.json غير صالح؛ تمت إعادة التعيين إلى إعداد مُهيكل"
    },
    "toasts": {
      "agentActionCompleted": "اكتمل {action} لـ {name}",
      "agentActionFailed": "فشل {action} لـ {name}",
      "localVersion": "الإصدار المحلي: {version}",
      "installCompletedVersionLater": "اكتمل التثبيت، سيتم تحديث الإصدار عند الفحص التالي",
      "uninstallCompleted": "اكتملت إزالة تثبيت {name}",
      "uninstallFailed": "فشلت إزالة تثبيت {name}",
      "localVersionRemoved": "تمت إزالة الإصدار المحلي",
      "saveAgentOrderFailed": "فشل حفظ ترتيب Agent",
      "saveAgentSwitchFailed": "فشل حفظ مفتاح Agent",
      "saveEnvFailed": "فشل حفظ متغيرات البيئة",
      "codexSaved": "تم حفظ إعداد Codex",
      "saveCodexNativeFailed": "فشل حفظ إعداد Codex الأصلي",
      "geminiSaved": "تم حفظ إعداد Gemini",
      "saveGeminiFailed": "فشل حفظ إعداد Gemini",
      "providerDeleted": "تم حذف المزود {providerId}",
      "providerDeleteFailed": "فشل حذف المزود {providerId}",
      "providerSaved": "تم حفظ المزود {providerId}",
      "saveProviderFailed": "فشل حفظ المزود {providerId}",
      "openCodeConfigSynced": "تمت مزامنة إعداد OpenCode وauth JSON.",
      "openCodeSaved": "تم حفظ إعداد OpenCode",
      "saveOpenCodeFailed": "فشل حفظ إعداد OpenCode",
      "openClawSaved": "تم حفظ إعداد OpenClaw",
      "saveOpenClawFailed": "فشل حفظ إعداد OpenClaw",
      "configSaved": "تم حفظ الإعداد",
      "configSavedHint": "يجب إعادة فتح الجلسات الحالية لتطبيق التغييرات",
      "saveConfigManagementFailed": "فشل حفظ إدارة الإعدادات",
      "clineSaved": "تم حفظ تكوين Cline",
      "saveClineFailed": "فشل في حفظ تكوين Cline",
      "hermesSaved": "تم حفظ تكوين Hermes",
      "saveHermesFailed": "فشل في حفظ تكوين Hermes",
      "modelProviderRequired": "يرجى اختيار مزود نموذج قبل الحفظ.",
      "affectedRunningSessions": "{count} جلسة نشطة تحتاج إلى إعادة الاتصال لتطبيق التغيير"
    },
    "version": {
      "statusLabel": "حالة الإصدار",
      "notInstalled": "غير مثبت",
      "remoteLocal": "البعيد: {remoteVersion} · المحلي: {localVersion}",
      "platformUnsupported": "{versionText}. المنصة الحالية لا تدعم هذا الوكيل.",
      "uvxNotReady": "{versionText}. وقت تشغيل uv غير مثبّت — ثبّته من فحص uv بالأسفل لاستخدام هذا الوكيل.",
      "clickInstall": "{versionText}. انقر تثبيت في الجهة اليمنى.",
      "localUnrecognized": "{versionText}. الإصدار المحلي غير قابل للمقارنة؛ جرّب الترقية للكتابة فوق التثبيت.",
      "upgradeAvailable": "{versionText}. تتوفر ترقية.",
      "remoteUnavailable": "{versionText}. الإصدار البعيد غير متاح حاليًا.",
      "latest": "{versionText}. أنت على أحدث إصدار."
    },
    "cline": {
      "configDescription": "تكوين مزود واجهة برمجة التطبيقات وبيانات اعتماد Cline. يتم حفظ الإعدادات في ~/.cline/data/."
    },
    "opencodePlugins": {
      "title": "إضافات OpenCode",
      "declared": "الإضافات المعلنة",
      "noPlugins": "لا توجد إضافات معلنة في opencode.json",
      "status": {
        "installed": "مثبّت",
        "missing": "غير مثبّت"
      },
      "installAll": "تثبيت جميع الإضافات المفقودة",
      "pinVersions": "تثبيت إصدارات @latest",
      "install": "تثبيت",
      "uninstall": "إزالة",
      "refresh": "تحديث",
      "success": "تم تثبيت جميع الإضافات بنجاح",
      "failed": "فشلت عملية الإضافة"
    }
  },
  "SettingsPages": {
    "agentsLoading": "جارٍ تحميل إعدادات الوكلاء..."
  },
  "GeneralSettings": {
    "loading": "جارٍ التحميل...",
    "sectionTitle": "عام",
    "sectionDescription": "تفضيلات موحّدة للطرفية الافتراضية وتسريع العرض وتفويض الوكلاء المتعدّدين.",
    "terminalTitle": "الطرفية الافتراضية",
    "terminalDescription": "اختر الصدفة المستخدمة عند فتح علامات تبويب طرفية جديدة من شريط الطرفية أو شجرة الملفات.",
    "defaultTerminalShell": "الصدفة الافتراضية",
    "terminalSystemDefault": "افتراضي النظام",
    "terminalPowerShell7": "PowerShell 7 (pwsh)",
    "terminalWindowsPowerShell": "Windows PowerShell",
    "terminalCmd": "موجّه الأوامر (cmd)",
    "terminalSaveFailed": "فشل حفظ إعدادات الطرفية: {message}",
    "terminalShellCustom": "مسار مخصص",
    "terminalShellCustomPath": "مسار الصدفة",
    "terminalShellCustomPlaceholder": "/usr/local/bin/fish",
    "terminalShellCustomSave": "حفظ",
    "terminalShellCustomHint": "أدخل مساراً مطلقاً أو اسماً يمكن حلّه عبر PATH.",
    "terminalShellNotInstalled": "غير مثبّت",
    "terminalShellNotFoundWarning": "هذا المسار غير موجود على هذا المضيف.",
    "terminalCurrentShell": "قيد الاستخدام: {path}",
    "renderingTitle": "العرض",
    "renderingDescription": "أوقف تشغيل تسريع الأجهزة إذا ظهرت شاشة سوداء أو أخطاء في العرض (شائع على بعض كروت AMD أو كروت Intel المدمجة). يسري على إصدار سطح المكتب لويندوز فقط.",
    "disableHardwareAcceleration": "تعطيل تسريع الأجهزة",
    "renderingSaveFailed": "فشل حفظ إعدادات العرض: {message}",
    "restartRequired": "تم الحفظ. أعد تشغيل التطبيق ليصبح التغيير نافذًا.",
    "restartNow": "إعادة التشغيل الآن",
    "restartFailed": "فشل إعادة التشغيل: {message}",
    "loadFailed": "فشل التحميل: {message}"
  },
  "LoginPage": {
    "documentTitle": "تسجيل الدخول - codeg",
    "brand": "Codeg",
    "subtitle": "أدخل رمز الوصول للاتصال بتطبيق سطح المكتب",
    "tokenPlaceholder": "رمز الوصول",
    "connect": "اتصال",
    "connecting": "جارٍ الاتصال...",
    "helpText": "يمكنك الحصول على الرمز من تطبيق سطح المكتب عبر الإعدادات → خدمة الويب",
    "invalidToken": "رمز غير صالح. يرجى التحقق والمحاولة مرة أخرى.",
    "connectionFailed": "فشل الاتصال (HTTP {status})",
    "networkError": "تعذر الاتصال بالخادم"
  },
  "CommitPage": {
    "title": "التزام",
    "invalidFolderId": "معرّف المجلد غير صالح",
    "loadingRepo": "جارٍ تحميل المستودع..."
  },
  "MergePage": {
    "title": "حل التعارضات",
    "invalidFolderId": "معرّف المجلد غير صالح",
    "loadingRepo": "جارٍ تحميل المستودع...",
    "localVersion": "محلي (الخاص بنا)",
    "result": "النتيجة",
    "remoteVersion": "بعيد (الخاص بهم)",
    "acceptLocal": "قبول المحلي",
    "acceptRemote": "قبول البعيد",
    "markResolved": "تحديد كمحلول",
    "abortMerge": "إلغاء",
    "completeMerge": "إتمام الدمج",
    "unresolvedConflicts": "لا تزال هناك علامات تعارض غير محلولة في هذا الملف",
    "fileResolved": "تم حل الملف بنجاح",
    "allResolved": "تم حل جميع التعارضات",
    "conflictFiles": "ملفات متعارضة",
    "loadingFile": "جارٍ تحميل الملف...",
    "preparingMerge": "جارٍ تحضير الدمج...",
    "selectFile": "اختر ملفًا لحله",
    "noConflicts": "لا توجد ملفات متعارضة",
    "skipFile": "تخطي",
    "abortSuccess": "تم إلغاء العملية",
    "applyAllNonConflicting": "تطبيق جميع التغييرات غير المتعارضة",
    "applyLeftNonConflicting": "تطبيق المحلي",
    "applyRightNonConflicting": "تطبيق البعيد"
  },
  "Folder": {
    "workspaceStatus": {
      "degradedTitle": "التحديثات الفورية غير متاحة",
      "degradedHint": "فشل تشغيل المراقب (مثل رفض الإذن). قم بالتحديث يدويًا لرؤية التغييرات.",
      "retry": "إعادة المحاولة",
      "retrying": "جارٍ إعادة المحاولة..."
    },
    "common": {
      "all": "الكل",
      "cancel": "إلغاء",
      "close": "إغلاق",
      "closeOthers": "إغلاق البقية",
      "closeAll": "إغلاق الكل",
      "confirm": "تأكيد",
      "save": "حفظ",
      "delete": "حذف",
      "rename": "إعادة تسمية",
      "loading": "جارٍ التحميل...",
      "refresh": "تحديث",
      "refreshing": "جارٍ التحديث...",
      "create": "إنشاء",
      "createAndSwitch": "إنشاء والتبديل",
      "openFile": "فتح الملف",
      "viewDiff": "عرض Diff",
      "push": "دفع..."
    },
    "statusLabels": {
      "in_progress": "قيد التنفيذ",
      "pending_review": "مراجعة",
      "completed": "مكتمل",
      "cancelled": "ملغى"
    },
    "sidebar": {
      "title": "المحادثات",
      "locateActiveConversation": "تحديد المحادثة النشطة",
      "expandAllGroups": "توسيع كل المجموعات",
      "collapseAllGroups": "طي كل المجموعات",
      "newConversation": "محادثة جديدة",
      "newConversationShort": "جديدة",
      "newChat": "محادثة جديدة",
      "search": "بحث",
      "noConversationsFound": "لم يتم العثور على محادثات.",
      "importLocalSessions": "استيراد الجلسات المحلية",
      "importing": "جارٍ الاستيراد...",
      "error": "خطأ: {message}",
      "completeAllSessions": "إكمال جميع الجلسات",
      "completeAllReviewTitle": "إكمال جميع جلسات المراجعة؟",
      "completeAllReviewDescription": "سيؤدي ذلك إلى وضع علامة مكتمل على جميع {count, plural, one {# جلسة} other {# جلسات}} في المراجعة.",
      "completing": "جارٍ الإكمال...",
      "toasts": {
        "importedSessions": "تم استيراد {imported, plural, one {# جلسة} other {# جلسات}}، وتم تخطي {skipped}",
        "importedAndUpdated": "تم استيراد {imported, plural, one {# جلسة} other {# جلسات}}، وتم تحديث {updated, plural, one {# عنوان} other {# عناوين}}، وتم تخطي {skipped}",
        "updatedTitles": "تم تحديث {updated, plural, one {# عنوان} other {# عناوين}}، وتم تخطي {skipped}",
        "noNewSessionsFound": "لم يتم العثور على جلسات جديدة (تم تخطي {skipped})",
        "importFailed": "فشل الاستيراد: {message}",
        "reviewCompleted": "تم وضع علامة مكتمل على {count, plural, one {# جلسة مراجعة} other {# جلسات مراجعة}}",
        "completeReviewFailed": "فشل إكمال جلسات المراجعة: {message}",
        "folderOpened": "تم فتح المجلد {name}",
        "folderRemoved": "تمت إزالة المجلد {name}",
        "openFolderFailed": "فشل فتح المجلد",
        "removeFolderFailed": "فشل إزالة المجلد: {message}",
        "reorderFoldersFailed": "فشل إعادة ترتيب المجلدات: {message}",
        "changeFolderColorFailed": "فشل تغيير اللون: {message}",
        "changeFolderDefaultAgentFailed": "فشل تعيين الوكيل الافتراضي: {message}"
      },
      "statsLabel": "{folders} مجلدات · {convos} محادثة",
      "reorderHandle": "اسحب لإعادة الترتيب",
      "openFolder": "فتح مجلد",
      "searchPlaceholder": "بحث عن محادثات...",
      "showCompleted": "عرض المحادثات المكتملة",
      "moreOptions": "المزيد من الخيارات",
      "sortBy": "الترتيب حسب",
      "sortByCreatedAt": "وقت الإنشاء",
      "sortByUpdatedAt": "وقت التحديث",
      "statusRunningBadge": "قيد التشغيل",
      "statusCancelledBadge": "ملغى",
      "conversationCountUnit": "{count} محادثة",
      "emptyFolderHint": "لا توجد محادثات",
      "noMatchingConversations": "لا توجد محادثات مطابقة",
      "noUnfinishedConversations": "لا توجد محادثات غير مكتملة. يمكنك تفعيل \"عرض المكتملة\" من القائمة في أعلى اليمين.",
      "removeFolderConfirmTitle": "إزالة المجلد من مساحة العمل؟",
      "removeFolderConfirmDescription": "إزالة \"{name}\" من مساحة العمل؟ سيتم إغلاق علامات التبويب والمحطات المرتبطة.",
      "folderHeaderMenu": {
        "manageConversations": "إدارة المحادثات…",
        "changeColor": "تغيير اللون",
        "useThemeColor": "استخدام سمة التطبيق",
        "setDefaultAgent": "تعيين الوكيل الافتراضي",
        "defaultAgentNone": "بدون افتراضي (استخدام العام)",
        "agentUnavailableSuffix": "(غير متاح)",
        "loadingAgents": "جارٍ تحميل الوكلاء…",
        "removeFromWorkspace": "إزالة من مساحة العمل"
      },
      "manageConversations": {
        "title": "إدارة المحادثات — {name}",
        "searchPlaceholder": "البحث بالعنوان…",
        "agentFilterAll": "جميع الوكلاء",
        "statusFilterAll": "جميع الحالات",
        "selectAllVisible": "تحديد الكل",
        "deselectAll": "إلغاء التحديد",
        "selectedCount": "{count} محدد",
        "matchedCount": "{count} مطابق",
        "messagesShort": "{count} رسالة",
        "untitledConversation": "محادثة بدون عنوان",
        "setStatus": "تعيين الحالة…",
        "deleteSelected": "حذف",
        "noConversations": "لا توجد محادثات في هذا المجلد.",
        "noMatchingConversations": "لا توجد محادثات مطابقة للفلاتر.",
        "confirmDeleteTitle": "حذف {count} محادثة؟",
        "confirmDeleteDescription": "لا يمكن التراجع عن هذا الإجراء.",
        "toastDeleted": "تم حذف {count} محادثة",
        "toastStatusUpdated": "تم تحديث حالة {count} محادثة",
        "toastOpFailed": "فشلت العملية: {message}"
      },
      "sectionPinned": "مثبّتة",
      "sectionFolders": "المجلدات",
      "sectionChats": "محادثة",
      "noChats": "لا توجد محادثات",
      "newChatAction": "محادثة جديدة"
    },
    "conversation": {
      "reloadFailed": "فشل إعادة تحميل المحادثة: {message}",
      "reloaded": "تمت إعادة تحميل المحادثة",
      "reload": "إعادة تحميل",
      "activeConversationIndicator": "المحادثة النشطة",
      "newConversation": "محادثة جديدة",
      "closeConversation": "إغلاق المحادثة",
      "copyText": "نسخ النص",
      "copyTextSuccess": "تم النسخ",
      "copyTextFailed": "فشل النسخ",
      "forkSession": "تفريع الجلسة",
      "forkSessionSuccess": "تم تفريع الجلسة بنجاح",
      "forkSessionFailed": "فشل في تفريع الجلسة: {error}",
      "exportConversation": "تصدير المحادثة",
      "exportImage": "صورة",
      "exportMarkdown": "Markdown",
      "exportHtml": "HTML",
      "exportSuccess": "تم تصدير المحادثة",
      "exportFailed": "فشل التصدير",
      "exportImageTooLong": "المحادثة طويلة جداً ولا يمكن تصديرها كصورة",
      "exportLabels": {
        "untitledConversation": "محادثة بدون عنوان",
        "agent": "الوكيل",
        "model": "النموذج",
        "status": "الحالة",
        "started": "البداية",
        "updated": "التحديث",
        "tokens": "إحصائيات الرموز",
        "duration": "المدة",
        "inputTokens": "الإدخال",
        "outputTokens": "الإخراج",
        "cacheRead": "قراءة الذاكرة",
        "cacheWrite": "كتابة الذاكرة",
        "user": "المستخدم",
        "assistant": "المساعد",
        "system": "النظام",
        "toolResult": "النتيجة",
        "toolError": "خطأ"
      }
    },
    "conversationCard": {
      "untitledConversation": "محادثة بدون عنوان",
      "newConversation": "محادثة جديدة",
      "rename": "إعادة تسمية",
      "status": "الحالة",
      "delete": "حذف",
      "importLocalSessions": "استيراد الجلسات المحلية",
      "importing": "جارٍ الاستيراد...",
      "renameConversation": "إعادة تسمية المحادثة",
      "deleteConversationTitle": "حذف المحادثة؟",
      "deleteConversationDescription": "سيؤدي ذلك إلى حذف \"{title}\". لا يمكن التراجع عن هذا الإجراء.",
      "cancel": "إلغاء",
      "save": "حفظ",
      "pin": "تثبيت",
      "unpin": "إلغاء التثبيت",
      "markCompleted": "وضع علامة كمكتمل",
      "reopen": "إعادة فتح"
    },
    "search": {
      "dialogTitle": "بحث",
      "dialogTitleWithFolder": "بحث — {name}",
      "tabConversations": "المحادثات",
      "tabFiles": "الملفات",
      "placeholder": "البحث في المحادثات...",
      "filePlaceholder": "البحث في الملفات أو المجلدات...",
      "allAgents": "الكل",
      "searching": "جارٍ البحث...",
      "typeToSearch": "اكتب للبحث في المحادثات",
      "typeToSearchFiles": "اكتب للبحث في الملفات أو المجلدات",
      "noResults": "لم يتم العثور على نتائج.",
      "untitledConversation": "محادثة بدون عنوان"
    },
    "folderTitleBar": {
      "showSidebar": "إظهار الشريط الجانبي",
      "hideSidebar": "إخفاء الشريط الجانبي",
      "toggleTerminal": "تبديل الطرفية",
      "toggleAuxPanel": "تبديل اللوحة المساعدة",
      "search": "بحث",
      "openSettings": "فتح الإعدادات",
      "withShortcut": "{label} (اختصار: {shortcut})"
    },
    "statusBar": {
      "connection": {
        "connected": "متصل",
        "connecting": "جارٍ الاتصال...",
        "prompting": "جارٍ الرد...",
        "error": "خطأ في الاتصال",
        "disconnected": "غير متصل",
        "tooltip": "{agent}: {status}",
        "tooltipError": "{agent}: {error}"
      },
      "tasks": {
        "title": "المهام"
      },
      "alerts": {
        "title": "التنبيهات",
        "empty": "لا توجد تنبيهات"
      },
      "stats": {
        "conversations": "{count} محادثة",
        "summary": "{conversations} محادثة / {messages} رسالة"
      },
      "tokens": {
        "contextWindowUsageAria": "استخدام نافذة السياق",
        "contextWindow": "نافذة السياق",
        "usedMax": "المستخدم / الحد الأقصى",
        "tokenUsage": "استخدام الرموز",
        "input": "إدخال",
        "output": "إخراج",
        "cacheRead": "قراءة الكاش",
        "cacheWrite": "كتابة الكاش",
        "total": "الإجمالي"
      }
    },
    "auxPanel": {
      "tabs": {
        "files": "الملفات",
        "changes": "التغييرات",
        "commits": "الالتزامات"
      },
      "noFolderTitle": "لا يوجد مجلد مفتوح",
      "noFolderHint": "افتح مجلدا لعرض محتواه هنا"
    },
    "windowControls": {
      "minimizeWindow": "تصغير النافذة",
      "minimize": "تصغير",
      "maximizeWindow": "تكبير النافذة",
      "maximize": "تكبير",
      "restoreWindow": "استعادة النافذة",
      "restore": "استعادة",
      "closeWindow": "إغلاق النافذة",
      "close": "إغلاق"
    },
    "tabs": {
      "closeConversationTab": "إغلاق تبويب المحادثة",
      "close": "إغلاق",
      "closeOthers": "إغلاق البقية",
      "closeAll": "إغلاق الكل",
      "tileDisplay": "عرض متجانب",
      "untileDisplay": "إلغاء التجانب"
    },
    "fileWorkspace": {
      "files": "الملفات",
      "closeFileTab": "إغلاق تبويب الملف",
      "close": "إغلاق",
      "closeOthers": "إغلاق البقية",
      "closeAll": "إغلاق الكل",
      "preview": "معاينة",
      "editSource": "تحرير المصدر",
      "maximize": "تكبير",
      "restore": "استعادة"
    },
    "terminal": {
      "rename": "إعادة تسمية",
      "close": "إغلاق",
      "closeOthers": "إغلاق البقية",
      "closeAll": "إغلاق الكل",
      "hideTerminal": "إخفاء الطرفية ({shortcut})",
      "openFolderFirst": "افتح مجلدا أولا"
    },
    "folderNameDropdown": {
      "fallbackFolderName": "مجلد",
      "openFolder": "فتح مجلد",
      "cloneRepository": "استنساخ المستودع",
      "projectBoot": "مُنشئ المشروع",
      "opened": "مفتوح",
      "recentOpen": "المفتوح مؤخرًا"
    },
    "fileWorkspacePanel": {
      "viewDiff": "عرض Diff",
      "openFile": "فتح الملف",
      "fileCount": "{count, plural, one {# ملف} other {# ملفات}}",
      "openFileOrDiff": "افتح ملفًا أو diff من اللوحة اليمنى",
      "disk": "القرص",
      "head": "HEAD",
      "unsaved": "غير محفوظ",
      "workingTree": "شجرة العمل",
      "loading": "جارٍ التحميل...",
      "compareWithBranch": "{path} · مقارنة مع {branch}",
      "hunkCount": "{count, plural, one {# مقطع} other {# مقاطع}}",
      "prev": "السابق",
      "next": "التالي",
      "jumpToLine": "الانتقال إلى السطر {line}",
      "noParsedDiffSections": "لا توجد أقسام diff محللة",
      "loadingEditor": "جارٍ تحميل المحرر...",
      "imageZoomIn": "تكبير",
      "imageZoomOut": "تصغير",
      "imageZoomReset": "إعادة تعيين التكبير",
      "htmlPreviewTitle": "معاينة HTML",
      "htmlPreviewTrust": "تفعيل البرامج النصية",
      "htmlPreviewTrustHint": "تشغيل البرامج النصية لهذا الملف والسماح بالوصول إلى الشبكة. فعّلها فقط للملفات الموثوقة."
    },
    "branchDropdown": {
      "toasts": {
        "commitCodeCompleted": "اكتمل التزام الكود",
        "pushCodeCompleted": "اكتمل دفع الكود",
        "committedFiles": "{count, plural, one {# ملف تم الالتزام به} other {# ملفات تم الالتزام بها}}",
        "taskCompleted": "اكتمل {label}",
        "taskFailed": "فشل {label}",
        "mergeNoNewCommits": "{branchName} لا يحتوي على التزامات جديدة",
        "mergedCommits": "{count, plural, one {# التزام تم دمجه} other {# التزامات تم دمجها}}",
        "allFilesUpToDate": "كل الملفات محدثة",
        "updatedFiles": "{count, plural, one {# ملف تم تحديثه} other {# ملفات تم تحديثها}}",
        "openCommitWindowFailed": "فشل فتح نافذة الالتزام",
        "openPushWindowFailed": "فشل فتح نافذة الدفع",
        "upstreamSet": "تم تعيين فرع upstream",
        "upstreamSetAndPushed": "تم تعيين فرع upstream ودفع {count, plural, one {# التزام} other {# التزامات}}",
        "noCommitsToPush": "لا توجد التزامات للدفع",
        "pushedCommits": "تم دفع {count, plural, one {# التزام} other {# التزامات}}",
        "switchedToFolder": "تم التبديل إلى {name}",
        "switchFailed": "فشل تبديل الفرع"
      },
      "tasks": {
        "newBranch": "إنشاء الفرع {name}",
        "newWorktree": "إنشاء worktree {name}",
        "checkoutTo": "Checkout إلى {branchName}",
        "mergeBranch": "دمج {branchName}",
        "rebaseTo": "Rebase إلى {branchName}",
        "deleteRemoteBranch": "حذف الفرع البعيد {branchName}",
        "initGitRepo": "تهيئة مستودع Git",
        "pullCode": "سحب الكود",
        "fetchInfo": "جلب المعلومات",
        "pushCode": "دفع الكود",
        "stashChanges": "تخزين التغييرات في stash",
        "stashPop": "استرجاع stash",
        "deleteBranch": "حذف الفرع {branchName}"
      },
      "confirm": {
        "mergeTitle": "دمج الفرع",
        "rebaseTitle": "Rebase للفرع",
        "mergeDescription": "دمج {branchName} في الفرع الحالي {currentBranch}؟",
        "rebaseDescription": "إجراء rebase للفرع الحالي {currentBranch} على {branchName}؟",
        "deleteRemoteTitle": "حذف الفرع البعيد",
        "deleteRemoteDescription": "هل تريد حذف الفرع البعيد {branchName}؟ سيؤدي ذلك إلى إزالته من المستودع البعيد ولا يمكن التراجع عن هذا الإجراء.",
        "deleteTitle": "حذف الفرع",
        "deleteDescription": "حذف الفرع {branchName}؟ لا يمكن التراجع عن هذا الإجراء.",
        "forceDeleteTitle": "حذف الفرع بالقوة",
        "forceDeleteDescription": "الفرع {branchName} لم يتم دمجه بالكامل. هل أنت متأكد من أنك تريد حذفه بالقوة؟ لا يمكن التراجع عن هذا الإجراء."
      },
      "current": "الحالي",
      "switchToBranch": "التبديل إلى هذا الفرع",
      "mergeBranchIntoCurrent": "دمج {branchName} في {currentBranch}",
      "rebaseCurrentToBranch": "Rebase لـ {currentBranch} على {branchName}",
      "noBranch": "بدون فرع",
      "initGitRepo": "تهيئة مستودع Git",
      "pullCode": "سحب الكود",
      "fetchRemoteBranches": "جلب الفروع البعيدة",
      "openCommitWindow": "التزام الكود...",
      "pushCode": "دفع...",
      "newBranch": "فرع جديد...",
      "newWorktree": "Worktree جديد...",
      "stashChanges": "...تخبئة التغييرات",
      "stashPop": "استرجاع stash...",
      "manageRemotes": "إدارة المستودعات البعيدة...",
      "localBranches": "الفروع المحلية ({count, plural, one {#} other {#}})",
      "noLocalBranches": "لا توجد فروع محلية",
      "remoteBranches": "الفروع البعيدة ({count, plural, one {#} other {#}})",
      "noRemoteBranches": "لا توجد فروع بعيدة",
      "dialogs": {
        "newBranchTitle": "فرع جديد",
        "newBranchDescription": "إنشاء فرع جديد من الفرع الحالي {branch}",
        "branchNamePlaceholder": "اسم الفرع",
        "newWorktreeTitle": "Worktree جديد",
        "newWorktreeDescription": "إنشاء worktree جديد من الفرع الحالي {branch}",
        "branchNameLabel": "اسم الفرع",
        "worktreePathLabel": "مسار worktree",
        "worktreePathPlaceholder": "مسار worktree",
        "manageRemotesTitle": "إدارة المستودعات البعيدة",
        "manageRemotesEmpty": "لم يتم تكوين أي مستودعات بعيدة",
        "remoteNamePlaceholder": "اسم المستودع البعيد",
        "remoteUrlPlaceholder": "عنوان URL للمستودع البعيد",
        "addRemote": "إضافة",
        "savingRemotes": "جارٍ الحفظ..."
      },
      "conflict": {
        "title": "تعارضات الدمج",
        "description": "الملفات التالية بها تعارضات تحتاج إلى حل:",
        "abort": "إلغاء الدمج",
        "openMergeTool": "فتح أداة الدمج",
        "completeMerge": "إتمام الدمج",
        "abortSuccess": "تم إلغاء الدمج بنجاح",
        "completeSuccess": "تم إتمام الدمج بنجاح"
      },
      "stashDialog": {
        "title": "تخبئة التغييرات",
        "description": "حفظ التغييرات الحالية في المخبأ",
        "messageLabel": "رسالة",
        "messagePlaceholder": "رسالة التخبئة (اختياري)",
        "keepIndex": "الاحتفاظ بالفهرس (التغييرات المرحلة تبقى مرحلة)",
        "cancel": "إلغاء",
        "stash": "تخبئة",
        "success": "تم تخبئة التغييرات",
        "error": "فشل في تخبئة التغييرات"
      },
      "unstashDialog": {
        "title": "تطبيق المخبأ",
        "noStashes": "لا توجد تخبئات",
        "selectFile": "اختر ملفاً لعرض الفرق",
        "viewDiff": "عرض الفرق",
        "original": "الأصلي",
        "modified": "المعدل",
        "apply": "تطبيق",
        "drop": "حذف",
        "applySuccess": "تم تطبيق التخبئة",
        "dropSuccess": "تم حذف التخبئة",
        "confirmApply": "تطبيق التخبئة {ref} على دليل العمل؟",
        "cancel": "إلغاء"
      },
      "deleteBranch": "حذف الفرع"
    },
    "commitDialog": {
      "toasts": {
        "commitCompleted": "اكتمل التزام الكود",
        "pushFailed": "فشل الدفع",
        "committedFiles": "{count, plural, one {# ملف تم الالتزام به} other {# ملفات تم الالتزام بها}}",
        "addedToVcs": "تمت الإضافة إلى VCS",
        "addToVcsFailed": "فشلت الإضافة إلى VCS",
        "fileDeleted": "تم حذف الملف",
        "deleteFailed": "فشل الحذف",
        "fileRolledBack": "تم التراجع عن الملف",
        "rollbackFailed": "فشل التراجع",
        "dirRolledBack": "تم استعادة المجلد",
        "dirDeleted": "تم حذف المجلد"
      },
      "confirm": {
        "deleteTitle": "تأكيد الحذف",
        "deleteDescription": "حذف الملف \"{file}\"؟ لا يمكن التراجع عن هذا الإجراء.",
        "rollbackTitle": "تأكيد التراجع",
        "rollbackDescription": "التراجع عن الملف \"{file}\" إلى HEAD؟ ستفقد التغييرات غير المحفوظة.",
        "rollbackDirDescription": "هل تريد استعادة المجلد \"{dir}\" إلى HEAD؟ ستفقد التغييرات غير المحفوظة.",
        "deleteDirDescription": "هل تريد حذف المجلد \"{dir}\"؟ لا يمكن التراجع عن هذا الإجراء."
      },
      "actions": {
        "select": "تحديد",
        "unselect": "إلغاء التحديد",
        "rollback": "تراجع",
        "addToVcs": "إضافة إلى VCS"
      },
      "aria": {
        "selectFile": "{action}: {path}",
        "unselectAllFiles": "إلغاء تحديد كل الملفات",
        "selectAllFiles": "تحديد كل الملفات",
        "unselectTracked": "إلغاء تحديد التغييرات المتعقبة",
        "selectTracked": "تحديد التغييرات المتعقبة",
        "unselectUntracked": "إلغاء تحديد الملفات غير المتعقبة",
        "selectUntracked": "تحديد الملفات غير المتعقبة"
      },
      "loading": "جارٍ التحميل...",
      "selectionCount": "{selected} / {total} ملفات",
      "emptyFiles": "لا توجد ملفات متغيرة",
      "trackedChanges": "التغييرات المتعقبة ({count})",
      "untrackedFiles": "الملفات غير المتعقبة ({count})",
      "commitMessage": "رسالة الالتزام",
      "commitMessagePlaceholder": "أدخل رسالة الالتزام...",
      "commitButton": "التزام ({count})",
      "commitAndPushButton": "إيداع ودفع ({count})",
      "head": "HEAD",
      "workingTree": "شجرة العمل",
      "clickFileToDiff": "انقر اسم الملف لعرض الفرق",
      "loadingDiff": "جارٍ تحميل diff..."
    },
    "pushWindow": {
      "title": "دفع الكود",
      "noUnpushedCommits": "لا توجد التزامات غير مدفوعة",
      "noRemoteConfigured": "لم يتم تكوين مستودع Git بعيد\nأضف واحدًا في «إدارة المستودعات البعيدة»",
      "newBranchNoPushedCommits": "فرع جديد — ادفع لإنشاء فرع تتبع عن بُعد",
      "unpushed": "غير مدفوع",
      "selectFileToViewDiff": "اختر ملفًا لعرض الفرق",
      "before": "قبل",
      "after": "بعد",
      "push": "دفع",
      "toasts": {
        "pushSuccess": "تم الدفع بنجاح",
        "pushFailed": "فشل الدفع",
        "upstreamSet": "تم تعيين الفرع البعيد",
        "upstreamSetAndPushed": "تم تعيين الفرع البعيد ودفع {count} التزام",
        "noCommitsToPush": "لا توجد التزامات للدفع",
        "pushedCommits": "تم دفع {count} التزام"
      }
    },
    "gitLogTab": {
      "filesTitle": "الملفات",
      "expandAllFiles": "توسيع كل الملفات",
      "collapseAllFiles": "طي كل الملفات",
      "workspace": "مساحة العمل",
      "retry": "إعادة المحاولة",
      "noCommitsFound": "لم يتم العثور على التزامات",
      "notAGitRepoTitle": "ليس مستودع Git",
      "notAGitRepoHint": "قم بتهيئة Git من قائمة الفروع أعلاه، أو افتح مستودعًا موجودًا.",
      "hash": "بصمة الالتزام",
      "copyHash": "نسخ الـ hash",
      "copyMessage": "نسخ الرسالة",
      "author": "المؤلف",
      "noFileChangeDetails": "لا توجد تفاصيل تغييرات ملفات متاحة.",
      "branchesTitle": "الفروع",
      "loadingBranches": "جارٍ تحميل الفروع...",
      "noContainingBranches": "لم يتم العثور على فروع تحتوي هذا الالتزام.",
      "newBranch": "فرع جديد...",
      "resetToHere": "إعادة الضبط إلى هنا",
      "resetDisabledReasonNotCurrentBranchView": "متاح فقط عند عرض الفرع الحالي",
      "viewCommitDiffAria": "عرض diff للالتزام {hash}",
      "copyFullCommitHashAria": "نسخ hash الكامل للالتزام {hash}",
      "pushStatus": {
        "pushed": "تم الدفع إلى البعيد",
        "notPushed": "لم يتم الدفع إلى البعيد",
        "unknown": "حالة الدفع غير معروفة (لم يتم إعداد upstream)"
      },
      "time": {
        "monthsAgo": "{count, plural, one {منذ # شهر} other {منذ # أشهر}}",
        "daysAgo": "{count, plural, one {منذ # يوم} other {منذ # أيام}}",
        "hoursAgo": "{count, plural, one {منذ # ساعة} other {منذ # ساعات}}",
        "minsAgo": "{count, plural, one {منذ # دقيقة} other {منذ # دقائق}}",
        "justNow": "الآن"
      },
      "toasts": {
        "createdAndSwitchedNewBranch": "تم إنشاء فرع جديد والتبديل إليه",
        "newBranchFromCommit": "{name} (من {shortHash})",
        "createBranchFailed": "فشل إنشاء الفرع",
        "openPushWindowFailed": "فشل فتح نافذة الدفع",
        "resetSuccess": "تمت إعادة الضبط بنجاح",
        "resetSuccessDescription": "تمت إعادة ضبط {branch} إلى {shortHash} باستخدام {mode}",
        "resetFailed": "فشلت إعادة الضبط"
      },
      "branchSelector": {
        "selectBranchPlaceholder": "اختر فرعًا...",
        "localBranches": "الفروع المحلية",
        "current": "الحالي",
        "remoteBranches": "الفروع البعيدة",
        "refreshCommitHistory": "تحديث سجل الالتزامات"
      },
      "dialogs": {
        "newBranchTitle": "فرع جديد",
        "newBranchDescription": "إنشاء فرع جديد مع الالتزام {shortHash} كأحدث التزام.",
        "branchNamePlaceholder": "اسم الفرع",
        "reset": {
          "title": "إعادة ضبط الفرع الحالي إلى هذا الالتزام",
          "branchLabel": "الفرع",
          "targetLabel": "الالتزام الهدف",
          "messageLabel": "الرسالة",
          "modeLabel": "وضع إعادة الضبط",
          "confirmButton": "إعادة الضبط",
          "modes": {
            "soft": {
              "label": "--soft",
              "description": "ينقل HEAD ومؤشر الفرع الحالي إلى الالتزام الهدف.\nيبقي Index و Working Tree بدون تغيير.\nتظل تغييرات الالتزامات التي تمت إزالتها في حالة staged."
            },
            "mixed": {
              "label": "--mixed (الافتراضي)",
              "description": "ينقل HEAD إلى الالتزام الهدف.\nيعيد ضبط Index إلى الالتزام الهدف مع الإبقاء على تغييرات Working Tree.\nتتحول التغييرات من staged إلى unstaged."
            },
            "hard": {
              "label": "--hard",
              "description": "ينقل HEAD ويعيد ضبط كل من Index و Working Tree إلى الالتزام الهدف.\nسيتم حذف التغييرات المحلية المتتبعة بعد الالتزام الهدف.\nهذه عملية تدميرية."
            },
            "keep": {
              "label": "--keep",
              "description": "ينقل HEAD إلى الالتزام الهدف مع محاولة الاحتفاظ بالتغييرات المحلية.\nيتم الاحتفاظ فقط بالتغييرات غير المتعارضة.\nعند وجود تعارض، يتم إيقاف العملية لحماية عملك."
            }
          }
        }
      }
    },
    "gitChangesTab": {
      "workspace": "مساحة العمل",
      "noChanges": "لا توجد تغييرات محلية",
      "notAGitRepoTitle": "ليس مستودع Git",
      "notAGitRepoHint": "قم بتهيئة Git من قائمة الفروع أعلاه، أو افتح مستودعًا موجودًا.",
      "trackedChanges": "التغييرات المتعقبة ({count})",
      "untrackedFiles": "الملفات غير المتعقبة ({count})",
      "expandTracked": "توسيع التغييرات المتعقبة",
      "collapseTracked": "طي التغييرات المتعقبة",
      "expandUntracked": "توسيع الملفات غير المتعقبة",
      "collapseUntracked": "طي الملفات غير المتعقبة",
      "actions": {
        "commitCode": "التزام الكود",
        "rollback": "تراجع",
        "addToVcs": "إضافة إلى VCS",
        "delete": "حذف"
      },
      "toasts": {
        "noAddableFilesInDir": "لا توجد ملفات متغيرة في هذا الدليل يمكن إضافتها إلى VCS",
        "noRollbackFilesInDir": "لا توجد ملفات متغيرة في هذا الدليل يمكن التراجع عنها",
        "addedToVcs": "تمت إضافة {name} إلى VCS",
        "addToVcsFailed": "فشلت الإضافة إلى VCS",
        "openCommitWindowFailed": "فشل فتح نافذة الالتزام",
        "rolledBack": "تم التراجع عن {name}",
        "rollbackFailed": "فشل التراجع",
        "addedFilesToVcs": "تمت إضافة {count, plural, one {# ملف} other {# ملفات}} إلى VCS",
        "rolledBackFiles": "تم التراجع عن {count, plural, one {# ملف} other {# ملفات}}",
        "deleted": "تم حذف {name}",
        "deleteFailed": "فشل الحذف",
        "deletedFiles": "تم حذف {count} ملفات",
        "noDeletableFilesInDir": "لا توجد ملفات معدّلة في هذا الدليل يمكن حذفها"
      },
      "directoryDialog": {
        "descriptionAdd": "اختر ملفات داخل الدليل {path} لإضافتها إلى VCS.",
        "descriptionRollback": "اختر ملفات داخل الدليل {path} للتراجع عنها.",
        "descriptionDelete": "اختر ملفات داخل الدليل {path} لحذفها. لا يمكن التراجع عن هذا الإجراء.",
        "descriptionFallback": "اختر ملفات للمتابعة.",
        "selectionCount": "تم تحديد {selected} / {total} ملف",
        "selectAll": "تحديد الكل",
        "unselectAll": "إلغاء تحديد الكل",
        "loadingCandidates": "جارٍ تحميل تغييرات الدليل...",
        "noOperableFiles": "لا توجد ملفات قابلة للتشغيل"
      },
      "rollbackConfirm": {
        "title": "تأكيد التراجع",
        "descriptionWithTarget": "التراجع عن التغييرات المحلية لـ {kind} \"{name}\"؟",
        "descriptionFallback": "التراجع عن التغييرات المحلية؟",
        "kindDirectory": "الدليل",
        "kindFile": "الملف"
      },
      "deleteConfirm": {
        "title": "تأكيد الحذف",
        "descriptionWithTarget": "حذف {kind} \"{name}\"؟ لا يمكن التراجع عن هذا الإجراء.",
        "descriptionFallback": "لا يمكن التراجع عن هذا الإجراء.",
        "kindDirectory": "الدليل",
        "kindFile": "الملف"
      }
    },
    "tabContext": {
      "loadingConversation": "جارٍ التحميل...",
      "untitledConversation": "محادثة بدون عنوان",
      "newConversation": "محادثة جديدة"
    },
    "fileTreeTab": {
      "workspace": "مساحة العمل",
      "retry": "إعادة المحاولة",
      "git": "Git",
      "openInFileManager": "فتح في مدير الملفات",
      "openInFinder": "فتح في Finder",
      "openInExplorer": "فتح في Explorer",
      "attachToCurrentSession": "إضافة إلى الجلسة",
      "compareWithBranch": "المقارنة مع الفرع...",
      "reloadFromDisk": "إعادة التحميل من القرص",
      "new": "جديد",
      "newFile": "ملف",
      "newDirectory": "مجلد",
      "openIn": "فتح في",
      "openInTerminal": "فتح في الطرفية",
      "copyPath": "نسخ المسار",
      "upload": "رفع ملفات/مجلد",
      "download": "تنزيل ملف",
      "downloadAsZip": "تنزيل كملف ZIP",
      "actions": {
        "select": "تحديد",
        "unselect": "إلغاء التحديد",
        "commitCode": "تنفيذ الالتزام بالكود",
        "rollback": "التراجع",
        "addToVcs": "إضافة إلى VCS"
      },
      "aria": {
        "selectPath": "{action}: {path}"
      },
      "toasts": {
        "openDirectoryFailed": "فشل فتح المجلد",
        "openBuiltinTerminalFailed": "تعذر فتح الطرفية المدمجة",
        "openCommitWindowFailed": "فشل فتح نافذة الالتزام",
        "noAddableFilesInDir": "لا توجد ملفات متغيرة في هذا المجلد يمكن إضافتها إلى VCS",
        "noRollbackFilesInDir": "لا توجد ملفات متغيرة في هذا المجلد يمكن التراجع عنها",
        "addedToVcs": "تمت إضافة {name} إلى VCS",
        "addToVcsFailed": "فشلت الإضافة إلى VCS",
        "loadBranchesFailed": "فشل تحميل الفروع",
        "renameFailed": "فشل إعادة التسمية",
        "deleteFailed": "فشل الحذف",
        "rolledBack": "تم التراجع عن {name}",
        "rollbackFailed": "فشل التراجع",
        "addedFilesToVcs": "{count, plural, one {تمت إضافة ملف واحد إلى VCS} other {تمت إضافة # ملفات إلى VCS}}",
        "rolledBackFiles": "{count, plural, one {تم التراجع عن ملف واحد} other {تم التراجع عن # ملفات}}",
        "savedAsCopy": "تم الحفظ كنسخة",
        "saveCopyFailed": "فشل الحفظ كنسخة",
        "watchStartFailed": "فشل بدء مراقبة الملفات",
        "createFailed": "فشل في الإنشاء",
        "downloadFailed": "فشل تنزيل {name}",
        "downloadSaved": "تم تنزيل {name}",
        "pathCopied": "تم نسخ المسار",
        "copyPathFailed": "فشل نسخ المسار"
      },
      "createDialog": {
        "newFile": "ملف جديد",
        "newDirectory": "مجلد جديد",
        "description": "أدخل اسمًا لـ{kind} الجديد.",
        "placeholderFile": "file-name.ext",
        "placeholderDirectory": "folder-name"
      },
      "renameDialog": {
        "renameDirectory": "إعادة تسمية المجلد",
        "renameFile": "إعادة تسمية الملف",
        "description": "أدخل اسمًا جديدًا (الاسم فقط، بدون مسار).",
        "placeholderDirectory": "اسم-مجلد-جديد",
        "placeholderFile": "اسم-ملف-جديد.ext"
      },
      "uploadDialog": {
        "title": "رفع إلى مساحة العمل",
        "description": "اضبط الوجهة عند الحاجة، ثم أضف الملفات أو المجلدات.",
        "workspaceRoot": "جذر مساحة العمل",
        "targetPathLabel": "رفع إلى",
        "targetPathHint": "المسار النهائي: {path}",
        "dropHint": "اسحب الملفات أو المجلدات هنا، أو استخدم الأزرار أدناه",
        "dropHintActive": "حرّر للإضافة إلى قائمة الانتظار",
        "selectFiles": "اختيار ملفات",
        "selectFolder": "اختيار مجلد",
        "startUpload": "بدء الرفع",
        "clearQueue": "مسح المنتهية",
        "removeItem": "إزالة من قائمة الانتظار",
        "retry": "إعادة المحاولة",
        "dropZoneAria": "أفلت الملفات هنا أو نشّط للاستعراض",
        "folderEmpty": "لم يتم العثور على ملفات في المجلد المسحوب",
        "summary": "الإجمالي: {total} · نجح: {succeeded} · فشل: {failed}",
        "status": {
          "pending": "قيد الانتظار",
          "uploading": "جاري الرفع",
          "success": "تم",
          "error": "فشل",
          "cancelled": "ملغى"
        }
      },
      "directoryDialog": {
        "descriptionAdd": "حدد الملفات ضمن المجلد {path} لإضافتها إلى VCS.",
        "descriptionRollback": "حدد الملفات ضمن المجلد {path} للتراجع عنها.",
        "descriptionFallback": "حدد الملفات للمتابعة.",
        "selectionCount": "تم تحديد {selected} من {total} ملف",
        "selectAll": "تحديد الكل",
        "unselectAll": "إلغاء تحديد الكل",
        "loadingCandidates": "جارٍ تحميل تغييرات المجلد...",
        "noOperableFiles": "لا توجد ملفات قابلة للمعالجة"
      },
      "compareDialog": {
        "title": "المقارنة مع الفرع",
        "descriptionWithTarget": "حدد فرعًا وقارن مع {kind} {path}",
        "descriptionFallback": "حدد فرعًا للمقارنة.",
        "kindDirectory": "مجلد",
        "kindFile": "ملف",
        "filterPlaceholder": "تصفية الفروع، مثال: main / origin/main",
        "singleClickHint": "انقر على فرع للمقارنة مباشرة",
        "loadingBranches": "جارٍ تحميل الفروع...",
        "recentBranches": "الفروع الحديثة ({count})",
        "noCurrentBranch": "لا يوجد فرع حالي",
        "localBranches": "الفروع المحلية ({count})",
        "remoteBranches": "الفروع البعيدة ({count})",
        "noMatchingBranches": "لا توجد فروع مطابقة"
      },
      "externalConflictDialog": {
        "title": "تم اكتشاف تغييرات خارجية في الملفات",
        "descriptionWithPath": "تم تغيير الملف {path} على القرص، والتعديلات الحالية غير محفوظة.",
        "descriptionFallback": "تم تغيير الملف الحالي على القرص، والتعديلات الحالية غير محفوظة.",
        "compare": "مقارنة",
        "savingCopy": "جارٍ حفظ نسخة...",
        "saveAsCopy": "حفظ كنسخة",
        "reload": "إعادة التحميل"
      },
      "deleteConfirm": {
        "title": "تأكيد الحذف",
        "descriptionWithTarget": "حذف {kind} \"{name}\"؟ لا يمكن التراجع عن هذا الإجراء.",
        "descriptionFallback": "لا يمكن التراجع عن هذا الإجراء.",
        "kindDirectory": "مجلد",
        "kindFile": "ملف"
      },
      "rollbackConfirm": {
        "title": "تأكيد التراجع",
        "descriptionWithTarget": "التراجع عن التغييرات المحلية للملف \"{name}\"؟",
        "descriptionFallback": "التراجع عن التغييرات المحلية لهذا الملف؟"
      },
      "terminalTitle": "الطرفية · {name}"
    },
    "commandDropdown": {
      "loading": "جارٍ التحميل...",
      "addCommand": "إضافة أمر",
      "manageCommands": "إدارة الأوامر...",
      "runCommandTitle": "تشغيل: {command}",
      "stopCommandTitle": "إيقاف: {command}",
      "manageDialog": {
        "title": "إدارة الأوامر",
        "empty": "لا توجد أوامر بعد",
        "namePlaceholder": "الاسم",
        "commandPlaceholder": "الأمر",
        "add": "إضافة",
        "saving": "جارٍ الحفظ..."
      }
    },
    "workspaceContext": {
      "confirmCloseDirtyTab": "إغلاق \"{title}\" بدون حفظ؟",
      "confirmCloseOtherDirtyTabs": "إغلاق التبويبات الأخرى التي تحتوي تغييرات غير محفوظة؟",
      "confirmCloseAllDirtyTabs": "إغلاق جميع التبويبات التي تحتوي تغييرات غير محفوظة؟",
      "unableLoadContent": "تعذر تحميل المحتوى.\n\n{message}",
      "previewRequestTimedOut": "انتهت مهلة طلب المعاينة",
      "diffRequestTimedOut": "انتهت مهلة طلب Diff",
      "branchCompareRequestTimedOut": "انتهت مهلة طلب مقارنة الفروع",
      "commitDiffRequestTimedOut": "انتهت مهلة طلب Diff للالتزام",
      "saveRequestTimedOut": "انتهت مهلة طلب الحفظ",
      "reloadRequestTimedOut": "انتهت مهلة طلب إعادة التحميل",
      "noChanges": "لا توجد تغييرات.",
      "noDiffOutput": "لا يوجد مخرجات diff.",
      "diffTitleWorkspace": "Diff · مساحة العمل",
      "diffDescriptionWorkingTree": "شجرة العمل (HEAD)",
      "diffTitleFile": "الفرق · {name}",
      "compareTitleFile": "مقارنة · {name}",
      "compareTitleBranch": "مقارنة · {branch}",
      "compareDescriptionPath": "{path} · مقارنة مع {branch}",
      "compareDescriptionBranch": "مقارنة مع {branch}",
      "diffTitleCommitFile": "الفرق · {name} @ {hash}",
      "diffTitleCommit": "الفرق · {hash}",
      "diffDescriptionCommitPath": "{path} · الالتزام {commit}",
      "diffDescriptionCommit": "الالتزام {commit}",
      "diffTitleConflictFile": "تعارض · {name}",
      "diffDescriptionConflict": "{path} · القرص مقابل غير المحفوظ"
    },
    "chat": {
      "acpConnections": {
        "actions": {
          "openAgentsSettings": "فتح إعدادات الوكلاء",
          "retry": "إعادة المحاولة"
        },
        "agentsSetupHint": "افتح الإعدادات > الوكلاء لإدارة التثبيت.",
        "withSetupHint": "{message}\n{hint}",
        "blocked": {
          "missingConfig": "تعذر قراءة إعدادات الوكيل الحالية.",
          "disabled": "{agent} معطّل في إعدادات الوكلاء. قم بتمكينه قبل الاتصال.",
          "unavailable": "{agent} غير متاح على المنصة الحالية.",
          "sdkMissing": "لم يتم تثبيت SDK الخاص بـ {agent}"
        },
        "backendErrors": {
          "initializeTimeout": "انتهت مهلة مصافحة اتصال {agent} (لا استجابة بعد 60 ثانية). افتح الإعدادات للتحقق من إعدادات الوكيل والشبكة.",
          "processExited": "انتهت عملية {agent} بشكل غير متوقع.",
          "spawnFailed": "تعذر بدء تشغيل {agent}: {message}",
          "downloadFailed": "فشل تنزيل {agent}: {message}",
          "sessionLoadResourceNotFound": "فشل تحميل جلسة {agent}. أعد التحميل لإعادة المحاولة، أو ابدأ محادثة جديدة.",
          "turnFailedRefusal": "رفض {agent} متابعة هذه الجولة. يدل ذلك غالبًا على خطأ في الخلفية أو البوابة. يرجى مراجعة سجلات الوكيل.",
          "turnFailedMaxTokens": "بلغ {agent} الحد الأقصى للرموز المسموح بها في هذه الجولة.",
          "turnFailedMaxTurnRequests": "بلغ {agent} الحد الأقصى لعدد الطلبات المسموح بها في هذه الجولة.",
          "turnFailedUnknown": "أنهى {agent} الجولة بسبب توقف غير معروف.",
          "turnFailedEmpty": "أنهى {agent} الجولة دون إنتاج أي رد. يرجى التحقق من إعدادات الوكيل."
        },
        "unableReadAgentConfig": "تعذر قراءة إعدادات الوكيل: {message}",
        "connectFailedTitle": "فشل اتصال {agent}",
        "toolFallbackTitle": "أداة",
        "eventErrorTitle": "خطأ الوكيل",
        "notificationTurnComplete": "{agent} أنهى الاستجابة",
        "notificationError": "{agent} خطأ: {message}",
        "claudeApiRetry": {
          "fallbackError": "authentication_failed",
          "retryingWithMax": "إعادة المحاولة {attempt}/{max}",
          "retryingAttempt": "إعادة المحاولة رقم {attempt}",
          "retrying": "جاري إعادة المحاولة",
          "nextRetryIn": "المحاولة التالية خلال {seconds}ث",
          "line": "{error}{status} · {retry}",
          "lineWithDelay": "{error}{status} · {retry}، {delay}",
          "httpStatus": " (HTTP {status})"
        }
      },
      "connectionLifecycle": {
        "tasks": {
          "connectingTitle": "جارٍ الاتصال بـ {agent}",
          "connectingDescription": "جارٍ إنشاء الاتصال",
          "loadingSelectorsTitle": "جارٍ تحميل محددات {agent}",
          "loadingSelectorsDescription": "جارٍ جلب خيارات الوضع وإعدادات الجلسة",
          "initSessionTitle": "جارٍ تهيئة جلسة {agent}",
          "initSessionDescription": "جارٍ إنشاء الجلسة وتحميل الإعدادات"
        },
        "errors": {
          "connectionFailed": "فشل الاتصال"
        }
      },
      "shared": {
        "attachedResources": "الموارد المرفقة",
        "toolCallFailed": "فشل استدعاء الأداة"
      },
      "messageThread": {
        "emptyTitle": "لا توجد رسائل بعد",
        "emptyDescription": "ابدأ محادثة لرؤية الرسائل هنا"
      },
      "chatInput": {
        "connecting": "جارٍ الاتصال...",
        "agentResponding": "{agent} يرد...",
        "sendMessage": "أرسل رسالة..."
      },
      "messageInput": {
        "askAnything": "اسأل أي شيء...",
        "removeAttachmentAria": "إزالة {name}",
        "attachFiles": "إرفاق ملفات",
        "addActions": "إضافة",
        "quickMessages": "الرسائل السريعة",
        "quickMessagesEmpty": "لا توجد رسائل سريعة بعد",
        "quickMessagesLoading": "جارٍ التحميل...",
        "quickMessageUntitled": "بدون عنوان",
        "liveFeedback": "ملاحظات مباشرة",
        "liveFeedbackDisabledHint": "متاح أثناء عمل الوكيل",
        "dropFilesToAttach": "أسقط الملفات لإرفاقها",
        "loadingSettings": "جارٍ تحميل الإعدادات...",
        "loadingMode": "جارٍ تحميل الوضع...",
        "modeLabel": "الوضع",
        "agentSettings": "إعدادات الوكيل",
        "cancel": "إلغاء",
        "send": "إرسال",
        "forkAndSend": "تفريع وإرسال",
        "slashCommands": "أوامر الشرطة المائلة",
        "expertSkills": "مهارات الخبراء",
        "expertsEmptyForAgent": "لا يحتوي هذا العميل على خبراء مفعّلين. فعّلهم من الإعدادات > الخبراء.",
        "slashSearchPlaceholder": "البحث عن الأوامر...",
        "slashSearchEmpty": "لا توجد أوامر مطابقة",
        "attachLocalUpload": "تحميل ملف محلي",
        "attachServerFile": "اختيار ملف من الخادم",
        "attachUploadTooLarge": "{names} يتجاوز حد التحميل {limit}MB وتم تخطيه.",
        "attachUploadFailed": "فشل تحميل {names}.",
        "attachUploadNotAFile": "{names} ليس ملفاً عادياً (مجلد أو ملف خاص) وتم تخطيه.",
        "attachUploadQuotaExceeded": "نفدت مساحة التحميل على الخادم، تعذر رفع {names}."
      },
      "messageQueue": {
        "addToQueue": "إضافة للقائمة",
        "saveEdit": "حفظ",
        "cancelEdit": "إلغاء التعديل",
        "editItem": "تعديل",
        "deleteItem": "حذف"
      },
      "welcomeInputPanel": {
        "agentsSettingsPath": "الإعدادات > الوكلاء",
        "autoConnectFallback": "انقر لفتح {path} وإدارة التثبيت.",
        "autoConnectAppend": "{message}. انقر لفتح {path} وإدارة التثبيت.",
        "enableAgentFirstPlaceholder": "فعّل وكيلًا واحدًا على الأقل قبل بدء جلسة...",
        "prepareSessionFailed": "تعذّر تحضير جلسة الدردشة. يرجى المحاولة مرة أخرى.",
        "createConversationFailed": "تعذّر إنشاء المحادثة. يرجى المحاولة مرة أخرى.",
        "askAnythingPlaceholder": "اسأل أي شيء..."
      },
      "welcomePanel": {
        "greeting": "ماذا تودّ أن <highlight>تفعل اليوم</highlight>؟",
        "tips": {
          "tileTabs": "انقر بزر الفأرة الأيمن على تبويب محادثة واختر «عرض متجانب» لمقارنة عدة جلسات جنبًا إلى جنب.",
          "pinTab": "انقر نقرًا مزدوجًا على تبويب محادثة لتثبيته كي لا تستبدله جلسة جديدة تلقائيًا.",
          "shortcutsNewSearch": "<shortcut>{newConversation}</shortcut> يفتح محادثة جديدة، و<shortcut>{searchConversations}</shortcut> يبحث في السجل.",
          "slashAtMention": "اكتب / في حقل الإدخال لتشغيل أوامر السلاش، أو @ للإشارة إلى ملف من المشروع.",
          "pasteDropFiles": "ألصق لقطة شاشة أو اسحب ملفًا مباشرة إلى حقل الإدخال لإرفاقه.",
          "queueMessage": "أثناء رد الوكيل، تابع الكتابة — ستوضع رسالتك التالية في الطابور وتُرسل تلقائيًا عند انتهائه.",
          "draftAutoSave": "تُحفظ المسودات غير المُرسلة تلقائيًا لكل محادثة وتُستعاد عند العودة.",
          "forkSend": "تتضمن قائمة زر الإرسال المنسدلة «تفرّع وأرسل» لإنشاء فرع من النقطة الحالية في تبويب جديد.",
          "exportConversation": "انقر بزر الفأرة الأيمن داخل المحادثة لتصديرها بصيغة Markdown أو HTML أو صورة.",
          "chatChannels": "اربط Telegram / Lark / WeChat من «الإعدادات → قنوات الدردشة» للمتابعة من هاتفك.",
          "shortcutsAuxPanel": "<shortcut>{toggleAuxPanel}</shortcut> يبدّل اللوحة اليمنى لعرض الملفات المعدّلة وتغييرات Git لهذه الجلسة.",
          "shortcutsTerminalSidebar": "<shortcut>{toggleTerminal}</shortcut> يفتح الطرفية المدمجة، و<shortcut>{toggleSidebar}</shortcut> يبدّل الشريط الجانبي.",
          "customShortcuts": "يمكن إعادة تعيين جميع الاختصارات من «الإعدادات → الاختصارات».",
          "webService": "فعّل «الإعدادات → خدمة الويب» ليتمكن أعضاء الفريق من الوصول إلى نفس codeg عبر المتصفح.",
          "fusionMode": "افتح ملفًا أو فرقًا لعرضه تلقائيًا بجوار المحادثة.",
          "quickMessages": "افتح زر + بجانب الإدخال واختر «الرسائل السريعة» لإدراج مقتطف محفوظ (تُدار من «الإعدادات → الرسائل السريعة»).",
          "experts": "يحتوي زر + على قائمة «مهارات الخبراء» — حمّل أدوارًا مثل التصحيح أو التخطيط بنقرة واحدة."
        }
      },
      "agentSelector": {
        "noEnabledAgents": "لا يوجد وكلاء مفعّلون",
        "openAgentsSettings": "فتح إعدادات الوكلاء"
      },
      "subAgentOverlay": {
        "title": "الوكلاء الفرعيون",
        "collapsedSummary": "الوكلاء الفرعيون {count}",
        "collapseAria": "طي الوكلاء الفرعيين"
      },
      "agentPlanOverlay": {
        "title": "خطة الوكيل",
        "collapsePlanAria": "طي الخطة",
        "collapsedSummary": "الخطة {completed}/{total}",
        "status": {
          "completed": "مكتمل",
          "inProgress": "قيد التنفيذ",
          "pending": "قيد الانتظار",
          "unknown": "غير معروف"
        },
        "priority": {
          "high": "مرتفع",
          "medium": "متوسط",
          "low": "منخفض",
          "unknown": "غير معروف"
        }
      },
      "permissionDialog": {
        "subtitle": "يطلب الوكيل إذنًا لمتابعة هذا الدور.",
        "kindFallbackTool": "أداة",
        "command": "أمر",
        "cwd": "دليل العمل: {cwd}",
        "filesSummary": "الملفات: {count}",
        "moreFiles": "+{count} ملف إضافي",
        "plan": "الخطة",
        "allowedActions": "الإجراءات المسموح بها",
        "targetMode": "وضع الهدف: {mode}"
      },
      "questionDialog": {
        "title": "الوكيل يطرح سؤالاً",
        "placeholder": "اكتب إجابتك...",
        "send": "إرسال"
      },
      "messageBranch": {
        "previousBranchAria": "الفرع السابق",
        "nextBranchAria": "الفرع التالي",
        "pageOf": "{current} من {total}"
      },
      "terminal": {
        "title": "الطرفية",
        "running": "قيد التشغيل"
      },
      "reasoning": {
        "thinking": "جارٍ التفكير…",
        "thoughtForFewSeconds": "تفكير",
        "thoughtForSeconds": "تفكير"
      },
      "linkSafety": {
        "errorCannotOpen": "تعذر فتح الملف المحلي",
        "errorNoWorkspace": "لا يوجد مجلد مساحة عمل نشط حالياً.",
        "errorOutsideWorkspace": "الملف خارج مجلد مساحة العمل الحالي.",
        "errorFailedOpen": "فشل فتح الملف المحلي",
        "errorFailedLink": "فشل فتح الرابط",
        "errorUnsupportedLinkProtocol": "بروتوكول الرابط هذا غير مدعوم."
      },
      "messageList": {
        "attachedResources": "الموارد المرفقة",
        "loading": "جارٍ التحميل...",
        "error": "خطأ: {message}",
        "errorTitle": "فشل تحميل الجلسة",
        "errorActionReload": "إعادة تحميل",
        "errorActionNewSession": "محادثة جديدة",
        "emptyConversation": "لا توجد رسائل في هذه المحادثة.",
        "systemMessage": "رسالة النظام",
        "copyMessage": "نسخ",
        "copied": "تم النسخ",
        "downloadImage": "تنزيل الصورة",
        "downloadFailed": "فشل التنزيل: {message}",
        "imageGeneration": "إنشاء الصورة",
        "imageGenerationPending": "جارٍ إنشاء الصورة…",
        "imageGenerationFailed": "فشل إنشاء الصورة",
        "model": "النموذج",
        "tokenStats": "استخدام الرموز",
        "tokenInput": "الإدخال",
        "tokenOutput": "الإخراج",
        "tokenCacheRead": "قراءة التخزين المؤقت",
        "tokenCacheWrite": "كتابة التخزين المؤقت",
        "duration": "المدة",
        "completedAt": "وقت الإنجاز",
        "jumpToPreviousUserMessage": "الانتقال إلى رسالة المستخدم"
      },
      "liveTurnStats": {
        "thinking": "جارٍ التفكير...",
        "streaming": "جارٍ البث",
        "elapsedHours": "{value}س",
        "elapsedMinutes": "{value}د",
        "elapsedSeconds": "{value}ث",
        "toolUseCount": "{count} أداة {count, plural, one {use} other {uses}}"
      },
      "tool": {
        "parameters": "المعلمات",
        "error": "خطأ",
        "result": "النتيجة",
        "status": {
          "approvalRequested": "بانتظار الموافقة",
          "approvalResponded": "تم الرد",
          "inputAvailable": "قيد التشغيل",
          "inputStreaming": "قيد الانتظار",
          "outputAvailable": "مكتمل",
          "outputDenied": "مرفوض",
          "outputError": "خطأ"
        }
      },
      "toolCallBlock": {
        "tool": "أداة",
        "error": "خطأ",
        "result": "النتيجة"
      },
      "delegation": {
        "subAgentRunning": "العميل الفرعي قيد التشغيل…",
        "noDetail": "No detail available yet.",
        "unknownAgent": "وكيل فرعي",
        "openDetail": "عرض المحادثة",
        "detailTitle": "محادثة الوكيل الفرعي",
        "detailDescription": "عرض للقراءة فقط لمحادثة الوكيل الفرعي المُفوَّض.",
        "waitForResult": "في انتظار نتيجة المهمة {task}",
        "waitForResultNoTask": "في انتظار نتيجة المهمة",
        "cancelTask": "جارٍ إلغاء المهمة {task}",
        "cancelTaskNoTask": "جارٍ إلغاء المهمة",
        "resultPageOf": "{current} / {total}",
        "prevResult": "النتيجة السابقة",
        "nextResult": "النتيجة التالية",
        "noResultText": "لا توجد نتيجة في هذا الفحص.",
        "status": {
          "starting": "قيد البدء",
          "running": "قيد التشغيل",
          "checked": "تم الفحص",
          "waiting": "في انتظار الموافقة",
          "ok": "اكتمل",
          "err": {
            "default": "فشل",
            "delegation_disabled": "معطل",
            "depth_limit": "حد العمق",
            "invalid_agent_type": "وكيل غير صالح",
            "spawn_failed": "فشل البدء",
            "send_failed": "فشل الإرسال",
            "timeout": "انتهت المهلة",
            "canceled": "ملغى",
            "child_refusal": "رفض الوكيل الفرعي",
            "child_max_tokens": "الوكيل الفرعي: حد الرموز",
            "child_max_turn_requests": "الوكيل الفرعي: حد الطلبات",
            "child_empty": "الوكيل الفرعي بدون استجابة",
            "child_unknown": "الوكيل الفرعي: خطأ",
            "unknown": "مهمة غير معروفة"
          }
        }
      },
      "contentParts": {
        "showingTailOutput": "يتم عرض نهاية المخرجات أثناء البث لتحسين الأداء.",
        "result": "النتيجة",
        "unknown": "غير معروف",
        "inputTruncated": "تم اقتطاع الإدخال — قد يكون الفرق غير مكتمل.",
        "replaceAll": "استبدال الكل",
        "filesCount": "الملفات: {count}",
        "update": "تحديث",
        "moreFiles": "+{count} ملف إضافي",
        "timeoutMs": "المهلة: {timeout}ms",
        "backgroundTrue": "الخلفية: true",
        "offset": "الإزاحة: {offset}",
        "limit": "الحد: {limit}",
        "pages": "الصفحات: {pages}",
        "mode": "الوضع: {mode}",
        "cell": "الخلية: {cell}",
        "pathLabel": "المسار:",
        "globLabel": "نمط glob:",
        "typeLabel": "النوع:",
        "outputLabel": "المخرجات:",
        "caseInsensitive": "غير حساس لحالة الأحرف",
        "multiline": "متعدد الأسطر",
        "promptLabel": "المطالبة",
        "subjectLabel": "الموضوع",
        "taskLabel": "المهمة",
        "nameLabel": "الاسم:",
        "agentPromptLabel": "المطالبة",
        "agentModelLabel": "النموذج",
        "agentRunning": "قيد التشغيل...",
        "agentFallbackTitle": "جارٍ تشغيل الوكيل الفرعي…",
        "agentStatsBash": "الأوامر",
        "agentStatsRead": "الملفات المقروءة",
        "agentStatsSearch": "عمليات البحث",
        "agentStatsEdit": "التعديلات",
        "agentStatsOther": "أخرى",
        "goal": {
          "title": "الهدف:",
          "titleWithStatus": "الهدف {status}",
          "objective": "الهدف",
          "statusLabel": "الحالة",
          "tokensUsed": "tokens المستخدمة",
          "budget": "الميزانية",
          "remaining": "المتبقي",
          "elapsed": "المدة",
          "tokens": "tokens",
          "status": {
            "active": "نشط",
            "paused": "متوقف مؤقتًا",
            "blocked": "محظور",
            "usageLimited": "الاستخدام محدود",
            "budgetLimited": "الميزانية محدودة",
            "complete": "مكتمل"
          }
        },
        "field": {
          "file": "ملف",
          "notebook": "دفتر",
          "command": "أمر",
          "old": "قديم",
          "new": "جديد",
          "pattern": "النمط",
          "path": "المسار",
          "query": "الاستعلام",
          "url": "URL:",
          "description": "الوصف",
          "content": "المحتوى",
          "source": "المصدر",
          "prompt": "المطالبة",
          "subject": "الموضوع",
          "taskId": "معرف المهمة",
          "status": "الحالة",
          "skill": "Skill",
          "args": "الوسائط",
          "offset": "الإزاحة",
          "limit": "الحد",
          "glob": "نمط glob",
          "type": "النوع",
          "output": "المخرجات",
          "replaceAll": "استبدال الكل",
          "language": "اللغة",
          "timeout": "المهلة",
          "background": "الخلفية",
          "agentType": "نوع الوكيل",
          "library": "المكتبة",
          "libraryId": "معرف المكتبة"
        },
        "title": {
          "edit": "تحرير",
          "command": "أمر",
          "todoWrite": "TodoWrite (تحديث المهام)",
          "read": "قراءة",
          "write": "كتابة",
          "notebookEdit": "NotebookEdit (تحرير الدفتر)",
          "editFiles": "تحرير ({count} ملفًا)",
          "editWithTarget": "تحرير {target}",
          "readWithTarget": "قراءة {target}",
          "writeWithTarget": "كتابة {target}",
          "notebookEditWithTarget": "NotebookEdit ({target})",
          "globWithPattern": "نمط glob {pattern}",
          "grepWithPattern": "نمط grep {pattern}",
          "taskCreateWithSubject": "إنشاء مهمة: {subject}",
          "taskUpdateWithStatus": "تحديث المهمة #{id} -> {status}",
          "taskUpdate": "تحديث المهمة #{id}",
          "webFetchWithUrl": "WebFetch ({url})",
          "webSearchWithQuery": "بحث الويب: {query}",
          "todosProgress": "المهام ({done}/{total})",
          "skillWithName": "Skill: {name}",
          "genericWithContext": "{tool} ({context})"
        },
        "toolGroup": {
          "search": "{count, plural, zero {بحث صفر مرة} one {بحث مرة واحدة} two {بحث مرتين} few {بحث # مرات} many {بحث # مرة} other {بحث # مرة}}",
          "command": "{count, plural, zero {تنفيذ صفر أمر} one {تنفيذ أمر واحد} two {تنفيذ أمرين} few {تنفيذ # أوامر} many {تنفيذ # أمراً} other {تنفيذ # أمر}}",
          "read": "{count, plural, zero {قراءة ملفات صفر مرة} one {قراءة ملفات مرة واحدة} two {قراءة ملفات مرتين} few {قراءة ملفات # مرات} many {قراءة ملفات # مرة} other {قراءة ملفات # مرة}}",
          "memory": "{count, plural, zero {استرجاع صفر ذاكرة} one {استرجاع ذاكرة واحدة} two {استرجاع ذاكرتين} few {استرجاع # ذكريات} many {استرجاع # ذكرى} other {استرجاع # ذكرى}}",
          "edit": "{count, plural, zero {تعديل ملفات صفر مرة} one {تعديل ملفات مرة واحدة} two {تعديل ملفات مرتين} few {تعديل ملفات # مرات} many {تعديل ملفات # مرة} other {تعديل ملفات # مرة}}",
          "fetch": "{count, plural, zero {جلب صفر مورد} one {جلب مورد واحد} two {جلب موردين} few {جلب # موارد} many {جلب # مورداً} other {جلب # مورد}}",
          "think": "{count, plural, zero {تفكير صفر مرة} one {تفكير مرة واحدة} two {تفكير مرتين} few {تفكير # مرات} many {تفكير # مرة} other {تفكير # مرة}}",
          "todo": "{count, plural, zero {تحديث صفر مهمة} one {تحديث مهمة واحدة} two {تحديث مهمتين} few {تحديث # مهام} many {تحديث # مهمة} other {تحديث # مهمة}}",
          "task": "{count, plural, zero {تشغيل صفر مهمة} one {تشغيل مهمة واحدة} two {تشغيل مهمتين} few {تشغيل # مهام} many {تشغيل # مهمة} other {تشغيل # مهمة}}",
          "other": "{count, plural, zero {استخدام صفر أداة} one {استخدام أداة واحدة} two {استخدام أداتين} few {استخدام # أدوات} many {استخدام # أداة} other {استخدام # أداة}}",
          "errorSuffix": "{count, plural, zero {صفر فشل} one {فشل واحد} two {فشلان} few {# فشلوا} many {# فشلاً} other {# فشل}}",
          "joiner": " · "
        }
      },
      "messageNav": {
        "title": "تنقل الرسائل",
        "collapse": "طي تنقل الرسائل",
        "collapsedSummary": "الرسائل {count}",
        "fileCount": "{count, plural, one {# ملف} other {# ملفات}}",
        "remove": "إزالة",
        "noDiffDataAvailable": "لا توجد بيانات diff متاحة لـ {filePath}"
      },
      "askQuestion": {
        "title": "يحتاج الوكيل إلى اختيارك",
        "subtitle": "أجب ثم أرسل. يمكنك التخطّي في أي وقت.",
        "recommended": "موصى به",
        "other": "أخرى",
        "otherPlaceholder": "اكتب إجابتك…",
        "singleSelect": "اختيار واحد",
        "multiSelect": "اختيار متعدد",
        "skip": "تخطّي",
        "next": "التالي",
        "submit": "إرسال",
        "submitError": "تعذّر الإرسال. حاول مرة أخرى."
      },
      "feedbackCheckResult": {
        "count": "{count} ملاحظة",
        "expand": "عرض كل الملاحظات",
        "collapse": "طي",
        "errorTitle": "فشل التحقق من الملاحظات"
      },
      "askQuestionResult": {
        "title": "سؤال",
        "answeredLabel": "سؤال وجواب:",
        "awaiting": "في انتظار إجابتك…",
        "declined": "لقد تجاهلت هذا — استخدم الوكيل حكمه الخاص.",
        "noSelection": "لا يوجد اختيار"
      },
      "configStale": {
        "agentConfigTitle": "تم تحديث إعدادات الوكيل",
        "modelProviderTitle": "تم تحديث مزوّد النموذج",
        "description": "لا تزال هذه الجلسة تستخدم الإعدادات السابقة. أعد الاتصال لتطبيقها (سيتم الاحتفاظ بسجل المحادثة).",
        "reconnect": "أعد الاتصال للتطبيق",
        "reconnecting": "جارٍ إعادة الاتصال…",
        "reconnectDisabledDuringTurn": "متاح بعد انتهاء الدور الحالي",
        "dismiss": "تجاهل",
        "reconnectFailed": "فشل في إعادة الاتصال بالجلسة",
        "applied": "تم تطبيق الإعدادات الجديدة"
      }
    },
    "diffPreview": {
      "mode": {
        "added": "تمت الإضافة",
        "deleted": "تم الحذف",
        "renamed": "تمت إعادة التسمية",
        "modified": "تم التعديل"
      },
      "hunkLabel": "مقطع {index}",
      "loadingHunk": "جارٍ تحميل hunk...",
      "noDiffData": "لا توجد بيانات diff"
    },
    "conversationContextBar": {
      "folderTitle": "مجلد العمل",
      "branchTitle": "فرع العمل",
      "searchFolder": "Search folder...",
      "searchBranch": "Search branch...",
      "noFolders": "No folders",
      "noBranches": "No branches",
      "noBranch": "(no branch)",
      "chatModeLabel": "وضع بدون مجلد",
      "commit": "Commit",
      "push": "Push",
      "merge": "Merge",
      "toasts": {
        "folderChanged": "Switched to {name}",
        "openFolderFailed": "Failed to open folder",
        "switchedToChatMode": "تم التبديل إلى وضع المحادثة",
        "openStashFailed": "Failed to open stash window",
        "openMergeFailed": "Failed to open merge window"
      }
    },
    "cloneDialog": {
      "title": "استنساخ مستودع",
      "repositoryUrl": "رابط المستودع",
      "repositoryUrlPlaceholder": "https://github.com/user/repo.git",
      "directory": "المجلد",
      "directoryPlaceholder": "اختر مجلد الهدف...",
      "browseDirectory": "تصفح المجلد",
      "cancel": "إلغاء",
      "clone": "استنساخ",
      "clonePath": "مسار الاستنساخ: {path}"
    },
    "toasts": {
      "cloneFailed": "فشل استنساخ المستودع"
    }
  },
  "ProjectBoot": {
    "title": "مُنشئ المشروع",
    "tabs": {
      "shadcn": "shadcn",
      "hyperframes": "HyperFrames"
    },
    "hyperframes": {
      "title": "مشروع فيديو HyperFrames",
      "subtitle": "أنشئ مشروعًا لتحويل HTML إلى فيديو. يمكن لوكيل مساحة العمل بعد ذلك كتابته وعرضه.",
      "resolution": "الدقة",
      "skillsTitle": "مهارات الوكلاء",
      "skillsDesc": "ثبّت مهارات HyperFrames عامًّا (رابط رمزي) للوكلاء المحددين حتى يتمكنوا من إنشاء الفيديو وعرضه.",
      "recheck": "إعادة الفحص",
      "installedBadge": "مثبّت",
      "skillsInstall": "تثبيت / تحديث المهارات",
      "skillsInstalling": "جارٍ تثبيت المهارات…",
      "skillsInstalled": "تم تثبيت مهارات HyperFrames",
      "skillsInstallFailed": "تعذّر تثبيت مهارات HyperFrames"
    },
    "config": {
      "base": "الأساس",
      "style": "النمط",
      "baseColor": "اللون الأساسي",
      "theme": "السمة",
      "chartColor": "لون المخطط",
      "iconLibrary": "مكتبة الأيقونات",
      "font": "الخط",
      "fontHeading": "خط العنوان",
      "menuAccent": "تمييز القائمة",
      "menuColor": "لون القائمة",
      "radius": "نصف القطر",
      "template": "القالب",
      "createProject": "إنشاء مشروع",
      "sectionStyle": "النمط",
      "sectionColors": "الألوان",
      "sectionTypography": "الخطوط",
      "sectionInterface": "الواجهة"
    },
    "preview": {
      "loading": "جاري تحميل المعاينة..."
    },
    "createDialog": {
      "title": "إنشاء مشروع",
      "projectName": "اسم المشروع",
      "projectNamePlaceholder": "my-app",
      "frameworkTemplate": "قالب الإطار",
      "packageManager": "مدير الحزم",
      "saveDirectory": "دليل الحفظ",
      "saveDirectoryPlaceholder": "اختر الدليل...",
      "browseDirectory": "تصفح",
      "projectPath": "سيتم إنشاء المشروع في: {path}",
      "advancedOptions": "خيارات متقدمة",
      "base": "المكتبة الأساسية",
      "enableRtl": "تفعيل دعم RTL",
      "enableRtlDescription": "تفعيل دعم التخطيط للغات التي تُكتب من اليمين إلى اليسار (مثل العربية والعبرية)",
      "pmChecking": "جارٍ التحقق...",
      "pmNotInstalled": "غير مثبت",
      "cancel": "إلغاء",
      "create": "إنشاء",
      "creating": "جاري إنشاء المشروع..."
    },
    "toasts": {
      "createFailed": "فشل إنشاء المشروع",
      "createSuccess": "تم إنشاء المشروع بنجاح",
      "openWorkspaceFailed": "تم إنشاء المشروع، ولكن تعذّر فتحه في مساحة العمل"
    },
    "errors": {
      "directoryExists": "الدليل الهدف موجود بالفعل",
      "commandFailed": "فشل أمر إنشاء المشروع."
    }
  },
  "WebServiceSettings": {
    "addressSwitchHint": "التبديل يغيّر فقط العنوان المعروض والمفتوح هنا؛ تستمع الخدمة على جميع الواجهات وتبقى قابلة للوصول من كل عنوان.",
    "sectionTitle": "خدمة الويب",
    "sectionDescription": "تفعيل للوصول إلى Codeg عن بُعد عبر المتصفح",
    "port": "المنفذ",
    "status": "الحالة",
    "autoStart": "تشغيل تلقائي",
    "autoStartHint": "تشغيل خدمة الويب عند بدء Codeg",
    "running": "قيد التشغيل",
    "stopped": "متوقف",
    "processing": "جارٍ المعالجة...",
    "start": "تشغيل",
    "stop": "إيقاف",
    "startFailed": "فشل التشغيل",
    "stopFailed": "فشل الإيقاف",
    "saveConfigFailed": "فشل حفظ إعدادات خدمة الويب",
    "open": "فتح",
    "hide": "إخفاء",
    "show": "إظهار",
    "copy": "نسخ",
    "qrcode": "رمز QR",
    "qrcodeTitle": "امسح للفتح",
    "qrcodeHint": "امسح بهاتفك لفتح Codeg في المتصفح",
    "addressLabel": "عنوان الوصول",
    "tokenLabel": "رمز الوصول",
    "tokenHint": "أدخل هذا الرمز عند الوصول إلى عميل الويب لأول مرة",
    "tokenPlaceholder": "اتركه فارغاً للتوليد التلقائي",
    "regenerate": "إعادة التوليد",
    "stalePortOccupiedTitle": "المنفذ {port} مستخدم من قبل عملية أخرى",
    "stalePortUnknownTitle": "حالة المنفذ {port} غير واضحة",
    "stalePortHint": "لا يستطيع Codeg الربط قبل تحرير المنفذ. غيّر المنفذ أعلاه، أو أغلق العملية التي تحتفظ به.",
    "errors": {
      "alreadyRunning": "خدمة الويب قيد التشغيل بالفعل",
      "invalidAddress": "تنسيق المضيف أو المنفذ غير صالح",
      "portInUse": "المنفذ {port} مستخدم بالفعل. أغلق العملية التي تستخدمه أو اختر منفذاً آخر.",
      "permissionDenied": "الصلاحيات غير كافية. استخدم منفذاً أعلى من 1024 أو شغّل التطبيق بصلاحيات أعلى.",
      "addressUnavailable": "هذا العنوان غير متاح على هذا الجهاز",
      "bindFailed": "فشل ربط العنوان"
    }
  },
  "DirectoryBrowser": {
    "title": "تصفح المجلد",
    "pathPlaceholder": "أدخل مسار المجلد...",
    "goHome": "الذهاب إلى المجلد الرئيسي",
    "navigateUp": "الذهاب إلى المجلد الأعلى",
    "select": "اختيار",
    "cancel": "إلغاء",
    "loading": "جاري التحميل...",
    "emptyDirectory": "هذا المجلد فارغ",
    "errorLoadingDir": "فشل في تحميل المجلد",
    "permissionDenied": "تم رفض الإذن"
  },
  "ChatChannelSettings": {
    "loading": "جاري التحميل...",
    "sectionTitle": "قنوات المحادثة",
    "sectionDescription": "تكوين بوتات المراسلة لتلقي إشعارات الأحداث واستعلام نشاط البرمجة.",
    "addChannel": "إضافة قناة",
    "noChannels": "لم يتم تكوين أي قنوات محادثة بعد.",
    "channelName": "الاسم",
    "channelNamePlaceholder": "بوت Telegram الخاص بي",
    "channelType": "نوع القناة",
    "lark": "Lark (Feishu)",
    "weixin": "WeChat",
    "dailyReport": "التقرير اليومي",
    "dailyReportTime": "وقت التقرير",
    "nameRequired": "اسم القناة مطلوب.",
    "tokenRequired": "الرمز مطلوب.",
    "chatIdRequired": "معرف المحادثة مطلوب.",
    "loadFailed": "فشل في تحميل القنوات.",
    "saveFailed": "فشل في حفظ التغييرات.",
    "connectSuccess": "تم توصيل القناة.",
    "connectFailed": "فشل الاتصال",
    "disconnectSuccess": "تم قطع اتصال القناة.",
    "disconnectFailed": "فشل قطع الاتصال.",
    "testSuccess": "نجح اختبار الاتصال.",
    "testFailed": "فشل اختبار الاتصال",
    "deleteSuccess": "تم حذف القناة.",
    "deleteFailed": "فشل في حذف القناة.",
    "deleteConfirmTitle": "حذف القناة",
    "deleteConfirmMessage": "سيتم حذف القناة وسجلات رسائلها نهائياً. هل أنت متأكد؟",
    "cancel": "إلغاء",
    "delete": "حذف",
    "create": "إنشاء",
    "save": "حفظ",
    "channelListTitle": "القنوات المُعدة",
    "channelListDescription": "القنوات المفعّلة ستتصل تلقائيًا عند بدء تشغيل الخدمة.",
    "editChannel": "تعديل القناة",
    "editSuccess": "تم تحديث القناة.",
    "tokenPlaceholderKeep": "اتركه فارغاً للاحتفاظ بالقيمة الحالية",
    "weixinScanTitle": "مسح رمز QR",
    "weixinScanDescription": "افتح WeChat وامسح رمز QR للاتصال.",
    "weixinQrcodeExpired": "انتهت صلاحية رمز QR.",
    "weixinRefreshQrcode": "تحديث",
    "weixinWaitingScan": "في انتظار المسح...",
    "weixinPollError": "الاتصال غير مستقر، جاري إعادة المحاولة...",
    "weixinReconnectNotice": "بسبب قيود بروتوكول iLink، بعد كل إعادة اتصال يجب عليك إرسال رسالة إلى الروبوت حتى تصبح مشغلات الأحداث فعالة.",
    "connect": "اتصال",
    "disconnect": "قطع الاتصال",
    "test": "اختبار الاتصال",
    "tabs": {
      "channels": "القنوات",
      "commands": "الأوامر",
      "events": "الأحداث",
      "other": "أخرى"
    },
    "commands": {
      "title": "الأوامر المدمجة",
      "description": "أوامر البوت المتاحة في قنوات المحادثة. في المحادثات الجماعية، يلزم @Bot لمعالجة الرسائل.",
      "prefixLabel": "بادئة الأمر",
      "prefixDescription": "1-3 أحرف غير أبجدية رقمية لتشغيل أوامر البوت (الافتراضي /).",
      "prefixSaved": "تم حفظ بادئة الأمر.",
      "prefixSaveFailed": "فشل حفظ بادئة الأمر.",
      "prefixInvalid": "يجب أن تكون البادئة 1-3 أحرف غير أبجدية رقمية.",
      "save": "حفظ",
      "folderDesc": "اختيار مجلد العمل",
      "agentDesc": "اختيار وكيل الذكاء الاصطناعي",
      "taskDesc": "إنشاء جلسة وتنفيذ المهمة",
      "sessionsDesc": "عرض الجلسات النشطة في المجلد",
      "resumeDesc": "المحادثات الأخيرة / استئناف جلسة",
      "cancelDesc": "إلغاء المهمة الحالية",
      "approveDesc": "الموافقة على طلب إذن الوكيل",
      "denyDesc": "رفض طلب إذن الوكيل",
      "searchDesc": "البحث في المحادثات حسب الكلمة المفتاحية",
      "todayDesc": "ملخص نشاط اليوم",
      "statusDesc": "حالة اتصال القناة",
      "helpDesc": "عرض المساعدة"
    },
    "events": {
      "title": "إشعارات الأحداث",
      "description": "عند تفعيل الأحداث، سيتم إرسالها إلى القناة عند تشغيلها.",
      "turnComplete": "اكتمال الدور",
      "turnCompleteDesc": "عند انتهاء دور الوكيل",
      "error": "خطأ الوكيل",
      "errorDesc": "عندما يواجه الوكيل خطأ",
      "permissionRequest": "طلب إذن",
      "permissionRequestDesc": "عندما يطلب الوكيل إذنًا لتنفيذ إجراء",
      "questionRequest": "سؤال من الوكيل",
      "questionRequestDesc": "عندما يطرح أحد الوكلاء سؤالاً عليك",
      "userPromptSent": "رسالة المستخدم",
      "userPromptSentDesc": "عند إرسالك رسالة — يُضمَّن نص الرسالة في الإشعار",
      "saved": "تم تحديث فلتر الأحداث.",
      "saveFailed": "فشل حفظ فلتر الأحداث.",
      "loadFailed": "فشل تحميل الإعدادات.",
      "retry": "إعادة المحاولة",
      "webhooksTitle": "Webhooks",
      "webhooksDescription": "يرسل حمولة JSON عبر POST إلى عنوان واحد أو أكثر عند تشغيل حدث مُفعَّل. ينطبق فلتر الأحداث أعلاه على Webhooks أيضًا.",
      "webhookUrlPlaceholder": "https://example.com/webhook",
      "addWebhook": "إضافة Webhook",
      "removeWebhook": "إزالة Webhook",
      "webhookSave": "حفظ",
      "webhooksSaved": "تم حفظ Webhooks.",
      "webhooksSaveFailed": "فشل حفظ Webhooks.",
      "webhookInvalidUrl": "أدخل عناوين http(s) صالحة.",
      "docsTitle": "تنسيق الطلب",
      "docsMethod": "الطريقة",
      "docsContentType": "Content-Type",
      "docsNote": "يتم تسليم كل حدث مُفعَّل إلى جميع العناوين. لا يتم تأخير Webhooks؛ ولا يزال فلتر الأحداث أعلاه ساريًا.",
      "editWebhook": "تعديل Webhook",
      "enableWebhook": "تفعيل Webhook",
      "webhookDuplicate": "هذا العنوان مُعد بالفعل.",
      "cancel": "إلغاء",
      "webhooksEmpty": "لا توجد Webhooks مُعدة بعد.",
      "deleteWebhookTitle": "حذف Webhook",
      "deleteWebhookMessage": "هل تريد حذف هذا الـ Webhook؟ لن يتم تسليم الأحداث إلى هذا العنوان بعد الآن.",
      "delete": "حذف"
    },
    "language": {
      "title": "لغة الرسائل",
      "description": "اللغة المستخدمة لإشعارات الأحداث واستجابات الأوامر والتقارير اليومية المرسلة إلى قنوات الدردشة.",
      "saved": "تم حفظ لغة الرسائل.",
      "saveFailed": "فشل حفظ لغة الرسائل.",
      "en": "الإنجليزية",
      "zh-cn": "الصينية المبسطة",
      "zh-tw": "الصينية التقليدية",
      "ja": "اليابانية",
      "ko": "الكورية",
      "es": "الإسبانية",
      "de": "الألمانية",
      "fr": "الفرنسية",
      "pt": "البرتغالية",
      "ar": "العربية"
    }
  },
  "ModelProviderSettings": {
    "sectionTitle": "مزودو النماذج",
    "sectionDescription": "إدارة بيانات اعتماد مزودي API للوكلاء.",
    "filterAll": "الكل",
    "providerListTitle": "المزودون المُعدّون",
    "addProvider": "إضافة مزود",
    "editProvider": "تعديل المزود",
    "noProviders": "لم يتم تكوين أي مزود نماذج بعد.",
    "providerName": "الاسم",
    "providerNamePlaceholder": "مثال: OpenAI، Anthropic",
    "apiUrl": "عنوان API",
    "apiUrlPlaceholder": "https://api.openai.com/v1",
    "apiKey": "مفتاح API",
    "apiKeyPlaceholder": "sk-...",
    "apiKeyKeepCurrent": "اتركه فارغاً للإبقاء على الحالي",
    "agentTypes": "أنواع الوكلاء",
    "agentTypesRequired": "يجب اختيار نوع وكيل واحد على الأقل.",
    "agentType": "نوع الوكيل",
    "agentTypeRequired": "نوع الوكيل مطلوب.",
    "agentTypeImmutableHint": "لا يمكن تغيير نوع الوكيل بعد الإنشاء.",
    "model": "النموذج",
    "modelPlaceholderCodex": "gpt-5 / gpt-5-mini",
    "modelPlaceholderGemini": "gemini-3-pro-preview",
    "claudeMainModel": "النموذج الرئيسي",
    "claudeReasoningModel": "نموذج الاستدلال (التفكير)",
    "claudeHaikuDefaultModel": "نموذج Haiku الافتراضي",
    "claudeSonnetDefaultModel": "نموذج Sonnet الافتراضي",
    "claudeOpusDefaultModel": "نموذج Opus الافتراضي",
    "nameRequired": "اسم المزود مطلوب.",
    "apiUrlRequired": "عنوان API مطلوب.",
    "apiKeyRequired": "مفتاح API مطلوب.",
    "loadFailed": "فشل تحميل المزودين.",
    "saveFailed": "فشل حفظ التغييرات.",
    "createSuccess": "تم إنشاء المزود.",
    "editSuccess": "تم تحديث المزود.",
    "deleteSuccess": "تم حذف المزود.",
    "deleteConfirmTitle": "حذف المزود",
    "deleteConfirmMessage": "سيتم حذف المزود \"{name}\" نهائياً. هل أنت متأكد؟",
    "deleteBlockedByAgent": "{agents} يستخدم هذا المزود. يرجى إلغاء الربط قبل الحذف.",
    "cancel": "إلغاء",
    "delete": "حذف",
    "create": "إنشاء",
    "save": "حفظ",
    "affectedRunningSessions": "{count} جلسة نشطة تحتاج إلى إعادة الاتصال لتطبيق التغيير"
  },
  "ExpertsSettings": {
    "title": "مهارات الخبراء",
    "description": "فعّل سير عمل المهارات المختارة بعناية والمختبرة ميدانيًا لوكلاء البرمجة بالذكاء الاصطناعي. كل خبير هو مهارة مستقلة من مشروع superpowers — يدير codeg النسخة المركزية ويربطها بالوكلاء الذين تختارهم.",
    "loading": "جاري تحميل الخبراء…",
    "loadingContent": "جاري تحميل المحتوى…",
    "emptyExperts": "لا يوجد خبراء متاحون. تحقق من سجلات التطبيق.",
    "emptySelection": "اختر خبيرًا لرؤية محتواه وإدارة تفعيله.",
    "emptySearch": "لا يوجد خبراء يطابقون البحث الحالي.",
    "searchPlaceholder": "ابحث عن الخبراء بالاسم أو المعرّف أو الوصف",
    "enableForAgents": "تفعيل للوكلاء",
    "noAgents": "لم يتم اكتشاف وكلاء ACP.",
    "copyModeWarning": "تم النسخ (غير مرتبط). أعد التفعيل بعد تحديثات codeg للحصول على أحدث إصدار.",
    "previewTitle": "معاينة SKILL.md",
    "categories": {
      "discovery": "الاكتشاف والتصميم",
      "planning": "التخطيط",
      "execution": "التنفيذ",
      "quality": "الجودة والاختبار",
      "debugging": "التصحيح",
      "review": "المراجعة والدمج",
      "meta": "ميتا"
    },
    "states": {
      "not_linked": "غير مُفعَّل",
      "linked_to_codeg": "مُفعَّل",
      "linked_elsewhere": "محظور — يوجد رابط آخر",
      "blocked_by_real_directory": "محظور — مهارة مخصصة تشغل هذا الاسم",
      "broken": "رابط معطوب"
    },
    "badges": {
      "userModified": "عُدِّل من قبل المستخدم"
    },
    "actions": {
      "openCentralDir": "فتح المجلد المركزي",
      "refresh": "تحديث"
    },
    "toasts": {
      "loadFailed": "فشل تحميل تفاصيل الخبير",
      "enabled": "تم تفعيل الخبير لهذا الوكيل",
      "disabled": "تم تعطيل الخبير لهذا الوكيل",
      "enableFailed": "فشل تفعيل الخبير",
      "disableFailed": "فشل تعطيل الخبير",
      "openFolderFailed": "فشل فتح المجلد"
    }
  },
  "QuickMessagesSettings": {
    "title": "رسائل سريعة",
    "description": "إدارة مقتطفات الرسائل القابلة لإعادة الاستخدام. اسحب لإعادة الترتيب.",
    "loading": "جارٍ تحميل الرسائل السريعة…",
    "emptyList": "لا توجد رسائل سريعة بعد. انقر على \"جديد\" لإنشاء واحدة.",
    "emptySelection": "اختر رسالة سريعة للتعديل.",
    "searchPlaceholder": "ابحث حسب العنوان أو المحتوى",
    "untitled": "بدون عنوان",
    "actions": {
      "new": "جديد",
      "save": "حفظ",
      "delete": "حذف",
      "dragSort": "اسحب لإعادة الترتيب",
      "dragSortMessage": "اسحب لإعادة ترتيب الرسالة السريعة: {name}"
    },
    "fields": {
      "title": "العنوان",
      "titlePlaceholder": "أعطِ هذه الرسالة عنوانًا قصيرًا",
      "content": "المحتوى",
      "contentPlaceholder": "اكتب محتوى الرسالة هنا"
    },
    "confirmDelete": {
      "title": "حذف الرسالة السريعة؟",
      "message": "سيؤدي ذلك إلى حذف \"{name}\" نهائيًا. هل أنت متأكد؟",
      "cancel": "إلغاء",
      "confirm": "حذف"
    },
    "toasts": {
      "loadFailed": "فشل تحميل الرسائل السريعة",
      "createFailed": "فشل إنشاء الرسالة السريعة",
      "saveFailed": "فشل حفظ الرسالة السريعة",
      "deleteFailed": "فشل حذف الرسالة السريعة",
      "saveOrderFailed": "فشل حفظ الترتيب",
      "created": "تم إنشاء الرسالة السريعة",
      "saved": "تم حفظ الرسالة السريعة",
      "deleted": "تم حذف الرسالة السريعة"
    }
  },
  "Pet": {
    "badge": {
      "running": "{count} قيد التشغيل",
      "waiting": "{count} في انتظار الموافقة",
      "error": "{count} بها خطأ"
    },
    "panel": {
      "title": "الجلسات النشطة",
      "empty": "لا توجد جلسات نشطة",
      "emptyHint": "تظهر هنا الوكلاء قيد التشغيل وتلك التي تحتاج إليك.",
      "statusRunning": "قيد التشغيل",
      "statusWaiting": "في الانتظار",
      "statusError": "خطأ"
    },
    "menu": {
      "scale": "الحجم",
      "openManager": "إدارة الحيوانات الأليفة",
      "close": "إغلاق"
    },
    "loadError": "فشل تحميل الحيوان الأليف",
    "missingPetIdParam": "لم يتم اختيار حيوان أليف",
    "summonButton": "حيوان أليف",
    "manager": {
      "title": "حيوانات سطح المكتب",
      "description": "رفقاء عائمون لسطح المكتب باستخدام صفائح سبرايت متوافقة مع Codex.",
      "addPet": "إضافة حيوان",
      "importFromCodex": "استيراد من Codex",
      "noPets": "لا يوجد حيوان أليف. أضف واحدًا أو استورد من Codex.",
      "setActive": "تفعيل",
      "active": "نشط",
      "edit": "تعديل",
      "delete": "حذف",
      "deleteConfirm": "حذف الحيوان «{name}»؟ سيُحذف من القرص.",
      "summon": "استدعاء نافذة الحيوان",
      "openCodexHelp": "يجب أن توجد حيوانات Codex داخل ~/.codex/pets/. لم يُعثر على شيء.",
      "specRequirement": "يجب أن يكون السبرايت PNG أو WebP بحجم 1536x1872 مع شفافية.",
      "form": {
        "id": "معرف الحيوان",
        "idHelp": "حروف صغيرة، أرقام، '-' و '_' فقط. حد أقصى 64 حرفًا.",
        "displayName": "اسم العرض",
        "description": "الوصف (اختياري)",
        "spritesheet": "صفيحة السبرايت",
        "chooseFile": "اختر ملفًا",
        "replaceFile": "استبدال السبرايت",
        "saveCreate": "إضافة الحيوان",
        "saveUpdate": "حفظ التغييرات",
        "cancel": "إلغاء"
      },
      "errors": {
        "missingId": "المعرف مطلوب",
        "missingName": "الاسم مطلوب",
        "missingSpritesheet": "السبرايت مطلوب",
        "addFailed": "فشل الإضافة",
        "updateFailed": "فشل التحديث",
        "deleteFailed": "فشل الحذف",
        "loadFailed": "فشل تحميل قائمة الحيوانات",
        "setActiveFailed": "فشل تعيين الحيوان النشط",
        "summonFailed": "فشل فتح نافذة الحيوان"
      }
    },
    "import": {
      "title": "استيراد من Codex",
      "subtitle": "الحيوانات الأليفة المتاحة ضمن ~/.codex/pets/.",
      "selectAll": "تحديد الكل",
      "alreadyImported": "تم استيراده مسبقًا",
      "renameOnConflict": "تسمية المتعارضين بإلحاق -imported",
      "import": "استيراد المحدد",
      "noneFound": "لا توجد حيوانات Codex قابلة للاستيراد.",
      "imported": "تم الاستيراد بنجاح",
      "failed": "فشل الاستيراد",
      "close": "إغلاق"
    },
    "marketplace": {
      "openMarketplace": "متجر الحيوانات الأليفة",
      "title": "متجر الحيوانات الأليفة",
      "search": "ابحث عن حيوان أليف",
      "kindFilter": {
        "all": "الكل",
        "object": "كائن",
        "animal": "حيوان",
        "person": "شخصية",
        "creature": "مخلوق"
      },
      "sortFilter": {
        "latest": "الأحدث",
        "popular": "الأكثر شيوعاً",
        "views": "الأكثر مشاهدة"
      },
      "refresh": "تحديث",
      "install": "تثبيت",
      "installing": "جاري التثبيت",
      "reinstall": "إعادة التثبيت",
      "reinstallConfirm": "هل تريد استبدال الحيوان الأليف المحلي \"{name}\"؟ ستُستبدل البيانات الحالية.",
      "cancel": "إلغاء",
      "stats": {
        "views": "المشاهدات",
        "downloads": "التنزيلات",
        "likes": "الإعجابات"
      },
      "actions": {
        "idle": "خامل",
        "running_right": "ركض يمين",
        "running_left": "ركض يسار",
        "waving": "تلويح",
        "jumping": "قفز",
        "failed": "فشل",
        "waiting": "انتظار",
        "running": "ركض",
        "review": "مراجعة"
      },
      "page": "صفحة {page} من {total}",
      "prev": "السابق",
      "next": "التالي",
      "empty": "لا يوجد حيوان أليف مطابق.",
      "successInstalled": "تم تثبيت \"{name}\"",
      "errors": {
        "loadFailed": "تعذّر تحميل المتجر",
        "installFailed": "فشل التثبيت",
        "alreadyInstalled": "هذا الحيوان موجود بالفعل"
      }
    }
  },
  "RemoteWorkspace": {
    "openRemoteWorkspace": "Open remote workspace",
    "manage": "Manage remote workspace",
    "manageTitle": "Remote Workspace connections",
    "empty": "No remote connections",
    "searchPlaceholder": "Search remote workspaces",
    "orderFailed": "Failed to save remote workspace order",
    "dragSort": "Drag to sort",
    "dragSortConnection": "Drag to sort {name}",
    "newConnection": "New connection",
    "loading": "Loading",
    "loadingConnection": "Loading remote connection",
    "name": "Name",
    "baseUrl": "Service URL",
    "token": "Access token",
    "save": "Save",
    "delete": "Delete",
    "confirmDelete": {
      "title": "Delete remote connection?",
      "message": "This will remove \"{name}\" from this device. This action cannot be undone.",
      "cancel": "Cancel",
      "confirm": "Delete"
    },
    "saved": "Remote connection saved.",
    "deleted": "Remote connection deleted.",
    "loadFailed": "Failed to load remote connections",
    "saveFailed": "Failed to save remote connection",
    "deleteFailed": "Failed to delete remote connection",
    "openFailed": "Failed to open remote workspace",
    "connectionLoadFailed": "Failed to load remote connection: {message}",
    "connectionExpired": "Remote connection \"{name}\" is expired. Update its token and reload this window."
  },
  "ServerFileBrowser": {
    "title": "اختر ملفًا من الخادم",
    "pathPlaceholder": "أدخل مسار الدليل...",
    "goHome": "اذهب إلى المجلد الرئيسي",
    "navigateUp": "اذهب إلى المجلد الأعلى",
    "select": "اختر",
    "cancel": "إلغاء",
    "loading": "جارٍ التحميل...",
    "emptyDirectory": "هذا المجلد فارغ",
    "errorLoadingDir": "فشل تحميل المجلد",
    "selectedCount": "{count} محدد"
  },
  "BackupSettings": {
    "title": "النسخ الاحتياطي والاستعادة",
    "description": "صدّر نسخة احتياطية محمولة من بيانات codeg، أو استعد من نسخة.",
    "tabs": {
      "backup": "نسخ احتياطي",
      "restore": "استعادة"
    },
    "export": {
      "includeExternal": "تضمين محتوى المحادثات",
      "includeExternalHint": "يؤرشف أيضًا سجلات محادثات أدوات CLI (Claude وCodex وGemini …). يزيد الحجم.",
      "passphrase": "عبارة المرور (اختياري)",
      "passphrasePlaceholder": "اتركها فارغة للحصول على أرشيف غير مشفّر",
      "passphraseConfirm": "تأكيد عبارة المرور",
      "passphraseMismatch": "عبارتا المرور غير متطابقتين.",
      "noPassphraseWarning": "ستحتوي هذه النسخة على أسرار (مفاتيح API والرموز) بنص واضح. احفظها في مكان آمن.",
      "passphraseLossWarning": "مشفّرة بعبارة المرور هذه. إذا فقدتها، فلن يمكن استعادة النسخة الاحتياطية.",
      "button": "تصدير النسخة الاحتياطية",
      "inProgress": "جارٍ إنشاء النسخة الاحتياطية…",
      "success": "تم إنشاء النسخة الاحتياطية.",
      "started": "بدأ تنزيل النسخة الاحتياطية."
    },
    "restore": {
      "selectFile": "اختر ملف النسخة الاحتياطية",
      "passphrasePrompt": "هذه النسخة مشفّرة. أدخل عبارة المرور الخاصة بها.",
      "unlock": "فتح القفل",
      "preview": {
        "title": "تفاصيل النسخة الاحتياطية",
        "encrypted": "مشفّرة",
        "compatible": "متوافقة",
        "incompatible": "غير متوافقة",
        "createdAt": "أُنشئت: {value}",
        "appVersion": "إصدار التطبيق: {value}",
        "incompatibleHint": "أُنشئت هذه النسخة بإصدار أحدث من codeg ولا يمكن استعادتها."
      },
      "replaceWarning": "تستبدل الاستعادة جميع بيانات codeg الحالية (قاعدة البيانات والملفات المرفوعة). تُلتقط بياناتك الحالية كلقطة أولًا حتى يمكن استرجاعها.",
      "keyringNote": "تُخزَّن رموز GitHub/الدردشة لتطبيق سطح المكتب في سلسلة مفاتيح النظام ولا تُضمَّن؛ أعد إدخالها بعد الاستعادة.",
      "button": "استعادة",
      "staging": "جارٍ تجهيز الاستعادة…",
      "staged": "تم تجهيز الاستعادة. جارٍ إعادة التشغيل…",
      "restarting": "تم تجهيز الاستعادة. جارٍ إعادة تشغيل الخادم…",
      "restartTimeout": "لم يعد الخادم في الوقت المحدد. أعد تحميل الصفحة بعد تشغيله.",
      "externalSideLocation": "تمت استعادة سجلات المحادثات إلى {path}",
      "confirmTitle": "استبدال جميع البيانات؟",
      "confirmBody": "سيؤدي ذلك إلى استبدال قاعدة بيانات codeg والملفات المرفوعة الحالية بالنسخة الاحتياطية ثم إعادة التشغيل. تُلتقط بياناتك الحالية كلقطة أولًا.",
      "cancel": "إلغاء",
      "confirmAction": "استبدال وإعادة تشغيل",
      "external": {
        "title": "محتوى المحادثات",
        "hint": "تتضمن هذه النسخة سجلات محادثات أدوات CLI. اختر مكان استعادتها.",
        "modeSkip": "عدم الاستعادة",
        "modeSide": "الاستعادة إلى مجلد جانبي آمن",
        "modeOriginal": "الاستعادة إلى المواقع الأصلية لأدوات CLI",
        "forceOverwrite": "الكتابة فوق الملفات الموجودة",
        "forceOverwriteHint": "استبدال الملفات الموجودة بالفعل في مجلدات أدوات CLI.",
        "scanning": "جارٍ التحقق من التعارضات…",
        "noConflicts": "لن تتم الكتابة فوق أي ملف موجود.",
        "conflictCount": "سيتأثر {count} من الملفات الموجودة.",
        "conflictSkipNote": "تُحفظ الملفات الموجودة (تُتخطى) ما لم تفعّل الكتابة فوقها."
      },
      "restartFailed": "تم تجهيز الاستعادة، لكن تعذّر إعادة تشغيل الخادم. أعد تشغيله يدويًا لتطبيقها."
    },
    "remoteUnsupported": "يعمل النسخ الاحتياطي والاستعادة على بيانات الجهاز الذي يشغّل codeg. أنت متصل بمساحة عمل بعيدة — أدِر نسخها الاحتياطية من ذلك الخادم مباشرة."
  },
  "backup": {
    "restore": {
      "error": {
        "badPassphrase": "عبارة المرور غير صحيحة أو النسخة الاحتياطية تالفة.",
        "corrupted": "أرشيف النسخة الاحتياطية تالف.",
        "unknownFormat": "هذا الملف ليس نسخة احتياطية معروفة من codeg.",
        "newerVersion": "أُنشئت هذه النسخة بواسطة codeg {backupVersion}، وهي أحدث من هذا الإصدار ({appVersion}).",
        "alreadyPending": "توجد استعادة مُجهّزة بالفعل. أعد التشغيل لتطبيقها قبل تجهيز أخرى."
      }
    },
    "error": {
      "diskSpace": "لا توجد مساحة قرص كافية لإكمال العملية.",
      "cancelled": "تم إلغاء العملية."
    }
  },
  "WebConnection": {
    "disconnectedTitle": "انقطع الاتصال",
    "reconnectingDescription": "تتم محاولة إعادة الاتصال بالخادم. عادةً ما يُستعاد الاتصال تلقائيًا خلال ثوانٍ قليلة.",
    "reconnectNow": "إعادة الاتصال الآن",
    "sessionExpiredTitle": "انتهت الجلسة",
    "sessionExpiredDescription": "لم تعد جلستك صالحة. يُرجى تسجيل الدخول مرة أخرى للمتابعة.",
    "goToLogin": "الانتقال إلى تسجيل الدخول"
  },
  "SessionFeedbackSettings": {
    "title": "ملاحظات مباشرة",
    "description": "أرسل ملاحظات وتصحيحات إلى الوكيل أثناء عمله. عند التفعيل، يحصل الوكيل على أداة للتحقق من ملاحظاتك المباشرة، وتعرض المحادثات حقل إدخال للملاحظات. نصيحة: عادةً ما يتحقق الوكيل من الملاحظات فقط عند ذكرها في رسالتك — مثلاً أضف \"تحقق من ملاحظاتي المباشرة بانتظام أثناء العمل\" إلى رسالتك.",
    "enable": "تفعيل الملاحظات المباشرة",
    "enableHint": "يضيف أداة للتحقق من الملاحظات إلى الوكلاء الذين يبدؤون بعد التفعيل.",
    "save": "حفظ",
    "saving": "جارٍ الحفظ…",
    "saved": "تم حفظ إعدادات الملاحظات",
    "saveFailed": "تعذّر حفظ إعدادات الملاحظات",
    "loadFailed": "فشل التحميل: {detail}"
  },
  "LiveFeedback": {
    "placeholder": "أرسل ملاحظة إلى {agent} أثناء عمله…",
    "agentFallback": "الوكيل",
    "ariaLabel": "ملاحظة مباشرة",
    "dialogTitle": "ملاحظات مباشرة",
    "dialogDescription": "أرسل ملاحظة إلى الوكيل أثناء عمله. سيقرأها في فحصه التالي دون مقاطعة الخطوة الحالية.",
    "send": "إرسال",
    "cancel": "إلغاء",
    "pending": "في الانتظار",
    "delivered": "تم الاستلام",
    "turnEndedUnread": "أنهى الوكيل الجولة قبل قراءة ملاحظاتك.",
    "sendAsMessage": "إرسال كرسالة",
    "dismiss": "تجاهل",
    "turnEndedResent": "انتهت الجولة — تم الإرسال كرسالة جديدة بدلاً من ذلك.",
    "turnEnded": "انتهت الجولة بالفعل.",
    "submitFailed": "تعذّر إرسال ملاحظتك"
  },
  "AskQuestionSettings": {
    "title": "سؤال المستخدم",
    "description": "يسمح للوكلاء بالتوقّف وطرح سؤال متعدّد الخيارات يظهر فوق مربّع إدخال المحادثة. ينتظر الوكيل حتى تجيب (أو تتخطّى).",
    "enable": "تفعيل سؤال المستخدم",
    "enableHint": "يضيف أداة ask_user_question للوكلاء الذين يبدؤون بعد التفعيل.",
    "save": "حفظ",
    "saving": "جارٍ الحفظ…",
    "saved": "تم حفظ إعدادات السؤال",
    "saveFailed": "فشل حفظ إعدادات السؤال",
    "loadFailed": "فشل التحميل: {detail}"
  }
}
