Skip to content
ALWasp
Menu
Quickstart · about 5 minutes

Your first verified AL build, step by step.

Go from an existing Business Central AL repository to a validated, dependency-aware build with four focused commands.

The fast path4 commands
  1. 01dotnet tool install --global left-code.AlWasp
  2. 02alwasp config init
  3. 03alwasp config validate
  4. 04alwasp build ci

Step 01

Install the CLI

ALWasp runs as a .NET 10 global tool. Install it once, then call it from any AL repository.

terminal
dotnet tool install --global left-code.AlWasp
alwasp --help

Steps 02—04

Initialize and build

Discover projects, validate the generated configuration, restore symbols, and compile the default CI target.

terminal
alwasp config init
alwasp config validate
alwasp restore
alwasp build ci

Choose your route

ALWasp meets the repository where it is.

Recommendedalwasp.json

Config-driven repository

alwasp config init discovers direct child projects and writes a starter config. Confirmed test apps are omitted by default; review uncertain source classifications, then model profiles and CI targets explicitly.

Use alwasp config init --include-tests to include source-classified test apps in tests.
Direct modeapp.json

Single project or workspace

Use build --project or --project-root for dependency-aware builds without configuration. A positional app.json uses focused alc compilation; workspace commands accept .code-workspace files.

alwasp build ./app.jsonalwasp build --project-root ./src

CLI anatomy

Know the command surface

Start broad, then move into compatibility, tooling, versioning, and workspace operations as your pipeline grows.

command-map.txt
alwasp
├── restore [appJsonPath]
├── build [targetOrPath]
├── check [targetOrProfile]
├── analyze [targetOrProfile]
├── plan [targetOrProfile] --changed-since <ref>
├── validate translations [targetOrProfile]
├── translation prepare | validate
├── config init | validate
├── version resolve | apply [targetOrProfile]
├── artifacts resolve | download | prune
├── compare <baseline.app> <current.app>
├── validate compatibility [targetOrProfile]
├── tools update [--clean] [--check]
├── app set-package-id <appPath>
└── workspace
    ├── restore [workspacePath]
    └── build [workspacePath]

Go further

Build is only the beginning.

Tool cache: alwasp tools update manages the AL compiler tools used automatically by builds.

Package comparison: use alwasp compare for a fast public-symbol compatibility report.

Source validation: use alwasp validate compatibility to recompile source against historical packages with AppSourceCop.

Explore compatibility workflows →

Clear boundary

What ALWasp leaves to your pipeline

Publishing to Business Central, provisioning environments, running AL test suites, and writing Git commits or tags remain outside ALWasp.

See complete pipeline examples

Next guide

Shape your repository with alwasp.json.

Continue to configuration →