عن المشروع

# QuotaBar QuotaBar أداة خفيفة تعمل في شريط القوائم فقط لنظام macOS 14+، وتتتبع الحصص المتبقية من الاشتراكات في عدة خدمات للذكاء الاصطناعي للبرمجة والمحادثة. توفر مؤشرًا مرئيًا لحدود الاستخدام لـ **Cursor** و**ChatGPT** (Plus/Pro) و**GLM** (z.ai/BigModel) و**Grok** (SuperGrok للمستهلكين) و**OpenCode Go**. يعمل التطبيق بشكل غير ملحوظ كحبّة داكنة في شريط الحالة، ويعرض نسبة مئوية ومخططًا شريطيًا صغيرًا، مع نافذة منبثقة مدمجة لإدارة الحسابات بالتفصيل. ## الميزات الرئيسية - **دعم متعدد الخدمات**: يراقب استخدام الحصص لخمس منصات ذكاء اصطناعي مختلفة باستخدام نقاط نهاية الاستخدام غير الرسمية لكن القياسية الخاصة بها. - **التكامل مع شريط القوائم**: يعرض أيقونة واحدة في شريط حالة macOS مع مؤشر نسبة مئوية. يتغير اللون إلى البرتقالي عندما تنخفض الحصة المتبقية إلى أقل من 25%. - **نافذة منبثقة مدمجة**: تعرض نافذة منبثقة بحجم ثابت (320x360) بطاقات مفصلة لكل مزود أو حساب. تدعم التمرير لعدة حسابات وتتضمن الوصول إلى الإعدادات. - **إدارة متعددة الحسابات**: تدعم عدة حسابات لـ ChatGPT وOpenCode Go. يمكن للمستخدمين التبديل بين الحسابات النشطة مباشرة من النافذة المنبثقة، مع عكس شريط الحالة لاستخدام الحساب المحدد. - **تخزين محلي لبيانات الاعتماد**: تُخزَّن الأسرار بأمان في سلسلة مفاتيح macOS. تُحفظ التفضيلات غير السرية في `~/.config/quotabar/config.json` بأذونات مقيّدة (الوضع 0600). - **لا قياس عن بُعد**: لا يرسل التطبيق أي بيانات استخدام أو قياس عن بُعد إلى خوادم خارجية beyond جلب معلومات الحصص اللازمة من واجهات برمجة التطبيقات الخاصة بالمزودين المعنيين. - **التركيز على الخصوصية**: مصمم كـ `LSUIElement` غير معزول للسماح بقراءة الملفات المحلية (مثل قاعدة بيانات حالة Cursor) والتعامل مع ملفات تعريف الارتباط للمتصفح دون أذونات معقدة. ## المزودون المدعومون والأساليب ### Cursor - يقرأ رموز المصادقة من قاعدة بيانات تطبيق Cursor المحلية (`state.vscdb`) أو يقبل ملفات تعريف ارتباط الجلسة الملصقة. - يجلب بيانات الاستخدام من `cursor.com/api/usage-summary`. - يميز بين مجموعات "Cursor Models" و"Other Models". ### ChatGPT (Plus / Pro) - يدعم تعدد الحسابات عبر Codex CLI (`codex login`) أو إدخال ملف تعريف الارتباط/JSON يدويًا. - يستخدم نقطة النهاية `wham/usage` لجلب حدود الجلسة والأسبوع والشهر. - يحدّث الرموز المنتهية تلقائيًا باستخدام واجهة OAuth العامة إذا كان Codex CLI متاحًا. ### GLM (z.ai / BigModel) - يقبل مفاتيح API عبر الإعدادات أو متغيرات البيئة. - يدعم المنطقتين العالمية (`api.z.ai`) والصينية (`open.bigmodel.cn`). - يجلب حدود الحصص من واجهة المراقبة. ### Grok (SuperGrok للمستهلكين) - يقرأ المصادقة من `~/.grok/auth.json` المكتوب بواسطة Grok CLI أو يقبل رموز OAuth الملصقة. - يجلب بيانات الفوترة والاستخدام من واجهة وكيل Grok CLI. - يستهدف تحديدًا خطط SuperGrok للمستهلكين، وليس واجهات إدارة الفرق. ### OpenCode Go - دعم متعدد الحسابات عبر مفاتيح API المخزنة في سلسلة المفاتيح. - يجلب الاستخدام من `opencode.ai/zen/go/v1/usage`. - يحوّل نسب "المستخدم" إلى "المتبقي" للعرض. ## التثبيت طريقة التثبيت الموصى بها هي عبر Homebrew: ```bash brew tap ttaatoo/quotabar https://github.com/ttaatoo/quotabar brew install --cask ttaatoo/quotabar/quotabar ``` إذا منع Gatekeeper التطبيق الموقّع مؤقتًا، قد تحتاج إلى تشغيل: ```bash xattr -dr com.apple.quarantine /Applications/QuotaBar.app ``` ثم افتح System Settings > Privacy & Security وانقر على **Open Anyway**. ## البناء من المصدر المتطلبات: macOS 14+، Xcode 15.4+ (Swift 5.9+). ```bash git clone https://github.com/ttaatoo/quotabar.git cd quotabar open QuotaBar.xcodeproj ``` شغّل المشروع في Xcode أو ابنِ عبر سطر الأوامر: ```bash xcodebuild -project QuotaBar.xcodeproj -scheme QuotaBar -configuration Release \ MARKETING_VERSION=0.0.13 CURRENT_PROJECT_VERSION=0.0.13 \ CODE_SIGN_IDENTITY="-" CODE_SIGNING_ALLOWED=YES CODE_SIGNING_REQUIRED=NO build ``` ## إخلاء المسؤولية QuotaBar أداة مستقلة وغير رسمية. تتفاعل مع نقاط نهاية استخدام خاصة قد تتغير دون إشعار. وهي غير تابعة لـ Cursor أو OpenAI أو z.ai أو BigModel أو xAI أو OpenCode. المستخدمون مسؤولون عن إدارة بيانات اعتمادهم وفهم مخاطر استخدام واجهات برمجة التطبيقات غير الرسمية.