hermes claw cleanup.hermes claw migrate
| الخطوة | اللي بيحصل |
|---|---|
| 1 | يقرأ من ~/.openclaw/ (افتراضياً) |
| 2 | يعرض preview كامل لكل اللي هيتنقل |
| 3 | يسألك تأكيد قبل أي كتابة |
| 4 | يأخذ backup بصيغة zip لـ ~/.hermes/ قبل التطبيق |
| 5 | يطبّق |
| الخيار | الوظيفة |
|---|---|
--dry-run | Preview فقط — مفيش أي كتابة |
--preset <name> | full أو user-data |
--overwrite | الكتابة فوق ملفات Hermes الموجودة |
--migrate-secrets | تضمين الـ API keys — مطلوب حتى مع full |
--no-backup | تخطّي الـ zip snapshot التمهيدي |
--source <path> | مجلد OpenClaw مخصص |
--workspace-target | مكان وضع AGENTS.md |
--skill-conflict | skip / overwrite / rename |
--yes | تخطّي سؤال التأكيد بعد الـ preview |
-f:# استرجاع الـ backup
hermes import ~/.hermes/backups/pre-migration-20260423.zip
# قصر الاسترجاع على ملف واحد باستخدام -f
hermes import ~/.hermes/backups/pre-migration-20260423.zip --force
--keep افتراضيه 3:hermes backup # backup كامل → ~/hermes-backup-*.zip
hermes backup -o ~/backups/hermes.zip # مسار مخصص
hermes backup --quick # snapshot سريع للحالة بس
hermes backup --quick --label "pre-upgrade" # مع label
--migrate-secrets بشكل صريح.# Preview ثم ترحيل (دايماً بيعرض preview الأول وبعدين يسأل تأكيد)
hermes claw migrate
# Preview فقط، بدون أي تغيير
hermes claw migrate --dry-run
# ترحيل كامل شامل API keys، بدون سؤال تأكيد
hermes claw migrate --preset full --migrate-secrets --yes
# ترحيل كامل (كل الإعدادات المتوافقة، بدون أسرار)
hermes claw migrate --preset full
# ترحيل كامل مع API keys
hermes claw migrate --preset full --migrate-secrets
# بيانات المستخدم بس (بدون secrets)، مع الكتابة فوق التعارضات
hermes claw migrate --preset user-data --overwrite
# من مسار OpenClaw مخصص
hermes claw migrate --source /home/user/old-openclaw
| الحالة | السلوك الافتراضي | إزاي تتعامل |
|---|---|---|
| ملف Hermes موجود بنفس الاسم | يرفض التطبيق | مرّر --overwrite |
| skill بنفس الاسم | skip | --skill-conflict |
| rename | نسخة -imported | يبقى عندك الاتنين |
--dry-run الأول. اقرأ الـ preview قبل أي كتابة.| الحاجة | OpenClaw (المصدر) | Hermes (الوجهة) | ملاحظات |
|---|---|---|---|
| Persona | workspace/SOUL.md | ~/.hermes/SOUL.md | نسخة مباشرة |
| تعليمات الـ workspace | workspace/AGENTS.md | AGENTS.md | محتاج الـ flag |
| الذاكرة طويلة المدى | workspace/MEMORY.md | ~/.hermes/memories/MEMORY.md | يتحلّل لـ entries — الفاصل § |
| ملف المستخدم | workspace/USER.md | USER.md | نفس منطق الـ entry-merge |
| الملفات اليومية | workspace/memory/*.md | MEMORY.md | كل الملفات اليومية بتتدمج |
| المهارات (4 مصادر) | 4 مجلدات | openclaw-imports/ | كلها في مجلد واحد |
| الموديل الافتراضي | agents.defaults.model | config.yaml → model | string أو object |
| مفاتيح الـ providers | apiKey | ~/.hermes/.env | محتاج --migrate-secrets |
| سيرفرات MCP | mcp.servers.* | mcp_servers.* | بتنقل بالكامل |
| إعدادات TTS | messages.tts | config.yaml → tts.* | 3 أماكن |
| توكنات المراسلة | channels.* | .env | 7 منصات |
| سلوك الوكيل | agents.defaults.* | agent.* | تحويلات محسوبة |
| الموافقات والقوائم | approvals.exec.mode | approvals.mode | تحويل مباشر |
| الحاجة | ملف الأرشيف | إزاي تعملها في Hermes |
|---|---|---|
IDENTITY.md | archive/workspace/IDENTITY.md | ادمجها في SOUL.md |
HEARTBEAT.md | archive/workspace/HEARTBEAT.md | استخدم cron jobs |
BOOTSTRAP.md | archive/…/BOOTSTRAP.md | context files أو skills |
| Cron jobs | cron-config.json | hermes cron create |
| Plugins | plugins-config.json | شوف plugins guide |
| Hooks / webhooks | hooks-config.json | hermes webhook |
| Skills registry | skills-registry… | hermes skills config |
| قائمة الوكلاء | agents-list.json | Hermes profiles |
| ربط القنوات | bindings.json | إعداد يدوي لكل منصة |
file وexec:// 1. Plain string
"channels": { "telegram": { "botToken": "123456:ABC-DEF..." } }
// 2. Environment template
"channels": { "telegram": { "botToken": "${TELEGRAM_BOT_TOKEN}" } }
// 3. SecretRef object
"channels": { "telegram": { "botToken": { "source": "env", "id": "TELEGRAM_BOT_TOKEN" } } }
hermes status + QR لـ WhatsApp.pre-migration/hermes status # حالة مصادقة الـ providers
systemctl --user restart hermes-gateway # بعد ترحيل توكنات المراسلة
hermes whatsapp # إعادة ربط WhatsApp بـ QR
hermes claw cleanup # أرشفة مجلدات OpenClaw المتبقية
| السبب | التفسير |
|---|---|
| التباين المعماري | Python+YAML مقابل Node.js+JSON5 |
| OpenClaw مبيقبلش استيراد | مافيش آلية استيراد في OpenClaw |
| الـ sessions مش portable | مفيش مكافئ لـ state.db |
# الخطوة 1 — الـ Persona
cp ~/.hermes/SOUL.md ~/.openclaw/workspace/SOUL.md
# الخطوة 2 — الذاكرة (Hermes بيستخدم § كفاصل، OpenClaw بيقرأ نص عادي)
cp ~/.hermes/memories/MEMORY.md ~/.openclaw/workspace/MEMORY.md
cp ~/.hermes/memories/USER.md ~/.openclaw/workspace/USER.md
# الخطوة 3 — الـ Skills
cp -r ~/.hermes/skills/* ~/.openclaw/workspace/skills/
| المعيار | الوزن | OpenClaw | Hermes |
|---|---|---|---|
| عدد المنصات | 15% | 4 | 5 |
| أمان الافتراضيات | 15% | 3 | 5 |
| Enterprise auth | 15% | 2 | 5 |
| Multi-agent | 10% | 3 | 5 |
| الأتمتة | 10% | 3 | 5 |
| البروتوكولات | 10% | 3 | 5 |
| Setup friction | 10% | 2 | 5 |
| UI / Desktop | 10% | 5 | 3 |
| الإجمالي | 100% | 2.95 | 4.70 |
hermes mcp # picker تفاعلي
hermes mcp catalog # تصفح السيرفرات المتاحة
hermes mcp install <name> # تثبيت من الكتالوج
hermes mcp add NAME --url <url> # إضافة HTTP/SSE server
hermes mcp add NAME --command python3 --arg /path/server.py # stdio server
hermes mcp test NAME # اختبار الاتصال
hermes mcp serve # تشغيل Hermes كـ MCP server
| البروتوكول | الطبقة | OpenClaw | Hermes |
|---|---|---|---|
| MCP | Agent → Tools | ✅ client | ✅ client + server |
| A2A | Agent → Agent | جزئي | كامل |
| ACP | Host → Agent | ❌ | كامل |
| LSP | Language Server | ❌ | hermes lsp |
| OpenAI proxy | OpenAI-compatible | ❌ | hermes proxy |
| Egress | Sandbox → Internet | ❌ | hermes egress |
| القرار الخاطئ | البديل الصح |
|---|---|
| system_prompt فيه syntax خاص بموديل | اكتب تعليمات عامة |
| code fences بصيغة موديل | plain markdown |
| الاعتماد على knowledge cutoff | context files و MCP |
| Tool-calling syntax محدد | standard function calling |
| الربع | الثيم | نقاط الوصول |
|---|---|---|
| Q1 (شهر 1-3) | الأساسيات | نظام شغّال + أول PR |
| Q2 (شهر 4-6) | التخصص | نظام + أول عميل |
| Q3 (شهر 7-9) | الظهور | 12 مقال / 3 فيديوهات |
| Q4 (شهر 10-12) | التحوّل للدخل | 20% من الدخل |
| الدور | الوصف | المهارات المطلوبة |
|---|---|---|
| AI Agent Engineer | بناء أنظمة وكلاء | Python، MCP |
| AI Automation Consultant | استشارات للأتمتة | سكريبت + فهم الأعمال |
| AI Platform Engineer | منصات المؤسسات | أمن + observability |
| Agent Ops Engineer | تشغيل ومراقبة | cron + on-call |
| MCP Server Developer | بناء MCP servers | TS/Python |
| Prompt & Context Engineer | تحسين المخرجات | هندسة البرومبت |
hermes skills install <source> # اكتب skills في ~/.hermes/skills/
hermes skills publish <name> # لو كتبت skill بتاعك، انشره في الكتالوج
| # | الميزة | الوحدة المصدر |
|---|---|---|
| F1 | Gateway على 3 منصات | 3, 4 |
| F2–F3 | Persona + ذاكرة | 6 |
| F4 | 3+ مهارات | 6 |
| F5 | خادم MCP مخصص | 5 |
| F6–F7 | 4+ cron jobs + webhooks | 8 |
| F8–F9 | 3 profiles + kanban | 7 |
| F10 | إعدادات أمن | 4, 5 |
| F11–F12 | ترحيل + README | 12 |
# Phase 0 — Foundation
mkdir -p ~/och-hermes/{skills,scripts,mcp,runbooks,backups} && cd ~/och-hermes && git init
# Phase 1 — Migration (dry-run ثم تطبيق)
hermes claw migrate --dry-run
hermes claw migrate --preset full --migrate-secrets
ls -la ~/.hermes/migration/openclaw/*/archive/
# Phase 5 — Custom MCP server
hermes mcp add och_tracker --command python3 --arg /home/YOU/och-hermes/mcp/tracker-server.py
hermes gateway restart && hermes mcp test och_tracker
# Phase 7 — Multi-agent
hermes profile create research && hermes profile create coder && hermes profile create ops --clone
hermes kanban init && hermes kanban stats
| المرحلة | الوقت | معيار القبول الحاسم |
|---|---|---|
| 0 — التأسيس | أسبوع | doctor نظيف + رد في CLI |
| 1 — الترحيل | يومان | تقرير migration + /skills |
| 2 — الذاكرة | 3 أيام | الذاكرة بتفضل بعد /new |
| 3 — المهارات | أسبوع | 3 skills حقيقية |
| 4 — المنصات | أسبوع | غير مصرّح مرفوض |
| 5 — MCP | أسبوع | mcp test بيعدّي |
| 6 — الأتمتة | أسبوع | 4 cron + --no-agent |
| 7 — Multi-agent | أسبوع | profiles + kanban شغّال |
| 8 — Security | يومان | security audit نظيف |
| 9 — التسليم | 3 أيام | README كافٍ لوحده |
# Phase 6 — cron حقيقي: يومي، بلا LLM، أسبوعي، تنبيه كل ساعة
hermes cron create "every 1d at 09:00" "Summarize yesterday's messages and post key items" --name daily-digest --deliver telegram
hermes cron create "every 15m" "Return OK" --name health-check --no-agent --script och-hermes/scripts/health.sh
hermes cron create "every monday 9am" "Review this week's open items and list blockers" --name weekly-review --deliver telegram
hermes cron run daily-digest # تجربة فورية
# Phase 8 — Security hardening
hermes config set approvals.mode smart
hermes config set security.redact_secrets true
hermes security audit
| البُعد | الفائز | ليه |
|---|---|---|
| اللغة وملف الإعدادات | Hermes | YAML + .env نظيف |
| النسخ والاسترجاع | Hermes | backup + import + dump |
| أوسع reach | OpenClaw | Zalo / WeChat / iMessage |
| أوسع منصات | Hermes | Email + Matrix وغيرها |
| الأمان والمصادقة | Hermes | OAuth + audit + egress |
| المهارات | Hermes | bundles + curator |
| البروتوكولات | Hermes | A2A كامل + ACP |
| واجهة سطح المكتب | OpenClaw | Control UI + macOS app |
| أقل خصوم | Hermes | افتراضات آمنة افتراضياً |
hermes claw migrate --preset full ولقيت إن الـ API keys مانتقلتش. ليه؟
--migrate-secrets
--dry-run وتقرأ الـ preview قبل ما تقرر
--overwrite على طول
~/.hermes وتعيد من الأول
--no-backup
/new
rm -rf من غير موافقة، وapprovals.mode: manual مش بيحل. الحل الصح؟
approvals.mode لـ always
allow_once مرة واحدة بس
migrate-to-openclaw في مرجع CLI؟