Skip to main content
This walks you through bringing a node online end to end. Make sure you meet the requirements first. The node software is open source: github.com/Singularity-Layer/sgl-network-node. Full command details are in the CLI reference.
Prefer to let an agent do it? Install the x402-compute skill and ask your agent to bring the node online — it runs this whole flow (stake → install → register → attest → serve):
npx skills add https://github.com/ivaavimusic/singularity-skill --skill x402-compute
# or: curl -fsSL https://api.x402layer.cc/skill/x402-compute/install | bash

1. Install the node CLI

Install sgl from the official release (see the repo README for per-platform instructions). Verify it’s available:
sgl --help
You also need a local inference runtime (llama-server) and a GGUF model file to serve, e.g.:
# example: a small instruct model
~/models/Llama-3.2-3B-Instruct-Q4_K_M.gguf

2. Log in & register (with your staked wallet)

sgl login opens a browser flow to approve the node with the wallet that holds your stake. This binds the node to that wallet.
sgl login --tee-type apple_se --models llama-3.2-3b
  • --tee-type — the TEE on your machine (default apple_se).
  • --models — comma-separated models you’ll advertise.
Prefer no browser? sgl init --wallet <STAKED_WALLET> registers directly. login is recommended.

3. Attest your enclave

Produce and submit the hardware attestation. Only attestation-verified nodes receive jobs — and you must re-attest after any binary update.
sgl attest

4. Start serving

For production, run as a background service so the node survives reboots, logout, crashes, and idle sleep:
sgl service install \
  --model-path ~/models/Llama-3.2-3B-Instruct-Q4_K_M.gguf \
  --model-name llama-3.2-3b \
  --resource-percent 50
To test in the foreground first:
sgl start --model-path ~/models/Llama-3.2-3B-Instruct-Q4_K_M.gguf --model-name llama-3.2-3b
Check it’s healthy:
sgl status            # node + hardware + orchestrator
sgl service status    # background service state
Your node now registers, advertises its model(s), heartbeats, and starts receiving jobs.

5. Maintenance

Going down on purpose? Use maintenance mode so you stop receiving new jobs cleanly (in-flight jobs finish; no penalty):
sgl off-grid          # before planned downtime
sgl on-grid           # resume
Honest downtime is never penalized — it just means no new jobs while you’re offline. Only proven tampering is slashable (see Staking to operate).

Confidentiality

Your node runs every workload inside the TEE, so you serve user prompts without being able to read them. Attestation enforces this — it’s the basis of the network’s confidential-compute guarantee.

Next