
A local password manager for everyone
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
Team edition:
cd team
go build -o pm-team .
APM supports 25 structured secret types with validated fields and type-specific display logic:
Security
standard, hardened, paranoid, legacyVault
TOTP
pm totp githubCloud Sync
.apmignore to filter entries per providerSessions
MCP Server
read, secrets, write, adminPlugins
Recovery
Import / Export
| Format |
|---|
Policy Engine
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/
Team Edition (pm-team)
APM auto-detects your CPU cores and RAM to recommend the optimal profile during pm setup.
(This note is from the owner) As of 30th March 2026, I am currently working on the GUI for APM. At first it started as a CLI application. The issue #38 explains everything in detail. Overall, I want APM to reach an even larger demographic. I will keep the GUI separate in a apm-gui repo or create a organization and move both the repos there.
I started APM as a truly personal project. It started at a random evening, when I wanted to create my own password manager. I was sick of zoho password, since I used it for TOTPs. It was incredibly slow to ever function, and I used plaintext files for my tokens, which is not secure.
As of now, I DO NOT plan to abandon/retire the project. It will remain functional for a long time. I try to make it better everyday and use it everyday. Sometimes, the repo may be inactive, and that is when I test and experiment with the application.
Always back up your vault before trying Canary releases. P.S. For some releases, some tiers may not be released depending on how fast and easy they are to ship without creating more than necessary tiers.
Full documentation at aaravmaloo.github.io/apm
Contributions are welcome. See CONTRIBUTING.md for guidelines.
GPL-3.0 License © Aarav Maloo
| # | Type | # | Type |
|---|
| 1 | Password | 14 | Docker Registry |
| 2 | TOTP | 15 | CI/CD Secret |
| 3 | Government ID | 16 | Secure Note |
| 4 | Medical Record | 17 | Recovery Codes |
| 5 | Travel Info | 18 | Certificate |
| 6 | Contact | 19 | Banking |
| 7 | Wi-Fi | 20 | Document |
| 8 | API Key | 21 | Software License |
| 9 | Token | 22 | Legal Contract |
| 10 | SSH Key | 23 | Photo |
| 11 | SSH Config | 24 | Audio |
| 12 | Cloud Credentials | 25 | Video |
| 13 | Kubernetes |
| Factor | Command |
|---|
| Email OTP | pm auth email |
| Recovery Key | pm auth recover |
| Quorum Shares (Shamir) | pm auth quorum-setup |
| WebAuthn Passkey | pm auth passkey register |
| One-time Recovery Codes | pm auth codes generate |
| Import |
|---|
| Export |
|---|
| JSON | pm import json | pm export json |
| CSV | pm import csv | pm export csv |
| TXT | pm import txt | pm export txt |
| Profile | Argon2 Memory | Iterations | Parallelism | Use Case |
|---|
standard | 64 MB | 3 | 2 | Most machines |
hardened | 256 MB | 5 | 4 | Workstations (≥8 GB RAM) |
paranoid | 512 MB | 6 | 4 | Servers (≥16 GB RAM) |
legacy | PBKDF2 | 600,000 | 1 | Backward compatibility |
| Tier | Stable? | Vault Safe? | Purpose |
|---|
| Canary | ❌ | ❌ | Earliest feature preview — can corrupt vaults |
| Alpha | ❌ | ✅ | Unstable features, vault integrity preserved |
| Beta | ✅ | ✅ | Fully tested features, careful rollout |
| Stable | ✅ | ✅ | Production-ready releases |