العودة إلى التحديثات
New releaseJul 28, 2026

apm v11.0.0

مدير كلمات مرور محلي التركيز وغني بالميزات

مشاركة

APM

مدير كلمات مرور محلي أفضل للجميع.

Go Rust License Docs

CI Latest Release Stars Issues

APM هو مدير كلمات مرور سريع بواجهة سطر أوامر (CLI) بتصميم zero-knowledge، مكتوب بلغتي Go وRust. يخزّن **أكثر من 25 نوعًا من الأسرار المنظمة** في خزنة واحدة مشفّرة — من كلمات المرور ورمزات TOTP إلى مفاتيح SSH والسجلات الطبية والصور والملفات الثنائية. يُوزَّع ملفان ثنائيان من هذا المستودع: `pm` للاستخدام الشخصي و`pm-team` للخزائن التنظيمية المشتركة.

لماذا APM؟

  • سريع وسهل التعلّم — لا حاجة لحفظ الأوامر أو الخيارات (flags). يطلب منك APM كل ما يحتاجه. تتوفر أيضًا خيارات سطر الأوامر (CLI flags) للمستخدمين المحترفين الذين يريدون أقصى سرعة.
  • تصميم zero-knowledge — لا يتم تخزين كلمة المرور الرئيسية أبدًا. يتم اشتقاق ثلاثة مفاتيح منفصلة بحجم 32 بايت باستخدام Argon2id. لا أحد غيرك يمكنه فك تشفير خزنتك.
  • تشفير مزدوج — اختر AES-256-GCM أو XChaCha20-Poly1305. طبقة سلامة مزدوجة عبر HMAC-SHA256 فوق مصادقة AEAD.
  • قابل للنقل — ملف خزنة واحد وملف ثنائي واحد. خذ خزنتك إلى أي مكان.
  • سحابة اختيارية — مزامنة مع Google Drive أو GitHub أو Dropbox. اختيارية بالكامل؛ لا يتطلب استخدام APM أي حساب.
  • قابل للتوسعة — نظام إضافات (plugins) قائم على manifest مع أكثر من 100 صلاحية دقيقة، وخطافات دورة حياة (lifecycle hooks)، وسوق إضافات.
  • جاهز للذكاء الاصطناعي — خادم MCP مدمج مع رمزات بنطاق محدود (scoped tokens) بحيث يمكن لـ Claude أو Cursor أو أي وكيل متوافق مع MCP الوصول إلى خزنتك بأمان.
  • جاهز للفرق — تحكم كامل بالوصول (RBAC)، وأقسام (departments)، وسير عمل موافقات، وخزائن مشتركة في pm-team.

بدء سريع

go build -o pm .
pm setup       # initialize vault and choose security profile
pm unlock      # start a session
pm add         # add a secret (interactive)
pm get github  # fuzzy search and retrieve
pm lock        # end session

إصدار الفريق:

cd team
go build -o pm-team .

أنواع الأسرار

يدعم APM أكثر من 25 نوعًا من الأسرار المنظمة مع حقول مُتحقَّق منها ومنطق عرض خاص بكل نوع:

#النوع#النوع
1كلمة المرور14سجل Docker
2TOTP15سر CI/CD
3الهوية الحكومية16ملاحظة آمنة
4السجل الطبي17رمزات الاسترداد
5معلومات السفر18شهادة
6جهة اتصال19بيانات بنكية
7Wi-Fi20مستند
8مفتاح API21ترخيص برمجي
9رمز22عقد قانوني
10مفتاح SSH23صورة
11إعداد SSH24ملف صوتي
12بيانات اعتماد السحابة25ملف فيديو
13Kubernetes

الميزات

الأمان

  • اشتقاق مفاتيح Argon2id بتصميم zero-knowledge — لا يتم تخزين كلمة المرور الرئيسية أبدًا
  • شفرات AEAD مزدوجة: AES-256-GCM وXChaCha20-Poly1305
  • فحص سلامة مزدوج الطبقات عبر HMAC-SHA256
  • أربعة ملفات أمان قابلة للضبط: standard وhardened وparanoid وlegacy
  • تقييم ثقة لكل سر (0–100) بناءً على العمر والوصول ومستوى الامتياز
  • سجل تدقيق مقاوم للعبث (tamper-evident) مخزّن خارج الخزنة

الخزنة

  • ملف خزنة واحد مشفّر — قابل للنقل على أي جهاز
  • مساحات للعزل المنطقي (مثل المجلدات)
  • بحث تقريبي (fuzzy search) مع مستعرض تفاعلي وتنقل بلوحة المفاتيح
  • عارض البيانات الوصفية: تاريخ الإنشاء، آخر وصول، عدد مرات الوصول، درجة الثقة

TOTP

  • مؤقتات عدّ تنازلي مباشرة في قائمة تفاعلية
  • ترتيب مخصص دائم
  • نسخ مباشر: pm totp github
  • تكامل مع برنامج خفي (daemon) للتعبئة التلقائية لحقن رمزات التحقق الثنائي (2FA) تلقائيًا

