AxiomCore
Developer Tooling

CLI reference

Public Axiom CLI commands for contracts, packages, clients, applications, and Cloud projects.

Diagnose and begin

CommandPurpose
axiom doctor [--json] [--strict]Read-only prerequisite report. Strict mode returns non-zero when a required check fails.
axiom onboardDetect a backend or frontend role and print the shortest supported path. Use --apply only to create the detected backend starter.
axiom init [entrypoint] [--module MODULE]Create axiom.acore for a supported backend/extractor path.
axiom loginStart the Cloud device authorization flow.
axiom join EMAILRequest access where the installed CLI still uses the alpha access gate.
axiom install PACKAGE --moduleInstall a compiler/extractor module.

doctor does not log in, pull a contract, or edit the workspace. Prefer its JSON form in CI and support reports:

axiom doctor --json --strict

Evaluate, validate, and build

CommandPurpose
axiom eval FILE [--format FORMAT] [--variant NAME]Evaluate Acore and render the selected output.
axiom test [FILE] [--tag TAG]Run declared Acore test suites, optionally filtered by tag.
axiom build [FILE] [--variant NAME]Build a local .axiom artifact.
axiom build --release [--project ID_OR_SLUG] [--version VERSION]Build and send the result through the connected Cloud release path.
axiom benchmark [FILE]Measure local build and artifact-load boundaries with warmup/iteration controls and a JSON report.
axiom diff FILE1 [FILE2]Diff two inputs, or one input against its lock, using text, semantic, atom, or changelog output.
axiom inspect [PATH]Open the contract inspector, or verify and describe an .axiomapp.
axiom domain validate [FILE] [--json]Validate Domain Model references and print the canonical manifest hash.
axiom domain bootstrap INPUT --source SOURCEWrite reviewable domain suggestions with SOURCE set to openapi or sql, without modifying the input or connecting to a live database.
axiom security check [FILE] [--json] [--fail-on-warning]Analyze the optional security model without writing an artifact.

benchmark defaults to 10 measured iterations, 2 warmups, and axiom-benchmark.json. Results describe that machine and checkout; use the same inputs and environment when comparing reports.

Local development

CommandPurpose
axiom serve [FILE] [--port 8080] [--debug]Start the local mock server from a contract. Without a file, the connected path may resolve saved Cloud mock configuration.
axiom watch --buildWatch axiom.acore and the single amended backend source recognized by the current watcher, show semantic changes, and rebuild on change.
axiom watchPull the current consumer configuration, then watch project.axiom for contract changes.
axiom replStart the Acore REPL.
axiom lspStart the Acore language server over its configured transport.

The current watcher is not a general recursive source watcher. Confirm that your extractor entrypoint is among the watched paths; use the explicit build and test commands in CI.

Pull a client

axiom pull accepts one source through the positional argument or --contract: a local .axiom, dependency config, AxiomCore URL, or organization/project[/version] reference.

axiom pull ../backend/axiom.axiom --framework atmx-web
axiom pull organization/project/1.2.0 --framework flutter --out lib/axiom
axiom pull --contract-config AxiomDeps.toml --framework atmx-react

Useful flags are --framework, --name, --out, --contract, and --contract-config. Project privacy is enforced by the service. Do not infer that an anonymous not found response proves whether a private project exists.

Contract dependency locks

These commands manage AxiomDeps.toml and the default axiom.ui.lock.json for Acore UI contract dependencies:

CommandPurpose
axiom contract resolveResolve manifest entries, show changes, and write the deterministic lock.
axiom contract verifyRe-resolve and verify locked bytes and proof without changing files.
axiom contract diff BEFORE AFTERShow semantic lock changes.
axiom contract facade ALIASPrint read-only virtual-facade metadata for a locked alias.
axiom contract check-source SOURCEValidate use contract declarations against the committed lock.

All accept their documented --deps or --lock overrides where applicable. Unsigned local entries produce a development warning.

Typed frontend packages

CommandPurpose
axiom packages build SOURCE --out FILEValidate and canonically encode a package envelope.
axiom packages resolveResolve package dependencies into AxiomPackages.lock.
axiom packages verifyRe-resolve locked bytes and proof.
axiom packages inspect ALIASPrint one verified locked envelope.
axiom packages diff BEFORE AFTER [--approve CHANGE]Classify package changes and enforce explicit approvals.
axiom packages check-source SOURCE --target TARGETValidate imports and compile the unchanged source for a target.
axiom packages run SOURCE --target TARGET [--once]Run package-backed source through the normal target session.

Marketplace discovery and installation are not provided by these commands. They consume explicit package files and locks.

Acore UI applications

CommandPurpose
axiom ui init DIRECTORY --target TARGETCreate a small authored Acore UI starter in an empty directory.
axiom ui check SOURCE --target TARGETParse, validate, and lower to an in-memory graph.
axiom ui run SOURCE --target TARGET [--once]Start the target development session.
axiom run SOURCE --target TARGET [--once]Run authored source through the same application path.
axiom ui inspect VIEW SOURCE --target TARGETPrint a read-only compiler view for the selected graph revision.
axiom ui context SOURCE --target TARGETEmit bounded, redacted semantic context for tooling.
axiom ui ai-check SOURCE --target TARGETRun the compiler-backed AI safety check.
axiom ui doctor --target TARGET [--json]Inspect target-host prerequisites.
axiom ui capabilities --target TARGETPrint the installed target capability registry.
axiom ui test SOURCE --target TARGETRun compiler and session safety checks without launching a host.
axiom ui build SOURCE --target TARGETBuild a target-specific .axiomapp.

Target values currently used by the application workflow are web, android, and ios. Native availability depends on an installed Axiom UI Host and local emulator/simulator prerequisites.

UI Host commands

axiom ui host install, status, and recover install or inspect the development host and recover stale delivery-control state. Installation can use a verified release manifest/variant or an explicit host fixture accepted by the current development workflow.

Application artifacts

axiom ui build main.acore --target web --development
axiom inspect dist/my-app-web.axiomapp
axiom install dist/my-app-web.axiomapp
axiom run dist/my-app-web.axiomapp --target web

axiom install FILE.axiomapp verifies and copies the intact artifact to the local content-addressed application cache. axiom package combines compatible target artifacts into one multi-target envelope. A production-mode build rejects unsigned local contract dependencies; --development records them in the manifest. Physical-device certification and store publishing are not part of this CLI contract today.

Cloud projects and releases

CommandPurpose
axiom project listList accessible Cloud projects.
axiom project createCreate a project and optionally link a directory.
axiom project linkLink the current directory to a selected or explicit project.
axiom project rotate-key --project SLUGRotate the active project signing key while retaining old public verification keys.
axiom release [FILE]Upload a compiled artifact to the linked or explicitly selected project/version.
axiom deploy mock-server [FILE]Evaluate local Acore and save its mock configuration for the linked Cloud project.

Project operations require authentication, membership, and a reachable control plane. Releasing is not the same as immediate production deployment; Cloud validation, policy, channel, and environment state determine the durable outcome.

CLI cache

axiom cache ls, axiom cache get --key KEY, and axiom cache clear inspect the CLI profile's local Sled cache. The list UI can delete the selected entry with x. These commands do not claim to clear every Flutter application or browser session cache.

Exit behavior and automation

  • use --json only where the command explicitly supports it;
  • use non-interactive flags and pinned inputs in CI;
  • treat a non-zero exit as the command result, not a guarantee that no remote state was written before a later stage failed; and
  • avoid parsing human-oriented TUI or styled output as an API.

On this page