Guepard / Features / Guepard CLI
Guepard CLI Commands
Complete Command Reference for Database Management
The Guepard CLI (guepard) provides comprehensive database management capabilities through a Git-like interface. This reference covers all available commands, their options, and practical examples.
π Getting Started
Installation & Setup
Before using the CLI, you need to install it on your system. See the Installation Guide for detailed instructions for Windows, macOS, and Linux.
Essential Commands Overview
The CLI follows a Git-like structure with these main command categories:
- Core Commands:
deploy,commit,branch,checkout,log - Management Commands:
compute,list,usage - Authentication:
login,logout - Configuration:
config
Core Commands
guepard deploy β π Database Deployment Management
Purpose: Create, manage, and configure database instances with full lifecycle control.
Syntax
guepard deploy [OPTIONS]
Options
| Option | Short | Description | Required |
|---|---|---|---|
--database-provider | -p | Database type: PostgreSQL, MySQL, MongoDB | For creation |
--database-version | -v | Database version (e.g., 16 for PostgreSQL) | For creation |
--region | -r | Region: us-west, us-east, eu-west, asia-pacific | For creation |
--instance-type | -i | Type: REPOSITORY (for versioning) or F2 (for compute) | For creation |
--datacenter | -d | Cloud provider: aws, gcp, azure | For creation |
--repository-name | -n | Repository name (auto-generated if not provided) | For creation |
--database-password | -w | Database password | For creation |
--deployment-id | -x | Deployment ID | For get/update/delete |
--user | -u | Database username (default: guepard) | No |
--yes | -y | Skip confirmation prompts | No |
--performance-profile | -f | Performance profile: gp.g1.xsmall, gp.g1.small, etc | No |
--interactive | -I | Interactive mode - guided setup | No |
Examples
Create a new deployment:
guepard deploy \
--database-provider PostgreSQL \
--database-version 16 \
--region us-west \
--instance-type REPOSITORY \
--datacenter aws \
--repository-name myapp \
--database-password secret123
Interactive deployment (recommended for beginners):
guepard deploy --interactive
Get deployment details:
guepard deploy --deployment-id 12345678-1234-1234-1234-123456789abc
Update deployment:
guepard deploy \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--repository-name new-name
Delete deployment:
guepard deploy \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--yes
guepard commit β πΈ Create Database Snapshots
Purpose: Create snapshots (commits) of your database state for version control and recovery.
Syntax
guepard commit --message <message> --deployment-id <id> --branch-id <id>
Options
| Option | Short | Description | Required |
|---|---|---|---|
--message | -m | Commit message describing the changes | Yes |
--deployment-id | -x | Deployment ID | Yes |
--branch-id | -b | Branch ID to commit to | Yes |
Examples
Create a snapshot:
guepard commit \
--message "Add user authentication tables" \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--branch-id a7d373a3-4244-47b7-aacb-ad366f2520f6
Create multiple snapshots:
# Initial setup
guepard commit -m "Initial schema" -x <deployment_id> -b <branch_id>
# Add features
guepard commit -m "Add user profiles" -x <deployment_id> -b <branch_id>
guepard commit -m "Add payment tables" -x <deployment_id> -b <branch_id>
guepard branch β πΏ Branch Management
Purpose: List and create branches for isolated development and testing environments.
Syntax
guepard branch [OPTIONS] [NAME]
Options
| Option | Short | Description | Required |
|---|---|---|---|
--deployment-id | -x | Deployment ID | For listing/creating |
--snapshot-id | -s | Snapshot ID to branch from | For creation |
--name | -n | Branch name | For creation |
--checkout | -k | Checkout after creation | No |
--ephemeral | -e | Create ephemeral branch | No |
--source-branch-id | -b | Source branch ID | No |
--discard-changes | -d | Discard changes | No |
Examples
List branches:
guepard branch --deployment-id 12345678-1234-1234-1234-123456789abc
Create a new branch:
guepard branch \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--snapshot-id abc12345-6789-1234-5678-123456789abc \
--name feature-auth \
--checkout \
--ephemeral
Git-like usage (shows helpful messages):
guepard branch feature-auth # Shows helpful message
guepard branch # Shows helpful message
guepard checkout β π Switch Branches
Purpose: Switch between branches or checkout specific snapshots.
Syntax
guepard checkout [OPTIONS] <target>
Options
| Option | Short | Description | Required |
|---|---|---|---|
--deployment-id | -x | Deployment ID | Yes |
--branch-id | -c | Branch ID to checkout | For branch checkout |
--snapshot-id | -s | Snapshot ID to checkout | For snapshot checkout |
--checkout | -k | Perform checkout | No |
--discard-changes | -d | Discard changes | No |
Examples
Checkout a branch:
guepard checkout \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--branch-id def67890-1234-5678-9012-345678901234
List available branches:
guepard checkout --deployment-id 12345678-1234-1234-1234-123456789abc
Git-like usage (shows helpful message):
guepard checkout develop # Shows helpful message
guepard log β π View Deployment Logs
Purpose: View and monitor deployment logs with filtering and real-time streaming.
Syntax
guepard log --deployment-id <id> [OPTIONS]
Options
| Option | Short | Description | Required |
|---|---|---|---|
--deployment-id | -x | Deployment ID | Yes |
--lines | -n | Number of lines to show (default: 50) | No |
--follow | -f | Follow logs in real-time | No |
--stdout-only | Show only stdout logs | No | |
--stderr-only | Show only stderr logs | No | |
--timestamps | -t | Show timestamps | No |
--since | Filter logs from date | No | |
--until | Filter logs until date | No |
Examples
View recent logs:
guepard log --deployment-id 12345678-1234-1234-1234-123456789abc
Follow logs in real-time:
guepard log --deployment-id 12345678-1234-1234-1234-123456789abc --follow
View logs with timestamps:
guepard log --deployment-id 12345678-1234-1234-1234-123456789abc --timestamps
Filter logs by date:
guepard log \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--since "2025-01-08" \
--until "2025-01-09"
Management Commands
guepard compute β π₯οΈ Compute Instance Management
Purpose: Control compute resources for deployments with start/stop/status operations.
Syntax
guepard compute <action> --deployment-id <id>
Actions
status- Get compute statusstart- Start compute instancestop- Stop compute instancerestart- Restart compute instancelogs- View compute logslist- List compute details (default)
Examples
Check compute status:
guepard compute status --deployment-id 12345678-1234-1234-1234-123456789abc
Start compute:
guepard compute start --deployment-id 12345678-1234-1234-1234-123456789abc
Stop compute:
guepard compute stop --deployment-id 12345678-1234-1234-1234-123456789abc
View compute logs:
guepard compute logs --deployment-id 12345678-1234-1234-1234-123456789abc
List compute details:
guepard compute list --deployment-id 12345678-1234-1234-1234-123456789abc
guepard list β π List Resources
Purpose: List deployments, branches, commits, and other resources with customizable columns.
Syntax
guepard list <resource> [OPTIONS]
Resources
deployments- List all deployments (default)branches- List branches for a deploymentcommits- List commits for a deployment
Options
| Option | Short | Description | Required |
|---|---|---|---|
--deployment-id | -x | Deployment ID | For branches/commits |
--columns | -c | Columns to display (comma-separated) | No |
--graph | -g | Show git graph style | For commits |
--all | -a | Show all commits including AUTO SNAPs | For commits |
--limit | -l | Limit number of results | No |
Examples
List all deployments:
guepard list deployments
List deployments with specific columns:
guepard list deployments --columns id,name,status,fqdn
List branches:
guepard list branches --deployment-id 12345678-1234-1234-1234-123456789abc
List commits with git graph:
guepard list commits \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--graph
Show all commits including AUTO SNAPs:
guepard list commits \
--deployment-id 12345678-1234-1234-1234-123456789abc \
--all
guepard usage β π Usage Information
Purpose: View your account usage and quotas.
Syntax
guepard usage
Example
guepard usage
Sample Output:
β
Usage Summary:
βββββββββββββββ¬ββββββββ¬βββββββ
β Resource β Quota β Used β
βββββββββββββββΌββββββββΌβββββββ€
β Deployments β 10 β 3 β
β Snapshots β 100 β 15 β
β Clones β 50 β 8 β
βββββββββββββββ΄ββββββββ΄βββββββ
Authentication Commands
guepard login β π Authentication
Purpose: Authenticate with your Guepard account using interactive or direct token methods.
Syntax
guepard login [OPTIONS]
Options
| Option | Short | Description | Required |
|---|---|---|---|
--code | -c | Direct access token input | No |
Examples
Interactive login (recommended):
guepard login
Direct token login:
guepard login --code your-access-token-here
guepard logout β πͺ Sign Out
Purpose: Log out and clear stored credentials.
Syntax
guepard logout
Example
guepard logout
Configuration Commands
guepard config β βοΈ Configuration Management
Purpose: Configure API endpoints and other CLI settings.
Syntax
guepard config [OPTIONS]
Options
| Option | Short | Description | Required |
|---|---|---|---|
--get | Get current configuration | No | |
--api-url | -a | Set API endpoint URL | No |
--show | Show current configuration | No |
Examples
Show current configuration:
guepard config --show
Set API endpoint:
guepard config --api-url https://api.guepard.run
Command Aliases and Shortcuts
Common Aliases
- Use
-xinstead of--deployment-id - Use
-minstead of--message - Use
-ninstead of--name - Use
-cinstead of--code
Git-like Shortcuts
Many commands support Git-like syntax for familiarity:
# These show helpful messages
guepard branch develop
guepard checkout develop
guepard commit -m "message"
Output Formats
Beautiful Tables
All commands use colorized, rounded tables for better readability:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Deployment ID β Name β Repository β Provider β Version β Status β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β 12345678... β myapp β myapp β PostgreSQLβ 16 β active β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Status Indicators
- β Green: Success, active, healthy
- β Red: Error, failed, unhealthy
- βΉοΈ Blue: Information, neutral
- π‘ Yellow: Tips, warnings
- π Cyan: Guepard branding
Best Practices
Command Organization
- Use interactive mode for complex operations (
--interactive) - Store deployment IDs in environment variables
- Use descriptive commit messages for better tracking
- Create branches for experiments using ephemeral branches
- Monitor usage regularly with
guepard usage
Error Handling
- All commands provide clear error messages
- Use
--helpfor command-specific help - Check authentication with
guepard login - Verify deployment IDs with
guepard list deployments
Workflow Examples
Development Workflow:
# 1. Create a feature branch
guepard branch -x <deployment_id> -s <snapshot_id> -n feature-auth -k -e
# 2. Make changes to your database (via your application)
# 3. Create a snapshot
guepard commit -m "Add user authentication tables" -x <deployment_id> -b <branch_id>
# 4. Switch back to main
guepard checkout -x <deployment_id> -c <main_branch_id>
Production Deployment:
# 1. Create production branch from stable snapshot
guepard branch -x <deployment_id> -s <stable_snapshot_id> -n production
# 2. Deploy to production environment
guepard compute start -x <deployment_id>
# 3. Monitor logs
guepard log -x <deployment_id> --follow