Command line tool

Bool CLI

Use bool in your terminal to manage sites and deployments on bool.com.

View Repository

Current status: early developer preview. Run bool --help to inspect available commands in your installed version.

1. Download and Install

Install the bool command globally using npm.

npm install
npm link

2. Setup and Authentication

Paste your API key from the bool.com web UI. Your API key is saved to ~/.config/bool-cli/config.json or set the BOOL_API_KEY environment variable.

bool auth login      # Paste your API key
bool auth status     # Verify connection

3. Ship It - Deploy Instantly

The fastest way to get code live — no account or API key required.

bool shipit [directory]

Creates an anonymous Bool and uploads files in one step. On subsequent runs from the same directory, it updates automatically (tracked via .bool/config).

4. Manage Bools

Command Description
bool list List Bools (default: 20, use --limit <n>)
bool create <name> Create a new Bool
bool show [slug] Show Bool details + latest version
bool update [slug] Update name, description, or visibility
bool delete [slug] Delete a Bool (with confirmation)
bool open [slug] Open editor URL in browser

Aliases: bool ls, bool get, bool info, bool rm

5. Versions & Deployment

Command Description
bool versions [slug] List version history
bool deploy [slug] [dir] Deploy local files as a new version
bool pull [slug] [dir] Download files to a local directory

Deploy options:

  • --message / -m — Commit message
  • --exclude — Exclude pattern (repeatable)
  • Respects .boolignore files (gitignore syntax)
  • Default excludes: .git, node_modules, __pycache__, .DS_Store, .bool

Pull options:

  • --version — Specific version number (default: latest)

JSON Output

All commands support --json for machine-readable output:

bool list --json
bool show my-project --json

Project Config

Running shipit, deploy, pull, or show creates a .bool/config file in the project directory. This stores slug and name so you can run commands without specifying the slug each time.

cd my-project
bool deploy              # slug read from .bool/config
bool show                # slug read from .bool/config
bool versions            # slug read from .bool/config

Add .bool/ to your .gitignore.