Kernel v0.19.0 · TUI/Portal v0.12.0
LingTai 0.19.0 / 0.12.0: one tool protocol, visible long-running work, and one canonical lifecycle
This coordinated release makes LingTai easier to operate as a long-lived system: model-facing tools converge on LingTai Tool Protocol v2, Task Card gives long-running work a complete and visible lifecycle, install/update/remove scripts gain one canonical source of truth, and channel, notification, mail, and TUI reliability work makes failures more bounded and observable. The release window contains 85 commits and 72 merged PRs from four human contributors.
Upgrade / runtime
Kernel v0.19.0 publishes 15 CPython wheels, one sdist fallback, lingtai-kernel-release-manifest.json, and SHA256SUMS through GitHub and Gitee, with the same frozen wheel/sdist bytes published to PyPI. TUI/Portal v0.12.0 publishes its GitHub source release, updates the Homebrew formula, and produces a Windows AMD64 bundle pinned to kernel v0.19.0. Per the explicit release scope, Windows artifacts were cross-built and hash-verified but not executed. The supported install and upgrade entrypoint is curl -fsSL https://lingtai.ai/install.sh | bash; existing Homebrew users remain supported.
New features and improvements
-
01
One tool protocol across the runtime and channels
LingTai Tool Protocol v2 now gives model-facing tools one predictable action/input envelope while preserving each integration's real ownership and side-effect boundaries.
- Web, email, system, daemon, Psyche, Telegram, IMAP, Feishu, WeChat, WhatsApp, and Cloud Mail surfaces now use the common ToolFamily contract instead of bespoke call shapes.
- Web search and browse preserve complete outputs, while channel adapters keep transport stdout protocol-only and expose rate-limit or retry states honestly.
- The result is a smaller model-facing grammar without pretending that different channels have identical operational semantics.
Why it matters:New tools and channels become easier to learn, audit, and compose, while failures remain attributable to the integration that actually owns them.
-
02
Long-running work is visible through a complete Task Card lifecycle
Task Card is now a declarative intrinsic producer with an explicit terminal lifecycle, a Telegram projection that respects programmable intent, and a TUI viewer for the current artifact.
- Agents can start, inspect, retry, stop, and remove one truthful Task Card watch instead of leaving stale progress behind.
- Telegram keeps its transport-specific projection and automatic composition, while the programmable frame controls only task state and active/inactive intent.
- The TUI adds
/taskcardso operators can open the same current artifact without scraping chat history.
Why it matters:People can see what a long job is doing, whether it is still active, and when its progress artifact has been deliberately retired.
-
03
Install, update, and removal now have one canonical lifecycle
The
Lingtai-AI/lingtairepository now owns the complete POSIX and PowerShell lifecycle; the public website mirrors those exact bytes instead of carrying an independent installer fork.- Stable
install.shandinstall.ps1entrypoints cover install and update, with canonical fix, verify, dev, and removal children behind them. - New
remove.shandremove.ps1delete only receipt-owned installation state, preserve user configuration, secrets, presets, projects, auth, and shared tooling, and remain idempotent on a second run. - Web parity checks fail loud on any mirror drift, so documentation and copy-paste URLs cannot silently diverge from the maintained lifecycle source.
Why it matters:Users get one documented lifecycle and one ownership boundary instead of platform-specific scripts drifting apart over time.
- Stable
-
04
Mail, notification, and operator surfaces fail more honestly
A broad reliability pass makes channel retries, notification delivery, live logs, credential handling, and the mail conversation rail more bounded and observable.
- Telegram rate limits propagate their real retry contract; WeChat and Cloud Mail retry failed wake delivery; Feishu keeps MCP stdio protocol-only; filesystem mail polling is sliced instead of monopolizing a turn.
- Concurrent daemon terminal wakes and synthetic notification calls remain schema-valid, and live SQLite readers see current data.
- The TUI mail rail gains clearer focus/collapse/mouse behavior, consistent credential-family handling, and faster live network refreshes that avoid rescanning mail history.
Why it matters:Operators get fewer silent stalls and clearer evidence when a transport, retry, or live view is the thing that actually failed.
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 Kernel candi.
- Kernel governance 305 documents validated; diff check PASS
- Kernel terminal source-checkout suite 7,239 passed, 27 skipped; 18 inherited failure/error nodes, zero new node names versus the exact prior baseline (recorded nonzero, not PASS)
- Kernel package workflow Run 30598196925 SUCCESS; 15 wheels + 1 sdist + strict manifest/SHA256SUMS
- Package integrity and metadata All 16 package hashes agree across bytes, manifest, and SHA256SUMS; twine check PASS
- Clean package smokes CPython 3.13.14 native macOS arm64 wheel and CPython 3.14.6 sdist fallback import/version — PASS
- TUI/Portal builds and tests Native/cross builds and Portal tests PASS; all TUI tests except two exact inherited cursor nodes PASS; both nodes reproduce identically on base and candidate
- Windows execution Not run by explicit release scope (Telegram 11734); Windows artifacts were cross-built and hash-verified only
- Release window 85 commits and 72 merged PRs across kernel and TUI/Portal; four human contributors audited