Release notes: LingTai TUI/Portal v0.10.0 and kernel v0.15.0

techdevlog
TL;DR. LingTai TUI/Portal v0.10.0 and LingTai kernel v0.15.0. The headline is telemetry that lives where operators already look: per-round token usage in the API-call footer, and a current-session token line plus a compact context-percentage bar in the home view — followed by a focused copy-and-layout pass that kept the footer, fixed the row, and made the status hints bilingual and correct. The kernel makes a completed bash command say whether its inner command actually succeeded, routes the refresh-watcher's event log through the secret redactor, indexes the token ledger in SQLite with an explicit reporting scope, writes a per-run daemon artifacts.json, nudges agents when on-disk source drifts from the running runtime, and reframes Codex summarize guidance as an investment ratio with tuned thresholds. Both versions were validated from clean release worktrees; the tags, GitHub Releases, PyPI upload, and Homebrew bump are cut as part of the publish step.

This release is about one thing: making the cockpit honest about where a session spends its tokens.

The previous window made the runtime plural — many Codex identities, one fleet — and turned the raw call log into trend reports. This one brings that legibility into the default view, so an operator notices a session quietly burning budget without first opening a report.

What changed

TUI / Portal v0.10.0

Kernel v0.15.0

Why this matters

You cannot trim what you cannot see. Putting per-round token cost and session context in the default view — and making that row read cleanly in both languages — is what turns “we log tokens somewhere” into “the operator notices the expensive session.” On the kernel side, the same theme runs deeper: a bash result that admits its inner command failed, a token total that says whether it counts daemons, an event log that cannot persist a secret, and an agent that knows when it is running stale source are all the runtime refusing to quietly mislead a long, unattended session.

Validation

Kernel v0.15.0 was validated from a clean release worktree at the bump commit c365eec (on base 0797e93):

TUI/Portal v0.10.0 was validated at candidate head 37be28b (= origin/main; the build version is injected via make ... VERSION=v0.10.0, with no source bump):

Note on artifacts: the locally built kernel wheel is macOS-arm64 platform-tagged, so the portable sdist is the artifact for PyPI unless per-platform wheels are intentionally published.

These are the intended tags for v0.10.0 / v0.15.0; the GitHub Releases, PyPI upload, and Homebrew tap bump are cut as part of the publish step.

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.

Contributors

@huangzesen (lead, scope and validation owner), @ktwu01 (TUI preset refactor), @9s5bz2jvd2-lang (TUI beginner work-manual rewrite), and @TZZheng (kernel runtime source-drift nudge and MCP inbox latency diagnostics).

Issue reporters whose reports drove shipped or completed work this window: @lin-du (kernel #301, implemented and shipped as PR #488 “Expose Telegram rich formatting options”; #300 closed completed) and @888yzbt888 (TUI #401 preset bugs, with Bug 1 fixed by in-window kernel PR #479; issue closed completed).

Thanks also to @BrianLiubr (TUI #429/#431) and @xczics (TUI #437) for in-window bug reports that are still under triage — credited here as reports, not yet as shipped fixes.

Direction

The theme holds: make the runtime honest, measurable, and now legible by default. With per-session token cost in front of operators and a token ledger they can scope, the next step is to act on what the numbers show — trim the turns that miss cache, and let the cockpit point at the session that is spending the most.