CLI commands

Full reference for every jaina-cli subcommand.

projects

jaina projects list
jaina projects create <slug> [--name "Display Name"]
jaina projects show <slug>
jaina projects delete <slug>
jaina projects default <slug>   # sets default for subsequent commands

pull

Download a package (or a whole project) to disk.

jaina pull <project>/<package>           # one package
jaina pull <project>                     # whole project (all packages)
jaina pull my-game/level-1 --output ./content/

Produces ./<package>/model.json plus an assets/ directory.

push

Upload local edits back to Jaina.

jaina push ./level-1
jaina push ./level-1 --dry-run           # preview without writing

The CLI compares local against remote and uploads only what changed.

clone

Pull every package of a project at once.

jaina clone my-game --output ./game-content/

Produces a folder structure like:

game-content/
├── main-menu/
│   ├── model.json
│   └── assets/
└── level-1/
    ├── model.json
    └── assets/

export

Bundle a project (or package) as a portable artifact.

jaina export my-game --format json --output ./build/
jaina export my-game --format zip --output ./build/
jaina export my-game/level-1 --format zip --output ./build/

JSON produces a supermodel.json. ZIP produces a binary archive with model.json + assets/.

codegen

Generate typed models for your application.

jaina codegen my-game --lang typescript --output ./types/
jaina codegen my-game --lang csharp --output ./Models/
jaina codegen my-game --lang python --output ./models/
jaina codegen my-game --lang go --output ./internal/jaina/
jaina codegen my-game --lang rust --output ./src/jaina/

One file per schema. Idempotent — rerunning is safe.

auth utilities

jaina login
jaina logout
jaina whoami

Global flags

FlagEffect
--jsonmachine-readable output
--quietsuppress non-error output
--verboseextra logging
--api-url <url>override server (default https://jaina.dev/api/v1)
--token <token>override token (overrides ~/.jaina/config.json and $JAINA_API_KEY)