المزامنة السحابية

  • Google Drive (OAuth2 PKCE) وGitHub (PAT) وDropbox (OAuth2 PKCE)
  • مشفرة من طرف إلى طرف — لا يرى مقدمو الخدمات النص الصريح أبدًا
  • .apmignore لتصفية العناصر لكل مزود خدمة
  • حل التعارضات: استبدال، أو الاحتفاظ بالنسخة المحلية، أو إلغاء
  • مزامنة تلقائية في الخلفية

الجلسات

  • فتح/قفل صريح مع انتهاء صلاحية قابل للضبط ومهلة خمول (inactivity timeout)
  • جلسات مؤقتة مفوَّضة للأتمتة ووصول وكلاء الذكاء الاصطناعي

خادم MCP

  • خادم Model Context Protocol مدمج
  • رمزات صلاحيات بنطاق محدود: read وsecrets وwrite وadmin
  • ضوابط أمان للمعاملات في عمليات الكتابة: معاينة → موافقة → إيصال
  • يعمل مع Claude Desktop وCursor وWindsurf وأي عميل MCP

الإضافات

  • نظام إضافات قائم على manifest
  • أكثر من 100 صلاحية دقيقة عبر الخزنة والشبكة والنظام والتشفير وواجهة المستخدم والسحابة
  • نظام خطافات (hooks) لأحداث دورة حياة الخزنة
  • سوق إضافات عبر مزودي الخدمات السحابية

الاسترداد

العاملالأمر
OTP عبر البريد الإلكترونيpm auth email
مفتاح الاستردادpm auth recover
حصص النصاب (Shamir)pm auth quorum-setup
مفتاح مرور WebAuthnpm auth passkey register
رمزات استرداد لمرة واحدةpm auth codes generate

الاستيراد / التصدير

الصيغةاستيرادتصدير
JSONpm import jsonpm export json
CSVpm import csvpm export csv
TXTpm import txtpm export txt

محرك السياسات

name: corporate-standard
password_policy:
  min_length: 14
  require_uppercase: true
  require_numbers: true
  require_symbols: true
rotation_policy:
  rotate_every_days: 90
  notify_before_days: 14
pm policy load ./policies/

إصدار الفريق (pm-team)

  • RBAC مع أدوار متعددة
  • أقسام بنطاقات تشفير معزولة
  • سير عمل موافقات للعناصر الحساسة
  • خزائن مشتركة لمشاركة بيانات الاعتماد بين عدة مستخدمين

ملفات الأمان

الملفذاكرة Argon2التكراراتالتوازيحالة الاستخدام
standard64 MB32معظم الأجهزة
hardened256 MB54محطات العمل (ذاكرة ≥8 جيجابايت)
paranoid512 MB64الخوادم (ذاكرة ≥16 جيجابايت)
legacyPBKDF2600,0001التوافق مع الإصدارات السابقة

يكتشف APM تلقائيًا أنوية المعالج وذاكرة الوصول العشوائي (RAM) لديك ليوصي بالملف الأمثل أثناء pm setup.

حالة التطوير والتاريخ

(هذه الملاحظة من المالك) اعتبارًا من 30 مارس 2026، أعمل حاليًا على الواجهة الرسومية (GUI) لتطبيق APM. في البداية بدأ التطبيق كتطبيق بواجهة سطر أوامر (CLI). توضح المشكلة #38 كل شيء بالتفصيل. بشكل عام، أريد أن يصل APM إلى شريحة أكبر من المستخدمين. سأبقي الواجهة الرسومية منفصلة في مستودع apm-gui أو أنشئ منظمة وأنقل المستودعين إليها.

بدأت مشروع APM كمشروع شخصي بحت. بدأ في أمسية عشوائية عندما أردت إنشاء مدير كلمات مرور خاص بي. لقد سئمت من zoho password لأنني استخدمته لرمزات TOTP. كان بطيئًا بشكل مذهل لدرجة أنه لم يعمل بشكل صحيح أبدًا، وكنت أستخدم ملفات نصية صريحة (plaintext) لرمزاتي، وهو أمر غير آمن.

حتى الآن، لا أخطط للتخلي عن المشروع أو إيقافه. سيظل يعمل لفترة طويلة. أحاول تحسينه كل يوم واستخدامه يوميًا. في بعض الأحيان، قد يكون المستودع غير نشط، وهذا هو الوقت الذي أختبر فيه التطبيق وأجرب عليه.


هيكل الإصدارات

المستوىمستقر؟آمن للخزنة؟الغرض
Canaryأقدم معاينة للميزات — قد يتلف الخزائن
Alphaميزات غير مستقرة، مع الحفاظ على سلامة الخزنة
Betaميزات مختبرة بالكامل، طرح بحذر
Stableإصدارات جاهزة للإنتاج

احرص دائمًا على عمل نسخة احتياطية من خزنتك قبل تجربة إصدارات Canary. ملاحظة: بالنسبة لبعض الإصدارات، قد لا يتم طرح بعض المستويات اعتمادًا على مدى سرعة وسهولة إصدارها دون إنشاء مستويات أكثر من اللازم.


التوثيق

التوثيق الكامل على aaravmaloo.github.io/apm


المساهمة

نرحب بالمساهمات. راجع CONTRIBUTING.md للإرشادات.


الترخيص

رخصة GPL-3.0 © Aarav Maloo

الفئات