Назад к обновлениям
New releaseAug 5, 2026

apm v11.2.0

Локальный менеджер паролей для всех

Поделиться

APM

Лучший локальный менеджер паролей для всех.

Go License Docs

CI Latest Release Stars Issues

APM — это быстрый CLI-менеджер паролей с нулевым разглашением, написанный на Go и Rust. Он хранит **более 25 структурированных типов секретов** в одном зашифрованном хранилище — от паролей и TOTP-кодов до SSH-ключей, медицинских записей, фотографий и бинарных файлов. Из этого репозитория собираются два бинарника: `pm` для личного использования и `pm-team` для общих организационных хранилищ.

Почему APM?

  • Быстрый и простой в освоении — не нужно запоминать команды или флаги. APM сам запросит всё необходимое. Для опытных пользователей, которым важна максимальная скорость, также доступны флаги CLI.
  • Нулевое разглашение — ваш мастер-пароль никогда не сохраняется. Три отдельных 32-байтовых ключа выводятся с помощью Argon2id. Никто, кроме вас, не может расшифровать ваше хранилище.
  • Двойное шифрование — выберите AES-256-GCM или XChaCha20-Poly1305. Двухуровневая целостность через HMAC-SHA256 поверх аутентификации AEAD.
  • Портативность — один файл хранилища, один бинарник. Берите хранилище с собой куда угодно.
  • Опциональное облако — синхронизация с Google Drive, GitHub или Dropbox. Полностью по желанию; для использования APM аккаунт не требуется.
  • Готовность к ИИ — встроенный MCP-сервер с ограниченными по области действия токенами, чтобы Claude, Cursor или любой совместимый с MCP агент мог безопасно обращаться к вашему хранилищу.
  • Готовность к командной работе — полноценный RBAC, отделы, рабочие процессы согласования и общие хранилища в 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Пароль14Docker Registry
2TOTP15CI/CD Secret
3Государственный ID16Защищённая заметка
4Медицинская запись17Коды восстановления
5Информация о поездке18Сертификат
6Контакт19Банковские данные
7Wi-Fi20Документ
8API-ключ21Лицензия на ПО
9Токен22Юридический договор
10SSH-ключ23Фото
11SSH-конфигурация24Аудио
12Облачные учётные данные25Видео
13Kubernetes

Возможности

Безопасность

  • Вывод ключей Argon2id с нулевым разглашением — мастер-пароль никогда не сохраняется
  • Двойные AEAD-шифры: AES-256-GCM и XChaCha20-Poly1305
  • Двухуровневая проверка целостности HMAC-SHA256
  • Четыре настраиваемых профиля безопасности: standard, hardened, paranoid, legacy
  • Оценка доверия для каждого секрета (0–100) на основе возраста, доступа и уровня привилегий
  • Журнал аудита с защитой от подделки, хранящийся вне хранилища

Хранилище

  • Единый зашифрованный файл хранилища — переносим на любое устройство
  • Пространства для логического разделения (как папки)
  • Нечёткий поиск с интерактивным браузером и навигацией с клавиатуры
  • Инспектор метаданных: дата создания, последний доступ, количество обращений, оценка доверия

TOTP

  • Живые таймеры обратного отсчёта в интерактивном списке
  • Постоянный пользовательский порядок
  • Прямое копирование: pm totp github
  • Интеграция с демоном автозаполнения для автоматической подстановки кодов 2FA

Облачная синхронизация

  • Google Drive (OAuth2 PKCE), GitHub (PAT), Dropbox (OAuth2 PKCE)
  • Сквозное шифрование — провайдеры никогда не видят открытый текст
  • .apmignore для фильтрации записей по провайдеру
  • Разрешение конфликтов: перезаписать, оставить локальную версию или отменить
  • Фоновая автосинхронизация

Сессии

  • Явная разблокировка/блокировка с настраиваемым сроком действия и тайм-аутом бездействия
  • Делегированные эфемерные сессии для автоматизации и доступа ИИ-агентов

MCP-сервер

  • Встроенный сервер Model Context Protocol
  • Токены с ограниченными правами: read, secrets, write, admin
  • Ограничения транзакций для операций записи: предпросмотр → одобрение → квитанция
  • Работает с Claude Desktop, Cursor, Windsurf и любым MCP-клиентом

Восстановление

ФакторКоманда
Email OTPpm auth email
Ключ восстановленияpm auth recover
Доли кворума (Shamir)pm auth quorum-setup
WebAuthn Passkeypm 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 GB RAM)
paranoid512 MB64Серверы (≥16 GB RAM)
legacyPBKDF2600,0001Обратная совместимость

APM автоматически определяет количество ядер CPU и объём RAM, чтобы рекомендовать оптимальный профиль во время pm setup.

Статус разработки и история

(Эта заметка от владельца) По состоянию на 30 марта 2026 года я работаю над GUI для APM. Изначально это было CLI-приложение. Вопрос #38 объясняет всё подробно. В целом, я хочу, чтобы APM охватил ещё более широкую аудиторию. Я буду держать GUI отдельно в репозитории apm-gui или создам организацию и перенесу оба репозитория туда.

Я начинал APM как по-настоящему личный проект. Всё началось в один случайный вечер, когда я захотел создать собственный менеджер паролей. Меня утомлял zoho password, так как я использовал его для TOTP. Он был невероятно медленным в работе, а для своих токенов я использовал текстовые файлы, что небезопасно.

На данный момент я НЕ планирую забрасывать/закрывать проект. Он останется работоспособным надолго. Я стараюсь улучшать его каждый день и использую его каждый день. Иногда репозиторий может быть неактивен, и это когда я тестирую и экспериментирую с приложением.


Структура релизов

Категории