---
read_when:
    - تحتاج إلى شرح مساحة عمل الوكيل أو تخطيط ملفاته
    - تريد إجراء نسخة احتياطية أو ترحيل مساحة عمل وكيل
summary: 'مساحة عمل الوكيل: الموقع، التخطيط، واستراتيجية النسخ الاحتياطي'
title: مساحة عمل الوكيل
x-i18n:
    generated_at: "2026-04-18T07:14:51Z"
    model: gpt-5.4
    provider: openai
    source_hash: dd2e74614d8d45df04b1bbda48e2224e778b621803d774d38e4b544195eb234e
    source_path: concepts/agent-workspace.md
    workflow: 15
---

# مساحة عمل الوكيل

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

وهذا منفصل عن `~/.openclaw/`، الذي يخزن الإعدادات وبيانات الاعتماد والجلسات.

**مهم:** مساحة العمل هي **cwd الافتراضي**، وليست صندوق عزل صارمًا. تحل الأدوات المسارات النسبية نسبةً إلى مساحة العمل، لكن لا يزال بإمكان المسارات المطلقة الوصول إلى أماكن أخرى على المضيف ما لم يكن العزل مفعّلًا. إذا كنت بحاجة إلى العزل، فاستخدم [`agents.defaults.sandbox`](/ar/gateway/sandboxing) (و/أو إعدادات العزل لكل وكيل على حدة).
عند تفعيل العزل وعدم ضبط `workspaceAccess` على `"rw"`، تعمل الأدوات داخل مساحة عمل معزولة تحت `~/.openclaw/sandboxes` بدلًا من مساحة العمل على المضيف.

## الموقع الافتراضي

- الافتراضي: `~/.openclaw/workspace`
- إذا كان `OPENCLAW_PROFILE` مضبوطًا ولم يكن `"default"`، يصبح الافتراضي
  `~/.openclaw/workspace-<profile>`.
- تجاوز الإعداد في `~/.openclaw/openclaw.json`:

```json5
{
  agent: {
    workspace: "~/.openclaw/workspace",
  },
}
```

سيقوم `openclaw onboard` أو `openclaw configure` أو `openclaw setup` بإنشاء
مساحة العمل وإضافة ملفات التهيئة الأولية إذا كانت مفقودة.
تقبل نسخ البذور المعزولة فقط الملفات العادية داخل مساحة العمل؛ أما الأسماء
المستعارة من symlink/hardlink التي تُحل خارج مساحة العمل المصدر فيتم تجاهلها.

إذا كنت تدير ملفات مساحة العمل بنفسك بالفعل، فيمكنك تعطيل إنشاء ملفات
التهيئة الأولية:

```json5
{ agent: { skipBootstrap: true } }
```

## مجلدات مساحة العمل الإضافية

قد تكون الإصدارات الأقدم قد أنشأت `~/openclaw`. إن الاحتفاظ بعدة أدلة لمساحة
العمل يمكن أن يسبب التباسًا في المصادقة أو انجرافًا في الحالة، لأن مساحة عمل
واحدة فقط تكون نشطة في كل مرة.

**التوصية:** احتفظ بمساحة عمل نشطة واحدة. إذا لم تعد تستخدم المجلدات
الإضافية، فقم بأرشفتها أو نقلها إلى سلة المهملات (مثلًا `trash ~/openclaw`).
إذا كنت تحتفظ عمدًا بعدة مساحات عمل، فتأكد من أن
`agents.defaults.workspace` يشير إلى المساحة النشطة.

يحذّر `openclaw doctor` عند اكتشافه أدلة إضافية لمساحة العمل.

## خريطة ملفات مساحة العمل (ماذا يعني كل ملف)

هذه هي الملفات القياسية التي يتوقع OpenClaw وجودها داخل مساحة العمل:

- `AGENTS.md`
  - تعليمات التشغيل الخاصة بالوكيل وكيفية استخدامه للذاكرة.
  - يُحمَّل في بداية كل جلسة.
  - مكان مناسب للقواعد والأولويات وتفاصيل "كيفية التصرف".

