CLI Reference

Elide supports multiple sub-commands organized by function.

Usage Syntax

Usage:
  elide srcfile.{js|ts|jsx|tsx|py|kts...} [OPTIONS] [--] [ARG...]
  or:  elide {script} [OPTIONS] [--] [ARG...]
  or:  elide build|test|project [OPTIONS] [TASKS...]
  or:  elide info|help [OPTIONS]
  or:  elide run|serve [OPTIONS] [FILE] [ARG...]
  or:  elide javac|kotlinc|jar|javadoc|... [OPTIONS] [SOURCES...]

Manage, configure, and run polyglot applications with Elide.

Server Commands

serve

HTTP server with static file serving and an interactive TUI dashboard.

shell
$  elide serve ./public                          # serve static files
$  elide serve --host 0.0.0.0 --port 8080 ./dist # custom bind
$  elide serve --no-tui ./public                  # plain log output
Flag Default Description
--host <ADDR> 127.0.0.1 Hostname or IP to bind to.
--port <PORT> 3000 Port to serve on.
--no-tui false Disable the TUI dashboard, use plain log output.

The subject argument is a directory to serve static files from.

dev

Development server with live-reload, file watching, and an interactive TUI dashboard. Automatically enables dev mode.

shell
$  elide dev ./public
$  elide dev --no-tui ./public
$  elide dev --no-watch ./public
$  elide dev --port 8080 ./public
Flag Default Description
--host <ADDR> 127.0.0.1 Hostname or IP to bind to.
--port <PORT> 3000 Port to serve on.
--no-tui false Disable the TUI dashboard.
--no-watch false Disable file watching.

Runner Commands

run

Run a script file or a snippet of code. Elide selects an appropriate language if given a clearly identifiable source file.

shell
$  elide run app.js
$  elide run script.py
$  elide run --debugger app.js
$  elide run --coverage app.js
FlagDescription
—debugger[=MODE]Enable debugger (auto, cdp, dap).
—profiler[=MODE]Enable profiler (cputracing, cpusampling).
—coverage[=MODE]Enable code coverage collection.
—lspEnable LSP features.
—insights Activate insight scripts.

test

Run a polyglot script, server, or interactive shell in test mode.

shell
$  elide test

Project Commands

init

Initialize a new Elide project.

shell
$  elide init

build

Run the project build or a build script.

shell
$  elide build
$  elide build --no-cache
$  elide build --inspect
FlagDescription
—inspectInspect the build.
—no-cacheDisable build cache.

install

Resolve and install all project dependencies.

shell
$  elide install
$  elide install --slim
$  elide install --with npm
FlagDescription
—slimSlim installation mode.
—with Additional ecosystems to install for.

project

Manage Elide projects defined by elide.pkl or other manifests.

shell
$  elide project

Licensing Commands

pro

Manage Elide Pro licensing.

Subcommands:
CommandDescription
pro activate Activate Elide Pro with a license token.
`pro use FILE>`Install an offline license key or file.
pro whoamiDisplay current license information.
pro yeetRemove the current license.
shell
$  elide pro activate elide_pro_1234567890abcdef
$  elide pro use /path/to/license.key
$  elide pro whoami
$  elide pro yeet

Lifecycle Commands

upgrade

Self-update the Elide binary using TUF (The Update Framework) for verified, secure updates.

shell
$  elide upgrade
$  elide upgrade --check
$  elide upgrade --channel preview
FlagDefaultDescription
—checkfalseCheck for updates without applying.
—forcefalseForce update even if on latest version.
—channel releaseRelease channel (release, preview, nightly).

info

Show information about the current Elide installation.

shell
$  elide info
$  elide info --cargo-lockfile   # print embedded Cargo.lock
FlagDescription
—cargo-lockfilePrint the embedded Cargo.lock and exit.

JVM Toolchain Commands

These commands expose embedded JVM tools. All accept tool-specific flags after --.
CommandDescription
javacJava compiler (up to JDK 25).
kotlincKotlin compiler.
jarBuild and manage Java Archives.
javadocGenerate Java documentation.
javapJava class file disassembler.
native-imageGraalVM Native Image compiler.
jibContainer image builder for JVM/native apps.
javaformatJava code formatter.
ktfmtKotlin code formatter.
mvnEmbedded Maven build tool.
shell
$  elide javac -- [JAVAC_OPTIONS] [SOURCES...]
$  elide kotlinc -- [KOTLINC_OPTIONS] [SOURCES...]
$  elide jar -- [TOOL_OPTIONS] [FILES...]
$  elide native-image [OPTIONS]

Developer Tools

lsp

Run an LSP (Language Server Protocol) instance for an Elide project.

shell
$  elide lsp

mcp

Run an MCP (Model Context Protocol) server for an Elide project.

shell
$  elide mcp
$  elide mcp --mode stdio
$  elide mcp --mode http --host localhost --port 8123
FlagDefaultDescription
—mode noneOperating mode: stdio or http.
—host localhostBind host (HTTP mode).
—port 8123Bind port (HTTP mode).

help

Show the documentation you are reading right now in the terminal.

shell
$  elide help
$  elide help "something to search"

To show documentation in languages other than your own:

shell
$  elide help --lang fr
$  elide help -luk

To show all supported languages:

shell
$  elide help --languages

Global Options

All commands support these global options:

Option Description
-h, --help Show help text for any command.
-V, --version Print version information and exit. On Linux x86_64, --version is intercepted before runtime init for instant response.
-v, --verbose Enable verbose output (debug logging). Sets ELIDE_LOG=debug.
--debug Activate debugging features and trace-level logging. Sets ELIDE_LOG=trace.
-q, --quiet Squelch most output.
-p, --project <PATH> Path to a specific project directory.
--color Force color mode.
--no-color Force no-color mode.
--timeout <DURATION> Timeout to apply when exiting (human-readable, e.g. 30s, 5m).
--locale <LOCALE> Override the display locale.
--use-version <VERSION> Delegate to a specific installed Elide version.
--ignore-version Ignore .elideversion and --use-version; run the current binary.
--no-telemetry Disallow telemetry. Has no effect on unlicensed EAP builds.
--no-sidecar Disable sidecar process; forces UDP fallback for telemetry on Linux.
--cloud Enable cloud connection (overrides default for subcommand).
--no-cloud Disable cloud connection.
--no-native Disallow native access.
--debugger[=MODE] Enable debugger (auto, cdp, dap).
--profiler[=MODE] Enable profiler (cputracing, cpusampling).
--coverage[=MODE] Enable code coverage.
-X, --vm <KEY=VALUE> Set a VM/engine property (can be repeated).
--insights <FILES> Activate insight scripts.
--crash Immediately crash (for testing).
-- Separator between Elide options and positional parameters / script arguments.
Tip: Argfiles

Elide supports argument files (argfiles). Prefix a filename with @ to read options from that file, one per line. Arguments after -- are never expanded.

Exit Codes

Code Meaning
0 Successful execution or --help / --version.
1 Generic failure: invalid arguments, server error, configuration error, license gate block, EAP expired, initialization failure.
2 Exception in user code (guest language runtime error).

On Linux x86_64, --version exits via a raw syscall(exit_group, 0) before the Rust runtime initializes, so the exit code is always 0.

Environment Variables

Variable Description
ELIDE_LOG Log level (trace, debug, info, warn, error). Overridden by --verbose and --debug.

See Also