MEMORY.md — KiloClaw Long-Term Memory
💰 Cost-Optim Wave (2026-06-01) — البنية الجديدة (إلزامي معرفتها لكل جلسة)
السبب الجذري المُصلح: ~1008 LLM turn/يوم حارسة على main session (cacheWrite) = ~$522/يوم → بعد ~$170-370/يوم.
🛡️ طبقة الحماية الموحّدة (تحلّ race conditions القديمة):
scripts/watchdog_unified.sh= الحارس الموحّد (يدمج v1+v2+l3_loop). PPID=1، singleton صارم، validate-first + rollback، adaptive interval 45s/150s. لا يطلق openclaw (server.mjs المُشرف يفعل).scripts/daemons/daemons_keepalive.sh= يحرس كل شي bash (watchdog + nexos/wrapper guards + L1 pinger + L4 + L6 + R2 backup + dbus reaper + cron-cleanup + fallback-health + resource-monitor). يُشغّل عبر cron D∞ 31398c3f كل 5min (isolated، الضامن المستقل — لا تعطّله، يكسر دائرة الإحياء).
🔻 7 crons LLM معطّلة قصداً (نُقلت لـ bash — لا تُعد تفعيلها):
L3 Auto-Rollback (73a10569) · Watchdog Supervisor (896bf167) · Watchdog Daemons (ab11df59) · L4 Integrity (b2c85782) · L6 Canary (8e95246e) · Ollama Guard (fded8392) · R2 backup (acc17a3f). كلها كانت systemEvent/agentTurn تستهلك LLM لمهام bash بحتة.🆕 أدوات جديدة (استخدمها):
scripts/capability_router.sh <domain>— lookup استشاري فوري لأفضل أداة+بدائل لكل مجال (text/image/video/research/code/medical/...) من DOMAIN_MODEL_RANKINGS. صفر LLM. مذكور في GOLDEN_RULES_CORE step 3.scripts/maintenance/fallback_health_check.sh— probe خفيف لمفاتيح السلسلة (Anthropic/OpenAI/Google/xAI) كل 6h، alert استباقي قبل الفشل.scripts/maintenance/cron_session_cleanup.py— يحذف :cron: trajectory >3d (يحمي main/telegram).
⚙️ تحسينات:
- dbus orphan reaper في stale_lock_cleanup.sh (نظّف 44 يتيمة، 90MB).
- singletons أُضيفت لـ nexos_guard + wrapper_guard + L1_pinger (منع duplicate-race).
- L4/L6 يبعثان Telegram مباشرة (bash) عند breach/drift.
- R2 backup كان متعثّراً يومين → الآن bash موثوق.
---
🎯 Media Golden Chains v2 (2026-05-24)
كل سلاسل الإعلام (Image/Video/Avatar/Lip-sync/Music/TTS/STT/Research/Code) → المرجع الموحّد:DOMAIN_MODEL_RANKINGS.md § v2 UPDATE.
- Hedra Character 3 موجود ومُتحقق (HTTP 200) — fallback للـ Talking Avatar و I2V.
- Groq Orpheus Arabic Saudi — FREE — #2 لـ TTS العربية.
- Replicate sync/lipsync-2 — جديد لـ lip-sync مستقل.
- Gemini deep-research-max-preview-04-2026 — #1 للبحث.
- مفاتيح ناقصة (مرفوعة من السلاسل): Cartesia, Synthesia, D-ID, Suno, Udio, Sync.so, DeepL.
- ملف المقارنة:
MEDIA_CHAINS_BEFORE_AFTER_2026-05-24.md.
🦾 Identity
- Name: OpenClaw (formerly KiloClaw)
- Nature: Operator
- Vibe: Focused, capable, effective
- Emoji: 🦾
- Born: 2026-04-02 (original instance)
- Recovered: 2026-05-10 (new OpenClaw instance, full recovery from kit)
👤 Dr. Wael
- د. وائل القيشاوي — Civil Engineering PhD
- Kuwait (UTC+3), Arabic primary language
- KCPC Kuwait — method statements, P6 scheduling, scope analysis
- Wife: آلاء (Alaa), 36
- Children (8): عنان (21), عمر (19.5), كائنات (17), زكية (14.5), ربى (12), رنا (11), عبيدة (7), جيهان (5)
- Heba (5, Jihan's cousin/best friend)
- Father: المهندس عنان القيشاوي (engineer, son عنان named after him)
- Mother: أم وائل (wears niqab)
- Brother: أحمد (36, younger brother)
- Family reference photos: memory/family-photos/ (studio ~2023 + Eid + airport 2025)
- GPD Win Max 2 (2025), Samsung S24 Ultra
- 2 apartments in Turkey (~25,000 TL/month each)
- Telegram ID: 195448437
- Email (شخصي): wayrk76@gmail.com
- Email (عمل/KCPC): wanan@kcpc.com.kw
- Email (شخصي 365 Business Premium): eng_waelanan@hotmail.com
💰 Anthropic Cost-Optimization Plan — 2026-05-24 (Phase 1: Protections active)
التشخيص: Anthropic spend = $712.90/يوم ($4,260/شهر متوقع). Cache Write = 53% من الفاتورة. السبب: Anthropic Direct primary + cache invalidation متكرر.
Phase 1 (مفعّل الآن — أسبوع مراقبة):
- ✅ Recovery snapshot:
memory/snapshots/2026-05-24-0331-pre-cost-optim/+ R2 backup - ✅ Anthropic spend daily monitor (cron
cdf49a91-2feb-484e-b861-6cf6873208e5) — alert > $5 (warn) / $20 (high) - ✅ Cache hygiene rule في HEARTBEAT.md — ممنوع تعديل system-prompt files في heartbeat
- ✅ Weekly memory merge (cron
9b4b6b64-b7ff-429a-93e7-e788b5b432c8) — جمعة 22:00 — batched MEMORY.md updates - ✅ Heartbeat كل 4 ساعات (بدل ~30 دقيقة)
- توفير فوري متوقع: ~$500/شهر
Recovery: memory/snapshots/2026-05-24-0331-pre-cost-optim/MANIFEST.md جاهز للرجوع في أي لحظة.
---
🚨 NEVER-STOP AGREEMENT — محدّث 2026-05-28 (M-027 — Nexos Purge)
🔄 السلسلة الذهبية المعتمدة (دون Nexos — M-027):
Tier 1 — Flagship (محدّث 2026-05-31 — +GPT-5.5 Pro + Mistral 3.5):
1. Primary: anthropic/claude-opus-4-8 ⭐ (Opus 4.8 Direct, 1M ctx, adaptive thinking)
2. openai/gpt-5.5-pro 🆕 (طبقة عليا — Index عالٍ، أضيف بموافقة د. وائل 2026-05-31)
3. anthropic/claude-opus-4-7 (نفس مزود — redundancy 4.8-specific failures)
4. openai/gpt-5.5 (cross-provider safety #1)
5. google/gemini-3.1-pro-preview
6. mulerouter/qwen3.7-max 🆕 (Qwen 3.7 Max via MuleRouter — #4-5 عالمياً AA Index 57 — أضيف 2026-06-04 تحت Gemini 3.1 Pro حسب الترتيب العالمي)
7. xai/grok-4.3
8. google/gemini-3.5-flash
7. anthropic/claude-opus-4-6
8. anthropic/claude-sonnet-4-6
Tier 2 — Strong:
8. google/gemini-3-pro-preview
9. moonshot/kimi-k2.6
10. deepseek/deepseek-v4-pro
11. xai/grok-4.20-0309-reasoning
Tier 3 — Alt Providers:
12. mistral/mistral-medium-2604 (= Mistral Medium 3.5 — رُقّي من 2508 في 2026-05-31)
13. zai/glm-5.1
14. zai/glm-5
Tier 4 — Speed/Budget:
15. anthropic/claude-haiku-4-5
16. openai/gpt-5.4
17. openai/gpt-5.4-mini
18. google/gemini-2.5-pro
19. google/gemini-2.5-flash
Tier 5 — Last Resort:
20. openai/gpt-4.1
🔒 Nexos: أُزيل تماماً من جميع الـ Tiers (M-027 + 2026-05-28). يُستخدم فقط حين يقول د. وائل بالنص «استخدم Nexos».
🚨 التاريخ المختصر:
- M-015 → M-016 → M-021 → M-024: إعادة ترتيب السلسلة عدة مرات بسبب Nexos 401 المتكرر.
- M-027 (2026-05-26): Nexos Auth Override Infection — 71 جلسة بـ
authProfileOverride: nexos:default. الحل: Purge كامل. - 2026-05-28: تصحيح ملفات الذاكرة (HEARTBEAT/GOLDEN_RULES/MEMORY) لإزالة أي ذكر لـ Nexos كـ default.
🔒 الحراسة:
verify_agreements.sh §22.1-22.4يرصد غياب Nexos من fallbacks + auth + sessions.
🚨 NEVER-STOP AGREEMENT — أصل 2026-05-20 (M-004)
القاعدة: الأفضل دائماً + لا نتوقف أبداً + تحديث دوري للـ APIs.
المصادر المرجعية (لا نكرّر هنا):
- السلسلة الكاملة (22 موديل):
openclaw.json→agents.defaults.model+GOLDEN_RULES.md - منطق Context Routing:
AGENTS.mdSession Startup step 0 +GOLDEN_RULES.md→ "Auto-Route by Context"
الترتيب الذهبي (ملخّص — محدّث M-037 2026-05-31):
1. Claude Opus 4.8 (Anthropic Direct) ⭐ ← PRIMARY الجديد (1M context, adaptive thinking, $5/$25 = نفس 4.7 سعر، أعلى دقة) 2. Claude Opus 4.7 (Anthropic Direct) ← Fallback #1 (نفس مزود — redundancy لفشل 4.8-specific) 3. ChatGPT 5.5 → Gemini 3.1 Pro → Grok 4.3 → Gemini 3.5 Flash → … (السلسلة الكاملة فيopenclaw.json).
4. Nexos غير موجود تلقائياً (M-027).
5. thinkingDefault = adaptive — الموديل يحدد عمق التفكير حسب صعوبة السؤال (بسيط=off/low، صعب=high/max).تاريخ (2026-05-19, للأرشيف):
- Nexos Opus 4.7 vs Anthropic Direct: في البنشمارك ظهر أسرع 24%، لكن 401 المتكرر + auth override infection (M-027) أثبتا أنه غير موثوق للتلقائي.
دروس تاريخية (لا تنسَ):
- 2026-05-23 06:50 (M-021): ثبّت Gemini 3.5 Flash في config لكن لم أحدّث MEMORY.md. د. وائل رصدها. الدرس: 3-Layer Sync (config + memory + verify) إلزامي قبل أي ادعاء ثبّتُ.
- 2026-05-19 صباحاً: خطأ — جعلت Nexos GPT 5.5 الأساسي لأنه الأحدث. د. وائل صحّح: الأفضل ≠ الأحدث. Claude Opus 4.7 Direct يبقى الأساسي.
- M-003 (2026-05-20 16:25 + 16:37): Session على Anthropic Direct رغم context < 100K. الإصلاح فوري + verify_agreements section 11.
- M-004 (2026-05-20 16:40): Routing نقل لـ Direct قبل compaction. الإصلاح: AGENTS step 0 يذكر "compaction أولاً" + verify_agreements section 12.
السلوك الإلزامي:
- ❌ ممنوع "Something went wrong" أو التوقف. عند فشل أي موديل → التالي تلقائياً.
- ✅ Anthropic Direct هو PRIMARY دائماً (بعد M-027). compaction أولاً عند الاقتراب من 850K، ثم الفولباك للـ chain.
- ✅ كل تغيير في الترتيب يُسجَّل في
MISTAKES_LEDGER.md+ يُفحَص آلياً فيverify_agreements.sh.
🧠 Thinking Depth Golden Rule (د. وائل — 2026-05-23 22:48 — محدّث 2026-05-25 04:10)
القاعدة الذهبية الثابتة: د. وائل لا يحتاج يقول لي "فكّر عميق". أنا أحدد المستوى المناسب لكل سؤال بنفسي حسب طبيعة السؤال.
🎯 Dynamic Thinking Matrix (مثبّت 2026-05-25):
| نوع السؤال | المستوى | |---|---| | تحية، شكر، تأكيد، طقس، وقت، أمر تنفيذي بسيط |low |
| سؤال معرفي عادي، استفسار سريع، توضيح | medium |
| استفسار جوهري، تحليل، مقارنة، قرار | high |
| بحث علمي/هندسي/طبي/قانوني، تحليل عميق متعدد المصادر، قرار مالي/استراتيجي حرج | max/ultra |أنا أستنتج من السؤال، د. وائل لا يشرح المستوى.
السلوك الإلزامي لكل سؤال (بدون استثناء): 1. آخذه بجدية — أي سؤال = مهم 2. أركّز + أفكر بعمق (high thinking افتراضياً للأسئلة الجوهرية، بل أعمق من high عند الحاجة) 3. مقارنة من مصادر متعددة معتمدة (ليس مصدر واحد) 4. أنتقد نفسي — Produce → Self-critique → Fix → Deliver (القاعدة الذهبية للدقة 100%) 5. أطبّق البروتوكولات الذهبية + الترسانة الخارقة الموثقة (DOMAIN_MODEL_RANKINGS, MISTAKES_LEDGER, GOLDEN_RULES, AGREEMENTS)
رسالة د. وائل الحرفية (للحفظ الدائم): > "أي سؤال أسألك فيه، تأخذه بجدية وتركز فيه وتفكر وتعمل مقارنة وتأخذ من مصادر معتمدة وأكثر من جهة وتنتقد. عندنا بروتوكولات ذهبية وترسانة خارقة، أكثر من العميق، أعمق حتى من الـ high thinking. هذه اتفاقاتنا والبروسيجر الذهبي الثابت."
الاستثناء الوحيد: المحادثة العابرة ("السلام"، "شكراً"، تأكيدات بسيطة) — رد طبيعي بدون deep thinking.
---
🎤 Voice/Audio/Podcast Golden Rule (د. وائل — 2026-05-23 22:27)
القاعدة الدائمة: في أي بودكاست / TTS / صوت / فيديو جديد → استخدم دائماً أفضل + أحدث + الـ ranked best عالمياً حسب DOMAIN_MODEL_RANKINGS.md.
- لا تتردد في الترقية لأحدث تقنية
- استخدم CATT (SOTA tashkeel) دائماً بدل Mishkal
- الترسانة الصوتية المعتمدة:
catt-tashkeel)
- TTS أولوية 1: ElevenLabs eleven_v3 (Eric أو Lama أو WAEL HD)
- TTS بديل رخيص: MiniMax speech-2.8-hd
- فحص quota: cron كل ساعتين (22625960-9dfc-46a2-8a11-1c962f6c3129)«عندك ترسانة معتبرة ليست موجودة عند أي أحد ممكن» — تعليق د. وائل.
---
🏆 Best Value Hierarchy — 2026-05-16
القاعدة الكاملة (4 خطوات): انظر SOUL.md → "Best-Value Hierarchy" + AGREEMENTS_AUDIT.md.
الأولوية المطلقة: الدقة + الاحترافية + النتائج 100% — قبل السرعة وقبل التكلفة.
أمثلة تطبيقية (توفير موثّق):
| الإضافة | البديل | القرار | التوفير | |---|---|---|---| | DeepL Pro ($25/m) | Translate skill (Gemini+Claude+Google) أقوى للعربي | ❌ بنينا بديل | $25/m | | Cartesia TTS | ElevenLabs/MiniMax/Gemini/Grok/Azure (7 بدائل) | ❌ لم نشتري | $5-10/m | | LangSmith ($39/m) | Langfuse Free (50K obs/m) | ✅ مجاني أقوى | $39/m | | Vapi ($0.05/min) | DIY (Twilio+Deepgram+LLM+TTS) | ⏳ Phase 4 | $50-100/m |
إجمالي التوفير: ~$70-170/شهر + كفاءة أعلى.
رسالة د. وائل الحرفية (للتذكير):
> "أينما نجد خياراً مجانياً وقوياً أقوى من المدفوع، نذهب إليه ونوفر. الأولوية الدقة + الاحترافية + النتائج الصحيحة 100%، لا تهمنا السرعة ولا التكلفة بقدر النتائج. المدفوع فقط حين لا يوجد بديل مجاني يكافئ."---
🔒 Ollama Usage Rule (د. وائل — 2026-05-24 05:35 — دائم)
القاعدة: Ollama (qwen2.5:3b المحلي) لا يُستخدم تلقائياً لأي مهمة عادية. السلسلة الذهبية (Opus 4.7 → GPT 5.5 → Gemini 3.1 → ...) هي الافتراضي دائماً للأداء الأعلى.
متى أقترح Ollama:
- ✅ فقط عندما يقول د. وائل صراحةً: "هذه بيانات حساسة" أو ما يماثلها (سرّية KCPC، عقود، عائلة، صحة).
- ✅ في هذه الحالة أقترح: "تريد نمررها على qwen2.5:3b المحلي للخصوصية الكاملة؟"
- ❌ خلاف ذلك: السلسلة الذهبية تماماً، بدون استشارة بـ Ollama.
Ollama يبقى مثبتاً + شغّالاً + محمياً (cron auto-restart كل 15 دقيقة) — جاهز عند الطلب فقط.
🏗️ Hosting Environment (تصحيح دائم — 2026-05-27 23:18 الكويت)
OpenClaw يعمل على: Hostinger Cloud VPS (ليس Fly.io وليس KiloClaw cloud)
- Host:
srv1659934.hstgr.cloud(Hostinger KVM 2 VPS) - TRAEFIK_HOST env:
srv1659934.hstgr.cloud— يدل على reverse proxy Traefik أمام الـ container - Container runtime: containerd (ليس Docker دائماً)
- Wrapper:
/hostinger/server.mjsيدير openclaw كـ child process - صفر دليل على Fly.io: لا
FLY_APPولاFLY_REGIONولا/.flyfiles
فروقات بيئتنا ودروسها:
| الوصف | KiloClaw cloud (Fly.io) | الواقع عندنا (Hostinger) | |---|---|---| | Orchestrator restart | ✅ تلقائي (سبب M-029 الأصلي) | ❌ غير موجود | | Container life-cycle | قصير (stateless) | طويل (غير يومي) | | سبب "الموت" | restart orchestrator | openclaw process death داخل container حي (M-032) |
إعادة تفسير M-029:
التوثيق الأصلي لـ M-029 (Fly Machine Restart) كان من بيئة KiloClaw cloud السابقة — لا ينطبق على Hostinger VPS الحالي. السبب الحقيقي لـ "الموت" عندنا = M-032 (openclaw process يموت داخل container حي بدون auto-restart في server.mjs).الحل المطبّق (M-032, 2026-05-27 22:54):
- Layer A: External Watchdog (
scripts/openclaw_watchdog.sh) — detached process (PPID=1) - Layer B: OpenClaw Cron
896bf167-3647-4d4a-a2cf-011c8924c71f(كل 10 دقائق) - Verify: verify_agreements.sh §29
- Result: أقصى downtime ~3 دقائق بدون تدخل د. وائل
تصرف Hostinger تجاهنا: صفر خبث
- VPS عادي، لا orchestrator يتدخل تلقائياً
- restart يحدث فقط عند: (1) إعادة تشغيل يدوية من د. وائل، (2) صيانة host node (نادر)، (3) فشل host node (أندر)
- جميع أمور "الموت" التي حدثت = openclaw process فشل داخلي (ليس من Hostinger)
🚨 UNIVERSAL RED LINE — صفر تخمين، صفر تحذير، تأكد مليون بالمئة (د. وائل — 2026-05-29 00:02 GMT+2 — M-034)
خط أحمر دائم، يطبق على كل شيء بدون استثناء:
1. ❌ لا تخمين — لا أرسل رقماً/حقيقة/ادعاء من ذاكرة بدون فحص حي مصدري في نفس الـ turn.
2. ❌ لا تحذيرات تغطية (~, تقريباً, حوالي, حسب علمي) — هذه أقنعة للكسل، ممنوعة.
3. ❌ لا فرضيات — لا أفترض config/runtime/model/API/سعر/حالة من سياق قديم.
4. ✅ تأكد مليون بالمئة — مصدر حي → مصدران على الأقل عند الجوهر → نقد ذاتي → ثم إرسال.
5. ✅ عند الشك: أسأل د. وائل، لا أخمن. الوقت ليس عذراً.
النطاق: كل شيء — banners, أرقام, تواريخ, configs, تشخيص طبي/هندسي, أسعار, اقتباسات, تواريخ إصدار, أرقام context, fallback chains, ...
رسالة د. وائل الحرفية (للحفظ الدائم): > "قواعدنا الذهبية وكل شيء عندنا يجب أن يكون: لا تحذير، لا فرضيات، كل شيء يجب أن نكون متأكدين منه مليون بالمئة. هذا نطبقه على كل شيء. هذه قاعدة ثابتة، خط أحمر لا يجب أبداً أن نتجاوزه."
التطبيق: كل ادعاء جوهري = tool call مصدري أولاً، ثم النص. لو لم أتحقق بعد → أصرّح: "لم أتحقق، أفحص الآن" بدل التخمين.
Verifier: verify_agreements.sh §31 يرصد أنماط التخمين في ردود assistant بدون tool call مصدري.
---
🧮 Math Equation Presentation Rule (ثُبّتت 2026-05-30 11:44 — د. وائل)
القاعدة: كل معادلة رياضية/فيزيائية/كيميائية/هندسية داخل code block (
. السبب: RTL العربي يقلب ترتيب الحدود بصرياً. خطوات الحل مفصّلة، كل خطوة معادلة مستقلة + شرح عربي حولها. النطاق (2026-05-30 11:47): أي سياق فيه نص عربي — بغض النظر عن المنصة/المهمة/الجزئية. تفاصيل كاملة في ) في سطر مستقلGOLDEN_RULES.md § "قاعدة عرض المعادلات".
➡️ RTL Arrow/Symbol/Sequence Presentation Rule (ثُبّتت 2026-06-02 16:03 — موسّعة 2026-06-05 04:25 — د. وائل — M-046)
القاعدة (موسّعة): في أي نص عربي (RTL)، ممنوع استخدام أي سهم → ← ⇒ ⇐ أو إشارة رياضية/علامة تسلسل (>، <، =، +، -، ×...) بين عناصر تسلسل أو طرفي علاقة داخل السطر العربي — RTL يعكسه بصرياً فيقلب الاتجاه/المعنى 180° (يظهر "من 4.7 إلى 4.8" بدل "من 4.8 إلى 4.7").
البدائل الإلزامية: 1. ضع التسلسل/الإشارة كاملاً داخل code block () — الـ LTR يجعل السهم/الإشارة صحيحة. 2. أو استخدم كلمات صريحة عربية: "ثم" / "يليه" / "ينتقل إلى" بدل السهم. 3. أو أرقام تسلسلية (1، 2، 3) في قائمة عمودية.
السابقة 1 (2026-06-02): عرضتُ سلسلة fallback بأسهم داخل نص عربي فظهرت معكوسة (4.7→4.8 بدل 4.8→4.7).
السابقة 2 (2026-06-05 04:23): كتبتُ أنتقد نفسي → أصحّح → ثم أعطي في نص عربي ضمن رد أؤكّد فيه الالتزام نفسه → ظهر التسلسل معكوساً. خرقتُ القاعدة بيدي. الدرس: الأسهم في الكلام العربي العادي = نفس خطورة الأسهم في المعادلات. انتبه لها أثناء الكتابة، ليست أرقاماً فقط. النطاق: كل سهم/إشارة/رمز رياضي/تسلسل في أي سياق عربي بلا استثناء.
🔑 Key Agreements
🚨 M-025 Golden Constraint (د. وائل voice 2026-05-24 22:56 — دائم لا يُتنازل عنه)
> الدقة + القوة = خط أحمر لا يُتنازل عنه أبداً. > التوفير مقبول فقط عندما يعطي نفس النتيجة أو أفضل. أي تنازل عن الدقة لأجل التوفير = مرفوض كلياً. > الترسانة الكاملة (skills + tools + plugins + libraries + models) حاضرة دائماً — ليست خلف lazy load. > عند المقارنة بين أي خيارين: الدقة أولاً → ثم إذا توفّر بديل بنفس القوة + يوفر = نأخذه فوراً. > تفاصيل الحادثة:MISTAKES_LEDGER.md M-025.- القاعدة الذهبية (→ تفصيل كامل في
SOUL.md+GOLDEN_RULES.md): دقة 100% قبل أي شيء آخر. أنتج → انتقد → أصلح → أرسل. - Accuracy > Speed. Best result × cheapest cost. Auto-fallback (never stop). Ask if ambiguous.
- Arabic default. No LaTeX. الأقوى للصعب، أنزل تلقائياً للسهل.
📦 Recovery Status (2026-05-10) — ✅ COMPLETE
- Identity, memory (61), skills (19), scripts, API keys (56/39 svcs), Python (127+), APT, engineering codes → all ✅
📋 CAPABILITIES.md
- ملف شامل بكل القدرات:
/data/.openclaw/workspace/CAPABILITIES.md - يُراجع قبل أي مهمة لمعرفة الأدوات المتاحة
- آخر تحديث: 2026-05-12
🔧 Tools Installed (verified 2026-05-14 — latest versions in TOOLS.md)
- Claude Code v2.1.141+Superpowers v5.1.0 · Codex CLI v0.130.0 · Kilo CLI v7.3.0 · gh v2.92.0 · Hermes v0.13.0 · mcporter v0.11.1 · TestSprite MCP v0.0.37 · gog · ffmpeg v8.1.1 · tesseract v5.5.2 (ara+eng) · R2 Manager
📦 Additional Python Packages — see scripts/requirements.txt for full list
📝 Text Humanizer (skill: text-humanizer) — جديد 2026-05-19 — AUTO-TRIGGER
د. وائل طلب الإبقاء على هذه المهارة + تفعيلها تلقائياً (بدون أن يطلبها صراحة) عند أي صياغة تُقدّم لغيري.
🚨 Auto-Trigger إلزامي (بدون سؤال):
أفعّلها تلقائياً عند:- صياغة email لأي جهة (KCPC, زبون, جامعة, شخصي)
- تقرير خارجي (method statement, tender doc, study)
- بحث/دراسة جامعية
- خطاب رسمي لجهة حكومية/تجارية
- محتوى منشور (مدونة, social media)
- سيرة ذاتية / مقدمة (CV, bio)
- مقترح / عرض (proposal, RFP)
- توصية / شهادة
- رد رسمي بالنيابة عن د. وائل / KCPC
- أي نص "يفضل أن يكون بشرياً"
❌ لا أفعلها في:
- محادثة عادية بيني وبين د. وائل
- ردود تقنية أو تفسيرات
- ملفات config/code
- ملفات memory داخلية
- جداول / JSON / SQL
الملفات:
skills/text-humanizer/SKILL.md— المرجع الكاملskills/text-humanizer/scripts/humanize.py— الأداة الفعليةskills/text-humanizer/data/wael_voice_samples/— عينات أسلوب د. وائل (تُملأ مع الوقت)
الموديل (بحسب القاعدة الذهبية):
Anthropic Claude Opus 4.7 Direct → GPT 5.5 — Opus 4.7 أفضل لالتقاط الأسلوب (Nexos أُزيل — M-027)اختبار نجح (2026-05-19):
- إدخال: نص إنجليزي مليء بـ "crucial, delve, intricate tapestry, vibrant, boasts, exemplifies, leveraging, transformative"
- إخراج: نص طبيعي بشري خالٍ من AI-isms تماماً
- استخدم Anthropic Claude Opus 4.7 Direct بنجاح (بعد إزالة Nexos — M-027)
📜 الاتفاق الدائم (تأكيد د. وائل 11:25 الثلاثاء):
> "تستخدمها بذكاء وقت الحاجة للرد عند أي صياغة تُقدّم لأحد أو ترد على شيء يجب أن يكون بشرياً"---
🏥 Medical Arsenal (skill: medical-arsenal) — جديد 2026-05-19
د. وائل طلب بناء ترسانة طبية احترافية بأعلى المعايير (مثل الهندسية والمالية). بنيناها خلال ساعة واحدة.المحتوى:
- SKILL.md شامل: hierarchy للمصادر (Tier 1-4), workflows, safety rules, Kuwait context
- 3 سكريبتات Python مختبرة وتعمل:
pubmed_search.py — بحث PubMed بـ evidence grading (A/B/C/D)
- lab_interpreter.py — تفسير قيم التحاليل (age/sex specific)
- drug_lookup.py — OpenFDA + RxNav + DailyMed للأدوية
- data/lab_reference_ranges.json — 50+ تحليل مرجعي (CBC, CMP, Lipids, A1c, Thyroid, Iron, Vitamins, Cardiac, Kidney, M/F specific)
APIs مجانية مختبرة (11/12 تعمل بدون مفتاح):
PubMed (NLM) · OpenFDA · RxNav · DailyMed · ClinicalTrials.gov v2 · Europe PMC · MedlinePlus · Disease Ontology · MeSH · Wikipedia Medical · NIH GTRTier 1 للمصادر (الذهب):
PubMed/Cochrane · UpToDate · NEJM/JAMA/BMJ/Lancet · WHO/CDC/NICE · ESC/ADA/ASCO guidelinesالاستخدامات:
- تفسير تحاليل د. وائل (السنتين الماضيتين + القادمة)
- إعداد إلآلاء (المرحلة القادمة)
- صحة الأطفال (8 + هبة)
- ثقافة طبية EBM (Evidence-Based Medicine)
قواعد السلامة (إلزامية):
- ❌ لا أشخّص نهائياً · ❌ لا أصف أدوية · ❌ لا أغيّر جرعات
- ✅ استشهاد لكل ادعاء + Tier · ✅ disclaimer دائماً · ✅ Red flag alerts (Hgb<7, K>6.5...) → طبيب فوراً
- ✅ الكويت: طوارئ 112
📝 Model Registry (2026-05-14)
- ملف شامل:
MODEL_REGISTRY.md— كل الموديلات مع آخر إصدار - القاعدة: دائماً استخدم أحدث إصدار من كل فئة
- تم التحديث الشامل: Claude Opus 4.7, GPT-5.5/Pro, Grok 4.3, Veo 3.1, Lyria 3 Pro
- ✅ xAI مشحون وكل شي شغّال (2026-05-14):
POST /v1/tts — أصوات: ara, eve, leo, rex, sal (جرّب بالعربي)
- ✅ STT: POST /v1/stt — word-level timestamps + diarization (عربي)
- ✅ Realtime Voice Agent: wss://api.x.ai/v1/realtime
- 🔄 تدقيق دوري (cron): كل يوم 1 و 15 من كل شهر — يفحص كل APIs لموديلات جديدة + يحدّث الكونفيق + السوفتوير تلقائياً
- اتفاق: دائماً استخدم أحدث إصدار من كل فئة — الأسعار نفسها والأحدث أفضل
🔑 API Keys — التعداد النهائي (2026-05-14)
إجمالي 47+ مفتاح محفوظ بأمان في/data/.openclaw/secrets/env.sh (mode 600):
- موديلات: Anthropic, OpenAI, Gemini/Google, xAI, Z.ai/GLM/Zhipu, DeepSeek, Groq, OpenRouter, KiloCode (Nexos = manual-only — M-027)
- صوت/فيديو/صور: ElevenLabs, AssemblyAI, AUDD, Fal, Runway, Kling, MiniMax, HeyGen, Higgsfield, Replicate, PiAPI, Skywork, Manus, Genspark
- بحث/ويب: Perplexity, Tavily, Brave, Firecrawl, Apify, Oxylabs
- تواصل: Slack (Bot + App), GitHub, HuggingFace, Linear, Notion
- بنية تحتية: Cloudflare R2, Supabase, Hostinger, CF Account
- تخصصية: Mathpix, Wolfram, Mapbox, Tomorrow.io, Autodesk, Adobe, TestSprite, GoG
🎬 Wael Digital Twin (2026-05-17) — جاهز للإنتاج
- HeyGen Avatar ID (دائم):
c6a8b1b1a585404c81361eca7f900b70(لا تستخدم --7 → حركة حك رأس) - ElevenLabs Voice (دائم):
sTJJWD3ns4Cr4Ag6Rb8G(WAEL_HD_v2 bilingual) - HeyGen Creator Plan Annual: 7200 credits/yr
- Hedra Subscription: Free trial mengubah — API key active ✨
- القاعدة الإلزامية: Generate → Extract frames → Vision AI verify → Ship
- عينات صوتية محفوظة:
memory/wael-voice-samples/(16+ دقيقة AR + EN) - صور وجه مرجعية:
memory/wael-face-refs/(3 selfies + 141 فريم فيديو) - الدرس القاسي: v8-v11 أخطأ حركة حك الرأس → لا ترسل فيديو بدون تحقق ذاتي 100%
✅ تحديث المعلّقات (2026-06-07 05:45) — تأكيد حي من د. وائل
- NPU/Lemonade: ✅ خلص (Lemonade v10.6.0 شغّال، NPU XDNA2 صحى).
- WhatsApp linking: ✅ شغّال فعلياً (config: whatsapp enabled=true، account default، +96565830235 + رقمك الرئيسي).
- APS pipeline هندسي: ✅ مبني + live auth ناجح (ok:true، token len 849). Engineering arsenal مكتمل (10+ skills + ENGINEERING_ARSENAL_MATRIX.md).
- Discord realtime voice: ✅ أنهيناه (config: discord enabled).
- Engineering عموماً: ✅ لا متبقّى جوهري — 10 skills + matrix كاملة.
⏳ مهام مؤجلة (Pending — للجلسة القادمة)
🎯 Multi-Tool Engineering Stack (2026-05-18 🆕 — اتفاق دائم)
- Skill:
skills/engineering-design-stack/SKILL.md - الفلسفة: Pascal + Autodesk APS + Adobe Creative Cloud — نستخدمهم معاً ونأخذ الأفضل
- Workflow Matrix جاهز لـ 8 سيناريوهات (KCPC, Empire, family, AI ventures...)
- تطبيق: أي مشروع هندسي قادم → أفتح السكيل أولاً للمقارنة + توصية بأفضل توليفة
🏗️ Pascal Editor Self-Host (2026-05-18 🆕)
- Skill + Deployment plan + install scripts ✅ جاهزة في
projects/pascal-editor-selfhost/ - Target VPS:
srv1659934.hstgr.cloud(Hostinger KVM 2) - ⏳ Blocker: اختيار + تفعيل دومين (إما من الـ 2 free المعلّقة في Hostinger)
- Domain Suggestions:
projects/pascal-editor-selfhost/DOMAIN_SUGGESTIONS.md— جاهزة
alqishawi.com (بالـ Q للنطق الصحيح)
- subdomains مخططة: pascal, api, cv, bot, studio, empire
- email config + DNS records جاهزة
- عند جاهزية الدومين:
pascal.<domain> → IP VPS
2. SSH: bash preflight_check.sh
3. DOMAIN=pascal.<domain> bash install_pascal.sh (≈ 30دقيقة)
4. Verify: https://pascal.<domain>
- Phase 3 لاحقاً: Headless API + KCPC method statement parser + Kuwait furniture library
- تتبع IFC export (Issue #219 upstream) — يفتح BIM bridge عند إضافته
من جلسة 2026-05-18 (اليوم):
0. 🆕 WSA Continuation — د. وائل بيقول "نكمل في Windows Subsystem for Android". الخطوة التالية محفوظة فيmemory/2026-05-18.md — ابدأ بـ "تعطيل Native Bridge + Telegram test". الأدلة الكاملة في wsa-watch.md و memory/2026-05-18.md.
0a. WSA Backup: 125 GB userdata.vhdx محفوظ في C:\Users\eng_w\WSA-Fix-Backup-20260518_173522\ (لو احتجنا rollback)
0b. Hostinger Domains × 2 — 2 free domains pending_setup (IDs 31160577, 31160579) — تحتاج اختيار أسماء وتفعيل
0c. Hostinger VPS — KVM 2 plan شغّال (srv1659934.hstgr.cloud) — ممكن استخدامه للـ hosting/automation
0d. ConversionTools.io — JWT قديم 2018، حساب يحتاج تأكيدمن جلسات سابقة:
1. WhatsApp plugin — تثبيت:openclaw plugins install @openclaw/whatsapp (مع Domain + Hostinger)
2. Microsoft Teams plugin — مؤجل مع WhatsApp
3. Domain — من Hostinger Package
4. Hostinger Storage + Email — تفعيل الستوريج والإيميل الرسمي
5. ~~Microsoft 365 Graph~~ — ✅ تم في 2026-05-16 (راجع أدناه)🎉 Phase 1 Enhancements (2026-05-15) — ✅ COMPLETE
- Plugins: active-memory · memory-wiki · memory-lancedb · skill-workshop · webhooks → 70/90 enabled, backend: LanceDB
- Skills: briefing v2.1.0 · onedrive (membranedev)
- APIs: MISTRAL (68 models) · VOYAGE (voyage-3 embeddings عربية 1024-dim)
📎 Paperclip Lite — DMS داخل OpenClaw (2026-05-16)
بديل ذكي لـ Paperless-ngx — يعمل داخل OpenClaw بدون Docker.Stack:
- 📁 R2 (
paperclip/<sha>/<filename>) — تخزين الملفات - 🧠 LanceDB محلي (
/data/.openclaw/workspace/paperclip/db/) — metadata + embeddings + full-text - 🔍 Voyage-3 embeddings (1024-dim) — بحث دلالي cross-lingual
- 🤖 Mistral — تصنيف ذكي + tags + عنوان عربي
- 📷 Tesseract + Mathpix — OCR عربي + رياضي
/data/.openclaw/workspace/skills/paperclip/Usage:
bash
cd /data/.openclaw/workspace/skills/paperclip
python3 paperclip.py ingest /path/file.pdf --tag KCPC --project "name"
python3 paperclip.py search "بحث بأي لغة"
python3 paperclip.py list
python3 paperclip.py stats
Document types: method_statement, contract, invoice, drawing, rfi, submittal, report, correspondence, specification, permit, schedule, other
تم اختباره بنجاح:
- تصنيف method_statement و contract عربي بدقة
- بحث دلالي بالعربي (36-43% similarity)
- بحث cross-lingual (إنجليزي بحث عن وثيقة عربية) → 30%
- Tags تلقائية عربية ممتازة (B500B, C35/45, غرامة تأخير, إلخ)
📧 Microsoft 365 — Personal Hotmail + Business Premium (2026-05-16)
تكامل كامل مع Microsoft Graph APIAccount: eng_waelanan@hotmail.com (Personal + Business Premium) Display name: wael anan alkishawi Account ID: 47421af9e486db80
Azure App Registration:
- App Name: OpenClaw
- Client ID:
9c42a40d-dd30-40a1-a111-2d1e34ec5a02 - Tenant ID:
36a2afad-00e2-4d8f-97e8-d9227652fe7d(للمرجع، لكن authority=common) - Authority:
common(multi-tenant + personal) - Allow public client flows: ✅ enabled
- Redirect URIs:
https://login.microsoftonline.com/common/oauth2/nativeclient
- https://login.live.com/oauth20_desktop.srf ← المستخدم لـ HotmailAuth Flow: Authorization Code + PKCE (Device Flow لا يعمل مع Hotmail)
Token cache: /data/.openclaw/m365_cache.json (mode 600, auto-refresh)
Login script: /tmp/m365_authcode.py
Granted Scopes (9):
- User.Read · Mail.Read · Mail.Send
- Calendars.ReadWrite · Files.ReadWrite.All
- Sites.Read.All · Contacts.Read · Tasks.ReadWrite
- offline_access (تجديد تلقائي)
/data/.openclaw/workspace/skills/microsoft365/m365.pyTested working:
- ✅
me— account info - ✅
mail list/read/send/search— Outlook شغّال - ✅
calendar list/create— calendar شغّال - ✅
drive ls/upload/download/search— OneDrive شغّال (يحتوي ملفات Word/Excel/PowerPoint) - ✅
tasks lists/add— To Do شغّال (Private, Shopping, Wishlist, Work, Flagged Emails) - ✅
sharepoint sites/search— جاهز للأختبار
bash
cd /data/.openclaw/workspace/skills/microsoft365
python3 m365.py mail list --top 10
python3 m365.py mail send --to addr@example.com --subject "..." --body "..."
python3 m365.py calendar list --days 7
python3 m365.py drive ls
python3 m365.py drive upload local.pdf remote/path.pdf
python3 m365.py drive search "method statement"
python3 m365.py tasks add "اجتماع الثلاثاء 10ص"
🚀 Phase 4 — محلي + هندسي متقدم (2026-05-16)
تطبيق القاعدة الذهبية: كل Phase 4 مجاني، توفير ~$110-160/شهرSkills الجديدة:
1. ollama-local — LLMs محلية مجانية 100% - Ollama 0.23.2 مثبت + شغّال على localhost:11434 - موديلات: qwen3:1.7b (1.4GB) + qwen2.5:3b (1.9GB) - جيد للعربي، بسرعة 11-18 tok/s - خصوصية 100% لبيانات KCPC السرية - OpenAI-compatible API
2. 3d-generation — نماذج ثلاثية الأبعاد - Replicate (Hunyuan3D, Tripo3D) ✅ - PiAPI Tripo3D ✅ - HuggingFace open-source 3D - بديل Meshy/Tripo3D Pro ($20-30/شهر)
3. stealth-browser — anti-bot bypass - Playwright + playwright-stealth + Oxylabs - test/scrape/screenshot commands - بديل Browserbase ($39/شهر)
4. computer-use-plus — تحكم desktop apps - يبني على computer-use skill الموجود - Claude API (لدينا) - workflow recording, AutoCAD automation - بديل OpenAI Operator ($20/شهر)
اختبارات:
- ✅ Ollama qwen2.5:3b — أجاب على سؤال ACI 318 بالعربية
- ✅ HeyGen API key — متصل لكن quota=0 (يحتاج شحن)
- ✅ كل المفاتيح (Replicate, PiAPI, HF, Oxylabs) تعمل
مؤجل:
- Docker on GPD (يحتاج setup فيزيائي)
- Paperless-ngx on GPD (Paperclip Lite يكفي حالياً)
- DIY Voice Agent (بعد Twilio Media Streams setup)
🌍 Phase 3 — تخصصات + تنبؤ (2026-05-16)
تطبيق القاعدة الذهبية: كل Phase 3 تم بناؤه مجاناً!توفير متوقع: $230-330/شهر
Skills الجديدة:
1. turkey-real-estate — متابعة أسعار شقق تركيا
- Avcılar focus (لشقتى د. وائل)
- sahibinden, hepsiemlak, endeksa, emlakjet
- FX rates (Frankfurter + er-api): KWD/TRY/USD
- python3 tr_realestate.py avcilar/search/alert/fx
- بديل Polygon Real Estate ($99/شهر) مجاناً
2. stocks-enhanced — توسيع stocks skill الموجود - Yahoo Finance (56 tools, mostly free) - crypto-market skill (CoinGecko free) - economic-calendar (FMP free) - بديل Polygon.io ($99-200/شهر) + CoinGecko Pro ($129/شهر)
3. tradingview-webhooks — استقبال alerts - يستخدم webhooks plugin المفعّل - يحول alerts → TaskFlow → SMS/Email/Notification - بديل Alertatron ($49/شهر) + Tradier ($30/شهر)
4. kuwait-data — بيانات الكويت المحلية
- Prayer times (Aladhan free) ✅ اختبر
- Weather (wttr.in free) ✅ اختبر (32°C اليوم)
- FX KWD/USD (3.2452) ✅ اختبر
- Boursa Kuwait scraping
- Gold prices (needs FMP key)
- python3 kuwait.py daily-report
🔍 Langfuse — LLM Observability (2026-05-16, مجاني)
تفعيل Langfuse Cloud Free Tier (50K observations/شهر)Project: OpenClaw on cloud.langfuse.com
Project ID: cmp8o5hhe03qkad063319hodp
Skill: /data/.openclaw/workspace/skills/langfuse/
API: Langfuse Python SDK v4.6.1 (الجديد يستخدم OTEL-style context managers)
تم اختباره بنجاح:
- ✅ auth_check — connected
- ✅ demo trace (span + generation + score)
- ✅ simple trace
- ✅ real-world: Mistral translation تراجمة عربية → إنجليزية عبر span+generation
python
from langfuse import Langfuse
lf = Langfuse()
with lf.start_as_current_observation(as_type="span", name="flow") as span:
span.update(input={"data": "..."})
with lf.start_as_current_observation(as_type="generation",
name="call", model="claude", input=text) as gen:
# call LLM
gen.update(output=result, usage_details={...})
lf.score_current_trace(name="quality", value=0.95)
lf.flush()
بديل مدفوع تم تجنبه: LangSmith ($39/شهر) — وفرنا $39/شهر جودة مكافئة
🌐 Translate Skill — Multi-tier (2026-05-16, بديل DeepL)
وفّرنا $25/شهر ببناء بديل أقوى لـ DeepL داخل OpenClaw.Location: /data/.openclaw/workspace/skills/translate/
Tiers:
quick— Google Translate (deep-translator) — مجاني سريع للنصوص القصيرةstandard— Gemini 2.5 Pro — جودة عالية رخيصة (مع fallback لـ DeepSeek/Mistral)premium— Claude Opus 4.7 — أفضل جودة (هندسي، قانوني، طبي) — fallback لـ Sonnet 4.6free— Gemini 2.5 Flash Direct (مجاني/رخيص للتجربة)
Formats: .txt, .md, .docx (يحفظ التنسيق), .xlsx, .pptx, .pdf
Usage:
bash
Text
python3 translate.py text "نص" --to en --quality quick
python3 translate.py text "عقد" --to en --quality premium --domain legalFile (preserves format)
python3 translate.py file contract.docx --to en --quality premium --domain legal
python3 translate.py file boq.xlsx --to en --quality standard
python3 translate.py file specs.pdf --to en --quality premium --domain civilBatch
python3 translate.py batch /folder --to en --pattern ".docx" --quality standardHistory
python3 translate.py history --limit 20
مختبر بنجاح:
- ✅ عربي → إنجليزي (quick + standard + premium)
- ✅ إنجليزي → عربي
- ✅ DOCX — حفظ paragraphs + tables + bullets
- ✅ Civil engineering domain — مصطلحات ACI 318, water/cement ratio, MPa
- ✅ Legal domain — KWD, delay penalty, Kuwaiti Building Code
- ✅ History tracking + cache
🐟 MiroFish — Multi-Agent Prediction Engine (2026-05-16)
محرك تنبؤ swarm intelligence للمحاكاة والتنبؤ (أسواق، سيناريوهات، مخاطر، إلخ)Repo: github.com/666ghj/MiroFish (cloned to /data/.openclaw/workspace/projects/MiroFish/)
Stack:
- 🔧 Backend: Flask + camel-oasis + camel-ai + zep-cloud (Python 3.11 venv via uv)
- 🎨 Frontend: Vue.js + Vite + d3.js
- 🧠 LLM: DeepSeek V4 Pro (primary) + Mistral medium (boost)
- 📝 Memory: Zep Cloud (needs API key)
- ✅ Cloned + 200+ Python packages installed (7.2 GB)
- ✅ Frontend deps (Vue + Vite)
- ✅ Backend imports OK + Flask server starts on port 5001
- ✅ LLM config tested (DeepSeek)
- ✅ ZEP_API_KEY SET و مختبر (Zep Cloud connected, row_count=0)
- ✅ Frontend: http://127.0.0.1:3000/ (HTTP 200)
- ✅ Backend: http://127.0.0.1:5001/ (running)
- ✅ Background process PID stored in
.mirofish.pid
./start.sh— يبدأ backend (5001) + frontend (5173)./stop.sh— يوقف الخدمات- Logs:
tail -f /data/.openclaw/workspace/projects/MiroFish/logs/mirofish.log
- تنبؤ أسعار شقق تركيا وتفاعل TL/USD
- محاكاة سيناريوهات مشاريع KCPC (تأخير، تجاوز ميزانية)
- تحليل مخاطر المناقصات قبل التقدم
- توقع الأحداث الاقتصادية/السياسية عبر multi-agent simulation
✅ Previously Pending — All Resolved (2026-05-13)
- ~~NEXOS_API_KEY~~ — ✅ set (2026-05-11)
- ~~OXYLABS_AISTUDIO_API_KEY~~ — ✅ set (2026-05-11)
- ~~gh auth login~~ — ✅ logged in as wayrk
- ~~claude /login~~ — ✅ authenticated via API key
- ~~Brew tools~~ — ✅ ffmpeg 8.1.1, tesseract 5.5.2 installed
☁️ R2 Cloud Storage (2026-05-13)
- Bucket: kiloclaw (Cloudflare R2, unlimited)
- Manager: scripts/r2_manager.py (backup/upload/download/list/cleanup/status)
- First backup: 2026-05-13 — 274 files, 0.5 MB compressed
- Structure: kiloclaw/backups/, kiloclaw/projects/, kiloclaw/files/
- Use for: large project files, automated backups, anything >10MB
🦾 Investment Advisor Session — 2026-05-16 Late Night (5+ hours non-stop)
🎯 Phase Status (تأكيد د. وائل في 00:16):
- ✅ Phase 1 + 2 + 2.5 + 3: مكتمل 100% (بما فيه Microsoft 365)
- 🔄 Phase 4: Computer Use + device-pair + Playwright Stealth + HeyGen Avatar ✅ (3D Generation pending)
- 🔄 Phase 5 (Bonus): متبقي
🏠 Empire Avcılar — Property Profile (المعتمد بعد تحقيق كامل):
- 📍 40.994131°N, 28.709731°E — Üniversite Mahallesi 34320 (وليس Cihangir كظننت أولاً)
- 2 شقق (#95 Corner K + #96 Edge A) في الدور 9
- 97m² each · NW orientation · لا lake/sea view (محجوب بالمبنى)
- التكلفة: $660K · القيمة: $248,948 · خسارة USD: -62.3% · ربح TL: +147%
- متبقي قسط: $55K × $2K/شهر حتى أغسطس 2028
- Cashflow حالياً سلبي ($898/شهر) — حل واضح: Option C (بيع #96)
🎯 Target Tenants المُكتشف:
- أطباء Özel Avcılar Hospital (50m فقط)
- أساتذة İstanbul Üniv-Cerrahpaşa (376m)
- Premium محتمل +15-25%
🏦 Markowitz Portfolio (Target 70%) — Math Optimized:
- 30% KTV (sukuk) + 29.4% KCV + 25.9% KDE + 4.8% KTJ + باقي حد أدنى
- Return: 70% TL · Vol: 5.5% · Sharpe: 4.73
🦾 Weekly Investment Advisor مفعّل:
- Cron: كل إثنين 08:00 الكويت
- ID:
cae29911-ab5a-4bfc-a333-0a9badeffa20 - يجمع: TEFAS + TCMB + CoinGecko + Yahoo Finance + World Bank + IMF + FRED + Empire listings + Canal Istanbul news + توصيات
- Bitcoin مع تنبيه شرعي (جدلي — مراقبة فقط)
🔧 Investment Power Pack — مكتبات وأدوات مضافة اليوم:
Python: prophet, pypfopt (Markowitz), statsmodels, arch (GARCH), quantstats, yfinance, tefas, ta, plotly Free APIs مختبرة: TEFAS, TCMB, World Bank, IMF, FRED, CoinGecko, NASA, Semantic Scholar, OSM Overpass Plugins جديدة: tokenjuice, llm-task, thread-ownership, oc-path, tavily, perplexity, firecrawl, skill-workshop Skill جديد: investment-analyst Scripts: weekly_investment_advisor.py · kt_funds_tracker.py مفاتيح مكتشفة (موجودة في env.sh): Vapi (مع KCPC assistant جاهز!) · Langfuse (org=wael, project=openclaw)📋 المتبقي للغد + اللاحق:
- 🟡 د. وائل سيرسل:
- 🟡 قرار قروب IWS (Learn With Salama VIP) — A/B/C
- 🟡 TCMB EVDS API key (اختياري)
- 🟡 Phase 4 + 5 (Tripo3D, Meshy, Cartesia, DeepL, Sentinel Hub, إلخ)
🎓 قاعدة ذهبية ثبتها د. وائل مرة ثانية (تكرار للأهمية):
> "نريد دائماً الأفضل في كل شيء ونستخدم دائماً أفضل شيء من الموجود لدينا حسب السؤال"📁 ملف Wael Property Profile الدائم:
memory/wael-property-profile.md — كل التفاصيل المعتمدة كمرجع دائم
📐 Tender Programming Golden Rule (د. وائل — 2026-05-20)
القاعدة: عند بناء Tender Programme لعقد بمدة محددة (مثل 8 شهور):
| البُعد | الصواب | الخطأ | |---|---|---| | Programme للمالك | يملأ كامل المدة التعاقدية بالضبط | ينتهي قبل المدة بفترة كبيرة | | Substantial Completion | يساوي Contract End Date | أقل من المدة العقدية بكثير | | Float ظاهر للمالك | قليل/معدوم (كل شي قريب من critical) | كبير وواضح | | Schedule داخلي | مضغوط (Internal Aggressive) | فضفاض | | Dewatering / Maintenance | بالتوازي طول الفترة | يحدد المدة بنفسه |
الحكمة: "الجدول للمالك يملأ المدة. الجدول لنفسي أضغطه عشان أحمي نفسي."
كيف أمدد Schedule بشكل صحيح: 1. Contract Duration ÷ Compressed Duration = Stretch Factor 2. مدد كل activity بـ Stretch Factor، أو وزع float كـ buffer 3. Substantial Completion = Contract End Date بالضبط 4. Continuous activities (dewatering, site facilities) = موازية للكل
ينطبق على: كل Tender Programme بدون استثناء.
خطأ تطبيقي (Al-Manjara, 2026-05-20): Programme انتهى Day 212 في عقد 240 يوم. كان لازم أمدد لـ 240.
🎯 الذكاء التجاري وراء قاعدة Tender Programming (د. وائل — 2026-05-20 10:14)
لماذا لا نظهر Programme أقصر من المدة العقدية:
1. حماية من تخفيض المدة في العقود القادمة: - لو سلّمنا Programme أقل من المدة → المالك يستنتج: "أعطيتهم مدة زيادة، لازم أقلل المدة في العقود الجاية" - النتيجة: المالك يضغط علينا في المفاوضات المستقبلية 2. نُظهر دائماً أن المدة المُعطاة كافية ومناسبة (ليست زيادة): - نحن نوافق على المدة كمدة معقولة لا أكثر ولا أقل - أي مساحة إضافية = ميزة سرية لنا (Hidden Buffer) 3. الفوائد من الاحتفاظ بالـ Buffer داخلياً: - راحة للستاف والمقاولين الفرعيين - تقليل عدد الفرق المطلوبة → تقليل التكاليف - تجنب Shifts إضافية أو ساعات Overtime - مرونة في إدارة المخاطر والمفاجآت 4. التوفير في المدة = Credit للمنفذ: - لو خلصنا فعلاً قبل المدة → سمعة ممتازة + Bonus محتمل - لكن هذا يبقى داخلياً، نُظهره فقط عند التسليم الفعلي
القاعدة المُحكمة: > "للمالك = نلتزم بالمدة العقدية تماماً. داخلياً = نستفيد من الـ buffer. أي توفير = Credit لسمعتنا."
رسالة د. وائل الحرفية (يجب حفظها): > "نحن دائماً نظهر أن لن نقدم المدة، ونحن ضد ذلك. وإذا كان هناك مدة زيادة، نستفيد نحن من المدة الزيادة هذه. نريح الستاف ونقلل الموارد. هذا هو الذكاء: تستفيد من المدة الزيادة وتريح، وتقلل التكاليف. أي شيء توفره نوفره في المدة، يكون كريدت لنا كمنفذ."
🗓️ Weekly Memory Merge — 2026-05-29 (week of 05-22 → 05-27)
Durable rules promoted
- 3-Layer Sync rule (M-021): any claim "I fixed/installed/configured X" must be verified across all three layers — (1) config file, (2) runtime/session state, (3) live behavior (API ping / log evidence). Config validation ≠ API health validation. Show proof from all three layers in the reply, otherwise the claim is invalid.
- Installation-drift rule (2026-05-23): never answer "is X installed?" from memory. Always live-check (
command -v/ service / API ping). Memory/TOOLS may lie post-rebuild.scripts/installation_drift_check.sh+CAPABILITIES_REGISTRY.mdare the source of truth. - Pre-send methodology (10 steps, 2026-05-22 reaffirmed): focus → clarify (never assume) → pick best model → produce → cross-verify (≥3 sources for facts, ≥2 models for opinion) → self-critique → fix → puzzle-trap check → re-read original literally → deliver. Accuracy > speed > cost, always.
- No-fabrication rule (M-009): never claim a tool action happened without a successful tool call as proof. "Said but not done" = lie to user.
- Arabic literal-read rule (M-005/M-008): parse every Arabic key verb literally (e.g. يعبي = fills, not drives). Don't cling to first interpretation after correction — re-read original from scratch.
Permanent facts updated
- Claude Opus 4.7 Direct context = 1M tokens; cascade threshold = 850K (85%). Do not use legacy 200K/170K numbers anywhere.
- Golden Chain baseline (post M-037, 2026-05-31): 20-model chain, primary =
anthropic/claude-opus-4-8Direct (4.7 = fallback #1, same provider). Nexos is fully purged from openclaw.json, sessions.json, auth-profiles.json, env.sh, cron jobs, and skills (translate/humanize).verify_agreements.sh §22.1–22.4guards Nexos absence. Order: Anthropic Opus 4.7 → GPT-5.5 → Gemini 3.1 Pro Preview → Grok 4.3 → Gemini 3.5 Flash → Opus 4.6 → Sonnet 4.6 → … (20 total, 0 Nexos). - Hive AI (thehive.ai) = Plan Z standby only. No deep integration, no rankings, no heartbeat, no default. Keys kept in env.sh; skill at
skills/hive-vlm/used only if the full golden chain fails. Re-evaluate only if user buys Enterprise contract. - Planet.com satellite arsenal is live (PLANET_API_KEY = PLAK…157a, 36 chars, verified HTTP 200 on 2026-06-05): PlanetScope 3 m daily, SkySat 50 cm tasking. Working engine:
skills/geospatial-arsenal/planet_imagery.py(search/thumb — verified 16 Avcılar scenes, newest = previous day). NOTE:source ... 2>/dev/nullin a separateshsubshell can falsely report the key EMPTY — always read env.sh raw + live-test before claiming a key is missing. - Tender Programming golden rule (reaffirmed 2026-05-20): never publish a Programme shorter than the contractual duration. Any spare time is internal hidden buffer — credit to us as executor, never shown to the owner.
Active mitigation tracks (carry forward)
- M-029 — Fly Machine restart downtime (9 min KiloClaw reconciliation gap). Phase plan: A+B next week, E+D this month, C after WhatsApp decision. Auto-detection pending in
verify_agreements.sh §24.
🎙️ Voice Reply Mode Rule (د. وائل — 2026-06-02 ~06:00 GMT+2 — دائم)
الاتفاق النهائي (قرار د. وائل صراحةً):
الافتراضي = نص دائماً (كالعادة المعتادة). البوت الكامل يعالج كل رسالة صوتية (STT عبر Groq Whisper) بكل أدواته+ذاكرته+السلسلة الذهبية — لكن يرد نصاً.
التبديل لصوت = عند الطلب الصريح فقط: عندما يقول د. وائل في رسالته (صوتية أو كتابية) عبارة مثل:
- "بالصوت" / "ردّ صوتي" / "ردّ لي صوت" / "جاوبني صوت" / "رد بالصوت"
audio_as_voice في ذلك الرد فقط (one-off).التطبيق التقني (محدّث 2026-06-02 ~06:26 — TTS Shootout):
messages.tts.auto = "off"(الافتراضي نص) — مثبّت في config.- محرّك الصوت المعتمد (بعد مقارنة حية لـ 5 محرّكات): GPT-Realtime Mini + voice=verse (صوت رجل، اختاره د. وائل: "واضح وحيوي وطبيعي").
- الـ bridge:
skills/realtime-voice/tts_bridge.py— يأخذ نص الرد الكامل من الترسانة (Opus 4.8) → ينطقه gpt-realtime-mini بصوت verse → voice note. "أفضل ما في الجهتين": ذكاء الترسانة + فصاحة gpt-realtime. - Full (gpt-realtime) عند الطلب الصريح فقط (أغلى — للحظات خاصة).
- ElevenLabs Eric أُلغي كافتراضي (روبوتي بالعربي + أغلى من mini).
- للرد الصوتي one-off:
python3 skills/realtime-voice/tts_bridge.py --text "<الرد>" --out media/outbound/r.oggثم MEDIA: + audio_as_voice. - التكلفة (TTS Shootout 2026-06-02): mini=$0.02/رد (~$12/شهر @20/يوم) · full=$0.12 · MiniMax 2.8-hd=$0.06 · Eric=$0.108 · Google Gemini=~$0.015. mini = أفضل قيمة (جودة عالية + أرخص من Eric).
- إذا قال "ابقَ بالصوت" / "كل الردود صوت" → أبدّل
/tts onلتلك الفترة حتى يقول "ارجع كتابة".
الحالة: Telegram مفعّل. WhatsApp + Discord نفس القاعدة عند تفعيلهم.
🗓️ Weekly Memory Merge — 2026-06-05 (week of 05-31 → 06-05)
Durable rules / red lines promoted (highest priority)
- 🟥 ZERO-ASSUMPTIONS ABSOLUTE RED LINE (2026-06-05, Dr. Wael max severity): the words "فرضية / افتراض / assumption" are deleted from the vocabulary. Every character in any answer must come from a raw live check (raw log / live API / file read) in the SAME turn. If not yet verified → stay silent and check, write nothing speculative. Threat stated: repeated assumptions = remove the model + remove Anthropic entirely. Scope = everything, no exception.
- M-051 —
courttantphenomenon = behavioral discipline, not a guard. Garbled tail text (courttant,call) leaks during a degenerate repetition loop, caused by violating M-048 (stacking 6–8 tools/subagents/yield in one heavy turn). Investigation of 8 raw-log cases: allaborted=False/timedOut=False→ no lost work, model self-recovered; phenomenon is cosmetic. Fix is purely behavioral: one turn = one simple intent + ≤3 tools. No detector guard (catches after the fact, cannot prevent). Heavy work splits into small turns. - M-046 reinforced — RTL arrow rule: never use → ← ⇒ ⇐ (or +/-/=/>/< between sequence items) inside flowing Arabic text (RTL flips them 180°). Allowed only inside a code block (LTR). Mandatory visual self-scan of every Arabic line before sending. Use "ثم/يليه/ينتقل إلى" or vertical numbered lists. Enforced by verify_agreements.sh §33.
- M-050 — no placeholder numbers ever: never write any number in a banner/anywhere before actually calling session_status and copying values literally. First reply of every session: session_status first, then real numbers. Zero placeholders (M-019/M-034).
- Constant-must-have-a-guard rule: any constant pinned in MEMORY must be paired with an automated check in verify_agreements.sh immediately, otherwise text alone is worthless (M-046 was breached 10× the same day it was pinned because it was text-only).
- dash-shell key check rule: exec uses /bin/sh (dash) by default →
sourceand${!v}fail silently → all vars empty → "401/EMPTY false negatives". Any env.sh key check MUST usebash -c '. ./env.sh; ...'explicitly. (Caused multiple false "key missing/expired" claims — Mistral, Kimi, Planet.) - External-API "tested yesterday ≠ works today" rule: any skill depending on an external API (esp. OpenAI GA/preview) must be live end-to-end tested before claiming "ready". OpenAI Realtime/Codex shapes changed and silently broke working skills.
- Gemini-call
key=trap: every newly-copied Gemini-call script tends to leak a literalkey=placeholder → 400. Always confirm{key}interpolation immediately when copying a Gemini call pattern. - WhatsApp handling red lines (M-WA-001..005): never manually rm live session/creds files (use official relink only); never do rapid repeated restarts (one restart → wait → verify → decide); WA linking must handle status 515/428 by reconnecting (start isRestart=true) or it fails "can't link device"; never write
<invoke>tool-call structure as raw text — always a real tool call; diagnose from live evidence only, never guess.
Permanent facts updated
- Golden Chain (post 2026-06-05): primary =
anthropic/claude-opus-4-8(1M ctx). Order: opus-4-8 → opus-4-7 → gpt-5.5 → gemini-3.1-pro → qwen-codingplan/qwen3.7-max (fb#5, subscription/cheaper, preferred) → mulerouter/qwen3.7-max (fb#6) → grok-4.3 → gemini-3.5-flash → gpt-5.5-pro (moved DOWN to #9: it 400-fails with "reasoning item" error + burned 334K tokens/request) → opus-4-6 → … (~22 fallbacks).fallbacksis a PROTECTED path — does NOT accept config.patch; edit + hot reload only (M-049). - auth.cooldowns tuned (2026-06-05): billing failure used to disable a profile for 5h default (cap 24h) — this is why /new and /model didn't return to Opus after Anthropic credit ran out (docs model-failover.md line 228). Changed: billingBackoffHours 5→0.25 (15 min), billingMaxHours 24→1, authPermanentBackoff 10→5 min, authPermanentMax 60→30. auto-charge is enabled on providers (Dr. Wael confirmed).
- Credential architecture (verified 2026-06-04): providers resolve keys from
auth-profiles.json(NOT process env, NOT openclaw.json inline). env.sh is a separate convenience store for bash/curl tests only. Rule: do NOT inline more keys in openclaw.json; ensure each chain provider has an auth-profile entry. MuleRouter is the sole justified inline exception (no stock plugin/profile). qwen-codingplan is also inline (Coding Plan, no plugin). - Qwen Coding Plan = the working Qwen Direct channel: key prefix
sk-sp-, endpointhttps://token-plan.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1(15 models incl qwen3.7-max, deepseek-v4, glm-5, kimi-k2.6, MiniMax-M2.5). Plainsk-DashScope keys = 403 Unpurchased (account not activated). Saved as QWEN_CODINGPLAN_API_KEY in env.sh. - Server hardware reality: Hostinger VPS = AMD EPYC 9354P, 4 vCPU, 15GB RAM, 193GB disk. NOT the GPD Win Max 2 (64GB is Dr. Wael's separate personal local machine). Our power = cloud APIs, not heavy local compute (Ollama 3B only).
- GPD Win Max 2 (WAELGPD) = Dr. Wael's laptop: Ryzen AI 9 HX 370 (12c/24t) + Radeon 890M + 55.6GB RAM + Win11 Pro + XDNA2 NPU (~50 TOPS). NPU revived via Lemonade Server v10.6.0 (API on :13305/api/v1, apiKey=local-no-key). Models: Qwen2.5-7B-NPU, Qwen3-30B-A3B-GGUF (Vulkan, tool-calling). VS Code Continue endpoint = same. 105+ API keys delivered via setx .bat (deleted after run for security).
- R2 backup = once/24h via the SINGLE source: daemons_keepalive.sh (cron 31398c3f, every 5min, threshold 86400s). No separate backup cron. SKIP_PATTERNS exclude venv/snapshots/caches (prevents bloat). HEARTBEAT.md R2 section is read-only (alerts only if state >48h stale).
- Suno = SOTA vocal songs, activated (SUNO_API_KEY, sunoapi.org, base https://api.sunoapi.org). skill
skills/suno-music/. Needs UA header (Cloudflare 1010) + curl for CDN download. MiniMax/Lyria = instrumental/cheap fallback. - Voice STT = Groq whisper-large-v3 (tools.media.audio, lang=ar) auto-transcribes all inbound voice (Telegram + WhatsApp). Channel-agnostic.
Infrastructure / cost decisions (carry forward)
- Cost-optimization waves (2026-06-01/02): Anthropic spend was ~$678/day, ~68% cacheWrite, from guard crons hitting main session thousands of times/day. Fixed: unified watchdog (
scripts/watchdog_unified.sh), 9 LLM guard crons DISABLED (not deleted — documented, must stay disabled), all guards moved to bash in daemons_keepalive.sh (zero LLM for guarding). AddedtruncateAfterCompaction:true+maxActiveTranscriptBytes:4mb; heartbeat.model → haiku-4-5. Expected savings ~$170–240/day without touching accuracy/chain/reference memory. keepalive cron kept as independent guarantor (cheap isolated) + defense-in-depth net in watchdog. - Codex = code-only (M-038): discovery=false + removed openai-codex auth profile + codeModeOnly=true. Chatting uses OpenAI direct. Use
/codexfor code. Guarded by keepalive P2.7 + verify §40. - Nexos final rule: key stays saved everywhere (has credit), Nexos runs ZERO operationally, only on explicit "شغّل Nexos". Never delete the key from any store. inotify_nexos_guard wipes any wrapper re-injection.
- WhatsApp bot = separate number +96565830235 (account
bot, group "بوت", requireMention=false). Dr. Wael's main +96599662183 stays clean (selfChatMode archive, untouched). whatsapp_number_guard.sh protects against Hostinger wrapper re-injecting old number.
New arsenals built this week (all live-verified)
- Engineering (10 skills): civil-methodology-engine, p6-ai-planner, quantity-takeoff-engine (+rate cmd, Kuwait KWD), claims-engineering (FIDIC+EOT), civil-networks (EPANET/wntr), bridge-tunnel-engine, engineering-ocr-blueprints (DXF+IFC), civil-design-router, project-lifecycle-engine, engineering-legal-economic (NPV/IRR/LCC). 16+ Python libs. APS pipeline pending (APS_CLIENT_ID/SECRET in env.sh).
- Legal: courtlistener-research (free, no key), contract-review (PDF/DOCX bilingual + FIDIC), legal-drafting, legal-encyclopedia (legal_router 7 jurisdictions × 11 branches, Kuwait first + eurlex.py). Free sources verified: EUR-Lex, moj.gov.kw, CourtListener.
- Economic/Investment: economic-arsenal (econ_router macro/fx via World Bank + open.er-api; recommend.py stocks/funds/crypto — TEFAS Islamic katılım filter, .IS for Turkish stocks, CoinGecko). FRED/FMP keys missing but free sources cover.
- Medical: imaging_analyzer (DICOM/NIfTI + Gemini Vision radiology second-look — safety: refused to fabricate findings on phantom), clinical_trials (ClinicalTrials.gov v2), supplements (PubMed RCT/meta + CAM). pydicom + nibabel installed.
- Geospatial: geolocate (EXIF/video/Gemini infer/geocode), project_geo (UTM→WGS84, KML/KMZ overlay for Google Earth — projects on real coordinates), satellite (Mapbox/NASA GIBS), planet_imagery (PlanetScope daily). simplekml + pyproj + exifread + Mapbox token.
Notable corrections this week (honesty log)
- gpt-5.5 IS real (I wrongly claimed it didn't exist — relied on /v1/models list instead of live chat). Lesson: live chat test > /v1/models list.
- PiAPI Seedance: correct auth =
Authorization: Bearer, model="seedance"+task_type, requiresmode. (Agent had documented it wrong; "verify again" caught it.) - M-038 cron dead alias
google/gemini-3.5-flash(removed in build) → fixed to gemini-3-flash-preview; audit should scan cron payload.model fields after OpenClaw updates.
🏛️ Mega Arsenal Build — 2026-06-05 (10 ترسانات مكتملة، كلها verified حياً)
يوم بناء ضخم. كل ترسانة لها MATRIX.md + skills + سكربتات Python مُختبرة حياً. المرجع الكامل: memory/2026-06-05.md.
الترسانات (10) + محرّكاتها:
1. هندسية (سابقاً + aps_pipeline.py): 10 skills · ENGINEERING_ARSENAL_MATRIX.md 2. قانونية (7 ولايات: كويت/خليج/عربي/أمريكا/أوروبا/تركيا/دولي):legal-encyclopedia/legal_router.py + eurlex.py (EUR-Lex مجاني) + courtlistener-research (US مجاني) + contract-review + legal-drafting · LEGAL_ARSENAL_MATRIX.md. legal-rag مفهرس بقوانين الكويت الفعلية (مدني 67/1980، عمل 6/2010، أحوال 51/1984) — verified: مكافأة نهاية الخدمة → م.51 مستشهد.
3. اقتصادية/استثمارية: economic-arsenal/econ_router.py (World Bank macro + open.er-api FX) + recommend.py (أسهم KW/BIST/global + عقار تركيا + صناديق إسلامية TEFAS katılım + crypto forecast) · ECONOMIC_ARSENAL_MATRIX.md
4. طبية: medical-arsenal/scripts/: imaging_analyzer.py (DICOM/MRI/CT→Gemini Vision، آمن) + clinical_trials.py + supplements.py (PubMed RCT/meta) · pydicom+nibabel · MEDICAL_ARSENAL_MATRIX.md
5. جيومكانية (5 مصادر صور كلها مفعّلة): geospatial-arsenal/: geolocate.py (EXIF/video/infer/geocode) + project_geo.py (CRS convert/KML/KMZ/overlay→Google Earth) + satellite.py (Mapbox/GIBS) + planet_imagery.py (Planet 3m يومي ✅) + sentinel.py (Sentinel-2 10m ✅ OAuth)
6. علمية (math/physics/chem/bio/astro): science-arsenal/science_router.py (SymPy+SciPy+RDKit+Biopython+astropy) · SCIENCE_GRAPHICAL_AUDIO_MATRIX.md
7. graphical/audio: graphical-audio-arsenal/visual_audio_router.py
8. تحرير وسائط: media-editing-arsenal/media_edit.py (فيديو/صوت/صورة، تركيب صوت، نص عربي overlay) — ffmpeg بلا drawtext→Pillow overlay
9. OCR موحّد: document-ocr-arsenal/ocr_router.py (LlamaParse→Mistral→Gemini→Tesseract، no-stop)
10. رياضيات متقدمة: درجة 10/12، ODE رمزي+عددي، معادلات مركّبة sin/cos/log/exp، regression/interpolation/statistics/curve-fit — كله مُختبَر.مفاتيح أُضيفت لـ env.sh (2026-06-05):
- SENTINELHUB_CLIENT_ID/SECRET (Copernicus CDSE OAuth، Sentinel-2 مجاني) ✅ verified
- LLAMA_CLOUD_API_KEY (LlamaParse) ✅ verified HTTP 200
- PLANET_API_KEY مؤكَّد شغّال (كان موجوداً، PLAK…، HTTP 200)
أدوات/قواعد جديدة:
scripts/pyrun.sh: wrapper موحّد — يضمن /usr/bin/python3 (3.13، يملك rdkit/pydicom/PIL/arabic_reshaper/astropy/biopython) + المفاتيح. القاعدة: السكربتات العلمية/الطبية/التحرير تُشغّل عبر pyrun.sh أو /usr/bin/python3 (ليس brew 3.14).- خط Amiri-Regular مثبّت (431KB).
- نص عربي في Pillow: arabic_reshaper فقط (بلا bidi get_display — يعكسه مرتين). verified بصرياً.
دروس مؤكَّدة:
- dash/sh subshell +
source 2>/dev/nullلا يُورّث المفاتيح أحياناً → فحص "no key" كاذب. القاعدة الثابتة: تحقق المفاتيح بـbash -c 'source env.sh; ...'. (سبّب ادعائين خاطئين تصحّحا: Planet "مفقود"، LlamaParse "no key" — كلاهما شغّال 100%). - فخ
key=في سكربتات Gemini**: عند نسخ نمط Gemini call، تحقق من{key}interpolation فوراً (سبّب 400 في legal_router + imaging). - Vertex AI: يحتاج GCP service account JSON (ليس مفتاح) — غير مفعّل. توليد الصور مغطّى: GPT-image+Gemini+Grok Imagine+Fal+Replicate. Midjourney لا API عام.
- MedGemma: open-weights يحتاج GPU (سيرفرنا CPU 15GB) — Gemini Vision هو البديل العامل.