- `SOUL.md`
  - الشخصية والنبرة والحدود.
  - يُحمَّل في كل جلسة.
  - الدليل: [دليل شخصية SOUL.md](/ar/concepts/soul)

- `USER.md`
  - من هو المستخدم وكيفية مخاطبته.
  - يُحمَّل في كل جلسة.

- `IDENTITY.md`
  - اسم الوكيل وطابعه وemoji الخاص به.
  - يُنشأ/يُحدَّث أثناء طقس التهيئة الأولية.

- `TOOLS.md`
  - ملاحظات حول أدواتك المحلية وأعرافك.
  - لا يتحكم في توفر الأدوات؛ بل هو مجرد إرشادات.

- `HEARTBEAT.md`
  - قائمة تحقق صغيرة اختيارية لتشغيلات Heartbeat.
  - أبقه قصيرًا لتجنب استهلاك التوكنات.

- `BOOT.md`
  - قائمة تحقق اختيارية عند بدء التشغيل تُنفذ عند إعادة تشغيل Gateway عندما تكون الخطافات الداخلية مفعلة.
  - أبقها قصيرة؛ واستخدم أداة الرسائل للإرسال إلى الخارج.

- `BOOTSTRAP.md`
  - طقس أول تشغيل يُنفذ مرة واحدة.
  - يُنشأ فقط لمساحة عمل جديدة تمامًا.
  - احذفه بعد اكتمال الطقس.

- `memory/YYYY-MM-DD.md`
  - سجل الذاكرة اليومي (ملف واحد لكل يوم).
  - يُنصح بقراءة ملف اليوم + الأمس عند بدء الجلسة.

- `MEMORY.md` (اختياري)
  - ذاكرة طويلة الأمد منسقة.
  - لا يُحمَّل إلا في الجلسة الرئيسية الخاصة (وليس في السياقات المشتركة/الجماعية).

راجع [الذاكرة](/ar/concepts/memory) للاطلاع على سير العمل والتفريغ التلقائي للذاكرة.

- `skills/` (اختياري)
  - Skills خاصة بمساحة العمل.
  - موقع Skills الأعلى أولوية لتلك المساحة.
  - يتجاوز Skills وكلاء المشروع، وSkills الوكيل الشخصية، وSkills المُدارة، وSkills المضمّنة، و`skills.load.extraDirs` عند تعارض الأسماء.

- `canvas/` (اختياري)
  - ملفات واجهة Canvas لعرض Node (مثل `canvas/index.html`).

إذا كان أي ملف من ملفات التهيئة الأولية مفقودًا، يضيف OpenClaw علامة "ملف مفقود"
إلى الجلسة ويتابع التشغيل. يتم اقتطاع ملفات التهيئة الأولية الكبيرة عند إدراجها؛
اضبط الحدود باستخدام `agents.defaults.bootstrapMaxChars` (الافتراضي: 12000) و
`agents.defaults.bootstrapTotalMaxChars` (الافتراضي: 60000).
يمكن لـ `openclaw setup` إعادة إنشاء الإعدادات الافتراضية المفقودة دون الكتابة فوق
الملفات الموجودة.

## ما الذي **ليس** داخل مساحة العمل

توجد هذه العناصر تحت `~/.openclaw/` ويجب **عدم** الالتزام بها داخل مستودع مساحة العمل:

- `~/.openclaw/openclaw.json` (الإعدادات)
- `~/.openclaw/agents/<agentId>/agent/auth-profiles.json` (ملفات تعريف مصادقة النماذج: OAuth + مفاتيح API)
- `~/.openclaw/credentials/` (حالة القناة/المزوّد بالإضافة إلى بيانات استيراد OAuth القديمة)
- `~/.openclaw/agents/<agentId>/sessions/` (سجلات الجلسات + البيانات الوصفية)
- `~/.openclaw/skills/` (Skills المُدارة)

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

## النسخ الاحتياطي عبر Git (موصى به، خاص)

