kunnash
Health Uyari
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 8 GitHub stars
Code Basarisiz
- fs.rmSync — Destructive file system operation in build/icon.js
- fs module — File system access in build/icon.js
- rm -rf — Recursive force deletion command in build/release.sh
- fs module — File system access in lib/agent/index.js
- exec() — Shell command execution in lib/agent/loop.js
- fs module — File system access in lib/agent/office.js
- fs module — File system access in lib/agent/permissions.js
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
مكتب عمل شخصي على الماك: يشتغل على مجلد تختاره أنت، وينفّذ مهامك المتكررة بمهارات تكتبها بنفسك، عبر النموذج الذي تربطه · A personal work desk for macOS: it works inside a folder you choose and runs your repeat tasks through skills you write yourself. Arabic & English. A صدقة — free and open source.
كُنّاش
دفتر العالِم الذي يجمع فيه ما ينفعه
مكتب عمل شخصي على الماك: يشتغل على مجلد تختاره أنت، وينفّذ مهامك المتكررة بمهارات تكتبها بنفسك، عبر النموذج الذي تربطه.
التحميل
⬇︎ حمّل كُنّاش لـmacOS — الإصدار 0.3.1 · يحتاج macOS 12 فأحدث
افتح ملف .dmg واسحب كُنّاش إلى «التطبيقات». التطبيق موقَّع وموثَّق لدى آبل، فيفتح بنقرة واحدة بلا تحذيرات.
نسختان: واحدة لمعالجات آبل (M1 فأحدث) وأخرى لمعالجات إنتل. اختر ما يناسب جهازك من صفحة الإصدار — تعرفه من « عن هذا الماك».
وأول تشغيل يمشي بك في أربع خطوات: اسمك، فمجلد العمل، فربط النموذج، فحزمة مهارات جاهزة تبدأ بها بدل صفحة فارغة.
ما يفعله
مجلد عمل تختاره، وربط OpenRouter بضغطة أو أي خدمة OpenAI-compatible، وحلقة أدوات كاملة: النموذج يقرأ ملفاتك (نصوص وExcel وWord) ويبحث فيها ويكتب ويحرّر ويخرج مستندات — كل كتابة بإذنك، وكل حذف إلى مهملات استرجاعية، ومهاراتك وعملاؤك يشتغلون فعلًا — بل تطلب منه إنشاء مهارة جديدة بالكلام فينشئها.
مساحات عمل متعددة: لكل مجلد مهاراته وأذوناته وتفضيلاته وجلساته. تبدّل بينها بنقر يمين على زر المجلد في الشريط الجانبي.
بالعربية أو بالإنجليزية. واجهةٌ بلغتين تنقلب اتجاهًا كاملًا، تبدّلها من الإعدادات. ويبقى ردّ النموذج بلغة سؤالك لا بلغة الأزرار — من كتب بالعربية أُجيب بالعربية ولو كانت واجهته إنجليزية.
والنصّ المختلط يُعرض صحيحًا: جملة عربية فيها مصطلحات إنجليزية تبقى يمينية كاملة، وتُرسم الكلمات اللاتينية في مواضعها بلا أن تقلب الجملة.
التشغيل من المصدر
npm install
npm start
npm test # ١٨٢ اختبارًا: حارس المسار والمكتبة والأدوات والأذونات واتجاه النصّ
يحتاج Node.js وmacOS.
بناء نسخة موقّعة
build/release.sh
يبني الحزمة ويوقّعها بـDeveloper ID ويوثّقها لدى آبل ويصنع DMG — بأدوات macOS وحدها، بلا تبعية بناء واحدة. يحتاج شهادة Developer ID Application وملف اعتماد للتوثيق يُنشأ مرة واحدة:
xcrun notarytool store-credentials "kunnash" --apple-id "بريدك" --team-id "معرّف فريقك"
وbuild/release.sh app يبني ويوقّع بلا توثيق — للتجربة السريعة.
الاتصال بالنموذج
كُنّاش لا يحمل قائمة مزوّدين في كوده. يعرف ثلاثة حقول: عنوان الخدمة، واسم النموذج، والمفتاح — فأي خدمة تتكلم لغة OpenAI تعمل. وفي الإعدادات أزرار تعبئة جاهزة، والخيار لك:
| الخدمة | كيف تربطها |
|---|---|
| OpenRouter | زر «الربط بضغطة» يفتح المتصفح ويرجع بالمفتاح — نماذج كثيرة بحساب واحد |
| Anthropic — Claude | مفتاح API من console.anthropic.com (غير اشتراك Claude الشهري) |
| OpenAI — GPT | مفتاح API من platform.openai.com (غير اشتراك ChatGPT الشهري) |
| Ollama | نموذج على جهازك — بلا مفتاح ولا إنترنت |
| مخصص | أي عنوان OpenAI-compatible من «خيارات متقدمة» |
لماذا لا تعمل اشتراكات Claude وChatGPT الشهرية هنا؟ لأن الشركتين لا تسمحان باستخدامها خارج تطبيقاتهما الرسمية — واحترام قوانينهما شرطنا. مفاتيح API طريقهما الرسمي للتطبيقات الخارجية.
المفتاح يُحفظ مشفَّرًا على جهازك (safeStorage/Keychain)، ولا يُرسل إلا للعنوان الذي ربطته. ومع OpenRouter يظهر رصيدك واستهلاكك، وقائمة النماذج تُفلتر على ما يدعم الأدوات، وطلباتك لا تُمرَّر افتراضيًا لمزوّد يتدرّب على البيانات (خيار يمكنك تغييره).
أين تُحفظ الأشياء
| ماذا | أين |
|---|---|
| المفتاح وآخر مجلد عمل | مجلد بيانات التطبيق على جهازك |
| الجلسات | <مجلد عملك>/.kunnash/sessions.json |
| المهارات والعملاء | <مجلد عملك>/.kunnash/{skills,agents} |
| الأذونات الدائمة والتفضيلات | <مجلد عملك>/.kunnash/{permissions,preferences}.json — تُرى وتُسحب من الإعدادات |
المفتاح يخص الجهاز لا المجلد: نقل مجلد عملك أو مشاركته لا ينقل مفتاحك معه.
ومن كانت مهاراته في .claude/ تُقرأ من هناك كما هي بلا هجرة — ولا يكتب كُنّاش في ذلك المجلد أبدًا.
لا خادم لهذا المشروع، ولا حساب، ولا تتبّع. وما تكتبه في المحادثة يغادر جهازك إلى الخدمة التي ربطتها — هذا ما يفعله أي تطبيق يستعمل نموذجًا، ونقوله صراحةً.
البنية
main.js العملية الرئيسية — نقلٌ وواجهةُ نظام فقط
preload.js الجسر الوحيد بين الواجهة والنظام
lib/workspace.js مساحة العمل وإعدادات المستخدم
lib/paths.js حارس المسار — الموضع الوحيد الذي يقرر ما هو داخل مساحة العمل
lib/connection.js الاتصال بالنموذج — بث SSE لواجهة OpenAI-compatible
lib/core.js النواة: الجلسات والدردشة — لا تعرف Electron
lib/library.js المهارات والعملاء كملفات
lib/attachments.js المرفقات → أجزاء رسالة
lib/agent/ حلقة الأدوات: loop (الجولات والحدود) · tools (١٨ أداة) ·
permissions (قواعد ذات نطاق) · skills (المحفّز الحتمي) ·
registry (تحقق متساهل وإصلاح JSON) · transcript (ذاكرة وتقليم) ·
ziplite+office (قراءة xlsx/docx وكتابتها بلا تبعيات)
renderer/ الواجهة: i18n (لغتان) · bidi (اتجاه النصّ المختلط) ·
ومعها vendor/ لما تحتاجه من مكتبات
test/ اختبارات node:test — بلا إطار ولا تبعية
build/ الإصدار: release.sh · entitlements.plist · مصدر الأيقونة HTML
بلا تبعيات تشغيل. npm install يجلب Electron للتطوير فقط. مكتبة عرض الماركداون (marked 12.0.2، MIT) منسوخة في renderer/vendor/ فتبقى الواجهة مكتفية بنفسها ولا تمدّ يدها إلى node_modules. لتحديثها: انسخ marked.min.js من إصدار أحدث وحدّث الرقم هنا.
الرخصة
MIT · خطوط IBM Plex Sans Arabic تحت SIL OFL 1.1 · marked تحت MIT.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi