yespapa init
Initialize YesPaPa on a new machine.
--host-name <name>— Custom name for this host (default: system hostname)
- Generates a 160-bit TOTP seed
- Sets a master key (min 8 characters)
- Optionally pairs with the YesPaPa mobile app via remote server
- Displays a QR code for your authenticator app
- Verifies TOTP code (3 attempts)
- Creates
~/.yespapa/directory with SQLite database - Injects shell interceptors into
.zshrc/.bashrc - Seeds default deny-list rules (10 patterns)
- Starts the daemon in the background
- Remote server type —
supabase(default) orselfhosted. Chooseselfhostedif you are running your own backend that implements the YesPaPa protocol. - Remote server URL — The URL of the remote server. Defaults can be overridden with the
YESPAPA_DEFAULT_REMOTE_URLenvironment variable. - Remote server key — The anonymous/public key for the remote server. Defaults can be overridden with the
YESPAPA_DEFAULT_REMOTE_KEYenvironment variable.
- Connect and authenticate with the remote server
- Register this host
- Display a standard
otpauth://QR code (scannable by any TOTP app) - Display a pairing QR code / deep link for the YesPaPa mobile app (
yespapa://pair?...) - Store remote config in the local database
yespapa status
Show the current state of YesPaPa.
- Host name
- Daemon status (running/stopped, PID)
- Socket status (active/not found)
- Interceptor status (installed/not installed)
- Remote server status (configured/offline)
- Pending commands count
- Active auto-bypasses count
- Recent commands (last 5)
yespapa rules
Manage interception rules.
yespapa rules list
yespapa rules add
--pattern <glob>— Glob pattern to match commands (e.g.,rm -rf *,docker rm *)--type <deny|allow>— Whether to intercept (deny) or skip (allow)--bundle <name>— Category name (destructive, git-rewrite, privilege, network, process)
yespapa rules remove
yespapa bypass
Manage auto-bypass (grace periods).
yespapa bypass activate
--scope <scope>—allor a bundle name (destructive, git-rewrite, privilege, network, process)--duration <duration>—1h,24h, or7d
yespapa bypass list
yespapa bypass revoke
--id is omitted.
yespapa test
Send a test command to verify mobile app connectivity.
yespapa config
Manage YesPaPa configuration. Changes require TOTP or master key authentication.
yespapa config list
yespapa config get
yespapa config set
yespapa exec
Execute a command through the YesPaPa gateway programmatically.
yespapa config set allow_remote_exec true.
Options:
--justification <reason>— Reason for running this command (displayed to approver)--timeout <seconds>— Timeout in seconds (0 = wait forever, default: 0)
yespapa approve
Approve a pending command by ID.
yespapa uninstall
Remove YesPaPa from this machine.
- Shell interceptors from profile files
- Daemon process
~/.yespapa/directory and database- Unix socket