تعامل مع مساحة العمل على أنها ذاكرة خاصة. ضعها في مستودع git **خاص** بحيث
تكون محفوظة احتياطيًا وقابلة للاسترجاع.

نفّذ هذه الخطوات على الجهاز الذي يعمل عليه Gateway (فهناك توجد مساحة العمل).

### 1) تهيئة المستودع

إذا كان git مثبتًا، فستُهيَّأ مساحات العمل الجديدة تلقائيًا. إذا لم تكن مساحة
العمل هذه مستودعًا بالفعل، فشغّل:

```bash
cd ~/.openclaw/workspace
git init
git add AGENTS.md SOUL.md TOOLS.md IDENTITY.md USER.md HEARTBEAT.md memory/
git commit -m "Add agent workspace"
```

### 2) إضافة remote خاص (خيارات سهلة للمبتدئين)

الخيار A: واجهة GitHub على الويب

1. أنشئ مستودعًا **خاصًا** جديدًا على GitHub.
2. لا تهيئه بملف README (لتجنب تعارضات الدمج).
3. انسخ عنوان remote بصيغة HTTPS.
4. أضف remote وادفع:

```bash
git branch -M main
git remote add origin <https-url>
git push -u origin main
```

الخيار B: GitHub CLI (`gh`)

```bash
gh auth login
gh repo create openclaw-workspace --private --source . --remote origin --push
```

الخيار C: واجهة GitLab على الويب

1. أنشئ مستودعًا **خاصًا** جديدًا على GitLab.
2. لا تهيئه بملف README (لتجنب تعارضات الدمج).
3. انسخ عنوان remote بصيغة HTTPS.
4. أضف remote وادفع:

```bash
git branch -M main
git remote add origin <https-url>
git push -u origin main
```

### 3) التحديثات المستمرة

```bash
git status
git add .
git commit -m "Update memory"
git push
```

## لا تلتزم بالأسرار

حتى داخل مستودع خاص، تجنب تخزين الأسرار في مساحة العمل:

- مفاتيح API أو رموز OAuth أو كلمات المرور أو بيانات الاعتماد الخاصة.
- أي شيء تحت `~/.openclaw/`.
- تفريغات خام للمحادثات أو المرفقات الحساسة.

إذا اضطررت إلى تخزين مراجع حساسة، فاستخدم عناصر نائبة واحتفظ بالسر الحقيقي
في مكان آخر (مدير كلمات مرور، أو متغيرات البيئة، أو `~/.openclaw/`).

ملف `.gitignore` مقترح للبدء:

```gitignore
.DS_Store
.env
**/*.key
**/*.pem
**/secrets*
```

## نقل مساحة العمل إلى جهاز جديد

1. انسخ المستودع إلى المسار المطلوب (الافتراضي `~/.openclaw/workspace`).
2. اضبط `agents.defaults.workspace` على ذلك المسار في `~/.openclaw/openclaw.json`.
3. شغّل `openclaw setup --workspace <path>` لإضافة أي ملفات مفقودة.
4. إذا كنت بحاجة إلى الجلسات، فانقل `~/.openclaw/agents/<agentId>/sessions/` من
   الجهاز القديم بشكل منفصل.

## ملاحظات متقدمة

- يمكن للتوجيه متعدد الوكلاء استخدام مساحات عمل مختلفة لكل وكيل. راجع
  [توجيه القنوات](/ar/channels/channel-routing) للحصول على إعدادات التوجيه.
- إذا كان `agents.defaults.sandbox` مفعّلًا، فقد تستخدم الجلسات غير الرئيسية
  مساحات عمل معزولة لكل جلسة تحت `agents.defaults.sandbox.workspaceRoot`.

## ذو صلة

- [الأوامر الدائمة](/ar/automation/standing-orders) — تعليمات دائمة في ملفات مساحة العمل
- [Heartbeat](/ar/gateway/heartbeat) — ملف مساحة العمل HEARTBEAT.md
- [الجلسة](/ar/concepts/session) — مسارات تخزين الجلسات
- [العزل](/ar/gateway/sandboxing) — الوصول إلى مساحة العمل في البيئات المعزولة
