login

Authenticates you with Ghostable. Prompts
  • Email address
  • Password (hidden)

init

Links the current directory to a Ghostable project and creates ghostable.yaml. Prompts
  • Select an existing project or choose [Create a new project]
  • If creating a new project, enter the project name

env:init

Creates a new environment for the current project. Prompts
  • Select an environment type (e.g., Production, Staging)
  • Select a base environment or choose Standalone
  • If --name isn’t provided:
    • Choose from suggested names or Custom name
    • If custom, enter a slug-formatted name

env:pull

Downloads an environment file from Ghostable to the local machine. Prompts
  • Pick which environment to pull (if --environment not provided)
  • Choose the file format (with a Default option)
  • Confirm that you want to overwrite any existing file

env:push

Uploads your local environment file to Ghostable. Prompts
  • Pick the environment to push (if --environment not provided)
  • Confirm before overwriting the server’s environment
  • If the environment doesn’t exist locally, warns and offers to create it

env:diff

Compares local environment variables with those stored in Ghostable. Prompts
  • Select which environment to diff (if --environment not provided)
  • Displays variables categorized as added, updated, or removed

env:deploy

Fetches environment variables intended for deployment and writes them to .env. Requires GHOSTABLE_CI_TOKEN. Options
  • --validate to validate after pulling (no interactive prompt)

env:validate

Sends your local environment file to Ghostable for validation. Prompts
  • Select which environment to validate (if --environment not provided)
  • Validation errors, if any, are listed

project:list

Lists all projects in your current team context. Prompts
  • None (output is a table of ID, Name, Environments)

team:list

Displays all teams you belong to and marks the current one. Prompts
  • None (output is a table of ID, Name, Current)

team:current

Shows the name of the team currently in use. Prompts
  • None (prints the current team)

team:switch (alias switch)

Switches to a different team. Prompts
  • If --id is not supplied, select from a list of available teams
  • If the supplied ID isn’t found, the command aborts with a message