写在前面
前阵子看到有人在讨论 Agent 的 TUI 和 GUI,两派吵得挺热闹。
我刚好两边都做过算是比较深入的研究,用 swift 从零开始写过一个 TUI 渲染引擎,也写过 iOS 上的 Agent GUI 客户端.在创作和优化性能的过程中,记录下来不少的笔记和代码,以及各种踩坑和思考,我水平有限,最多只能算是抛砖引玉了.
写这组文章之前,我翻了一遍自己攒下来的东西:项目源码、调试笔记、性能分析记录、读过的博客和开源库的源码、知乎上的相关讨论。散在好几个文件夹里,有些是完整的文档,有些只是当时随手记的片段。觉得这些东西放着也是放着,不如整理出来。
于是重新梳理了一遍,缺的地方补研究,浅的地方往下挖。前前后后写了十几篇,未来可能还会更多,想到哪就写到哪,从 ANSI 转义序列到多端架构,从 Markdown 流式渲染的 O(n²) 陷阱到权限和 diff 的 UX 设计。
不是什么权威结论,就是一个人同时踩过 TUI 和 GUI 两条船之后,把踩过的坑和想清楚的事记下来。如果恰好对你有用,那就最好了。