Base · 8453

Configuration

setup · keys · networks

Everything you need to wire NWO-ASM into your environment — install, configure substrates, connect a wallet for USDC settlement, and verify the install. Defaults are safe and offline: the language compiles and runs on CPU/GPU with zero credentials. Live substrates and on-chain settlement are opt-in.

SAFE BY DEFAULT · No credentials are required to write, compile, or simulate NWO-ASM code. Keys and wallet only enter the picture when you choose to dispatch to a live external backend or settle on-chain.
Setup flow

From install to first dispatch

A five-step setup path. Stop at any step — you can compile and simulate locally without ever connecting external backends or a wallet.

01 · INSTALL toolchain ~30s · no credentials 02 · INIT nwo-asm init scaffold + config 03 · BACKENDS pick targets CPU/GPU/QPU/… 04 · WALLET connect Base optional · for live 05 · VERIFY nwo-asm doctor health check STOP AT 01-03 FOR LOCAL DEV · COMPLETE 04-05 ONLY IF YOU INTEND TO DISPATCH TO LIVE BACKENDS
Install

Get the toolchain

A single binary plus a Rust crate for embedding. macOS, Linux, and Windows on x86_64 and ARM64. No network calls during install or build — the binary is self-contained.

macos / linux · one-liner
# installs to ~/.nwo-asm/bin; adds to PATH
curl -fsSL https://nwo-asm.dev/install | bash

# verify
nwo-asm --version
  → nwo-asm 4.0.0 (rust 1.84.0)
cargo · embed in your project
[dependencies]
nwo-asm = "4.0"
metastate-client = { version = "0.6", features = ["base", "poi"] }
Config file

nwo-asm.toml

A single TOML file at the project root. Everything below has a sane default — values shown are illustrative, not required.

nwo-asm.toml · annotated
[project]
name      = "my-asm-program"
version   = "0.1.0"
license   = "MIT"                  # language is MIT; your code can be anything

[targets]
default   = "cpu"                  # cpu | gpu | qpu | ecg_hive
allow     = ["cpu", "gpu", "qpu"]
deny      = ["photonic", "dna"]    # roadmap; refuse routing here

[optimizer]
mode      = "free-energy"          # or "manual"
budget_ms = 800                       # max time to spend on placement

[metastate]
endpoint  = "https://cpater-metastate.hf.space"
beacon    = "https://nwo-agent-runner.ciprianpater.workers.dev"
poi       = true                      # require Proof of Inference
zk        = false                     # enable zk variant if needed

[settlement]
chain     = "base"                  # 8453
asset     = "usdc"
splitter  = "0x93a7962f75475b7e3Fbb62d3A23194f8833b1BE4"
affiliate = ""                     # 0x… address to receive 15% — optional

[signing]
algo      = "dilithium3"            # PQC; key at ~/.nwo-asm/keys/
auto      = true
Backends

Per-substrate configuration

Each substrate has its own minimal block in nwo-asm.toml. Anything not listed below uses safe defaults.

BackendRequiredOptionalStatus
CPUnonethreads, simdLive
GPUdriver present (CUDA/ROCm/Metal)devices, memory_gbLive
GPU mesh (nwo-agi)noneendpoint, max_cost_usdcLive
QPU (IBM)IBM_QUANTUM_TOKENinstance, backendLive
QPU (Origin Wukong)ORIGIN_API_KEYbackendLive
ECG hive · BCIdevice URI or serialchannels, sample_rateBeta
Photonic · Neuro · DNA · CrystallineRoadmap
Environment

Credentials & environment

Read from .env at the project root or the system environment. None are required for local CPU/GPU work.

.env · only fill what you need
# quantum backends (only if you want live QPU)
IBM_QUANTUM_TOKEN   = ""
ORIGIN_API_KEY      = ""

# wallet & settlement (only for on-chain dispatch)
BASE_RPC_URL        = "https://mainnet.base.org"
WALLET_PRIVATE_KEY  = ""      # or use a hardware wallet via WalletConnect

# optional
METASTATE_URL       = "https://cpater-metastate.hf.space"
HF_TOKEN            = ""      # for private HF Spaces or models
Never commit secrets. Add .env to your .gitignore. The toolchain does not transmit secrets except to the configured endpoints you choose.
Verify

nwo-asm doctor

Walks the entire config and reports what's wired and what's not — clearly. Doctor is read-only; it makes no live calls without your confirmation.

nwo-asm doctor

==> toolchain
[✓] nwo-asm 4.0.0
[✓] compiler artifacts cache: ~/.nwo-asm/cache (12 MB)

==> targets
[✓] cpu        · 16 threads · simd avx2
[✓] gpu        · 1 device · NVIDIA RTX 4090 · 24 GB
[✓] gpu mesh   · nwo-agi reachable
[ ] qpu ibm    · IBM_QUANTUM_TOKEN missing
[ ] qpu origin · ORIGIN_API_KEY missing
[ ] ecg_hive   · no device configured (skip if not using)

==> metastate
[✓] endpoint reachable · v0.6
[✓] agent-card.json reachable
[✓] PoI: enabled · zk: disabled

==> settlement
[ ] wallet not connected · OK for local-only use
[i] connect a wallet to enable live dispatch

==> result
local-only: READY
live dispatch: PARTIAL · supply IBM/Origin tokens and wallet for full live
Tech stack

What configuration relies on

LayerTechNotes
Config formatTOML (parsed by toml crate)Single file at project root.
Secretsdotenv · OS keychain (optional)Toolchain never logs secrets.
PQC keysCRYSTALS-Dilithium · liboqsStored at ~/.nwo-asm/keys/.
WalletEIP-1193 (MetaMask · WalletConnect)Hardware wallets supported.
RPCBase mainnet (chain 8453) via JSON-RPCUser-provided endpoint.
TelemetryNone by defaultDoctor command is local-only.
How-to & examples Compiler Terminal