Torna agli aggiornamenti
New releaseAug 5, 2026

apm v11.2.0

Un gestore di password locale per tutti

Condividi

APM

Un gestore di password locale migliore per tutti.

Go License Docs

CI Latest Release Stars Issues

APM è un gestore di password CLI veloce e zero-knowledge scritto in Go e Rust. Memorizza **oltre 25 tipi di segreti strutturati** in un unico vault cifrato — da password e codici TOTP a chiavi SSH, cartelle cliniche, foto e file binari. Da questo repository vengono distribuiti due binari: `pm` per uso personale e `pm-team` per vault organizzativi condivisi.

Perché APM?

  • Veloce e facile da imparare — nessun comando o flag da memorizzare. APM ti chiede tutto ciò di cui ha bisogno. Sono disponibili anche flag CLI per gli utenti esperti che desiderano la massima velocità.
  • Zero-knowledge — la tua master password non viene mai memorizzata. Tre chiavi separate da 32 byte vengono derivate usando Argon2id. Nessuno tranne te può decifrare il tuo vault.
  • Doppia cifratura — scegli AES-256-GCM o XChaCha20-Poly1305. Integrità a doppio strato tramite HMAC-SHA256 sopra l'autenticazione AEAD.
  • Portatile — un file vault, un binario. Porta il tuo vault ovunque.
  • Cloud opzionale — sincronizza con Google Drive, GitHub o Dropbox. Completamente opt-in; nessun account richiesto per usare APM.
  • Pronto per l'IA — server MCP nativo con token con ambito limitato, così Claude, Cursor o qualsiasi agente compatibile con MCP può accedere al tuo vault in sicurezza.
  • Pronto per il team — RBAC completo, reparti, flussi di approvazione e vault condivisi in pm-team.

Avvio rapido

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

Edizione Team:

cd team
go build -o pm-team .

Tipi di segreti

APM supporta 25 tipi di segreti strutturati con campi validati e logica di visualizzazione specifica per tipo:

#Tipo#Tipo
1Password14Docker Registry
2TOTP15CI/CD Secret
3Government ID16Secure Note
4Medical Record17Recovery Codes
5Travel Info18Certificate
6Contact19Banking
7Wi-Fi20Document
8API Key21Software License
9Token22Legal Contract
10SSH Key23Photo
11SSH Config24Audio
12Cloud Credentials25Video
13Kubernetes

Funzionalità

Sicurezza

  • Derivazione delle chiavi Argon2id zero-knowledge — la master password non viene mai memorizzata
  • Cifrari AEAD doppi: AES-256-GCM e XChaCha20-Poly1305
  • Controllo di integrità a doppio strato HMAC-SHA256
  • Quattro profili di sicurezza configurabili: standard, hardened, paranoid, legacy
  • Punteggio di affidabilità per segreto (0–100) basato su età, accesso e livello di privilegio
  • Log di audit a prova di manomissione memorizzato all'esterno del vault

Vault

  • Un unico file vault cifrato — portatile su qualsiasi dispositivo
  • Spaces per compartimentazione logica (come cartelle)
  • Ricerca fuzzy con browser interattivo e navigazione da tastiera
  • Ispettore dei metadati: data di creazione, ultimo accesso, conteggio accessi, punteggio di affidabilità

TOTP

  • Timer di countdown in tempo reale in una lista interattiva
  • Ordinamento personalizzato persistente
  • Copia diretta: pm totp github
  • Integrazione con daemon di autofill per l'iniezione automatica dei codici 2FA

Sincronizzazione Cloud

  • Google Drive (OAuth2 PKCE), GitHub (PAT), Dropbox (OAuth2 PKCE)
  • Cifratura end-to-end — i provider non vedono mai il testo in chiaro
  • .apmignore per filtrare le voci per provider
  • Risoluzione dei conflitti: sovrascrivi, mantieni locale o annulla
  • Sincronizzazione automatica in background

Sessioni

  • Sblocco/blocco esplicito con scadenza configurabile e timeout di inattività
  • Sessioni effimere delegate per automazione e accesso da agenti IA

Server MCP

  • Server Model Context Protocol nativo
  • Token di autorizzazione con ambito limitato: read, secrets, write, admin
  • Guardrail transazionali per operazioni di scrittura: anteprima → approvazione → ricevuta
  • Funziona con Claude Desktop, Cursor, Windsurf e qualsiasi client MCP

Recupero

FattoreComando
Email OTPpm auth email
Recovery Keypm auth recover
Quorum Shares (Shamir)pm auth quorum-setup
WebAuthn Passkeypm auth passkey register
One-time Recovery Codespm auth codes generate

Importazione / Esportazione

FormatoImportazioneEsportazione
JSONpm import jsonpm export json
CSVpm import csvpm export csv
TXTpm import txtpm export txt

Motore di Policy

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/

Edizione Team (pm-team)

  • RBAC con ruoli multipli
  • Reparti con domini di cifratura isolati
  • Flussi di approvazione per voci sensibili
  • Vault condivisi per la condivisione di credenziali multiutente

Profili di sicurezza

ProfiloMemoria Argon2IterazioniParallelismoCaso d'uso
standard64 MB32La maggior parte delle macchine
hardened256 MB54Workstation (≥8 GB RAM)
paranoid512 MB64Server (≥16 GB RAM)
legacyPBKDF2600,0001Compatibilità con le versioni precedenti

APM rileva automaticamente i core della CPU e la RAM per consigliare il profilo ottimale durante pm setup.

Stato dello sviluppo e storia

(Questa nota è del proprietario) Dal 30 marzo 2026, sto lavorando alla GUI di APM. All'inizio è nato come applicazione CLI. La issue #38 spiega tutto in dettaglio. Nel complesso, voglio che APM raggiunga una fascia demografica ancora più ampia. Manterrò la GUI separata in un repo apm-gui oppure creerò un'organizzazione e sposterò lì entrambi i repo.

Ho iniziato APM come un progetto veramente personale. È iniziato in una sera qualunque, quando volevo creare il mio gestore di password. Ero stanco di zoho password, dato che lo usavo per i TOTP. Era incredibilmente lento a funzionare, e usavo file di testo in chiaro per i miei token, il che non è sicuro.

Al momento, NON ho intenzione di abbandonare/ritirare il progetto. Rimarrà funzionante a lungo. Cerco di migliorarlo ogni giorno e lo uso ogni giorno. A volte, il repo può essere inattivo, ed è in quei momenti che testo e sperimento con l'applicazione.


Struttura delle release

Categorie