Installation
DEAL is in active pre-release development. The compiler core is a Zig static library (libdeal.a) wrapped by a Rust CLI, so today you install it by building from source. There are no published package-manager releases yet.
Prerequisites
Section titled “Prerequisites”You need two toolchains on your PATH:
- Zig 0.16.0 — builds the compiler core. Install from ziglang.org/download and confirm with
zig version(it must report0.16.0). - Rust (stable) — builds the CLI, which links the Zig library through a small C ABI. Install via rustup and confirm with
cargo --version.
A C linker (the one your platform’s Rust toolchain already uses) and git are also required.
Build the CLI
Section titled “Build the CLI”-
Clone the repository and fetch the
specsubmodule (the grammar and showcase corpus the tests resolve against):Terminal window git clone https://github.com/deal-lang/deal.gitcd dealgit submodule update --init --recursive -
Build the release binary. Cargo’s build script invokes
zig buildautomatically to producelibdeal.a, then links and compiles thedealCLI — so this one command builds the whole pipeline:Terminal window cargo build --releaseThe compiled binary is written to
target/release/deal. -
Put it on your
PATH:Terminal window sudo cp target/release/deal /usr/local/bin/Copy
target\release\deal.exeto a directory on yourPATH, or addtarget\release\toPATH.
Verify the installation
Section titled “Verify the installation”deal --versionYou should see deal 0.1.0. Run deal --help to list the available subcommands.
What the CLI can do today
Section titled “What the CLI can do today”These subcommands are implemented and exercised by the test suite:
deal parse— tokenize and parse.deal/.dealxfiles and emit AST JSON.deal check— run semantic and dimensional checks;--verifyevaluates requirement criteria against captured evidence,--simulationsvalidates simulation bindings,--run-simsre-runs stale simulations first.deal fmt— format files in place (--checkto verify,--stdoutto preview).deal build --target sysml-v2 | reqif— generate SysML v2 JSON or a ReqIF archive (--validateruns offline schema validation).deal init— scaffold a new project.deal install— resolvedeal.tomldependencies and writedeal.lock.deal simulate— run simulations registered indeal.sims.toml.deal evidence— capture and manage verification evidence.
Import pipelines (deal import), documentation generation (deal build --target docs), and the desktop editor are planned for a later phase and are not available yet.
VS Code extension
Section titled “VS Code extension”The DEAL extension provides .deal / .dealx syntax highlighting, bracket matching, comment toggling, a snippet library, and distinct file icons out of the box. When the deal-lsp language server is present it also delivers diagnostics, completion, hover, go-to-definition, formatting, and workspace symbols.
The extension is not on the Marketplace yet, so install it from the vscode-deal repository. See the VS Code Setup guide for full instructions.
Next steps
Section titled “Next steps”With the CLI on your PATH, continue to Your First Project to scaffold a model and build it to SysML v2.