From b5b5b78f29e5bee84c19444035bd50cb89d71459 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sun, 5 Apr 2026 12:37:15 +0100 Subject: [PATCH] docs: add arabic publish workflow --- .github/workflows/translate-ar.yml | 20 ++ .../workflows/translate-locale-reusable.yml | 2 +- README.md | 6 +- docs/.i18n/README.md | 16 +- docs/.i18n/ar-navigation.json | 18 ++ docs/.i18n/ar.tm.jsonl | 0 docs/.i18n/glossary.ar.json | 5 + docs/ar/index.md | 203 ++++++++++++++++++ docs/ar/start/getting-started.md | 151 +++++++++++++ docs/ar/start/wizard.md | 134 ++++++++++++ docs/docs.json | 23 ++ 11 files changed, 563 insertions(+), 15 deletions(-) create mode 100644 .github/workflows/translate-ar.yml create mode 100644 docs/.i18n/ar-navigation.json create mode 100644 docs/.i18n/ar.tm.jsonl create mode 100644 docs/.i18n/glossary.ar.json create mode 100644 docs/ar/index.md create mode 100644 docs/ar/start/getting-started.md create mode 100644 docs/ar/start/wizard.md diff --git a/.github/workflows/translate-ar.yml b/.github/workflows/translate-ar.yml new file mode 100644 index 000000000..9ecfa29d2 --- /dev/null +++ b/.github/workflows/translate-ar.yml @@ -0,0 +1,20 @@ +name: Translate ar + +on: + repository_dispatch: + types: + - translate-ar-release + schedule: + - cron: "47 6 * * *" + workflow_dispatch: + +permissions: + contents: write + +jobs: + translate: + uses: ./.github/workflows/translate-locale-reusable.yml + with: + locale: ar + locale_slug: ar + secrets: inherit diff --git a/.github/workflows/translate-locale-reusable.yml b/.github/workflows/translate-locale-reusable.yml index 257c3672b..f17ff55b9 100644 --- a/.github/workflows/translate-locale-reusable.yml +++ b/.github/workflows/translate-locale-reusable.yml @@ -97,7 +97,7 @@ jobs: from pathlib import Path source_hash_re = re.compile(r'^x-i18n:\n(?: .*\n)*? source_hash: ([0-9a-f]{64})$', re.M) - generated_dirs = {"zh-CN", "ja-JP", "es", "pt-BR", "ko", "de", "fr"} + generated_dirs = {"zh-CN", "ja-JP", "es", "pt-BR", "ko", "de", "fr", "ar"} locale = os.environ["LOCALE"] pending_path = Path(".openclaw-sync") / f"docs-i18n-{os.environ['LOCALE_SLUG']}.txt" diff --git a/README.md b/README.md index 84e4aefee..4d5e6cc44 100644 --- a/README.md +++ b/README.md @@ -9,11 +9,11 @@ Source of truth lives in [`openclaw/openclaw`](https://github.com/openclaw/openc 1. English docs are authored in `openclaw/openclaw`. 2. `openclaw/openclaw/.github/workflows/docs-sync-publish.yml` mirrors the docs tree into this repo. 3. This repo stores the published docs tree plus generated locale output. -4. `openclaw/docs/.github/workflows/translate-zh-cn.yml`, `translate-ja-jp.yml`, `translate-es.yml`, `translate-pt-br.yml`, `translate-ko.yml`, `translate-de.yml`, and `translate-fr.yml` refresh the generated locale trees on a staggered daily schedule, on manual dispatch, and after release dispatches from `openclaw/openclaw`. +4. `openclaw/docs/.github/workflows/translate-zh-cn.yml`, `translate-ja-jp.yml`, `translate-es.yml`, `translate-pt-br.yml`, `translate-ko.yml`, `translate-de.yml`, `translate-fr.yml`, and `translate-ar.yml` refresh the generated locale trees on a staggered daily schedule, on manual dispatch, and after release dispatches from `openclaw/openclaw`. ## Translation behavior -- zh-CN, ja-JP, es, pt-BR, ko, de, and fr pages are generated output. +- zh-CN, ja-JP, es, pt-BR, ko, de, fr, and ar pages are generated output. - Each translated page stores `x-i18n.source_hash`. - The translate workflow computes a pending file list before calling the model. - If no English source hashes changed, the workflow skips the expensive translation step entirely. @@ -25,7 +25,7 @@ Source of truth lives in [`openclaw/openclaw`](https://github.com/openclaw/openc - Do not treat this repo as the primary place for English doc edits. - Make English doc changes in `openclaw/openclaw`, then let sync copy them here. -- Generated locale pages in `docs/zh-CN/**`, `docs/ja-JP/**`, `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, and `docs/fr/**` are generated output. +- Generated locale pages in `docs/zh-CN/**`, `docs/ja-JP/**`, `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, `docs/fr/**`, and `docs/ar/**` are generated output. - `.openclaw-sync/source.json` records which `openclaw/openclaw` commit this mirror was synced from. ## Secrets diff --git a/docs/.i18n/README.md b/docs/.i18n/README.md index 6946b7b1b..e0c40b671 100644 --- a/docs/.i18n/README.md +++ b/docs/.i18n/README.md @@ -11,13 +11,7 @@ Generated locale trees and live translation memory now live in the publish repo: - English docs are authored in `openclaw/openclaw`. - The source docs tree lives under `docs/`. -<<<<<<< HEAD -- The source repo no longer keeps committed generated locale trees such as `docs/zh-CN/**`, `docs/ja-JP/**`, `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, or `docs/fr/**`. -||||||| parent of 15ada7e (docs: add generated locale scaffolding) -- The source repo no longer keeps committed `docs/zh-CN/**`. -======= -- The source repo no longer keeps committed generated locale trees such as `docs/zh-CN/**`, `docs/ja-JP/**`, `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, or `docs/fr/**`. ->>>>>>> 15ada7e (docs: add generated locale scaffolding) +- The source repo no longer keeps committed generated locale trees such as `docs/zh-CN/**`, `docs/ja-JP/**`, `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, `docs/fr/**`, or `docs/ar/**`. ## End-to-end flow @@ -27,7 +21,7 @@ Generated locale trees and live translation memory now live in the publish repo: 4. The sync script rewrites the publish `docs/docs.json` so the generated locale picker blocks exist there even though they are no longer committed in the source repo. 5. `openclaw/docs/.github/workflows/translate-zh-cn.yml` refreshes `docs/zh-CN/**` once a day, on demand, and after source-repo release dispatches. 6. `openclaw/docs/.github/workflows/translate-ja-jp.yml` does the same for `docs/ja-JP/**`. -7. `openclaw/docs/.github/workflows/translate-es.yml`, `translate-pt-br.yml`, `translate-ko.yml`, `translate-de.yml`, and `translate-fr.yml` do the same for `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, and `docs/fr/**`. +7. `openclaw/docs/.github/workflows/translate-es.yml`, `translate-pt-br.yml`, `translate-ko.yml`, `translate-de.yml`, `translate-fr.yml`, and `translate-ar.yml` do the same for `docs/es/**`, `docs/pt-BR/**`, `docs/ko/**`, `docs/de/**`, `docs/fr/**`, and `docs/ar/**`. ## Why the split exists @@ -38,10 +32,10 @@ Generated locale trees and live translation memory now live in the publish repo: ## Files in this folder - `glossary..json` — preferred term mappings used as prompt guidance. -- `de-navigation.json`, `es-navigation.json`, `fr-navigation.json`, `ja-navigation.json`, `ko-navigation.json`, `pt-BR-navigation.json`, `zh-Hans-navigation.json` — Mintlify locale picker blocks reinserted into the publish repo during sync. +- `ar-navigation.json`, `de-navigation.json`, `es-navigation.json`, `fr-navigation.json`, `ja-navigation.json`, `ko-navigation.json`, `pt-BR-navigation.json`, `zh-Hans-navigation.json` — Mintlify locale picker blocks reinserted into the publish repo during sync. - `.tm.jsonl` — translation memory keyed by workflow + model + text hash. -In this repo, generated locale TM files such as `docs/.i18n/zh-CN.tm.jsonl`, `docs/.i18n/ja-JP.tm.jsonl`, `docs/.i18n/es.tm.jsonl`, `docs/.i18n/pt-BR.tm.jsonl`, `docs/.i18n/ko.tm.jsonl`, `docs/.i18n/de.tm.jsonl`, and `docs/.i18n/fr.tm.jsonl` are intentionally no longer committed. +In this repo, generated locale TM files such as `docs/.i18n/zh-CN.tm.jsonl`, `docs/.i18n/ja-JP.tm.jsonl`, `docs/.i18n/es.tm.jsonl`, `docs/.i18n/pt-BR.tm.jsonl`, `docs/.i18n/ko.tm.jsonl`, `docs/.i18n/de.tm.jsonl`, `docs/.i18n/fr.tm.jsonl`, and `docs/.i18n/ar.tm.jsonl` are intentionally no longer committed. ## Glossary format @@ -67,7 +61,7 @@ Fields: - If the pending count is `0`, the expensive translation step is skipped entirely. - If there are pending files, the workflow translates only those files. - The publish workflow retries transient model-format failures, but unchanged files stay skipped because the same hash check runs on each retry. -- The source repo also dispatches zh-CN, ja-JP, es, pt-BR, ko, de, and fr refreshes after published GitHub releases so release docs can catch up without waiting for the daily cron. +- The source repo also dispatches zh-CN, ja-JP, es, pt-BR, ko, de, fr, and ar refreshes after published GitHub releases so release docs can catch up without waiting for the daily cron. ## Operational notes diff --git a/docs/.i18n/ar-navigation.json b/docs/.i18n/ar-navigation.json new file mode 100644 index 000000000..18dad62b4 --- /dev/null +++ b/docs/.i18n/ar-navigation.json @@ -0,0 +1,18 @@ +{ + "language": "ar", + "tabs": [ + { + "tab": "ابدأ", + "groups": [ + { + "group": "نظرة عامة", + "pages": ["ar/index"] + }, + { + "group": "الخطوات الأولى", + "pages": ["ar/start/getting-started", "ar/start/wizard"] + } + ] + } + ] +} diff --git a/docs/.i18n/ar.tm.jsonl b/docs/.i18n/ar.tm.jsonl new file mode 100644 index 000000000..e69de29bb diff --git a/docs/.i18n/glossary.ar.json b/docs/.i18n/glossary.ar.json new file mode 100644 index 000000000..461226c5a --- /dev/null +++ b/docs/.i18n/glossary.ar.json @@ -0,0 +1,5 @@ +[ + { "source": "CLI", "target": "CLI" }, + { "source": "Mintlify", "target": "Mintlify" }, + { "source": "OpenClaw", "target": "OpenClaw" } +] diff --git a/docs/ar/index.md b/docs/ar/index.md new file mode 100644 index 000000000..8a3a1c758 --- /dev/null +++ b/docs/ar/index.md @@ -0,0 +1,203 @@ +--- +read_when: + - تقديم OpenClaw للقادمين الجدد +summary: OpenClaw هي بوابة متعددة القنوات لوكلاء الذكاء الاصطناعي وتعمل على أي نظام تشغيل. +title: OpenClaw +x-i18n: + generated_at: "2026-04-05T11:36:25Z" + model: gpt-5.4 + provider: openai + source_hash: 9c29a8d9fc41a94b650c524bb990106f134345560e6d615dac30e8815afff481 + source_path: index.md + workflow: 15 +--- + +# OpenClaw 🦞 + +

+ OpenClaw + +

+ +> _"اقشر! اقشر!"_ — كركند فضائي، على الأرجح + +

+ بوابة تعمل على أي نظام تشغيل لوكلاء الذكاء الاصطناعي عبر Discord وGoogle Chat وiMessage وMatrix وMicrosoft Teams وSignal وSlack وTelegram وWhatsApp وZalo والمزيد.
+ أرسل رسالة، واحصل على رد من وكيل من جيبك. شغّل Gateway واحدًا عبر القنوات المضمنة، وإضافات القنوات المجمعة، وWebChat، وعُقد الأجهزة المحمولة. +

+ + + + ثبّت OpenClaw وشغّل Gateway خلال دقائق. + + + إعداد موجّه باستخدام `openclaw onboard` وتدفّقات الاقتران. + + + شغّل لوحة التحكم في المتصفح للمحادثة والإعدادات والجلسات. + + + +## ما هو OpenClaw؟ + +OpenClaw هو **Gateway مستضاف ذاتيًا** يربط تطبيقات الدردشة المفضلة لديك وواجهات القنوات — القنوات المضمنة بالإضافة إلى إضافات القنوات المجمعة أو الخارجية مثل Discord وGoogle Chat وiMessage وMatrix وMicrosoft Teams وSignal وSlack وTelegram وWhatsApp وZalo والمزيد — بوكلاء برمجة بالذكاء الاصطناعي مثل Pi. أنت تشغّل عملية Gateway واحدة على جهازك الخاص (أو على خادم)، فتتحول إلى جسر بين تطبيقات المراسلة لديك ومساعد ذكاء اصطناعي متاح دائمًا. + +**لمن هو؟** للمطورين والمستخدمين المتقدمين الذين يريدون مساعدًا شخصيًا بالذكاء الاصطناعي يمكنهم مراسلته من أي مكان — من دون التخلي عن التحكم في بياناتهم أو الاعتماد على خدمة مستضافة. + +**ما الذي يميّزه؟** + +- **مستضاف ذاتيًا**: يعمل على أجهزتك ووفق قواعدك +- **متعدد القنوات**: يخدم Gateway واحد القنوات المضمنة بالإضافة إلى إضافات القنوات المجمعة أو الخارجية في الوقت نفسه +- **مصمم أصلًا للوكلاء**: مبني لوكلاء البرمجة مع استخدام الأدوات والجلسات والذاكرة والتوجيه متعدد الوكلاء +- **مفتوح المصدر**: مرخّص بموجب MIT ويقوده المجتمع + +**ماذا تحتاج؟** Node 24 (موصى به)، أو Node 22 LTS (`22.14+`) للتوافق، ومفتاح API من المزوّد الذي تختاره، و5 دقائق. للحصول على أفضل جودة وأمان، استخدم أقوى نموذج متاح من الجيل الأحدث. + +## كيف يعمل + +```mermaid +flowchart LR + A["تطبيقات الدردشة + الإضافات"] --> B["Gateway"] + B --> C["وكيل Pi"] + B --> D["CLI"] + B --> E["واجهة التحكم على الويب"] + B --> F["تطبيق macOS"] + B --> G["عُقد iOS وAndroid"] +``` + +يُعد Gateway المصدر الوحيد للحقيقة للجلسات والتوجيه واتصالات القنوات. + +## الإمكانات الأساسية + + + + Discord وiMessage وSignal وSlack وTelegram وWhatsApp وWebChat والمزيد باستخدام عملية Gateway واحدة. + + + تضيف الإضافات المجمعة Matrix وNostr وTwitch وZalo والمزيد في الإصدارات الحالية العادية. + + + جلسات معزولة لكل وكيل أو مساحة عمل أو مرسل. + + + أرسل واستقبل الصور والصوت والمستندات. + + + لوحة تحكم في المتصفح للمحادثة والإعدادات والجلسات والعُقد. + + + اقترن بعُقد iOS وAndroid لسير عمل Canvas والكاميرا والميزات الصوتية. + + + +## بدء سريع + + + + ```bash + npm install -g openclaw@latest + ``` + + + ```bash + openclaw onboard --install-daemon + ``` + + + افتح واجهة التحكم في متصفحك وأرسل رسالة: + + ```bash + openclaw dashboard + ``` + + أو صِل قناة ([Telegram](/channels/telegram) هي الأسرع) وابدأ الدردشة من هاتفك. + + + + +هل تحتاج إلى إعداد التثبيت والتطوير الكامل؟ راجع [البدء](/start/getting-started). + +## لوحة التحكم + +افتح واجهة التحكم في المتصفح بعد بدء Gateway. + +- الإعداد المحلي الافتراضي: [http://127.0.0.1:18789/](http://127.0.0.1:18789/) +- الوصول عن بُعد: [واجهات الويب](/web) و[Tailscale](/gateway/tailscale) + +

+ OpenClaw +

+ +## الإعدادات (اختياري) + +توجد الإعدادات في `~/.openclaw/openclaw.json`. + +- إذا **لم تفعل شيئًا**، يستخدم OpenClaw ملف Pi الثنائي المجمّع في وضع RPC مع جلسات لكل مرسل. +- إذا أردت تقييده، فابدأ بـ `channels.whatsapp.allowFrom` وقواعد الإشارة (للمجموعات). + +مثال: + +```json5 +{ + channels: { + whatsapp: { + allowFrom: ["+15555550123"], + groups: { "*": { requireMention: true } }, + }, + }, + messages: { groupChat: { mentionPatterns: ["@openclaw"] } }, +} +``` + +## ابدأ من هنا + + + + جميع الوثائق والأدلة، منظّمة حسب حالة الاستخدام. + + + إعدادات Gateway الأساسية والرموز وإعدادات المزوّد. + + + أنماط الوصول عبر SSH وtailnet. + + + إعداد خاص بالقنوات لـ Feishu وMicrosoft Teams وWhatsApp وTelegram وDiscord والمزيد. + + + عُقد iOS وAndroid مع الاقتران وCanvas والكاميرا وإجراءات الجهاز. + + + الإصلاحات الشائعة ونقطة الدخول إلى استكشاف الأخطاء وإصلاحها. + + + +## تعرّف على المزيد + + + + إمكانات القنوات والتوجيه والوسائط كاملة. + + + عزل مساحات العمل والجلسات لكل وكيل. + + + الرموز وقوائم السماح وعناصر التحكم في الأمان. + + + تشخيصات Gateway والأخطاء الشائعة. + + + أصول المشروع والمساهمون والترخيص. + + diff --git a/docs/ar/start/getting-started.md b/docs/ar/start/getting-started.md new file mode 100644 index 000000000..6bfec9a4f --- /dev/null +++ b/docs/ar/start/getting-started.md @@ -0,0 +1,151 @@ +--- +read_when: + - الإعداد لأول مرة من الصفر + - تريد أسرع طريق إلى محادثة تعمل بالفعل +summary: ثبّت OpenClaw وابدأ أول محادثة لك خلال دقائق. +title: البدء +x-i18n: + generated_at: "2026-04-05T11:36:39Z" + model: gpt-5.4 + provider: openai + source_hash: c43eee6f0d3f593e3cf0767bfacb3e0ae38f51a2615d594303786ae1d4a6d2c3 + source_path: start/getting-started.md + workflow: 15 +--- + +# البدء + +ثبّت OpenClaw، وشغّل الإعداد التمهيدي، وابدأ الدردشة مع مساعدك المدعوم بالذكاء الاصطناعي — كل ذلك خلال نحو 5 دقائق. في النهاية سيكون لديك Gateway قيد التشغيل، ومصادقة مُعدّة، وجلسة دردشة عاملة. + +## ما الذي تحتاج إليه + +- **Node.js** — يُوصى بـ Node 24 (كما أن Node 22.14+ مدعوم أيضًا) +- **مفتاح API** من موفّر نماذج (Anthropic أو OpenAI أو Google أو غيرها) — سيطلبه منك الإعداد التمهيدي + + +تحقق من إصدار Node لديك باستخدام `node --version`. +**لمستخدمي Windows:** كل من Windows الأصلي وWSL2 مدعومان. يُعد WSL2 أكثر استقرارًا ويُنصح به للحصول على التجربة الكاملة. راجع [Windows](/platforms/windows). +هل تحتاج إلى تثبيت Node؟ راجع [إعداد Node](/install/node). + + +## إعداد سريع + + + + + + ```bash + curl -fsSL https://openclaw.ai/install.sh | bash + ``` + عملية برنامج التثبيت النصي + + + ```powershell + iwr -useb https://openclaw.ai/install.ps1 | iex + ``` + + + + + طرق تثبيت أخرى (Docker وNix وnpm): [التثبيت](/install). + + + + + ```bash + openclaw onboard --install-daemon + ``` + + يرشدك المعالج خلال اختيار موفّر نموذج، وتعيين مفتاح API، وتهيئة Gateway. يستغرق ذلك نحو دقيقتين. + + راجع [الإعداد التمهيدي (CLI)](/start/wizard) للحصول على المرجع الكامل. + + + + ```bash + openclaw gateway status + ``` + + يجب أن ترى أن Gateway يستمع على المنفذ 18789. + + + + ```bash + openclaw dashboard + ``` + + سيؤدي هذا إلى فتح واجهة التحكم في متصفحك. إذا تم تحميلها، فهذا يعني أن كل شيء يعمل. + + + + اكتب رسالة في دردشة واجهة التحكم، ويُفترض أن تحصل على رد من الذكاء الاصطناعي. + + هل تريد الدردشة من هاتفك بدلًا من ذلك؟ أسرع قناة للإعداد هي + [Telegram](/channels/telegram) (مجرد رمز bot مميز). راجع [القنوات](/channels) + للاطلاع على جميع الخيارات. + + + + + + إذا كنت تحتفظ بإصدار مترجم أو مخصص من لوحة التحكم، فوجّه + `gateway.controlUi.root` إلى دليل يحتوي على الأصول الثابتة + المضمّنة و`index.html`. + +```bash +mkdir -p "$HOME/.openclaw/control-ui-custom" +# انسخ ملفاتك الثابتة المضمّنة إلى ذلك الدليل. +``` + +ثم عيّن: + +```json +{ + "gateway": { + "controlUi": { + "enabled": true, + "root": "$HOME/.openclaw/control-ui-custom" + } + } +} +``` + +أعد تشغيل gateway ثم أعد فتح لوحة التحكم: + +```bash +openclaw gateway restart +openclaw dashboard +``` + + + +## ماذا تفعل بعد ذلك + + + + Discord وFeishu وiMessage وMatrix وMicrosoft Teams وSignal وSlack وTelegram وWhatsApp وZalo والمزيد. + + + تحكم فيمن يمكنه مراسلة وكيلك. + + + النماذج والأدوات وsandbox والإعدادات المتقدمة. + + + المتصفح وexec والبحث على الويب وSkills والإضافات. + + + + + إذا كنت تشغّل OpenClaw كحساب خدمة أو تريد مسارات مخصصة: + +- `OPENCLAW_HOME` — الدليل الرئيسي لحل المسارات الداخلية +- `OPENCLAW_STATE_DIR` — تجاوز دليل الحالة +- `OPENCLAW_CONFIG_PATH` — تجاوز مسار ملف الإعدادات + +المرجع الكامل: [متغيرات البيئة](/help/environment). + diff --git a/docs/ar/start/wizard.md b/docs/ar/start/wizard.md new file mode 100644 index 000000000..49230acfc --- /dev/null +++ b/docs/ar/start/wizard.md @@ -0,0 +1,134 @@ +--- +read_when: + - تشغيل الإعداد التمهيدي عبر CLI أو تهيئته + - إعداد جهاز جديد +sidebarTitle: 'Onboarding: CLI' +summary: 'الإعداد التمهيدي عبر CLI: إعداد موجّه للبوابة ومساحة العمل والقنوات وSkills' +title: الإعداد التمهيدي (CLI) +x-i18n: + generated_at: "2026-04-05T11:37:03Z" + model: gpt-5.4 + provider: openai + source_hash: 81e33fb4f8be30e7c2c6e0024bf9bdcf48583ca58eaf5fff5afd37a1cd628523 + source_path: start/wizard.md + workflow: 15 +--- + +# الإعداد التمهيدي (CLI) + +يُعد الإعداد التمهيدي عبر CLI الطريقة **الموصى بها** لإعداد OpenClaw على macOS، +وLinux، أو Windows (عبر WSL2؛ موصى به بشدة). +وهو يهيّئ Gateway محليًا أو اتصالًا بـ Gateway بعيد، بالإضافة إلى القنوات وSkills، +وإعدادات مساحة العمل الافتراضية ضمن تدفق موجّه واحد. + +```bash +openclaw onboard +``` + + +أسرع طريقة لأول محادثة: افتح واجهة التحكم (لا حاجة إلى إعداد قناة). شغّل +`openclaw dashboard` وابدأ الدردشة في المتصفح. الوثائق: [لوحة التحكم](/web/dashboard). + + +لإعادة التهيئة لاحقًا: + +```bash +openclaw configure +openclaw agents add +``` + + +لا يعني `--json` وضع عدم التفاعل تلقائيًا. بالنسبة إلى السكربتات، استخدم `--non-interactive`. + + + +يتضمن الإعداد التمهيدي عبر CLI خطوة للبحث على الويب يمكنك فيها اختيار موفّر +مثل Brave أو DuckDuckGo أو Exa أو Firecrawl أو Gemini أو Grok أو Kimi أو MiniMax Search، +أو Ollama Web Search أو Perplexity أو SearXNG أو Tavily. تتطلب بعض الموفّرات +مفتاح API، بينما لا يتطلب بعضها الآخر أي مفتاح. يمكنك أيضًا تهيئة ذلك لاحقًا باستخدام +`openclaw configure --section web`. الوثائق: [أدوات الويب](/tools/web). + + +## QuickStart مقابل Advanced + +يبدأ الإعداد التمهيدي بخيار **QuickStart** (الإعدادات الافتراضية) مقابل **Advanced** (تحكم كامل). + + + + - Gateway محلي (loopback) + - مساحة العمل الافتراضية (أو مساحة عمل موجودة) + - منفذ Gateway **18789** + - مصادقة Gateway باستخدام **Token** (يُنشأ تلقائيًا، حتى على loopback) + - سياسة الأدوات الافتراضية للإعدادات المحلية الجديدة: `tools.profile: "coding"` (يتم الاحتفاظ بأي profile صريح موجود) + - إعداد عزل الرسائل المباشرة الافتراضي: يكتب الإعداد التمهيدي المحلي `session.dmScope: "per-channel-peer"` عندما لا يكون معيّنًا. التفاصيل: [مرجع إعداد CLI](/start/wizard-cli-reference#outputs-and-internals) + - إتاحة Tailscale **معطلة** + - تكون الرسائل المباشرة في Telegram وWhatsApp افتراضيًا ضمن **قائمة السماح** (سيُطلب منك رقم هاتفك) + + + - يكشف كل خطوة (الوضع، مساحة العمل، Gateway، القنوات، daemon، Skills). + + + +## ما الذي يهيئه الإعداد التمهيدي + +**الوضع المحلي (الافتراضي)** يرشدك خلال هذه الخطوات: + +1. **النموذج/المصادقة** — اختر أي موفّر/تدفق مصادقة مدعوم (مفتاح API، أو OAuth، أو مصادقة يدوية خاصة بالموفّر)، بما في ذلك Custom Provider + (متوافق مع OpenAI، أو متوافق مع Anthropic، أو Unknown مع اكتشاف تلقائي). اختر نموذجًا افتراضيًا. + ملاحظة أمنية: إذا كان هذا الوكيل سيشغّل أدوات أو يعالج محتوى webhook/hooks، ففضّل أقوى نموذج متاح من الجيل الأحدث، وأبقِ سياسة الأدوات صارمة. تكون الفئات الأضعف/الأقدم أسهل في حقن المطالبات فيها. + بالنسبة إلى عمليات التشغيل غير التفاعلية، يخزّن `--secret-input-mode ref` مراجع مدعومة بالبيئة داخل ملفات تعريف المصادقة بدلًا من قيم مفاتيح API النصية الصريحة. + في وضع `ref` غير التفاعلي، يجب تعيين متغير البيئة الخاص بالموفّر؛ ويفشل التمرير المضمن لعلامات المفتاح من دون متغير البيئة هذا مباشرة. + في عمليات التشغيل التفاعلية، يتيح لك اختيار وضع المرجع السري الإشارة إما إلى متغير بيئة أو إلى مرجع موفّر مُهيأ (`file` أو `exec`) مع تحقق تمهيدي سريع قبل الحفظ. + بالنسبة إلى Anthropic، يوفّر الإعداد التمهيدي/التهيئة التفاعلية **Anthropic Claude CLI** كخيار احتياطي محلي و**مفتاح Anthropic API** كمسار الإنتاج الموصى به. أصبح Anthropic setup-token متاحًا أيضًا مرة أخرى كمسار OpenClaw قديم/يدوي، مع توقّع **Extra Usage** الخاص بـ OpenClaw في الفوترة لدى Anthropic. +2. **مساحة العمل** — موقع ملفات الوكيل (الافتراضي `~/.openclaw/workspace`). يملأ ملفات bootstrap الأولية. +3. **Gateway** — المنفذ، وعنوان الربط، ووضع المصادقة، وإتاحة Tailscale. + في وضع token التفاعلي، اختر تخزين token النصي الصريح الافتراضي أو انتقل إلى SecretRef. + مسار SecretRef الخاص بـ token في الوضع غير التفاعلي: `--gateway-token-ref-env `. +4. **القنوات** — قنوات الدردشة المضمنة والمجمعة مثل BlueBubbles وDiscord وFeishu وGoogle Chat وMattermost وMicrosoft Teams وQQ Bot وSignal وSlack وTelegram وWhatsApp والمزيد. +5. **Daemon** — يثبّت LaunchAgent (على macOS)، أو وحدة systemd للمستخدم (على Linux/WSL2)، أو Scheduled Task أصليًا في Windows مع بديل لكل مستخدم في مجلد Startup. + إذا كانت مصادقة token تتطلب token وكان `gateway.auth.token` مُدارًا عبر SecretRef، فإن تثبيت daemon يتحقق منه لكنه لا يستمر في حفظ token الذي تم حلّه داخل بيانات بيئة الخدمة التابعة للمشرف. + إذا كانت مصادقة token تتطلب token وكان SecretRef المهيأ لـ token غير قابل للحل، فسيُحظر تثبيت daemon مع إرشادات قابلة للتنفيذ. + إذا كان كل من `gateway.auth.token` و`gateway.auth.password` مهيأين وكانت `gateway.auth.mode` غير معيّنة، فسيُحظر تثبيت daemon حتى يتم تعيين الوضع صراحة. +6. **فحص السلامة** — يشغّل Gateway ويتحقق من أنه يعمل. +7. **Skills** — يثبّت Skills الموصى بها والاعتماديات الاختيارية. + + +إن إعادة تشغيل الإعداد التمهيدي **لا** تمسح أي شيء ما لم تختر **Reset** صراحةً (أو تمرر `--reset`). +يستخدم `--reset` في CLI افتراضيًا النطاقات config وcredentials وsessions؛ استخدم `--reset-scope full` لتضمين مساحة العمل. +إذا كانت الإعدادات غير صالحة أو تحتوي على مفاتيح قديمة، فسيطلب منك الإعداد التمهيدي تشغيل `openclaw doctor` أولًا. + + +**الوضع البعيد** يهيّئ العميل المحلي فقط للاتصال بـ Gateway موجود في مكان آخر. +وهو **لا** يثبت أو يغيّر أي شيء على المضيف البعيد. + +## إضافة وكيل آخر + +استخدم `openclaw agents add ` لإنشاء وكيل منفصل له مساحة العمل الخاصة به، +وجلساته، وملفات تعريف المصادقة الخاصة به. يؤدي التشغيل من دون `--workspace` إلى بدء الإعداد التمهيدي. + +ما الذي يعيّنه: + +- `agents.list[].name` +- `agents.list[].workspace` +- `agents.list[].agentDir` + +ملاحظات: + +- تتبع مساحات العمل الافتراضية النمط `~/.openclaw/workspace-`. +- أضف `bindings` لتوجيه الرسائل الواردة (يمكن للإعداد التمهيدي تنفيذ ذلك). +- علامات الوضع غير التفاعلي: `--model` و`--agent-dir` و`--bind` و`--non-interactive`. + +## المرجع الكامل + +للاطلاع على تفصيلات خطوة بخطوة ومخرجات الإعدادات، راجع +[مرجع إعداد CLI](/start/wizard-cli-reference). +وللحصول على أمثلة غير تفاعلية، راجع [أتمتة CLI](/start/wizard-cli-automation). +وللمرجع التقني الأعمق، بما في ذلك تفاصيل RPC، راجع +[مرجع الإعداد التمهيدي](/reference/wizard). + +## الوثائق ذات الصلة + +- مرجع أوامر CLI: [`openclaw onboard`](/cli/onboard) +- نظرة عامة على الإعداد التمهيدي: [نظرة عامة على الإعداد التمهيدي](/start/onboarding-overview) +- الإعداد التمهيدي لتطبيق macOS: [الإعداد التمهيدي](/start/onboarding) +- طقس التشغيل الأول للوكيل: [التهيئة الأولية للوكيل](/start/bootstrapping) diff --git a/docs/docs.json b/docs/docs.json index b1d146027..0f860d496 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -2414,6 +2414,29 @@ ] } ] + }, + { + "language": "ar", + "tabs": [ + { + "tab": "ابدأ", + "groups": [ + { + "group": "نظرة عامة", + "pages": [ + "ar/index" + ] + }, + { + "group": "الخطوات الأولى", + "pages": [ + "ar/start/getting-started", + "ar/start/wizard" + ] + } + ] + } + ] } ] }