Skip to main content

CLI Reference

The chtbio command-line tool manages your Chat-in-Bio instance.

Global options

chtbio [OPTIONS] COMMAND [ARGS]...
OptionEnv varDescription
--url TEXTCHTBIO_URLServer URL (default: http://localhost:8000)
--api-key TEXTCHTBIO_API_KEYAPI key for authentication
--format [table|json]CHTBIO_OUTPUT_FORMATOutput format
-y, --yesSkip all confirmations
--versionShow version

Config

chtbio config init              # Create config + policy files
chtbio config show # Show current configuration
chtbio config set KEY VALUE # Set a config value
chtbio config get KEY # Get a config value

Status

chtbio status                   # Instance overview (owner, bot, content counts)

Owner

chtbio owner get                # Show owner profile
chtbio owner set [OPTIONS] # Update owner profile

Owner set options: --name, --slug, --email, --bio, --tagline, --avatar-url, --social-links (JSON), --theme-config (JSON).

Bot

chtbio bot get                  # Show bot configuration
chtbio bot set [OPTIONS] # Update bot configuration

Bot set options: --prompt, --greeting, --provider, --model, --temperature, --tools (JSON), --quick-actions (JSON).

Content resources

All content types follow the same pattern:

chtbio <resource> list
chtbio <resource> add [OPTIONS]
chtbio <resource> update ID [OPTIONS]
chtbio <resource> remove ID
chtbio links list
chtbio links add --title "Blog" --url "https://blog.test"
chtbio links update abc123 --title "Updated"
chtbio links remove abc123

Options: --title, --url, --icon, --description, --sort-order, --is-active.

Products

chtbio products add --title "Course" --price-cents 4999 --product-type course

Options: --title, --description, --price-cents, --currency, --product-type, --external-url, --image-url.

Events

chtbio events add --title "Webinar" --start-time "2026-04-15T18:00:00+00:00"

Options: --title, --description, --start-time, --end-time, --timezone, --max-attendees.

Bookings

chtbio bookings add --day-of-week 1 --start-time "09:00:00" --end-time "09:30:00"

Options: --day-of-week, --start-time, --end-time, --duration-minutes.

FAQ

chtbio faq add --question "What do you do?" --answer "I build software."

Options: --question, --answer, --category, --sort-order.

Portfolio

chtbio portfolio add --title "Project X" --link-url "https://github.com/..."

Options: --title, --description, --image-url, --link-url, --category, --sort-order.

Integrations

chtbio integrations add --provider google --credentials "token" --scopes '["calendar"]'

Options: --provider, --credentials, --scopes (JSON), --is-active.

API Keys (RBAC)

chtbio keys list                                    # List all keys (masked)
chtbio keys create --role editor --label "CI key" # Create new key
chtbio keys revoke KEY_ID # Revoke a key

Roles: admin (full access), editor (create/update, no delete), viewer (read-only).

Output formats

Table (default) — human-readable Rich tables:

chtbio links list

JSON — machine-readable, ideal for scripting and agents:

chtbio --format json links list
chtbio --format json status

Exit codes

CodeMeaning
0Success
1Error (auth, permission, not found, policy violation)