Builder
Turning rough ideas into products people can install, use, and test.
I design products, operate infrastructure, and write down the failures, decisions, and lessons.


From mobile apps and browser extensions to homelab infrastructure and automation. I care about whether an idea works, and what it teaches after running for a while.
Turning rough ideas into products people can install, use, and test.
Maintaining real systems and finding reliable answers inside their constraints.
Documenting decisions, failures, and lessons worth reusing.
Three different interfaces, one working method: start with a real problem and make a system people can use.
Public Preview
Control Herdr Agents on the same local network from an iPhone.
A local-first companion for Herdr with LAN discovery, QR pairing, and certificate pinning. Agent state stays off cloud relays.




Available on App Store
Turn video into a personal, audio-first listening library.
Follow video channels, convert audio, track progress, and listen offline. Courses, interviews, and talks fit into time on the move.
In Development
Back up, search, and read your liked X posts locally in the browser.
A Chrome MV3 extension that keeps data in on-device IndexedDB by default, with support for full articles and multilingual content.
Product preview coming soon
Notes about systems, failures, decisions, and the fixes worth remembering.
Articles are published in Chinese
View all writing一次从 NAS 风扇狂转开始的排障:顺着磁盘 I/O 追到 Thanos Compactor,发现它静默停摆已久、bucket 膨胀到 241G。定位积压、扩容 PVC、用 thanos tools bucket retention 把过期数据一刀清到 18G。根因是 PVC 太小、halt 后不会
Read article把闲置的 2019 Intel MacBook Pro 改成合盖常驻的 Gitea Actions / Xcode CI Runner:防睡眠、本地网络权限、Universal Xcode、Fastlane 上传 TestFlight,以及单机 Runner 的真实代价。
Read article从绿联 NAS 故障教训出发,记录我如何利用 Borgmatic、rsync 和 IaC 理念,建立真正可靠的 NAS 数据双保险方案。
Read articleFollow the products in progress, read the longer process, or inspect the source.
See what I am building, breaking, and learning in public.
Follow @tomyail