openclaw sessions

عرض وإدارة جلسات المحادثة النشطة والسابقة مع الوكيل.

الاستخدام الأساسي

openclaw sessions [command] [options]

ما هي الجلسة؟

الجلسة هي سياق محادثة مستمر بين المستخدم والوكيل. كل جلسة تحتوي على:

  • • تاريخ الرسائل المتبادلة
  • • السياق والذاكرة قصيرة المدى
  • • الملفات المحملة
  • • حالة المحادثة الحالية

الأوامر

عرض الجلسات

# عرض جميع الجلسات النشطة
openclaw sessions list

# عرض الجلسات لقناة محددة
openclaw sessions list --channel telegram

# تضمين الجلسات المنتهية
openclaw sessions list --all

# بتنسيق JSON
openclaw sessions list --json

تفاصيل جلسة

# عرض تفاصيل جلسة محددة
openclaw sessions show agent:main

# مع تاريخ الرسائل
openclaw sessions show agent:main --history

# مع إحصائيات الاستخدام
openclaw sessions show agent:main --stats

إنهاء جلسة

# إنهاء جلسة محددة
openclaw sessions end agent:main:telegram:chat123

# إنهاء جميع الجلسات لقناة
openclaw sessions end --channel telegram

# إنهاء جميع الجلسات
openclaw sessions end --all

تنظيف الجلسات القديمة

# حذف الجلسات الأقدم من 30 يوم
openclaw sessions clean --days 30

# حذف الجلسات غير النشطة
openclaw sessions clean --inactive

# معاينة بدون حذف
openclaw sessions clean --days 30 --dry-run

تصدير واستيراد

# تصدير جلسة
openclaw sessions export agent:main --output session.json

# استيراد جلسة
openclaw sessions import session.json

# تصدير جميع الجلسات
openclaw sessions export --all --output sessions-backup.tar.gz

الخيارات

الخيارالوصف
--allجميع الجلسات (بما في ذلك المنتهية)
--channel <name>قناة محددة فقط
--jsonإخراج بتنسيق JSON
--historyتضمين تاريخ الرسائل
--statsإحصائيات الاستخدام
--days <number>عدد الأيام للاحتفاظ
--inactiveالجلسات غير النشطة فقط
--dry-runمعاينة بدون تنفيذ
--output <path>مسار ملف التصدير

بنية معرف الجلسة

كل جلسة لها معرف فريد بالصيغة:

agent:main:telegram:chat123456
│     │    │         │
│     │    │         └─ معرف المحادثة
│     │    └─ القناة
│     └─ الوكيل
└─ النوع

أمثلة:

  • • agent:main - الوكيل الرئيسي
  • • agent:main:telegram:123 - محادثة Telegram محددة
  • • agent:main:discord:456 - محادثة Discord
  • • agent:subagent:789 - وكيل فرعي

حالات الجلسة

🟢
active-جلسة نشطة، تتلقى رسائل
⏸️
idle-غير نشطة حالياً لكن قابلة للاستئناف
💤
hibernated-في وضع السبات (مضغوطة)
ended-جلسة منتهية
🗑️
archived-مؤرشفة للحفظ

أمثلة متقدمة

البحث في الجلسات

# البحث عن جلسات مستخدم محدد
openclaw sessions list --json | jq '.[] | select(.user == "user123")'

# الجلسات النشطة فقط
openclaw sessions list --json | jq '.[] | select(.status == "active")'

# الجلسات الكبيرة (أكثر من 50k tokens)
openclaw sessions list --json | jq '.[] | select(.tokens > 50000)'

إحصائيات الجلسات

# إجمالي عدد الجلسات
openclaw sessions stats

# حسب القناة
openclaw sessions stats --by-channel

# حسب الحالة
openclaw sessions stats --by-status

# استهلاك الرموز
openclaw sessions stats --tokens

النسخ الاحتياطي والاستعادة

