Release day: TUI/Portal v0.10.7

techdevlog

TUI-first releaseTUI/Portal v0.10.7 is published from the independently locked TUI/Portal candidate at commit 5fb554b69f966b39cb9eca32a70c84d628714d18 (tree 05c068dbc5e50832d2d5d425099c104290acd2f4). This is a TUI/Portal-only release — it ships the Go TUI and portal binaries, which talk to agents purely over the filesystem. The coordinated kernel release is developed on its own cadence and is not part of this tag.

TL;DR — The headline change turns /projects into a live admin network switcher backed by the running process inventory (#620). Email history is bounded and paged so the newest 200 entries load in about 50 ms with JSONL as the authoritative replay source (#632), and a mail-rendering polish pass makes the mailbox render once from cache, show full local timestamps, and align the Ctrl+O overlay with the default view (#631, #637, #638, #640). A runtime shim lets projects on either the legacy lingtai_kernel or the new lingtai.kernel import layout keep working (#617), a daemon CLI cache-hit display bug is fixed (#636), and documentation is refreshed. The strict v0.10.6..v0.10.7 window is 16 merged PRs. All four platform archives are published — including an Intel-macOS build we had to recover by hand, described honestly below.

What changed

/projects becomes an admin network switcher

TUI #620 transforms /projects into an admin network switcher backed by the live process inventory. Operators can select any admin/orchestrator agent to switch context, while non-admin members remain visible for topology awareness. The detail pane includes a curated /kanban subset: lifecycle, process uptime, molt count, and live topology. Agent grouping in /projects is clarified in the same window (#639).

Faster, safer mail history and rendering

Email is the primary asynchronous communication surface for long-running agents, so this release spends a focused polish pass on it:

Runtime, diagnostics, and documentation polish

Why this matters

An operator running several agent networks needs to switch context quickly and see what each one is doing; the /projects switcher makes that a single keystroke, with a live kanban subset for at-a-glance health. The mail work removes the papercuts that accumulate over a long session — a mailbox that loads fast, renders once, shows honest timestamps, and does not mutate under a stale async result. The namespace-compat shim (#617) is deliberately small: it lets existing projects upgrade the TUI without being forced onto a new import layout in lockstep.

Complete merged-PR ledger

The strict v0.10.6..v0.10.7 release window contains 16 merged PRs:

  1. #642 — docs(readme): update Discord invite
  2. #640 — fix(tui): align Ctrl+O mailbox rendering
  3. #639 — fix(tui): clarify and group agents in /projects
  4. #638 — fix(tui): show full timestamps for mailbox mail
  5. #637 — fix(tui): render mail once from mailbox cache
  6. #636 — fix(tui): normalize daemon CLI cached input
  7. #633 — docs(covenant): learn from every setback
  8. #632 — perf(tui): speed up large Email history loading
  9. #631 — fix(tui): gate async mail history results
  10. #630 — test: simplify architecture document checks
  11. #629 — docs: present LingTai as a lifelong Digital Scientist
  12. #628 — docs: establish distributed architecture systems
  13. #620 — feat(tui): turn projects into admin network switcher
  14. #618 — docs(tui): clarify /btw inquiry semantics
  15. #617 — refactor(runtime): support lingtai namespace migration
  16. #616 — simplify README and move beginner guide to website

Release-window accounting

Validation

The exact locked candidate passed the release gate:

Installation and assets

The tag-triggered repository workflow builds four platform archives — macOS and Linux on amd64 and arm64. Every archive contains both lingtai-tui and lingtai-portal and is accompanied by a SHA-256 file. The same workflow updates the supported Homebrew tap after computing the tagged source-archive checksum (6bdde2c41a588cccdf54e32732f5c2c6a89df1c2279cde3f7cbca572d05f4dcf).

Published archive checksums:

AssetSHA-256
lingtai-v0.10.7-darwin-amd64.tar.gz7a73db9924edd3e6955cb69434a91c6b503cbf5f7c25a61a70b2503c2a74ead3
lingtai-v0.10.7-darwin-arm64.tar.gz27d4d08236d9d00f47427c2a76f858b711d5c481d5eea84312e8575f50db0fac
lingtai-v0.10.7-linux-amd64.tar.gzdd2374bdba4f146350fa3f50cfc5471429aaac1227b1abc5e9a09f6cd7e77ab8
lingtai-v0.10.7-linux-arm64.tar.gz645feedc7a4e4ff9b8b8cc8f2b3d75d8dea24b8b7c627da37e5c7c2882c1bde0

Transparency: the Intel-macOS build was recovered by hand

We publish four platform archives, but they did not all come off the automated runners cleanly this time. GitHub is retiring the macos-13 Intel runner image that the release workflow uses to build the Intel-macOS (darwin-amd64) archive, and that job failed on this release run while the Apple-Silicon, Linux amd64, and Linux arm64 jobs all passed. Rather than ship three platforms, we rebuilt the Intel-macOS archive manually and uploaded it, so all four archives are present. The manually recovered lingtai-v0.10.7-darwin-amd64.tar.gz hashes to exactly 7a73db99…, the same checksum listed above — the hand-built artifact is byte-identical to what the release intends. Intel-macOS users get a real, verifiable build; the manual step is disclosed here rather than hidden behind a green checkmark.