Hermes Agent: نقاط التفتيش
آخر تحديث: 2026-08-31
نقاط التفتيش هي نظام الحفظ في Hermes Agent — كحفظ اللعبة، احفظ الحالة في أي وقت، استعد إذا حدثت مشكلة، وواصل التجارب المتقطعة من حيث توقفت.
💡 نصيحة: نقاط التفتيش لا تحفظ فقط سجل المحادثة، بل حالة الوكيل الكاملة: الذاكرة، سلسلة استدعاء المهارات، نتائج الأدوات، خطوات استدلال LLM الوسيطة. بعد الاستعادة، الوكيل يتابع من نقطة الانقطاع.
📋 المتطلبات المسبقة: الدرس 6 — نظام الذاكرة، الدرس 7 — نظام المهارات
1. ما ستتعلمه
| # | المحتوى |
|---|---|
| ❶ | مبادئ آلية نقاط التفتيش |
| ❷ | نقاط التفتيش التلقائية والحفظ اليدوي |
| ❸ | الاستعادة والتراجع |
| ❹ | إدارة التجارب |
| ❺ | تخزين وتنظيف نقاط التفتيش |
2. القصة
(1) المشكلة: مهمة طويلة تتقطع، كل شيء يضيع
Bob يطلب من الوكيل مراجعة كود معقدة، حُللت لمدة 20 دقيقة، فجأة انقطع الإنترنت. البدء من جديد يعني العودة من الصفر.
(2) الحل: نقطة تفتيش تحفظ، استمر من حيث توقفت
BASH
# قبل الانقطاع
Agent: تمت مراجعة 15/20 ملف...
# بعد الاستعادة
hermes checkpoint restore latest
Agent: مستعاد من نقطة التفتيش، متابعة مراجعة 16/20...
3. مبادئ آلية نقاط التفتيش
(1) محتوى نقطة التفتيش
JSON
{
"checkpoint_id": "cp_20260315_143022",
"timestamp": "2026-03-15T14:30:22Z",
"session_id": "session_abc123",
"agent_state": {
"current_task": "code-review",
"progress": "15/20 files",
"active_skills": ["react-component-review"],
"pending_actions": ["review_file_16", "review_file_17"]
},
"memory_snapshot": {
"working_memory": [...],
"long_term_changes": [...]
},
"tool_results": {
"fs_read_src_main_py": "content_hash_abc",
"code_python_result": "output_hash_def"
},
"llm_context": {
"messages": [...],
"tokens_used": 12500
}
}
(2) تدفق نقطة التفتيش
graph LR
A[الوكيل ينفذ] --> B{تشغيل تلقائي؟}
B -->|كل 5 دقائق| C[حفظ نقطة تفتيش]
B -->|إكمال مهارة| C
B -->|استدعاء أداة| C
C --> D[كتابة على القرص]
D --> A
E[انقطاع/خطأ] --> F[استعادة نقطة تفتيش]
F --> G[قراءة الحالة]
G --> H[متابعة التنفيذ]
4. نقاط التفتيش التلقائية واليدوية
(1) إعداد الحفظ التلقائي
YAML
checkpoint:
enabled: true
auto_save:
interval: 300
on_skill_complete: true
on_tool_call: true
on_error: true
max_checkpoints: 50
storage:
path: "~/.hermes/checkpoints"
compression: true
max_size_mb: 500
(2) الحفظ اليدوي
BASH
/checkpoint save "review-half-done"
hermes checkpoint save --name "before-deploy"
hermes checkpoint list
5. الاستعادة والتراجع
(1) استعادة نقطة تفتيش
BASH
hermes checkpoint restore latest
hermes checkpoint restore review-half-done
/checkpoint restore review-half-done
(2) تراجع
BASH
hermes checkpoint rollback review-half-done
# ⚠️ هذا سيتجاهل جميع التغييرات بعد نقطة التفتيش
# تأكيد؟ (y/n)
(3) استعادة انتقائية
YAML
checkpoint:
restore_options:
agent_state: true
memory: true
tool_results: true
llm_context: false
6. إدارة التجارب
(1) نقاط تفتيش في وضع البحث
YAML
research:
mode: true
checkpoint:
save_every_n_tasks: 10
save_on_error: true
trajectory:
output_format: "sharegpt"
output_dir: "~/.hermes/research/trajectories"
BASH
hermes research run --tasks experiment_tasks.jsonl --model gpt-4o --batch-size 50
hermes research resume --from-checkpoint latest
(2) مقارنة التجارب
BASH
hermes checkpoint save --tag "experiment-a-temp07"
hermes checkpoint save --tag "experiment-b-temp03"
hermes research compare --checkpoint experiment-a-temp07 --checkpoint experiment-b-temp03
7. تخزين وتنظيف نقاط التفتيش
YAML
checkpoint:
cleanup:
auto: true
keep_manual: true
keep_last_n: 10
max_age_days: 30
max_total_size: "500MB"
BASH
hermes checkpoint clean --keep-last 5
hermes checkpoint storage-info
❓ أسئلة شائعة
س كم مساحة تستخدم نقاط التفتيش؟
ج 1-5 ميغابايت لكل نقطة (مضغوطة). 50 نقطة ≈ 50-250 ميغابايت. التنظيف التلقائي قابل للإعداد.
س استعادة نقطة تفتيش تفقد الذاكرة؟
ج لا. الاستعادة تعيد فقط حالة المهمة والسياق، لا تحذف الذاكرة طويلة المدى. التراجع فقط يُلغي.
س هل يمكن ترحيل نقاط التفتيش بين الأجهزة؟
ج نعم. صدّر الملف واستورد في جهاز آخر. اختلافات المسار قد تحتاج تعديل يدوي.
س هل نقاط التفتيش تدعم التشفير؟
ج نعم. أعد
checkpoint.storage.encryption: true لتشفير AES-256.📖 ملخص
- نقاط التفتيش تحفظ حالة الوكيل الكاملة: تقدم المهمة، الذاكرة، نتائج الأدوات، سياق LLM
- حفظ تلقائي (مؤقت + أحداث) + حفظ يدوي
- الاستعادة: متابعة من نقطة الانقطاع؛ التراجع: العودة لحالة سابقة
- وضع البحث: ضمان استمرارية التجارب الدفعية
- سياسة تنظيف تلقائية: الاحتفاظ بآخر N، تنظيف حسب العمر، حد الحجم الكلي
📝 تمارين
- أساسي (⭐): احفظ نقطة تفتيش يدويًا، أعد تشغيل Hermes، استعد وتحقق من الاتساق.
- متوسط (⭐⭐): أعد حفظًا تلقائيًا (كل 3 دقائق + عند إكمال مهارة)، نفّذ مهمة طويلة، راقب الحفظ التلقائي.
- متقدم (⭐⭐⭐): حاكِ سيناريو بحث، نفّذ 10 مهام دفعية، أوقف بالقوة في المنتصف، استعد من نقطة تفتيش وتحقق من فقدان صفر.