Reference

CLI reference

Every packshell command, its arguments, and options. Global help is available with packshell --help and --version.

Global optionCommands talk to the hosted API by default. Override the origin with the PACKSHELL_API_URLenvironment variable; auth also accepts --api <url>.

Authentication

packshell auth
Log in through the packshell website and connect this CLI. Generates your local keypair on first run and publishes the public key.
--api <url>API origin to connect to · default PACKSHELL_API_URL
packshell logout
Remove the local CLI session from this machine.
packshell status
Show login and project status for the current directory.

Projects & sync

packshell init [name]
Create or link a packshell project in the current directory. Generates the project key locally and writes the local link config.
--company-id <id>Use an existing company id
--company-name <name>Create a new company with this name
--env <name>Default environment · default development
packshell push
Encrypt the local env file with AES-256-GCM and push it as a new version.
--env <name>Environment name
--file <path>Env file to read · default .env
packshell pull
Pull and decrypt the latest version of an environment to disk.
--env <name>Environment name
--file <path>Output file path · default .env
--no-backupDo not back up an existing changed file before overwriting
packshell diff
Show key-level changes between local and remote env — added, removed, changed names — without revealing any values.
--env <name>Environment name
--file <path>Local env file path · default .env
packshell watch
Auto-pull whenever a newer remote version of the environment appears.
--env <name>Environment name
--file <path>Output file path · default .env
--interval <seconds>Polling interval · default 15

Team

packshell invite <email>
Invite a teammate by email and, when possible, share the current project key in the same step.
--role <role>admin, member, or readonly · default member
--company-id <id>Company id
packshell share <email>
Share the current project key with an existing company member, wrapped to their public key.
--role <role>admin, member, or readonly · default member
packshell join <code>
Join a company using an invite code (e.g. INV-…).
packshell redeem <code>
Redeem a premium plan code for the current or selected company.
--company-id <id>Company id to apply the plan to

Platform owner

The superadmin group is restricted to platform operators (see the security model and dashboard).

packshell superadmin generate
Generate a premium plan code.
--plan <plan>starter, team, or studio · default team
--days <days>Duration in days · default 30
--note <note>Internal note · default (empty)
packshell superadmin list
List recent premium codes and their status.

Examples

terminal
# push staging from a non-default file$ packshell push --env staging --file .env.staging# pull production without overwriting a locally modified file silently$ packshell pull --env production# keep a CI checkout fresh$ packshell watch --env production --interval 30