Skip to main content

monifa

Command-line client for Monifa, the multi-SSO TOTP authenticator.

Install

pip install monifa

The Python module uses the same name:

import monifa

For development:

python -m venv .venv
.venv/bin/pip install -e .

Login

Sign in through the installed Qitian CLI (qt app oauth):

monifa login

Use GitHub Device Flow instead (the CLI displays a short code and opens GitHub):

monifa login --provider github

You can also exchange a Qitian authorization code or an unconsumed Monifa login ticket directly:

monifa login --code 'QITIAN_AUTHORIZATION_CODE'
monifa login --ticket 'https://monifa.jyonn.space/#/auth/callback?ticket=...'

Tokens

Synchronize and show all current codes:

monifa ls

Generate one code by entry ID, issuer, or account name:

monifa code GitHub
monifa code 12

The last synchronized entries remain available offline:

monifa ls --offline
monifa code GitHub --offline

Add an entry:

monifa add --issuer GitHub --account user@example.com --secret JBSWY3DPEHPK3PXP
monifa add --issuer Example --account user --secret SECRET --algorithm SHA256 --digits 8 --period 30

Delete an entry after an interactive confirmation:

monifa rm 12
monifa rm GitHub --yes

Other commands:

monifa sync
monifa whoami
monifa logout

State And Security

The state file is ~/.config/monifa-cli/state.json by default. It contains refresh credentials and a plaintext cache of TOTP secrets so codes remain available offline. The CLI creates it with user-only permissions (0600). Anyone who can read this file can generate the stored MFA codes.

Override the backend, Qitian executable, or state path with MONIFA_BACKEND_URL, MONIFA_QT_COMMAND, and --config. GitHub Device Flow must be enabled for the configured GitHub OAuth App.

Metadata

Release files for monifa 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for monifa 0.1.0
File Interpreter ABI Platform
monifa-0.1.0-py3-none-any.whl Python 3 none any Details

Release files / monifa-0.1.0-py3-none-any.whl

Download URL monifa-0.1.0-py3-none-any.whl
Size 10.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e50e9f2d3dbb9854688612942b9086efc6eeb281f5e088bdcaedfe2bfa5bc443
BLAKE2b-256 checksum
How to use checksums
d3c27ea3b1f6a7f9976f693a69c5df7adb7c370e689fd1f1834b396f690d185f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page