hal0 v0.9.8
Turnstone lands as a second heavyweight bundled agent alongside Hermes and
becomes a first-class companion service; the unified hal0-rocmfpx runner
becomes the default image for AMD GPUs (with an automatic slot migration on
update); and a memory security fix stops one agent deleting another's private
memories.
Highlights
- Turnstone — a second heavyweight bundled agent joins Hermes: a native
turnstone-serveron loopback :9129, installed into its own managed PyPI venv, coexisting with Hermes via relaxed single-pick (#1299). - Turnstone is a first-class companion service — it shows in the Services pane and the Overview health card with start/stop/restart controls, next to Hermes/Hindsight/OpenWebUI.
- hal0-rocmfpx is now the universal default runner for AMD GPUs — one unified image (Vulkan/RADV + HIP) replaces the per-lane toolboxes; CUDA and CPU-only lanes keep their lean images (#1297).
- Memory: private-visibility is now enforced on delete — in unified-bank mode one agent could delete another agent's
visibility:privatememory by id;deletenow applies the same fail-closed ACL as read/search/list.
Migrations
hal0 updateautomatically re-pins existing AMD-GPU slots from the oldamd-strix-halo-toolboxesimages to the unifiedhal0-rocmfpxrunner (no-op on CUDA/CPU lanes) (#1297).
Added
- Turnstone bundled agent — provisioning pipeline (managed PyPI venv, JWT-secret generation, model automap) plus hal0 provider/memory wiring, coexisting with Hermes (#1299).
- Turnstone companion-service registration — a
ServiceDef+ systemd health probe, so turnstone appears in/api/services(Services pane, full lifecycle actions) and/api/services/health(Overview card + sidebar status).
Changed
- hal0-rocmfpx as the default AMD-GPU image — basic seed profiles defer to a manifest-driven resolver that returns the unified runner for AMD lanes, the CUDA image for NVIDIA, and the lean toolbox for CPU-only (#1297).
- PyPI distribution is published under the name
hal0ai(the import package andhal0/hal0-agentconsole scripts are unchanged) (#1298).
Fixed
- Memory delete ACL —
deleteenforces thevisibility:privateowner check in unified-bank mode, so an agent can no longer delete another agent's private memory by (guessable) document id; unresolved ids are withheld fail-closed (#1302).