AINode Release Notes
14 release notes curated from 1 source by the Releasebot Team. Last updated: Jul 8, 2026
AINode Products
- Jul 7, 2026
- Date parsed from source:Jul 7, 2026
- First seen by Releasebot:Jul 8, 2026
v0.5.3 — truthful instances, fleet-wide update banner
AINode 0.5.3 fixes instance visibility, status probes, and fleet update banners for a more truthful cluster view.
[0.5.3] — 2026-07-07
Fixed
Truthful instances everywhere (#59) — every instance card shows its node NAME (not a hex id); the Server view lists stacked instances with node + port and its count matches reality (Eject only where it can actually target); per-instance status probes both directions (starting → serving, and back to failed when an engine dies — no more stale STARTING bars or false READY); the top-bar update banner now updates the whole fleet (/api/cluster/update-all) with an honest confirm, not just the head node.
Original source - Jul 7, 2026
- Date parsed from source:Jul 7, 2026
- First seen by Releasebot:Jul 8, 2026
v0.5.2 — cancellable commit-pinned downloads; launch node-pick fix
AINode releases lifecycle verification fixes and smarter download handling, including real cancel support, per-file parallel downloads, commit-pinned snapshots, and launch forms that respect user node picks.
[0.5.2] — 2026-07-06
The two majors from the 0.5.1 live lifecycle verification. Image published to GHCR;
deploy via ainode update at the operator's discretion.Fixed
Download Cancel is real (#56) — cancel was a backend no-op (the flag was never wired into snapshot_download; a cancelled 15 GB download ran to completion). Downloads are now per-file, cancel-checked between files, commit-pinned (single sha for the whole snapshot — no mixed-commit directories if the repo is pushed mid-download) and parallel (AINODE_DOWNLOAD_MAX_WORKERS, cancellable futures).
Launch form respects user node picks (#56) — auto-recommend fired on model select and silently reset the node dots to the head, landing node-targeted loads on the wrong machine. Manual node toggles now set an intent flag auto-recommend honors.
Original source All of your release notes in one feed
Join Releasebot and get updates from AINode and hundreds of other software products.
- Jul 7, 2026
- Date parsed from source:Jul 7, 2026
- First seen by Releasebot:Jul 8, 2026
v0.5.1 — live-proof defect batch (fp8/overrides, admission guard, GUI lifecycle)
AINode ships 0.5.1 with fleet-proven fixes for stacked loads, multimodal KV cache stability, training from on-disk models, and node-targeted launches. It also adds stacked instance visibility, smoother GUI lifecycle behavior, and new AutoData v2.2 live results.
[0.5.1] — 2026-07-06
Same-day follow-up to 0.5.0: every defect found while live-proving the 0.5.0 fleet
(GUI sweep, browser-driven training, vision serving), fixed and review-gated.Fixed
Per-load overrides survive restarts (#51) — solo loads persisted kv_cache_dtype
/ max_model_len / aliases only to the stacked-instance manifest; the primary model
boots from config.json and silently lost them (a VLM loaded with kv_cache_dtype=auto
came back on fp8 → corrupted output). All override fields now persist and reset
correctly, with no cross-model inheritance on the launch config.fp8 KV cache off by default for multimodal models (#51) — fp8 KV corrupts VLM
generation on GB10 (text models unaffected); vision models now default to auto,
explicit operator fp8 still honored via a provenance flag.Stacked-load admission guard (#53) — stacked loads require explicit
gpu_memory_utilization (400) and reject when the node's projected total exceeds
0.9 (409) — the missing check let a default-sized second model hard-crash a node
(unified memory). Gate runs before any existing instance is touched.Training accepts on-disk models (#53) — wizard cards submitted disk slugs
(org--name) that HF rejects; wizard now sends canonical repo ids and the container
builder maps any on-disk reference to its mount across all four disk layouts.Training/merge no longer require live PyPI (#53) — peft wheel vendored per node
with a tolerant, import-guarded install chain (a review-caught event-loop freeze in
the wheel fetch was fixed with executor offloading).Node-targeted launches (#53) — the launch form loaded on the head regardless of
node selection; now routes through /api/cluster/load with the chosen node_id,
plus a GMU input (validated on distributed launches too).Stacked instances visible (#53) — /api/nodes surfaces per-node instances;
dashboard renders STACKED sub-cards (ports 8001+) with their own unload controls.GUI lifecycle polish (#54) — Server-view LLM "Load" button actually loads
(was a "coming soon" toast); cancel-download failures surface a toast and recover
(true event delegation on the queue); training wizard shows an honest empty state
instead of hardcoded not-on-disk models; dead renderModels() view purged.
Added
- AutoData v2.2 live results (#52) — first live val-set run on the fleet:
weak-solver lift +0.458 (0.500 → 0.958 on 24 held-out GT probes),
exact-McNemar p=0.0005, 44% yield, early stop at target in round 1.
- Jul 7, 2026
- Date parsed from source:Jul 7, 2026
- First seen by Releasebot:Jul 8, 2026
v0.5.0 — training complete, container training/merge, deploy pipeline
AINode releases 0.5.0 with AutoData synthetic-data generation, GPU-container training for LoRA and QLoRA jobs, a completed training view, a real deploy pipeline for tagged image updates, stronger PR CI, and fixes across model loading, merges, versioning, dashboard behavior, and lint debt.
[0.5.0] — 2026-07-06
Consolidates the fleet-internal 0.4.45 / 0.4.46 builds (never published to GHCR)
plus everything since. First release cut by the tag-triggered CI pipeline.Added
AutoData (training utility) — agentic Δ-filtered synthetic-data generation
(Meta Autodata). ainode/training/autodata/: a Challenger generates tasks, weak +
strong solvers attempt each, a Judge grades both, and only Δ = I_strong - I_weak == 1
examples (strong solves, weak fails — the "zone of proximal development") are kept and
emitted as ShareGPT JSONL with a yield report. Pure HTTP over AInode-served
OpenAI-compatible endpoints (no torch — runs in the slim orchestrator). CLI:
python -m ainode.training.autodata.run --config cfg.json. Includes the v2.1
history-aware meta-optimizer (run --meta), a dashboard panel, and a verify-mode
judge (#40, #44).Training in a spawned GPU container (#46) — LoRA/QLoRA/full jobs and adapter
merge now run in a GPU container (quant-image based) when the orchestrator is
the slim shipped image: models store mounted RW, datasets RO, runner + container
config staged into the job dir, peft shimmed at launch. Job cancel tears down
the actual container. Distributed (DDP) training remains host-mode.Training view completed (#45) — job detail gains state-gated Merge Adapter →
Full Model and Resume from Checkpoint actions plus an Artifacts panel with
download links; dead legacy form + placeholder Benchmarks tab removed.Deploy pipeline (#47) — git tag vX.Y.Z → CI (self-hosted Spark runner) builds
and pushes ghcr.io/getainode/ainode:X.Y.Z; ainode update [version], POST /api/engine/update, and POST /api/cluster/update-all now genuinely swap the
running image via an image.env EnvironmentFile read by the systemd unit
(Restart=always, self-stop relaunch), gated so un-migrated units pin but never
self-kill. install.sh resolves and pins the latest numeric tag instead of
trusting :latest.PR CI (#45) — tests.yml runs ruff + pytest on every PR and main push.
Launch path: served-model-name aliases + per-load overrides (#41) —
served_model_name: [aliases], max_model_len, kv_cache_dtype, quantization,
trust_remote_code accepted by POST /api/models/load, emitted on both local-mount
and remote paths, persisted in the replay manifest.Fixed
Merge endpoint rejected its own sentinel config (method="merge" failed
validation) — merges silently 500'd (#45).version is now single-sourced from package metadata (pyproject) — the banner
can no longer drift from the built image (#47).Models page "Installed" list shows disk-only models, not just catalog entries (#42).
Dashboard no longer re-renders the active view on the 5s poll while the user is
interacting (#43).Repo-wide lint debt cleared (64 ruff errors → 0) and kept at zero by CI (#45).
Original source - Jul 6, 2026
- Date parsed from source:Jul 6, 2026
- First seen by Releasebot:Jul 7, 2026
v0.5.2
AINode 0.5.2 adds cancellable commit-pinned downloads.
release: 0.5.2 — cancellable commit-pinned downloads; launch node-pic…
Original source Similar to AINode with recent updates:
- Smokeball release notes135 release notes · Latest Jul 2, 2026
- Cosmolex release notes20 release notes · Latest Jul 30, 2025
- PracticePanther release notes35 release notes · Latest Jul 7, 2026
- Salesforce release notes57 release notes · Latest Jul 1, 2026
- Microsoft release notes663 release notes · Latest Jul 15, 2026
- Zoom release notes170 release notes · Latest Jul 6, 2026
- Jul 6, 2026
- Date parsed from source:Jul 6, 2026
- First seen by Releasebot:Jul 7, 2026
v0.5.1
AINode releases 0.5.1 live-proof defect batch with fp8 overrides and admission guide updates.
release: 0.5.1 — live-proof defect batch (fp8/overrides, admission gu…
Original source - Jun 18, 2026
- Date parsed from source:Jun 18, 2026
- First seen by Releasebot:Jun 18, 2026
v0.4.11 — dashboard tells the truth (Phase 1+2)
AINode 0.4.11 fixes dashboard status, VRAM reporting, cluster membership, Ray health, and unload behavior, while updating AUTO sharding to default to Tensor parallel and refining launch UI cues for model state and Tensor Parallel Size.
[0.4.11] — 2026-06-17
Fixed (dashboard now reports the truth — Phase 1+2)
- Phantom READY eliminated — /api/status engine_ready is now a live /v1/models probe each call (latched engine.ready no longer trusted); the instances panel + master node card derive status from it (READY vs STARTING) instead of a hardcoded READY.
- Per-node VRAM no longer stuck at 0% — metrics/collector.py falls back to psutil for GB10 unified memory (nvidia-smi reports N/A), and the UI merges live GPU metrics into the (local) node so the memory ring shows real %. (Per-peer VRAM still pending a metrics fan-out — Phase 3.)
- Cluster graphic shows distributed membership — participating nodes are stamped with the model + TP=N from the authoritative /api/cluster/resources distributed_instance (the old path keyed off active_sharding, which is null while serving, so workers showed nothing).
- Ray status no longer falsely "not installed" — /api/sharding/status derives Ray health from the head engine when a distributed instance is serving (the orchestrator container has no ray binary to probe).
- DELETE works on a dead/phantom instance — unload force-clears (stopped: true) when the engine is unreachable instead of blocking on a SIGTERM that can't confirm.
Changed
- AUTO sharding now defaults to Tensor parallel (was Pipeline) — matches the distributed launch path and this hardware. Launch UI defaults the Sharding pill to Tensor and relabels the node selector "Tensor Parallel Size (nodes)".
- Launch dropdown marks model state — loaded (●) / on-disk (○) so you can tell what's downloaded.
- Apr 18, 2026
- Date parsed from source:Apr 18, 2026
- First seen by Releasebot:Apr 18, 2026
chore: bump to v0.4.8
AINode ships two fixes for DockerEngine.launch_distributed() compatibility and cluster-wide Update all via HTTP.
Ships the two fixes already on main since v0.4.7:
- DockerEngine.launch_distributed() compatibility shim (UI Launch button)
- cluster-wide "Update all" via HTTP instead of SSH
Co-Authored-By: Claude Opus 4.7 (1M context) [email protected]
Original source - Apr 16, 2026
- Date parsed from source:Apr 16, 2026
- First seen by Releasebot:Apr 17, 2026
v0.4.7 — UI polish, dynamic cluster sizing, NFS shared storage
AINode fixes UI issues and adds shared model storage docs, including better drag-and-drop behavior, cleaner master status, dynamic node limits, complete model lists, download checks, and NFS-shared model storage across clusters.
v0.4.7
Five UI fixes and infrastructure documentation for shared model storage.
Fixed
Image drop overlay stuck
Dragging a file across the chat window showed "DROP IMAGES TO ATTACH" that couldn't be dismissed. Now clears on Escape, click-outside, or dragging away.
Master stuck on "starting..." forever
When the master had no model configured (fresh install or idle cluster), the topology showed a permanent loading overlay. Now correctly shows "online" — the server IS ready, there's just no model to wait for.
Minimum Nodes capped at 3
Was hardcoded. Now populated dynamically from the discovered cluster size — shows 1-2-3-4 with four nodes.
Launch model dropdown incomplete
Only showed models loaded in vLLM. Now merges catalog + disk-scanned models so everything you've downloaded appears.
Download button on already-downloaded models
Live catalog tabs (Trending, Most Used, Latest, Search HF) now check disk presence. Shows "Downloaded" badge and blocks re-download with a toast. Fixes #35.
Shared model storage
AINode supports NFS-shared model storage across a cluster. Download a model once to a central NVMe-over-TCP volume (NAS, MikroTik ROSA, TrueNAS, etc.), export via NFS, and mount on every node. Set models_dir in each node's config to the shared path — all nodes serve the same weights, zero duplicate downloads.
// ~/.ainode/config.json on each node
{ "models_dir": "/mnt/shared-models" }Upgrade
ainode update
Full changelog · Docs
Original source - Apr 16, 2026
- Date parsed from source:Apr 16, 2026
- First seen by Releasebot:Apr 16, 2026
v0.4.6 — Download button fix
AINode fixes Download button behavior so already stored models are hidden across catalog views and re-downloads are blocked.
Fixed
Download button no longer shows for models already on disk. All catalog views (trending, latest, HF search, main) now check disk presence. Re-downloading blocked with a toast. Fixes #35.
ainode update
Changelog · Docs
Original source - Apr 16, 2026
- Date parsed from source:Apr 16, 2026
- First seen by Releasebot:Apr 16, 2026
v0.4.5 — Master node overlay, smart Update All button
AINode fixes the master node loading view and adds a context-aware Update all button that appears only when a newer version is available, shows the target version, and hides again after a successful update.
v0.4.5
Fixed
Master node shows its identity while loading
The master node circle now always shows the node name, GPU type, and crown as soon as it's discovered — even while vLLM is still warming up. A subtle spinning arc + dim veil + "starting..." overlay communicates the loading state without hiding the node's identity. Fades out cleanly when the engine is ready.
"Update all" button is now context-aware
Hidden by default. Only appears in the CLUSTER pill when a newer version is available on GHCR (/api/version/check). Shows the target version number in the button label. Hides again after a successful update.
Upgrade
ainode update
Full changelog · Docs
Original source - Apr 16, 2026
- Date parsed from source:Apr 16, 2026
- First seen by Releasebot:Apr 16, 2026
v0.4.4 — AWQ fix, cluster update button, loading animation
AINode ships v0.4.4 with a GB10 AWQ fix, automatically pinning AWQ quantization to prevent unsafe vLLM upgrades. It also adds an Update all button in the master UI for cluster-wide node updates, plus a smoother topology loading animation with node-by-node fade-ins.
What's new in v0.4.4
Fixed
AWQ models on GB10 now work correctly.
vLLM auto-upgrades AWQ → awq_marlin (a fused Marlin kernel), but awq_marlin CUDA kernels aren't compiled for sm_12.1 (GB10/Blackwell) in the base image. AINode now pins
--quantization awqautomatically when loading an AWQ model, preventing the upgrade.Fixes #34 — reported by Chennu@riai360.
Added
- ⬆ Update all nodes from the master UI
The CLUSTER pill in the topology view has a new ⬆ Update all button. Click to update every node in the cluster simultaneously — master SSHes into workers in parallel, runs docker pull + restart, then updates itself last. Live per-node progress panel shows pending → updating → done/failed.
- Topology loading animation
Before the engine is ready, the cluster canvas shows a pulsating "Loading..." circle at center (same size as the real master node). When the engine comes online, the loading ghost cross-fades out and the real node fades in. Worker nodes fade in individually as they're discovered.
Install / upgrade
# Fresh install curl -fsSL https://ainode.dev/install | bash # Upgrade existing install ainode update # Update entire cluster from master UI # → open http://<master>:3000 → click ⬆ Update all in the cluster pillImages
docker pull ghcr.io/getainode/ainode:0.4.4 docker pull argentaios/ainode:0.4.4Full changelog · Docs
Original source - Apr 16, 2026
- Date parsed from source:Apr 16, 2026
- First seen by Releasebot:Apr 16, 2026
v0.4.3 — Training: Artifacts, Merge, Eval, W&B
AINode ships v0.4.3 with a full in-browser training pipeline, artifact downloads, LoRA merge, checkpoint resume, evaluation loop reporting, Weights & Biases integration, and custom training templates. It also adds download controls, catalog fixes, update badges, and log cleanup.
What's new in v0.4.3
Full training pipeline — from raw dataset to deployable adapter, entirely in the browser.
Training: Artifact retrieval
Download any training output file (adapter weights, tokenizer, checkpoints) directly from the UI or API
GET /api/training/jobs/{id}/output — list artifacts
GET /api/training/jobs/{id}/output/{filename} — stream download
Training: LoRA merge
Merge a LoRA/QLoRA adapter into the base model with one click
POST /api/training/jobs/{id}/merge — async merge via PEFT.merge_and_unload()
Merged model ready for vLLM inference
Training: Checkpoint resume
Resume interrupted or failed jobs from the latest checkpoint
POST /api/training/jobs/{id}/resume
Training: Evaluation loop
Configurable train/eval split (default 10%)
eval_loss + eval_samples_per_second reported in real-time progress
Best checkpoint saved automatically
Training: W&B integration
Set wandb_project to stream loss curves to Weights & Biases
Training: Custom templates
Save your own training templates from the wizard
POST /api/training/templates — persisted to disk
Other fixes (v0.4.2 features also in this image)
Cancel in-progress downloads (✕ button)
Downloaded models show correctly in catalog + "Launch Model" button
Version update badge in top bar — click to update from the browser
pynvml FutureWarning suppressed from logs
Install / upgrade
Fresh install
curl -fsSL https://ainode.dev/install | bashUpgrade existing install
ainode updateContainer images
docker pull ghcr.io/getainode/ainode:0.4.3 # GHCR (canonical) docker pull argentaios/ainode:0.4.3 # Docker Hub mirrorFull changelog · Docs
Original source - Apr 15, 2026
- Date parsed from source:Apr 15, 2026
- First seen by Releasebot:Apr 15, 2026
AINode v0.4.0 — container-native distribution
AINode releases a single-container install that bundles the Web UI, OpenAI-compatible API, and GB10-patched vLLM in one version-locked image. It adds multi-node cluster support, auto-wired distributed launches in the UI, and verified TP=2 cross-node inference on NVIDIA GB10.
Highlights
AINode is now a single-container install: docker pull ghcr.io/getainode/ainode:0.4.0.
No host Python venv, no source-built vLLM. Web UI, OpenAI-compatible API, and GB10-patched vLLM all version-locked in one image.
What's in this release
Unified image — one docker run per node, systemd unit on the host.
Three node modes: solo, head, member. The head orchestrates cross-node tensor-parallel via a patched NCCL (dgxspark-3node-ring); members broadcast their presence on UDP 5679 and reserve GPUs for Ray workers placed by the head.
UI auto-wires distributed launches — pick Minimum Nodes ≥ 2 + Tensor in Launch Instance, the UI writes config and hot-swaps the engine.
Real multi-node cluster topology — aggregated VRAM across members, peer IPs captured via UDP recvfrom, "DISTRIBUTED · TP=N" badges.
NFS-shared model storage pattern + docs.
Verified TP=2 cross-node inference on NVIDIA GB10: 61 GB of model weights on each GPU, NCCL over RoCE @ 200 Gb/s, ~35 tok/s for warm 1.5B model.
Honest State-of-Distributed-Inference section in the README.
What works, what doesn't, lessons learned, and our "why 3 nodes is harder than 2, 4 is probably easier" hypothesis.
Install
curl -fsSL https://ainode.dev/install | bash
or directly:
docker pull ghcr.io/getainode/ainode:0.4.0
docker pull argentos/ainode:0.4.0 # Docker Hub mirror
Screenshots
See README.md on main for the full product tour.
Known limitations
3-node TP requires a proper mesh or dedicated switch subnet — see Networking requirements in the README.
Browser-based fine-tuning UI is scaffolded but not yet validated end-to-end on real GPUs. Tracked as roadmap item.
Ray over VPN (Tailscale) doesn't work for NCCL — use physical cables or a dedicated switch.
Artifacts
ghcr.io/getainode/ainode:0.4.0 (primary)
argentos/ainode:0.4.0 (Docker Hub mirror)
Contributors
This release was driven by Jason Brashear with AI-pair-programming via Claude Opus 4.6 (1M context). All code and docs in this repo are Apache-2.0.
Original source
This is the end. You've seen all the release notes in this feed!
Curated by the Releasebot team
Releasebot is an aggregator of official release notes from hundreds of software vendors and thousands of sources.
Our editorial process involves the manual review and audit of release notes procured with the help of automated systems.