Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

OpenCode Mobile

تطبيق موبايل (Android / iOS) للذكاء الاصطناعي — محادثة فورية على هاتفك.

الوضع الموصى به: محادثة مباشرة بالـ AI — بدون أي سيرفر

افتح التطبيق → اختر المزوّد (Claude أو GPT) → الصق مفتاح الـ API مرة واحدة → وتبدأ المحادثة فورًا. لا استضافة ولا سيرفر ولا روابط ولا إعدادات.

  • بثّ حي للرد (streaming).
  • زر إيقاف أثناء الرد □.
  • مفتاحك يُحفظ مُشفّرًا على هذا الهاتف فقط (expo-secure-store).
  • للحصول على مفتاح: platform.anthropic.com أو platform.openai.com.

الوضع الثاني: اتصال بخادم OpenCode (اختياري)

التطبيق يمكنه أيضًا الاتصال بخادم OpenCode يعمل على كمبيوتر أو هاتف آخر في شبكتك — لعرض الجلسات والأدوات والأذونات. عند فتح التطبيق يبحث تلقائيًا عن الخادم (نفس الهاتف ثم الشبكة)، وإن لم يجده تبقى شاشة الإعداد اليدوي خيارًا احتياطيًا.

تأكد أن Node.js مثبّت ثم شغّل الخادم:

opencode serve --port 4096 --mdns
  • --mdns يجعل الخادم يُعلن عن نفسه باسم opencode.local فيجده التطبيق تلقائيًا.

التشغيل الكامل على الهاتف (Termux)

بدون كمبيوتر — الخادم والتطبيق يعملان على هاتفك نفسه عبر Termux (يتطلب هواتف aarch64 وتثبيت Termux من F-Droid وليس من متجر Play).

  1. تثبيت Termux من F-Droid ثم فتحه وتحديثه:
    pkg update -y && pkg upgrade -y
  2. تفعيل الوصول للتخزين (اختياري، للمشاريع خارج بيئة Termux):
    termux-setup-storage
  3. نسخ التطبيق وتجهيز كل شيء (يثبّت Node.js و OpenCode natively لـ Termux):
    git clone https://github.com/911houssem/opencode-mobile.git
    cd opencode-mobile
    bash termux/install.sh
  4. إعداد مفاتيح مزوّد الذكاء الاصطناعي — أنشئ ملف ~/.config/opencode/opencode.json أو عرّف متغيرات بيئة مثل:
    export ANTHROPIC_API_KEY=sk-ant-...
    # أو OPENAI_API_KEY / GEMINI_API_KEY ...
  5. افتح نافذة Termux جديدة (سحب من اليسار → New session) للخادم:
    cd ~/opencode-mobile && bash termux/server.sh
    سيبدأ الخادم على http://localhost:4096.
  6. افتح نافذة Termux جديدة للتطبيق:
    cd ~/opencode-mobile && bash termux/app.sh
  7. ثبّت تطبيق Expo Go من المتجر، افتحه، واكتب:
    exp://127.0.0.1:8081
    
  8. عند فتح التطبيق سيبحث عن الخادم تلقائيًا (نفس الهاتف أو شبكة LAN) ويقترب منك بلا أي إدخال. إن لم يجد شيئًا اضغط زر "Search for server (automatic)" أو أدخل العنوان يدويًا.

لإبقاء العمليتين تعملان عند إغلاق الشاشة استخدم tmux/screen أو termux-wake-lock عند الحاجة.

تشغيل التطبيق أثناء التطوير

من مجلد opencode-mobile:

npm install
npx expo start

افتح كاميرا الهاتف وامسح رمز QR الظاهر في الطرفية (يتطلب تطبيق Expo Go). أو اكتب:

npx expo start --android   # على جهاز محاكي Android
npx expo start --ios       # على Mac مع محاكي iOS

الإعداد داخل التطبيق

  • وضع مباشر: اختر المزوّد، اختر الموديل، الصق المفتاح → Start chatting.
  • وضع سيرفر: ابحث تلقائيًا (زر "Search for server") أو أدخل العنوان يدويًا.

في وضع السيرفر، بعد الاتصال يمكنك:

  • عرض الجلسات وإنشاء جلسة جديدة (زر +).
  • فتح جلسة ومحادثة مباشرة مع بثّ حي للرد.
  • التوقف أثناء التشغيل (زر الإيقاف □).
  • تبديل الوكيل/الموديل (زر ⚙ أعلى المحادثة).
  • الموافقة على طلبات الأذونات (Allow / Once / Reject).

التحقق من الكود

npx tsc --noEmit

هيكل المشروع

src/
  api/        أنواع ومكوّن عميل REST + اتصال SSE (الأحداث الحية)
  store/      حالة التطبيق (الإعدادات، الجلسات)
  screens/    شاشات الإعداد، قائمة الجلسات، المحادثة
  theme.ts    الألوان
termux/       سكربتات التشغيل المحلي على الهاتف (تثبيت + خادم + تطبيق)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages