Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
apm — सभी के लिए एक स्थानीय पासवर्ड प्रबंधक | Kitploit
उपकरण/GitHubGitHub/aaravmaloo/apm
पासवर्ड क्रैकिंगएन्क्रिप्शन/डिक्रिप्शन उपकरणक्रिप्टोग्राफीक्लाउड सुरक्षाDevSecOpsगोपनीयताउपयोगिताएँ और फ्रेमवर्कसीक्रेट डिटेक्शनपहचान और एक्सेस प्रबंधन (IAM)प्रमाणीकरण
GitHubaaravmaloo/apm
2923711 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

apm

सभी के लिए एक स्थानीय पासवर्ड प्रबंधक

रिपॉजिटरी देखेंवेबसाइट
<div align="center">

# APM

**सभी के लिए एक बेहतर लोकल पासवर्ड मैनेजर।**

[![Go](https://img.shields.io/badge/Go-1.22+-00ADD8?style=flat&logo=go&logoColor=white)](https://golang.org)
[![License](https://img.shields.io/github/license/aaravmaloo/apm?style=flat)](LICENSE)
[![Docs](https://img.shields.io/badge/docs-aaravmaloo.github.io/apm-blue?style=flat)](https://aaravmaloo.github.io/apm)

[![CI](https://img.shields.io/github/actions/workflow/status/aaravmaloo/apm/ci.yml?branch=master&label=CI&style=flat)](https://github.com/aaravmaloo/apm/actions/workflows/ci.yml)
[![Latest Release](https://img.shields.io/github/v/release/aaravmaloo/apm?style=flat)](https://github.com/aaravmaloo/apm/releases/latest)
[![Stars](https://img.shields.io/github/stars/aaravmaloo/apm?style=flat)](https://github.com/aaravmaloo/apm/stargazers)
[![Issues](https://img.shields.io/github/issues/aaravmaloo/apm?style=flat)](https://github.com/aaravmaloo/apm/issues)

</div>
APM एक तेज़, ज़ीरो-नॉलेज CLI पासवर्ड मैनेजर है जो Go और Rust में लिखा गया है। यह **25+ संरचित सीक्रेट प्रकारों** को एक ही एन्क्रिप्टेड वॉल्ट में संग्रहीत करता है — पासवर्ड और TOTP कोड से लेकर SSH कुंजियों, मेडिकल रिकॉर्ड, फ़ोटो और बाइनरी फ़ाइलों तक। इस रेपो से दो बाइनरी शिप होती हैं: व्यक्तिगत उपयोग के लिए `pm` और साझा संगठनात्मक वॉल्ट के लिए `pm-team`।

---

### APM क्यों?

- **तेज़ और सीखने में आसान** — कमांड या फ़्लैग याद करने की ज़रूरत नहीं। APM आपसे वही पूछता है जिसकी उसे आवश्यकता होती है। अधिकतम गति चाहने वाले पावर यूज़र्स के लिए CLI फ़्लैग भी उपलब्ध हैं।
- **ज़ीरो-नॉलेज** — आपका मास्टर पासवर्ड कभी संग्रहीत नहीं किया जाता। Argon2id का उपयोग करके तीन अलग-अलग 32-बाइट कुंजियाँ व्युत्पन्न की जाती हैं। आपके अलावा कोई भी आपका वॉल्ट डिक्रिप्ट नहीं कर सकता।
- **दोहरा एन्क्रिप्शन** — AES-256-GCM या XChaCha20-Poly1305 चुनें। AEAD प्रमाणीकरण के ऊपर HMAC-SHA256 के माध्यम से दो-परत अखंडता।
- **पोर्टेबल** — एक वॉल्ट फ़ाइल, एक बाइनरी। अपना वॉल्ट कहीं भी ले जाएँ।
- **वैकल्पिक क्लाउड** — Google Drive, GitHub या Dropbox पर सिंक करें। पूरी तरह ऑप्ट-इन; APM का उपयोग करने के लिए किसी खाते की आवश्यकता नहीं।
- **AI-तैयार** — स्कोप्ड टोकन के साथ नेटिव MCP सर्वर, ताकि Claude, Cursor या कोई भी MCP-संगत एजेंट आपके वॉल्ट को सुरक्षित रूप से एक्सेस कर सके।
- **टीम-तैयार** — `pm-team` में पूर्ण RBAC, विभाग, अनुमोदन वर्कफ़्लो और साझा वॉल्ट।

---

### त्वरित शुरुआत

```sh
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
```

**टीम संस्करण:**
```sh
cd team
go build -o pm-team .
```

---

### गुप्त प्रकार

APM **25 संरचित गुप्त प्रकारों** का समर्थन करता है, जिनमें मान्य किए गए फ़ील्ड और प्रकार-विशिष्ट प्रदर्शन लॉजिक हैं:

| # | प्रकार | # | प्रकार |
|---|------|---|------|
| 1 | पासवर्ड | 14 | Docker रजिस्ट्री |
| 2 | TOTP | 15 | CI/CD गुप्त |
| 3 | सरकारी आईडी | 16 | सुरक्षित नोट |
| 4 | चिकित्सा रिकॉर्ड | 17 | रिकवरी कोड |
| 5 | यात्रा जानकारी | 18 | प्रमाणपत्र |
| 6 | संपर्क | 19 | बैंकिंग |
| 7 | Wi-Fi | 20 | दस्तावेज़ |
| 8 | API कुंजी | 21 | सॉफ़्टवेयर लाइसेंस |
| 9 | टोकन | 22 | कानूनी अनुबंध |
| 10 | SSH कुंजी | 23 | फ़ोटो |
| 11 | SSH कॉन्फ़िग | 24 | ऑडियो |
| 12 | क्लाउड क्रेडेंशियल | 25 | वीडियो |
| 13 | Kubernetes | | |

---

### विशेषताएँ

**सुरक्षा**
- ज़ीरो-नॉलेज Argon2id कुंजी व्युत्पत्ति — मास्टर पासवर्ड कभी संग्रहीत नहीं होता
- दोहरे AEAD सिफ़र: AES-256-GCM और XChaCha20-Poly1305
- HMAC-SHA256 दोहरी-परत अखंडता जाँच
- चार समायोज्य सुरक्षा प्रोफ़ाइल: `standard`, `hardened`, `paranoid`, `legacy`
- वॉचटावर (`pm watchtower`): कमज़ोर, पुनः उपयोग किए गए, पुराने, उल्लंघित (ऑप्ट-इन, k-अनाम) और उजागर पासवर्ड, समाप्त होने वाले आइटम, अनुपस्थित दो-कारक और पासकी, जोखिम भरी कुंजियाँ और सेटअप जाँच, साथ ही प्रति-आइटम विश्वास स्कोर और एक गतिविधि समीक्षा के साथ 0–100 सुरक्षा स्कोर
- गलत पासवर्ड एक बढ़ती प्रतीक्षा जोड़ते हैं (कभी स्थायी लॉक नहीं), जो CLI, ऐप और एक्सटेंशन द्वारा साझा की जाती है
- छेड़छाड़-स्पष्ट ऑडिट लॉग जो वॉल्ट के बाहर संग्रहीत होता है

**वॉल्ट**
- एकल एन्क्रिप्टेड वॉल्ट फ़ाइल — किसी भी डिवाइस पर पोर्टेबल
- तार्किक विभाजन के लिए स्पेस (फ़ोल्डरों की तरह)
- इंटरैक्टिव ब्राउज़र और कीबोर्ड नेविगेशन के साथ फ़ज़ी खोज
- मेटाडेटा इंस्पेक्टर: निर्माण तिथि, अंतिम पहुँच, पहुँच गणना, विश्वास स्कोर

**TOTP**
- इंटरैक्टिव सूची में लाइव काउंटडाउन टाइमर
- स्थायी कस्टम क्रम
- सीधी प्रतिलिपि: `pm totp github`
- 2FA कोड स्वतः इंजेक्ट करने के लिए ऑटोफ़िल डेमॉन एकीकरण

**क्लाउड सिंक**
- Google Drive (OAuth2 PKCE), GitHub (PAT), Dropbox (OAuth2 PKCE)
- एंड-टू-एंड एन्क्रिप्टेड — प्रदाता कभी सादा पाठ नहीं देखते
- प्रति प्रदाता प्रविष्टियाँ फ़िल्टर करने के लिए `.apmignore`
- विरोध समाधान: अधिलेखित करें, स्थानीय रखें, या रद्द करें
- पृष्ठभूमि ऑटो-सिंक

**सत्र**
- कॉन्फ़िगर करने योग्य समाप्ति और निष्क्रियता टाइमआउट के साथ स्पष्ट अनलॉक/लॉक
- ऑटोमेशन और AI-एजेंट पहुँच के लिए प्रत्यायोजित अल्पकालिक सत्र

**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` |
| WebAuthn पासकी | `pm auth passkey register` |
| एकबारगी रिकवरी कोड | `pm auth codes generate` |

**आयात / निर्यात**

| प्रारूप | आयात | निर्यात |
|--------|--------|--------|
| JSON | `pm import json` | `pm export json` |
| CSV | `pm import csv` | `pm export csv` |
| TXT | `pm import txt` | `pm export txt` |

**नीति इंजन**
```yaml
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
```
```sh
pm policy load ./policies/
```

**टीम संस्करण (`pm-team`)**
- कई भूमिकाओं के साथ RBAC
- पृथक एन्क्रिप्शन डोमेन वाले विभाग
- संवेदनशील प्रविष्टियों के लिए अनुमोदन वर्कफ़्लो
- बहु-उपयोगकर्ता क्रेडेंशियल साझा करने के लिए साझा वॉल्ट

---

### ब्राउज़र एक्सटेंशन

APM ब्राउज़र एक्सटेंशन लॉगिन भरता है, उन साइटों पर वन-टाइम कोड प्रदान करता है जिनसे वे संबंधित हैं, नए लॉगिन सहेजता है, और पासकी बनाता और उपयोग करता है। यह आपका मास्टर पासवर्ड या पासकी की निजी कुंजी कभी नहीं देखता। यह एक छोटे ब्रिज से बात करता है जिसे APM आपकी अपनी मशीन पर `127.0.0.1:41417` पर प्रदान करता है (किसी अन्य पोर्ट का उपयोग करने के लिए `APM_BRIDGE_PORT` सेट करें)।

**वॉल्ट तक पहुँचने के तीन तरीके**

- डेस्कटॉप ऐप के साथ: ऐप खुला रहने के दौरान ब्रिज चलता है। पेयरिंग अनुरोध और ब्राउज़र अनलॉक ऐप में दिखाई देते हैं।
- केवल CLI के साथ, लिंक किया गया (अनुशंसित): एक बार `pm extension link` चलाएँ। यह प्रत्येक Chromium ब्राउज़र (Chrome, Edge, Brave, Arc, Vivaldi, Chromium) के साथ `pm` को नेटिव मैसेजिंग होस्ट के रूप में पंजीकृत करता है, और उसके बाद जब भी ऐप बंद होता है, ब्राउज़र स्वयं `pm` शुरू कर देता है।
- केवल CLI के साथ, टर्मिनल से: `pm extension serve` चलाएँ और इसे खुला छोड़ दें। यह वही API प्रदान करता है जो डेस्कटॉप ऐप प्रदान करता है, और प्रत्येक अनलॉक, लॉक और पेयरिंग अनुरोध को होते समय दिखाता है।

```sh
pm extension link               # once per computer; confirm the code the extension shows
pm extension serve              # unlocks with your CLI session, or asks for the master password
pm extension serve --locked     # starts locked; unlock from the extension
pm extension serve --idle 5m    # locks after 5 minutes without browser activity (default 15m, 0 turns it off)
```

`pm extension serve` वॉल्ट के अनलॉक या लॉक होने पर एक पंक्ति प्रिंट करता है। इसे रोकने के लिए Ctrl+C दबाएँ; वॉल्ट कुंजी मेमोरी से हटा दी जाती है। यदि पोर्ट पहले से लिया हुआ है, तो यह बाहर निकल जाता है और आपको बताता है कि APM ऐप पहले से ही एक्सटेंशन को सर्व कर रहा हो सकता है।

**ब्राउज़र को पेयर करना**

1. एक्सटेंशन में, Connect चुनें। एक्सटेंशन 6 अक्षरों का कोड दिखाता है, उदाहरण के लिए `K7M-2QX`।
2. जाँचें कि APM वही कोड दिखाता है: डेस्कटॉप ऐप एक डायलॉग खोलता है, और `pm extension link` या `pm extension serve` टर्मिनल में पूछता है, उदाहरण के लिए `Connect Chrome on macOS? Code K7M-2QX [y/N]`।
3. इसे स्वीकृत करें। एक्सटेंशन अपना टोकन प्राप्त कर लेता है और पेयर हो जाता है।

एक अनुरोध 2 मिनट के बाद समाप्त हो जाता है, और एक समय में केवल एक ही प्रतीक्षा कर सकता है। जब `pm extension serve` किसी टर्मिनल में नहीं चल रहा होता है, तो यह अपने आप अनुरोधों को अस्वीकार कर देता है। इसके बजाय मैन्युअल रूप से पेयर करने के लिए, `pm extension token --show` चलाएँ और टोकन को एक्सटेंशन के मैन्युअल पेयरिंग फ़ील्ड में पेस्ट करें।

**कमांड**

| कमांड | यह क्या करता है |
|---------|--------------|
| `pm extension link [--browser chrome,edge] [--no-wait]` | डेस्कटॉप ऐप बंद होने पर ब्राउज़र को एक्सटेंशन के लिए `pm` शुरू करने दें |
| `pm extension unlink` | ब्राउज़रों को `pm` शुरू करने से रोकें। पेयरिंग बनी रहती है |
| `pm extension status [--port N]` | दिखाएँ कि कौन से ब्राउज़र लिंक हैं, अभी एक्सटेंशन को क्या सर्व कर रहा है, वॉल्ट की लॉक स्थिति और आइटम संख्या, और टोकन फ़िंगरप्रिंट |
| `pm extension serve [--port N] [--locked] [--idle 15m]` | Ctrl+C तक इस टर्मिनल से एक्सटेंशन को सर्व करें |
| `pm extension token [--show]` | पेयरिंग टोकन प्रिंट करें, जो `--show` दिए बिना मास्क किया हुआ होता है |
| `pm extension rotate` | पेयरिंग टोकन बदलें। हर पेयर किए गए ब्राउज़र को फिर से पेयर करना होगा। चल रहा ब्रिज अपने अगले अनुरोध पर नया टोकन उठा लेता है |
| `pm totp link <entry> <domain>` | किसी साइट से एक बार के कोड को लिंक करें ताकि एक्सटेंशन उसे वहाँ प्रस्तुत करे |
| `pm totp unlink <entry> [domain]` | एक बार के कोड के साइट लिंक हटाएँ |

`pm get` दिखाता है कि किसी लॉगिन के पास कौन से पासकी हैं और उससे लिंक किया गया एक बार का कोड कौन सा है, और `pm totp` प्रत्येक कोड की लिंक की गई साइट दिखाता है।

**ब्रिज कैसे निजी रहता है**

- यह केवल `127.0.0.1` पर सुनता है और केवल `127.0.0.1` या `localhost` को संबोधित अनुरोधों का उत्तर देता है, जो DNS रीबाइंडिंग को रोकता है।
- यह किसी भी ऐसे अनुरोध को अस्वीकार करता है जिसका `Origin` कोई वेब पेज हो। केवल `chrome-extension://`, `moz-extension://` और `safari-web-extension://` ओरिजिन को CORS हेडर मिलते हैं।
- पेयरिंग के अलावा हर कॉल के लिए पेयरिंग टोकन आवश्यक है, जो आपकी APM कॉन्फ़िग डायरेक्टरी में `bridge_token` में संग्रहीत होता है और कॉन्स्टेंट टाइम में तुलना किया जाता है।
- सूची और विवरण कॉल में कभी भी गुप्त मान शामिल नहीं होते। जब आप प्रकट या भरते हैं तो एक्सटेंशन एक समय में एक फ़ील्ड माँगता है, और APM उस एक्सेस को रिकॉर्ड करता है।
- पासकी APM के अंदर बनाई और साइन की जाती हैं। एक्सटेंशन साइट का ओरिजिन और क्लाइंट डेटा का हैश भेजता है, और साइन करने से पहले APM जाँचता है कि साइट उस रिलाइंग पार्टी का उपयोग कर सकती है।

**प्रति लॉगिन कई वेबसाइटें**

एक लॉगिन अपना मुख्य पता `website` में और कोई अन्य `urls` में रखता है, जो डेस्कटॉप ऐप में "Other websites" के रूप में दिखते हैं। एक्सटेंशन उस पेज पर लॉगिन प्रस्तुत करता है जो इनमें से किसी से भी मेल खाता है। डिफ़ॉल्ट रूप से एक मैच वही रजिस्ट्रेबल डोमेन होता है, इसलिए `accounts.google.com` और `mail.google.com` दोनों `google.com` से मेल खाते हैं।

- पॉपअप से आप जिस साइट पर हैं उसे किसी लॉगिन में जोड़ सकते हैं, वेबसाइटें जोड़ या हटा सकते हैं, और एक से अधिक वेबसाइट के साथ नया लॉगिन सहेज सकते हैं।
- यदि आप किसी ऐसी साइट पर लॉगिन भरते हैं जिसके लिए वह सहेजा नहीं गया है, तो एक्सटेंशन पहले पूछता है। इसे भरने और उस साइट को लॉगिन में जोड़ने के लिए "Fill and remember" चुनें।
- `pm totp link <entry> <domain>` एक बार के कोड के लिए वही करता है।

**वेबसाइट लोगो**

डेस्कटॉप ऐप और एक्सटेंशन प्रत्येक लॉगिन के पहले अक्षर के बजाय उसका अपना लोगो दिखाते हैं। APM लोगो स्वयं साइट से ही प्राप्त करता है, और कभी भी किसी तृतीय-पक्ष फ़ेविकॉन सेवा से नहीं माँगता, जो आपके वॉल्ट की हर साइट के बारे में जान जाती।

- क्या: लॉगिन की पहली वेबसाइट का होस्ट (एक बार का कोड उसकी लिंक की गई साइट का उपयोग करता है), लोअरकेस में और `www.` या पोर्ट के बिना। `localhost`, IP पते, `.local`, `.internal` और बिना डॉट वाले नाम कभी फ़ेच नहीं किए जाते।
- कैसे: APM `https://<host>/` लोड करता है (अधिकतम 512 KiB), पेज द्वारा घोषित सबसे अच्छा आइकन चुनता है (`apple-touch-icon`, फिर सबसे बड़ा PNG, फिर SVG), और फिर `https://<host>/favicon.ico` पर वापस चला जाता है। केवल HTTPS, अधिकतम 3 रीडायरेक्ट, प्रति साइट 6 सेकंड, इमेज अधिकतम 256 KiB, कोई कुकी नहीं। जो पते loopback, private, link-local या CGNAT रेंज में रिज़ॉल्व होते हैं, उन्हें अस्वीकार कर दिया जाता है। अनुरोध सीधे साइट पर जाते हैं, किसी सिस्टम प्रॉक्सी के माध्यम से नहीं।
- कब: केवल तब जब वॉल्ट अनलॉक हो और डेस्कटॉप ऐप या `pm extension serve` चल रहा हो, एक बार में अधिकतम 4 साइटें। विफल साइट को 3 दिनों बाद पुनः प्रयास किया जाता है; लोगो को 30 दिनों बाद रीफ़्रेश किया जाता है।
- कहाँ: आपकी APM कॉन्फ़िग डायरेक्टरी में `icons/` (macOS पर `~/Library/Application Support/apm/icons`, Linux पर `~/.config/apm/icons`, Windows पर `%AppData%\apm\icons`)। प्रत्येक फ़ाइल का नाम उसके होस्ट के SHA-256 से रखा जाता है, और अधिकतम 2000 रखी जाती हैं। कैश एन्क्रिप्टेड नहीं है: किसी इमेज के बगल में मौजूद प्रत्येक `.json` फ़ाइल उसके होस्ट का नाम बताती है, इसलिए जो भी आपकी कॉन्फ़िग डायरेक्टरी पढ़ सकता है, वह देख सकता है कि किन साइटों के लोगो हैं।
- साइट को क्या पता चलता है: आपका IP पता और यह कि APM ने उसका आइकन माँगा (यूज़र एजेंट `APM/<version> (+icon)` है)। आपके खाते के बारे में कुछ नहीं।
- इसे बंद करना: डेस्कटॉप ऐप में, Settings, Appearance, "Show website icons" बंद करें (वॉल्ट सेटिंग `siteIcons`, जिसका `pm extension serve` भी पालन करता है), और कैश हटाने के लिए "Clear icon cache" चुनें। किसी प्रोसेस से हर फ़ेच रोकने के लिए `APM_ICONS_OFFLINE=1` सेट करें, उदाहरण के लिए टेस्ट या CI में। कैश किए गए लोगो तब तक दिखते रहेंगे जब तक आप उन्हें साफ़ नहीं करते।

---

### सुरक्षा प्रोफ़ाइल

| प्रोफ़ाइल | Argon2 मेमोरी | इटरेशन | पैरेललिज़्म | उपयोग का मामला |
|---------|--------------|------------|-------------|----------|
| `standard` | 64 MB | 3 | 2 | अधिकांश मशीनें |
| `hardened` | 256 MB | 5 | 4 | वर्कस्टेशन (≥8 GB RAM) |
| `paranoid` | 512 MB | 6 | 4 | सर्वर (≥16 GB RAM) |
| `legacy` | PBKDF2 | 600,000 | 1 | पश्चगामी अनुकूलता |

APM `pm setup` के दौरान इष्टतम प्रोफ़ाइल की सिफ़ारिश करने के लिए आपके CPU कोर और RAM का स्वतः पता लगाता है।


### विकास स्थिति और इतिहास
(यह नोट मालिक की ओर से है)
30 मार्च 2026 तक, मैं वर्तमान में APM के लिए GUI पर काम कर रहा हूँ। शुरुआत में यह एक CLI एप्लिकेशन के रूप में शुरू हुआ था। issue #38 सब कुछ विस्तार से समझाता है। कुल मिलाकर, मैं चाहता हूँ कि APM 
और भी बड़े जनसांख्यिकीय वर्ग तक पहुँचे। मैं GUI को एक अलग apm-gui रेपो में रखूँगा या एक संगठन बनाकर दोनों रेपो वहाँ स्थानांतरित कर दूँगा। 

मैंने APM को एक सच्चे व्यक्तिगत प्रोजेक्ट के रूप में शुरू किया था। यह एक साधारण शाम को शुरू हुआ, जब मैं अपना खुद का पासवर्ड मैनेजर बनाना चाहता था। मैं zoho password से थक चुका था, क्योंकि मैं इसे TOTP के लिए उपयोग करता था। इसका काम करना अविश्वसनीय रूप से धीमा था, और मैं अपने टोकन के लिए plaintext फ़ाइलों का उपयोग करता था, जो सुरक्षित नहीं है। 

अभी तक, मेरा इस प्रोजेक्ट को छोड़ने/सेवानिवृत्त करने का इरादा नहीं है। यह लंबे समय तक कार्यशील रहेगा। मैं इसे हर दिन बेहतर बनाने की कोशिश करता हूँ और हर दिन इसका उपयोग करता हूँ। कभी-कभी, रेपो निष्क्रिय हो सकता है, और तब होता है जब मैं एप्लिकेशन के साथ परीक्षण और प्रयोग करता हूँ।

---

### रिलीज़ संरचना

| टियर | स्थिर? | वॉल्ट सुरक्षित? | उद्देश्य |
|------|---------|-------------|---------|
| Canary | ❌ | ❌ | सबसे पहला फ़ीचर पूर्वावलोकन — वॉल्ट को खराब कर सकता है |
| Alpha | ❌ | ✅ | अस्थिर फ़ीचर, वॉल्ट अखंडता सुरक्षित |
| Beta | ✅ | ✅ | पूरी तरह परीक्षित फ़ीचर, सावधानीपूर्वक रोलआउट |
| Stable | ✅ | ✅ | प्रोडक्शन-रेडी रिलीज़ |

> Canary रिलीज़ आज़माने से पहले हमेशा अपने वॉल्ट का बैकअप लें।
P.S. कुछ रिलीज़ के लिए, कुछ टियर जारी नहीं किए जा सकते हैं, यह इस पर निर्भर करता है कि आवश्यकता से अधिक टियर बनाए बिना उन्हें कितनी तेज़ी और आसानी से शिप किया जा सकता है।
---

# AI का उपयोग
APM को विकसित करना और पूरे सूट को बनाए रखना एक साथ करना आसान नहीं है। इसलिए, हम **25%** AI-जनित कोड का उपयोग करते हैं (मुख्य रूप से UI परिवर्तन और गैर-महत्वपूर्ण एवं गैर-क्रिप्टोग्राफिक परिवर्तन)। हालाँकि, APM में, AI का उपयोग करने के लिए हमारी कुछ नीतियाँ हैं; जो नीचे सूचीबद्ध हैं।

---

[Read more](https://github.com/aaravmaloo/apm)
टूल डाउनलोड करें