# نسخ احتياطي شامل
openclaw sessions backup --all --output ~/backups/sessions-$(date +%Y%m%d).tar.gz

# استعادة من نسخة احتياطية
openclaw sessions restore ~/backups/sessions-20240207.tar.gz

# استعادة انتقائية
openclaw sessions restore backup.tar.gz --filter "telegram"

💡 نصائح لإدارة الجلسات

  • نظف الجلسات القديمة شهرياً لتوفير المساحة
  • راقب الجلسات الكبيرة - قد تحتاج للضغط
  • استخدم --dry-run قبل الحذف الجماعي
  • احتفظ بنسخ احتياطية من الجلسات المهمة

معلومات الجلسة

كل جلسة تحتوي على:

الحقلالوصف
idمعرف الجلسة الفريد
channelالقناة (telegram, discord, etc.)
userمعرف المستخدم
statusالحالة (active, idle, etc.)
createdتاريخ الإنشاء
last_activeآخر نشاط
messagesعدد الرسائل
tokensإجمالي الرموز المستخدمة
context_filesالملفات المحملة في السياق

التحكم في دورة الحياة

السبات التلقائي

# تكوين السبات التلقائي
openclaw config set sessions.auto_hibernate true
openclaw config set sessions.hibernate_after 24h

# إيقاظ جلسة في السبات
openclaw sessions wake agent:main:telegram:123

الأرشفة التلقائية

# أرشفة الجلسات القديمة
openclaw sessions archive --older-than 90d

# استعادة من الأرشيف
openclaw sessions unarchive agent:main:telegram:123

# عرض الجلسات المؤرشفة
openclaw sessions list --archived

استكشاف الأخطاء

جلسة لا تستجيب

# التحقق من حالة الجلسة
openclaw sessions show agent:main --verbose

# إعادة تحميل الجلسة
openclaw sessions reload agent:main

# إنهاء وإنشاء جديدة
openclaw sessions end agent:main
# (ستُنشأ جلسة جديدة عند الرسالة التالية)

استهلاك ذاكرة عالي

# العثور على الجلسات الكبيرة
openclaw sessions list --json | jq 'sort_by(.tokens) | reverse | .[0:5]'

# ضغط جلسة كبيرة
openclaw memory compact --session agent:main

# مسح الجلسات غير النشطة
openclaw sessions clean --inactive

فقدان البيانات

# استعادة من النسخة الاحتياطية الأخيرة
openclaw sessions restore --latest

# استعادة جلسة محددة
openclaw sessions restore backup.tar.gz --session agent:main

# التحقق من سلامة الجلسات
openclaw sessions verify --all

⚠️ تحذيرات مهمة

  • إنهاء جلسة يحذف تاريخ المحادثة (ما لم تكن مؤرشفة)
  • الجلسات الكبيرة تستهلك الكثير من الذاكرة والرموز
  • استخدم --dry-run قبل الحذف الجماعي
  • قم بعمل نسخ احتياطية منتظمة للجلسات المهمة

التشغيل الآلي

جدولة التنظيف

# تنظيف أسبوعي للجلسات القديمة
openclaw cron add "0 0 * * 0" "openclaw sessions clean --days 30"

# نسخ احتياطي يومي
openclaw cron add "0 2 * * *" "openclaw sessions backup --all --output ~/backups/sessions-$(date +%Y%m%d).tar.gz"

# أرشفة شهرية
openclaw cron add "0 0 1 * *" "openclaw sessions archive --older-than 90d"

الأوامر ذات الصلة

  • openclaw memory - إدارة ذاكرة الجلسات
  • openclaw pairing - إدارة المستخدمين المقترنين
  • openclaw logs - سجلات الجلسات
  • openclaw reset - حذف جميع الجلسات

📚 اقرأ المزيد

لمعلومات تفصيلية حول كيفية عمل الجلسات والذاكرة، راجع: