العودة إلى التحديثات
New releaseAug 5, 2026

apm v11.2.0

مدير كلمات مرور محلي للجميع

مشاركة

APM

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

Go License Docs

CI Latest Release Stars Issues

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

لماذا APM؟

  • سريع وسهل التعلّم — لا حاجة لحفظ الأوامر أو الأعلام. يطلب منك APM ما يحتاجه. تتوفر أيضًا أعلام سطر الأوامر للمستخدمين المتقدمين الذين يريدون أقصى سرعة.
  • معرفة صفرية — لا يتم تخزين كلمة المرور الرئيسية أبدًا. تُشتق ثلاثة مفاتيح منفصلة بحجم 32 بايت باستخدام Argon2id. لا أحد غيرك يستطيع فك تشفير خزنتك.
  • تشفير مزدوج — اختر AES-256-GCM أو XChaCha20-Poly1305. سلامة مزدوجة الطبقة عبر HMAC-SHA256 فوق مصادقة AEAD.
  • محمول — ملف خزنة واحد، ملف تنفيذي واحد. خذ خزنتك إلى أي مكان.
  • سحابة اختيارية — زامن مع Google Drive أو GitHub أو Dropbox. اختياري بالكامل؛ لا حاجة لحساب لاستخدام APM.
  • جاهز للذكاء الاصطناعي — خادم MCP أصلي مع رموز محدودة النطاق حتى يتمكن Claude أو Cursor أو أي وكيل متوافق مع MCP من الوصول إلى خزنتك بأمان.
  • جاهز للفرق — تحكم كامل بالوصول القائم على الأدوار، وأقسام، وسير عمل الموافقات، وخزائن مشتركة في 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 بمعرفة صفرية — لا يتم تخزين كلمة المرور الرئيسية أبدًا
  • شفرات AEAD مزدوجة: AES-256-GCM وXChaCha20-Poly1305
  • فحص سلامة مزدوج الطبقة بـ HMAC-SHA256
  • أربعة ملفات أمان قابلة للضبط: standard، hardened، paranoid، legacy
  • تقييم ثقة لكل سر (0–100) بناءً على العمر والوصول ومستوى الصلاحيات
  • سجل تدقيق مقاوم للتلاعب مخزّن خارج الخزنة

الخزنة

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

TOTP

  • مؤقتات عد تنازلي مباشرة في قائمة تفاعلية
  • ترتيب مخصص دائم
  • نسخ مباشر: pm totp github
  • تكامل مع خادم التعبئة التلقائية لحقن رموز التحقق بخطوتين تلقائيًا

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

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

الجلسات

  • فتح/إغلاق صريح مع انتهاء صلاحية قابل للضبط ومهلة عدم النشاط
  • جلسات مؤقتة مفوّضة للأتمتة ووصول وكلاء الذكاء الاصطناعي

خادم MCP

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

الاسترداد

العاملالأمر
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)

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

ملفات الأمان

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

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

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

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

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

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


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

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

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


التوثيق

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


المساهمة

الفئات