Skip to content

Configuration

Config commands

Read and update CLI settings:

bash
betterprompt config get [key] [--json]
betterprompt config set <key> <value>
betterprompt config unset <key>

Supported keys: apiKey, apiBaseUrl.

bash
betterprompt config get                          # show all config
betterprompt config get apiBaseUrl --json        # get a specific key
betterprompt config set apiKey bp_live_123       # set API key
betterprompt config unset apiKey                 # remove a key

Resources

View available models and run options. Results are cached locally and auto-synced when the server signals an update.

bash
betterprompt resources [flags]
FlagDescription
--remoteFetch from remote without updating local cache.
--syncFetch from remote and save to local cache.
--models-onlyOnly show the models list.
--jsonMachine-readable output.
bash
betterprompt resources                   # read from local cache
betterprompt resources --models-only     # list models only
betterprompt resources --sync            # refresh from remote

On first run, resources are fetched and cached automatically. The CLI includes a resources_hash with every API request — when the server detects a stale hash, it signals the CLI to re-sync in the background.

Directory layout

The CLI stores state in two locations:

Global (~/.betterprompt/)

~/.betterprompt/
├── config.json          # CLI settings
├── auth.json            # Authentication state
├── resources.json       # Cached models and run options
├── skills/              # Globally installed skills
│   └── <skill-slug>/
│       ├── SKILL.md
│       ├── manifest.json
│       └── schema.json
├── outputs/             # Run history and downloaded assets
│   ├── history.jsonl
│   └── <runId>/
├── logs/                # CLI logs
│   ├── cli.log
│   ├── auth.log
│   └── errors.log
└── tmp/                 # Transient files

Project-local (.betterprompt/)

When you use --project, a project-scoped directory is created:

your-project/
├── betterprompt.json
└── .betterprompt/
    ├── skills/
    ├── outputs/
    ├── logs/
    └── tmp/

Project-local state takes precedence over global state when both exist.

Diagnostics

Check that everything is configured correctly:

bash
betterprompt doctor [--fix] [--json]

Checks:

  • Authentication state
  • API registry reachability
  • Install directories exist
  • Write permissions

Use --fix to attempt automatic remediation of any issues found.

Update

Check for CLI updates and install when available:

bash
betterprompt update

For npm installs, this runs npm install -g betterprompt. For binary installs, it downloads the latest release from GitHub, verifies the checksum, and replaces the binary.

Reset

Remove all local CLI data:

bash
betterprompt reset [--yes]

This deletes the ~/.betterprompt directory (config, auth, installed skills, outputs, logs). Prompts for confirmation unless --yes is passed.