Skip to content

CLI Command Reference

Complete reference for the Hyperstack CLI (hs).


OptionDescription
--config, -c <path>Path to hyperstack.toml (default: hyperstack.toml)
--json, -jOutput as JSON
--help, -hShow help
--version, -VShow version

CommandDescription
hs initInitialize project
hs up [spec]Deploy spec (push + build + deploy)
hs statusShow project overview
hs logs [build-id]View build logs
hs auth loginAuthenticate

Initialize a new Hyperstack project.

Terminal window
hs init

Creates hyperstack.toml with auto-discovered specs from .hyperstack/*.ast.json.

Create a fresh configuration file.

Terminal window
hs config init

Validate your configuration.

Terminal window
hs config validate

Create a new account.

Terminal window
hs auth register

Prompts for username and password (min 8 characters).

Login to your account.

Terminal window
hs auth login

Remove stored credentials.

Terminal window
hs auth logout

Check local authentication status.

Terminal window
hs auth status

Verify authentication with server.

Terminal window
hs auth whoami

Credentials location: ~/.hyperstack/credentials.toml


Deploy a spec: push, build, and deploy in one command.

Terminal window
# Deploy all specs
hs up
# Deploy specific spec
hs up my-spec
# Deploy to branch
hs up my-spec --branch staging
# Creates: my-spec-staging.stack.hypertek.app
# Preview deployment
hs up my-spec --preview

Options:

FlagDescription
--branch, -b <name>Deploy to named branch
--previewCreate preview deployment

Show overview of all specs, builds, and deployments.

Terminal window
hs status
hs status --json

View build logs.

Terminal window
# Most recent build
hs logs
# Specific build
hs logs 123

Push local specs to remote.

Terminal window
# Push all specs
hs spec push
# Push specific spec
hs spec push my-spec

Pull remote specs to local config.

Terminal window
hs spec pull

List all remote specs.

Terminal window
hs spec list
hs spec list --json

Show detailed spec information.

Terminal window
hs spec show my-spec
hs spec show my-spec --version 3

Show version history.

Terminal window
hs spec versions my-spec
hs spec versions my-spec --limit 10

Delete a spec from remote.

Terminal window
hs spec delete my-spec
hs spec delete my-spec --force # Skip confirmation

Create a new build from a spec.

Terminal window
hs build create my-spec
hs build create my-spec --version 2
hs build create my-spec --ast-file ./my-spec.ast.json
hs build create my-spec --no-wait

Options:

FlagDescription
--version, -v <n>Use specific version (default: latest)
--ast-file <path>Use local AST file directly
--no-wait, -nDon’t wait for completion

List all builds.

Terminal window
hs build list
hs build list --status completed
hs build list --limit 10

Get detailed build status.

Terminal window
hs build status 123
hs build status 123 --watch
hs build status 123 --json

View build logs.

Terminal window
hs build logs 123

Show deployment information for a build.

Terminal window
hs deploy info 123
hs deploy info 123 --json

Output includes:

  • WebSocket URL: wss://my-spec.stack.hypertek.app
  • Status, uptime, resource usage

List all active deployments.

Terminal window
hs deploy list
hs deploy list --limit 20

Stop a deployment.

Terminal window
hs deploy stop 123

Rollback to a previous deployment.

Terminal window
# Rollback to previous version
hs deploy rollback my-spec
# Rollback to specific version
hs deploy rollback my-spec --to 2
# Rollback to specific build
hs deploy rollback my-spec --build 123
# Rollback branch deployment
hs deploy rollback my-spec --branch staging

Options:

FlagDescription
--to <version>Target version
--build <id>Target build ID
--branch <name>Branch to rollback
--rebuild, -rForce full rebuild
--no-wait, -nDon’t watch progress

List specs available for SDK generation.

Terminal window
hs sdk list

Generate TypeScript SDK.

Terminal window
hs sdk create typescript my-spec
hs sdk create typescript my-spec --output ./src/generated/
hs sdk create typescript my-spec --package-name @myorg/my-sdk

File: hyperstack.toml

[project]
name = "my-project"
# SDK generation settings
[sdk]
output_dir = "./generated"
typescript_package = "@myorg/my-sdk"
# Build preferences
[build]
watch_by_default = true
# Spec definitions
# Auto-discovered from .hyperstack/*.ast.json
# Define explicitly for custom naming:
[[specs]]
name = "my-game"
ast = "SettlementGame" # Entity name or path to .ast.json
description = "Settlement game tracking"
[[specs]]
name = "token-tracker"
ast = ".hyperstack/Token.ast.json"

pending -> uploading -> queued -> building -> pushing -> deploying -> completed
\-> failed
PhaseDescription
SUBMITTEDQueued for processing
PROVISIONINGStarting build environment
DOWNLOAD_SOURCEPreparing source
INSTALLInstalling dependencies
PRE_BUILDPreparing build
BUILDCompiling
POST_BUILDFinalizing
UPLOAD_ARTIFACTSPublishing image
FINALIZINGDeploying to runtime

Terminal window
# Initialize project
hs init
# Create account and login
hs auth register
# Validate configuration
hs config validate
Terminal window
# Make changes to spec, rebuild Rust crate
cargo build
# Deploy
hs up my-spec
# Check status
hs status
# View logs if issues
hs logs
Terminal window
# Deploy feature branch
hs up my-spec --branch feature-x
# URL: my-spec-feature-x.stack.hypertek.app
# Check deployment
hs deploy list
# Clean up when done
hs deploy stop <deployment-id>
Terminal window
# Quick rollback to previous version
hs deploy rollback my-spec
# Rollback to specific version
hs deploy rollback my-spec --to 2

VariableDescription
HYPERSTACK_API_URLOverride API endpoint

ErrorSolution
Not authenticatedRun hs auth login
Spec not foundCheck hs spec list for available specs
AST file not foundRun cargo build to generate AST
Build failedCheck hs build logs <id> for details
Config invalidRun hs config validate

After successful deployment:

TypePattern
Productionwss://{spec-name}.stack.hypertek.app
Branchwss://{spec-name}-{branch}.stack.hypertek.app
Localws://localhost:8080

Get the URL with:

Terminal window
hs deploy info <build-id>