TOSE Documentation
Deploy and manage your applications with ease.
TOSE is a deployment platform that lets you deploy applications from Git repositories with automatic builds, custom domains, environment variables, databases, and more. Use the CLI or API to manage everything.
Installation
Install the TOSE CLI globally using npm:
npm install -g @tosesh/tose
Verify the installation:
tose -V
Requirements:
- Node.js 18.0.0 or higher
- npm or yarn
Authentication
TOSE uses API keys for authentication. Get your API key from the TOSE Dashboard.
Login with CLI
tose login
This saves your API key to ~/.tose/config.json.
Environment Variable
export TOSE_API_KEY=tose_sk_your_key_here
CLI Flag
tose status --api-key tose_sk_your_key_here
Priority Order
The CLI resolves the API key in this order:
--api-keyflagTOSE_API_KEYenvironment variable- Config file (
~/.tose/config.json) - Interactive prompt
Quick Start
Deploy your first application in 3 steps:
1. Login
tose login
2. Initialize & Deploy
From your project directory:
# One-command deploy (auto-init + deploy)
tose up
# Or step by step:
tose init # Link directory to workspace/project
tose deploy # Deploy the project
3. Monitor
# Check status
tose status
# View live logs
tose logs -f
# Open in browser
tose open
Workspaces
Workspaces are organizational units that contain projects, databases, and templates. Each workspace has its own billing, members, and resources.
Set Active Workspace
# Set workspace via CLI
tose use my-workspace
# Or via environment variable
export TOSE_WORKSPACE=my-workspace
# Or create .tose.json in your project
tose init
Workspace Resolution
The CLI resolves workspace in this order:
- Positional argument (
workspace/project) --workspaceflagTOSE_WORKSPACEenvironment variable.tose.jsonin current directory- Global active workspace
- Interactive selection
Projects
A project is a deployable application connected to a Git repository.
# Create and deploy
tose up
# Or manually
tose init
tose deploy
# Manage
tose status # View status & pods
tose restart # Restart pods
tose down # Stop deployment
Deployments
Each deploy creates a new deployment with build logs, Docker image, and K8s resources.
# Deploy
tose deploy
# Redeploy (no rebuild, same image)
tose redeploy
# View build logs
tose logs --build
# Stream live logs
tose logs -f
Environment Variables
# Set variables
tose env set DATABASE_URL=postgres://... API_KEY=secret
# List all variables
tose env list
# Remove variables
tose env rm DATABASE_URL API_KEY
# Push .env file
tose env push .env
# Pull env vars to local file
tose env pull .env.local
Custom Domains
# Add domain
tose domain add example.com
# List domains
tose domain list
# Remove domain
tose domain rm example.com
After adding a domain, configure DNS by pointing a CNAME record to your project's default domain.
Databases
Create managed databases directly from the CLI.
# Create database (interactive)
tose db create
# List databases
tose db list
# Get connection info
tose db info my-postgres
Supported types: postgresql, mysql, redis, mongodb
Templates
Templates are pre-built applications that can be deployed with one command.
# View available templates
tose template catalog
# Create and deploy (all-in-one)
tose template create "My App"
# Prompts for required env vars, then deploys automatically
# Or step by step:
tose template create "My App"
tose template env set my-app KEY1=value1 KEY2=value2
tose template deploy my-app
# Manage
tose template list # List your templates
tose template info my-app # View details
tose template logs my-app -f # Stream logs
tose template stop my-app # Stop
tose template delete my-app # Delete