← Releases

id 20260624-1 · 2026-06-24 · kernel v0.14.2 · TUI/Portal v0.9.6

Kernel v0.14.2 · TUI/Portal v0.9.6

LingTai release day: multi-account Codex, trend reports, and a calmer cockpit

A paired kernel and TUI/Portal release centered on running several Codex identities side by side and seeing how a fleet actually spends its calls: per-agent and per-preset Codex OAuth token files, a multi-OAuth setup UI, swiss-knife tool-call and API-call trend reports, a scrollable `/doctor`, bilingual loading strings, a lower default context cap, cache-miss detail in the kanban call view, and the daemon and bash fixes that keep long-running work honest.

Upgrade / runtime

$ brew update && brew upgrade lingtai-ai/lingtai/lingtai-tui

The Homebrew command updates the TUI/Portal surface. The kernel package lingtai v0.14.2 is published on PyPI as the runtime package source used by LingTai-managed environments; existing projects should follow their normal TUI-managed refresh or setup path rather than treating a bare global pip command as the user upgrade story.

New features and improvements

  1. 01

    Many Codex identities, one fleet

    Kernel v0.14.2 and TUI/Portal v0.9.6 let different agents and presets sign in to Codex as different OAuth identities instead of sharing one global token.

    • A new manifest.llm.codex_auth_path lets each agent or preset point at its own Codex OAuth token file, so multiple ChatGPT accounts can run side by side (kernel #484).
    • TUI/Portal setup gained multi-OAuth UI and preset support, so picking which Codex identity a preset uses is a first-class choice rather than a manual file edit (TUI #415).
    • The default falls back to the shared token path, so existing single-account setups keep working untouched.

    Why it matters:A fleet that mixes accounts needs each agent to authenticate as itself; one shared token makes attribution and rate limits everyone's problem at once.

  2. 02

    Seeing where the calls go

    TUI/Portal v0.9.6 turns raw call logs into trend reports, so a fleet's tool-call and API-call behavior becomes something operators can read at a glance.

    • A new swiss-knife script and skill produce tool-call and API-call trend reports, with wording aligned across the script and the skill (#414).
    • The kanban call view now shows cache-miss detail, so a turn that paid full price instead of hitting cache is visible where operators already look (#410).
    • /doctor is scrollable and has section headers, so a long diagnostic readout is navigable instead of a single wall of text (#413).

    Why it matters:You cannot tune what you cannot see; making call trends and cache misses legible is the first step toward trimming them.

  3. 03

    A calmer, more legible cockpit

    Several smaller TUI changes lower the noise floor and make the default cockpit kinder to readers of more than one language.

    • Loading strings are bilingual and i18n-aware, so the cockpit speaks the operator's language while it warms up (#412).
    • The default context/token cap was lowered to 250k, a more conservative working budget out of the box (#411).
    • These defaults can still be raised per setup; the change is about what an unconfigured cockpit does, not a hard ceiling.

    Why it matters:Defaults are what most sessions actually run with, so a saner default cap and language-aware text matter more than any single advanced toggle.

  4. 04

    Daemon and bash fixes that keep long work honest

    Kernel v0.14.2 repairs two run-directory and working-directory edge cases that previously made long-running daemon work misreport its own state.

    • A daemon historical check now resolves run directories correctly after a refresh or molt, so prior-run inspection no longer breaks across a context shed (#483).
    • An empty working_dir in a bash call is now treated as unset and falls back to the default agent directory, instead of running against an ambiguous path (#480).
    • Both fixes target the moments — post-molt, empty-field — where a long session is most likely to lose track of where it is.

    Why it matters:A long-running agent that loses track of its run directory or working directory will quietly act on the wrong place; these fixes keep it honest about where it is.

  5. 05

    Release hygiene, validation, and contributors

    The window also carried release-hygiene work and was validated from clean release worktrees before publication.

    • The kernel update command is confirm-gated, and a destructive global preset-split migration was neutralized so it can no longer rewrite operator presets.
    • TUI release version comparisons are now classified explicitly (@TZZheng), and the release star CSV was normalized as release hygiene.
    • Kernel gates: compileall clean; focused/expanded pytest over daemon/bash/notification/preset/deep-refresh/tool-executor/openai/codex/provider/auth surfaces 513 passed; python -m build plus twine check PASSED; PyPI reports info.version=0.14.2.
    • TUI/Portal gates: git diff --check clean; TUI and Portal Go tests passed; portal/web npm ci && npm run build passed; TUI and Portal make clean && make build passed; Homebrew Release workflow succeeded for tag v0.9.6.

    Why it matters:A small version bump still deserves confirm-gated mutations, neutralized destructive migrations, and full gate evidence before it ships.

Contributors

Thanks to everyone whose commits, co-authored changes, PRs, reviews, assignments, or reported/closed issues are represented in this release window.

Validation

Final release validation was run from a clean release worktree at commit 009f1aa84eb6.