Release notes: LingTai TUI/Portal v0.10.1 and kernel v0.15.1

techdevlog
TL;DR. LingTai TUI/Portal v0.10.1 and LingTai kernel v0.15.1 are patch releases that finish what v0.10.0 / v0.15.0 began. The headline: a TUI that updates itself even when it was not installed via Homebrew — a manual self-update command, a source-install update backend, and a startup prompt when the on-disk source drifts behind the published TUI (completing issue #404). The kernel adds a claude-code LLM provider, an MCP manual sidecar contract with bundled manuals for curated MCPs, shared _fsutil filesystem/JSON/JSONL helpers that de-risk kernel state writes, a session-recovery refactor, and honest spill/refresh failure visibility. Both versions were validated from clean release worktrees; the GitHub Releases, PyPI upload, and Homebrew bump are now published.

This is a patch window, not a new feature window. The previous release brought token telemetry into the cockpit’s default view; this one closes two loops it left open — let the source TUI update itself the way the Homebrew TUI already could, and give the kernel safer state-write plumbing plus a new way to drive a Claude subscription as an LLM provider.

The headline is the self-update story finishing. v0.10.0 taught the Homebrew TUI to update itself; source and user-local installs were still stranded on whatever binary they last built. This release brings the same update-in-place — manual and on startup — to those installs, so the TUI can keep itself current however it was put on disk. Behind it, the kernel routes more of its state writes through shared, tested helpers and stops letting spill and refresh failures pass silently.

What changed

TUI / Portal v0.10.1

Kernel v0.15.1

Why this matters

A self-update path that only works for Homebrew installs leaves source and user-local users stranded on stale binaries; finishing #404 means the TUI can keep itself current however it was installed, and tell the operator when it is behind. On the kernel side the theme is the same one v0.15.0 set — make the runtime honest and safe under long autonomy. Shared filesystem helpers reduce the number of hand-rolled, slightly-different state writes that a fleet can corrupt; spill and refresh failures that used to pass silently now surface; and the claude-code provider widens how an operator can back the runtime without changing the cockpit they already use.

Validation

Both versions were validated from clean release worktrees off origin/main.

Kernel v0.15.1 was validated at the version-bump commit 2d23801 (on base 834ce8b):

TUI/Portal v0.10.1 was validated at candidate head 418e470 (the build version is injected via make ... VERSION=v0.10.1, with no source bump):

Note on artifacts: the locally built kernel wheel is macOS-arm64 platform-tagged, so the portable sdist is the artifact on PyPI.

For regular users, LingTai’s managed project environments remain the normal way the runtime package is resolved. The PyPI page is the published runtime package source and a useful verification point, not the primary end-user upgrade story.

Direction

With self-update finished across install methods and the kernel’s state writes routed through shared, tested helpers, the runtime is steadier under long unattended sessions. The next steps build on the telemetry the previous window surfaced — act on what the numbers show, and keep widening provider choice without disturbing the cockpit operators already know.