Skip to main content
Version: 0.1.0

CLI Overview

The RaisinDB CLI manages the server, scaffolds projects with AI agent support, and handles package deployment.

Installation

npm install -g @raisindb/cli

Quick Start

raisindb server start        # Download & start server
raisindb login # Authenticate (opens browser)
raisindb package init my-app # Scaffold project + install types + agent skills
cd my-app
npm run validate # Validate package YAML
npm run deploy # Build & upload to server

Command Groups

GroupDescription
raisindb login/logoutAuthenticate with a server (browser flow, or non-interactive for CI)
raisindb serverInstall, start, stop, update the server
raisindb packageInit, validate, build, deploy, sync packages
raisindb deploy / raisindb syncTop-level aliases for the core dev loop
raisindb flowStatic flow analysis: doctor, explain (offline)
raisindb repoCreate, list, delete repositories
raisindb ai providerConfigure tenant AI providers (keys never echoed)
raisindb userRegister identity users
raisindb corsManage CORS allowed origins
raisindb shellInteractive SQL shell

Configuration

The CLI stores authentication and server settings in .raisinrc (YAML format):

server: http://localhost:8080
token: <jwt-token>
default_repo: demo

Config file lookup order:

  1. Walk up directory tree from current directory
  2. Fall back to ~/.raisinrc (home directory)

The raisindb login command writes this file automatically.

Environment variables

Environment variables take precedence over .raisinrc — designed for CI, where no config file or interactive login is needed:

VariableOverridesDescription
RAISINDB_SERVERserverServer URL
RAISINDB_TOKENtokenAuth token (skips raisindb login)
RAISINDB_REPOdefault_repoDefault repository for --repo-less commands
export RAISINDB_SERVER=https://db.example.com
export RAISINDB_TOKEN=$CI_RAISINDB_TOKEN

raisindb repo create myapp --exists-ok
raisindb deploy ./package --repo myapp --install