{"zh":{"count":12,"issues":[{"title":"第270期 - 喜欢乔村","link":"https://weekly.tw93.fun/posts/270/","pubDate":"Mon, 15 Jun 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/27034.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/27034.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/27034.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5691\" data-pswp-height=\"4268\" style=\"aspect-ratio: 1.3334;\" width=\"800\">\n<p><small>封面图拍摄于周末去乔村吃饭，随手拍的一张照片，他们家好吃的，牛油果三文鱼好好吃，假如有朋友来杭州，我一般会带着去吃这个或者张功馆。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"最新推荐\">最新推荐</h2>\n<p><strong>假如你的朋友最近需要更新简历，一定要把 Kami 推荐给他</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\n假如你的朋友最近需要更新简历，一定要把 Kami 推荐给他，我单独细致优化了一个版本，单独让 Kami 写简历变得非常好用好看清晰，让他把他的原生素材 md 准备好，然后对着 AI 说 /kami 帮我产出一个简历，然后调 1-2 下差不多就好了，不仅仅是排版，还有帮我优化整理好你的简历内容，让他从一个技术终面官的视角来看所需要的人才画像。<br>\n<img src=\"https://cdn.fliggy.com/pic/9MamaP33.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/9MamaP33.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/9MamaP33.png\" loading=\"lazy\" data-pswp-width=\"1241\" data-pswp-height=\"1754\" style=\"aspect-ratio: 0.7075;\" width=\"800\"></p>\n<h2 id=\"产品发布\">产品发布</h2>\n<p><strong>Mole 的客户端 1.7.2 新版本来啦</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\n这次版本更新了非常多的东西，包括支持无障碍用户的使用，Status 和菜单栏更快更稳，Software、卸载和更新更完整，Clean 更全面，也保留审查优先，隐私检查更准也更安静更加智能，Analyze、Doctor 和 Clean Screen 也更稳了，Apple 芯片风扇控制这里也有不少优化。</p>\n<p>刚好 Mole Mac 版本发布一个月，用业余时间写，数据有点意思。一共写了 11 万行 Swift 代码，含 3.6 万行测试代码，1983 个单元测试，累计发布 8 个版本，145 项新功能，支持了 9 个语言。早鸟价最后一天，MOLEWEEKLY 还有效，欢迎有需要的小伙伴去玩玩，后续有更多惊喜给到大家。</p>\n<p><video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mole318.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>Kaku 终于也更新到了 0.12 版本</strong><br>\n甚至 Kaku 都有自己的小官网了 <a href=\"https://kaku.fun/\">https://kaku.fun/</a>，小伙伴可以去看看，这次更新了不少东西，支持了重新打开窗口后会话历史恢复、也支持了 Codex 后端登录可以直接使用的 AI 功能，PDF、图片、音视频、压缩包、Office 文档现在都用系统默认 app 打开，所有面板都停在 shell 提示符时，Cmd+Q 会直接退出等等有意思功能，可以去看看 Release。<br>\n<img src=\"https://cdn.fliggy.com/pic/8fKF3s43.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/8fKF3s43.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/8fKF3s43.png\" loading=\"lazy\" data-pswp-width=\"3116\" data-pswp-height=\"1540\" style=\"aspect-ratio: 2.0234;\" width=\"800\"></p>\n<p><strong>Pake 最近一些有意思的更新</strong><br>\n<a href=\"http://github.com/tw93/Pake\">http://github.com/tw93/Pake</a><br>\n一键打包网页生成轻量桌面应用，支持 macOS、Windows 和 Linux 的 Pake，最近支持了 cmd+f 内容搜索、右键支持下载东西、桌面应用名称支持点号、Linux 下面的 AppImage 构建失败提示更清晰，修复了 pnpm 11 兼容修复等等问题。<br>\n<img src=\"https://cdn.fliggy.com/pic/pake128.gif\" width=\"800\"></p>\n<h2 id=\"随便聊聊\">随便聊聊</h2>\n<p><strong>我不是网红，不是自媒体，不是 KOL，那我是什么</strong><br>\n<img src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"><br>\n我的推特收益每次只有 100 多刀，应该远少于大部分蓝 V，甚至比那个被 Tauri 伤过两次的小伙伴还要低，挺有意思的，为啥这么少呢？哈哈哈我要反思一下，顺便给大伙分享一下我的失败经验。</p>\n<p>首先我不是网红、也不是自媒体、也不是 KOL，啥也不是，就是一个普通的写点儿兴趣代码的工程师。推特对我来说，就是把我做的开源产品更新日志同步给大伙，然后分享一些生活中去哪儿玩了、吃了啥、看了啥的日常推。没有任何流量压力，也没有任何用流量来赚钱的压力，收益少就少呗，反而刚好造就了这个我现在越来越喜欢的账号。</p>\n<p>自媒体博主一般是靠接广告来赚钱，一般 AI 的给得其实挺多，平时通过分享非常多利他的产品来让更多人关注，利他的同时获得应有的收益，其实也挺好的。不过一般会有流量压力，要一直追热点、琢磨标题，发得越长久就会做到越来越好，只是我感觉这个事情太累了，自己做不来。</p>\n<p>其实我之前也接过一些广告，不过已经很久不接了。之前记得有机构联系我，说广告主不喜欢我这种账号，喜欢那种经常发 AI 热点的账号，我一听，反而很高兴，哈哈，我的账号没有变成人家眼中的高质量流量账号，那应该我保持得还行。</p>\n<p>一直在想，假如用一个词语来描述我的账号该是什么呢？想了好久，终于在今天想到了，所以出现了这篇随便文章：我的账号应该是一本长期迭代的「Tw93 工程师杂志」。</p>\n<p>这本杂志大概有这么几个栏目：产品手记，记录 Pake、Mole、Kaku 这些产品的更新迭代和有趣的思路；技术专栏，写写技术思考、对 AI 的思考、新技术领域的学习专题；好物推荐，都是我自己真在用的好工具，没有恰饭的那种；还有一个随便看看的模块，可以看到我的日常生活，吃的、玩的、看的。</p>\n<p>每一个工程师都可以随便翻翻，看到一些自己感兴趣的东西，然后深入去把玩，对于想学习的朋友也可以基于我的长文一篇一篇看下去，再去我的博客以及潮流周刊看到往期更有意思的内容。</p>\n<p>这个杂志几乎没有广告，也不会为了推广自己的产品去说一些违心的话。更新也很随意，一般每天最多发两条，太忙就只发一条，想到啥发啥。同时这本杂志也是一个持续迭代的产品，你可以基于他看到我这个人每年的变化，像一个持续陪伴你的技术好友，也可以通过私信来联系这本杂志的编辑。</p>\n<p>杂志慢慢也在发展自己的副业 Mole，能卖出去并非产品多好用，更多还是大家对这个杂志本身的信任。这事还让我体会到，流量低的内容不代表没价值，看的人是不多，但信任很足，反而能带来一些意想不到的转化，挺神奇的。只不过他经营得比较随意，但是比较持续。</p>\n<p>那么我到底在运营什么呢？应该就是 Tw93 这本杂志。我是个什么样的人，就写什么样的内容，自然就会遇到什么样的读者，不需要担心写什么。最终我最想做的事情就是让阅读这本杂志的工程师和我可以更好地相互学习、成长，但是也不焦虑的那种。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第269期 - 天目胜景","link":"https://weekly.tw93.fun/posts/269/","pubDate":"Sun, 07 Jun 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图拍摄于上上周末去的临安天目山的天目胜景，很不错的一个地方，夏天非常凉快，氧气很足，山上的留椿屋非常好吃，推荐去玩玩，比九溪烟树人少好太多了。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"最新文章\">最新文章</h2>\n<p><strong>你不知道的具身智能：从小机器狗到 Optimus</strong><br>\n<a href=\"https://tw93.fun/2026-06-07/robot.html\">https://tw93.fun/2026-06-07/robot.html</a><br>\n新文章来啦，今年 4 月我组装了一台小机器狗，做的过程在推特上发过几条，大伙应该都刷到过，然后断断续续写了快 2 个月，终于写好了，是我历史写过最长的一篇文章，随便看看。<br>\n<img src=\"https://cdn.fliggy.com/pic/robot145.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/robot145.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/robot145.png\" loading=\"lazy\" data-pswp-width=\"3000\" data-pswp-height=\"1200\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"产品发布\">产品发布</h2>\n<p><strong>Mole 的客户端 1.6.2 新版本来啦</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\n争取尽快把 Mole 桌面端的一些好特性尽快补齐，最近发布了 1.6.2 版本，欢迎去更新，也欢迎没有购买小伙有兴趣去购买，预计 0615 后恢复正常价格。<br>\n1、Keep Screen On（新）：菜单栏可以让 Mac 保持唤醒，支持选择时长；启动恢复会安静完成，不再突然要求管理员授权。<br>\n2、隐私检查（新）：菜单栏弹窗会显示摄像头或麦克风使用状态，并发送本地通知，不打开主窗口也能看到。<br>\n3、Clean Screen 擦屏（新）：把屏幕切成纯色，方便擦拭屏幕和键盘，按 Escape 退出，也可以开启输入锁。<br>\n4、软件更新覆盖更多应用：Software 会检查 Mac App Store、Sparkle、Electron、Homebrew cask/formula、Homebrew catalog 和 GitHub Releases，进度更清楚。<br>\n5、卸载能找到更多残留：残留识别覆盖 receipts、Launch Items、Group Containers、Darwin 临时缓存和更多 App Support 痕迹。<br>\n6、Clean 更有用，也保持谨慎，Mole 会找出项目里的 build、dist、target、node_modules 等大目录，但默认留给用户审查。<br>\n7、Analyze 扫描更快：磁盘分析加入并发计算、缓存复用和子目录预热，大目录打开更快。</p>\n<img src=\"https://cdn.fliggy.com/pic/2QNwTk40.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/2QNwTk40.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/2QNwTk40.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2027\" style=\"aspect-ratio: 2.0207;\" width=\"800\">\n<p><strong>最近好内容值得好版面的 Kami 更新了不少东西</strong><br>\n<a href=\"http://kami.tw93.fun\">http://kami.tw93.fun</a><br>\n1、新增了网页落地页模块，比如说你看到的 Mole 的官网、Kami 自己的官网其实都是通过 kami 自举来生成的，非常适合你的产品页介绍，甚至给你想好了 Geo、Sitemap、Vercel 部署的考虑点，让你建站无忧。<br>\n2、终于支持 Marp 幻灯片模式了，又回到了那个用 Markdown 写 PPT 的时候了，一份 md 通过 marp-cli 就能导出 HTML、PDF 或 PPTX，主题内置 Kami 配色和字体，也是开箱即用，也很轻量。<br>\n3、发现居然有不少韩国用户，于是 Kami 在支持 中文、繁体、英文、日语的基础上对韩语进行了很细的支持以及多模版设计，假如你是韩国的朋友，非常欢迎试试，给我提建议。<br>\n4、现在的一页纸模块、作品集、PPT 都支持导入你的品牌 logo 以及其他调性，让 Kami 和你的品牌风格融为一体。<br>\n5、因为我们是工程师，Kami 对于代码的展示也做到了自动语法高亮，构建的时候会自动帮你着色，无需外部 css。<br>\n6、还有一个有意思的是，虽然 Kami 也是 Skill，但是其实他 70% 都是代码，而非 Markdown，假如你想学习写一个默认听话好用的 Skill，也换欢迎你去读读代码，可能有帮助 <a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a></p>\n<p><video width=\"800px\" preload=\"metadata\" loop autoplay muted><source src=\"https://cdn.fliggy.com/pic/kami04.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>给 Kaku 做了一个好看的官网</strong><br>\n<a href=\"http://kaku.fun\">http://kaku.fun</a><br>\n终于完成了，使用的是 Kami 的技能来做的，补充了不少文档的东西，支持中英文，小 Kaku 终于也有自己的官网了，欢迎去看看，此外 Kaku 0.12 版本也发布了，记得去更新～<br>\n<img src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png\" loading=\"lazy\" data-pswp-width=\"3818\" data-pswp-height=\"2562\" style=\"aspect-ratio: 1.4902;\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>小伙伴来看看我最新的桌面</strong><br>\n非常高兴，周末到的，之前我的显示器下垫了一本厚书加上一板麻将，高度刚刚好，但是强迫症想找一个不突兀 30×20×10 的方块放下面，找了很多显示器专业的垫高都太大了，也看过用亚克力板，也点粗糙，无解。<br>\n关键来了，pdd 不知怎么逛到了佛像底座这个东西，完美契合啊，还便宜十倍，效果非常之好！</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"38%\">\n          <img src=\"https://cdn.fliggy.com/pic/HM8cAV17.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/HM8cAV17.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/HM8cAV17.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"38%\">\n            <img src=\"https://cdn.fliggy.com/pic/2OEw9N23.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/2OEw9N23.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/2OEw9N23.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"24%\">\n            <img src=\"https://cdn.fliggy.com/pic/nBYIfw31.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/nBYIfw31.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/nBYIfw31.png\" loading=\"lazy\" data-pswp-width=\"943\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.4604;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>我居然才去看给阿嬷的情书，很推荐</strong><br>\n周末去看了一下「给阿嬷的情书」这个电影，马上要下映了，非常好看非常感动，近两年电影院看过的最好看的电影，那几个年轻演员选的非常好，没有看过小伙伴有空非常推荐去看！<br>\n<img src=\"https://cdn.fliggy.com/pic/HgIK5M29.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/HgIK5M29.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/HgIK5M29.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><strong>聊聊我做产品的一些取舍</strong><br>\nMole Mac 发布 20 多天后销量到了一个小里程碑，想和大伙聊聊我这个过程中的一些取舍，以及我为啥在前期在处理和用户的任何交流、答疑上、退款全部用手工的方式来进行，希望对正在独立研发自己作品的小伙伴有一些输入。</p>\n<p>首先说，为啥我要检查完全手工手写的处理处理用户的答疑、反馈、邮件回复、退款、重置激活码、退差价等等这些事情，虽然不足用户量的 1%，其实完全可以花半小时写一个 Agent 来帮我处理，这或许也是很多工程师做产品过程中一个很常见的看似高效但是不是很好的误区，这里有两个考虑，只有你真实的处理用户的售后问题，你才能感觉到用户真正需要的，他为啥要退款，为啥感觉不好用，他的真实的建议反馈，甚至还可以邮件交流获取到更多真实的诉求，以及这个你的处理过程中你熟练了解各种问题的最好答复和解决方案，这样等产品慢慢做大以后，再来用 Agent 提效会比一开始好很多。</p>\n<p>其次，为啥不建议一开始就建立所谓的售后系统，因为这也是产品工程师一个重要的决策技术判断，优先做好主产品功能，而非一上来就把你的周边配套都搭建起来，虽然 AI 很快，但是还是会浪费你的宝贵时间去优化产品本身，看似不花时间，其实花了你很多时间，有这个时间去优化产品，满足用户的真实诉求会好太多了。</p>\n<p>然后想和大伙交流，对于工程师转型产品独立研发过程中常见的一些坑点，首先一个好的产品和一般产品的区别是什么呢？好的产品更会决策哪些东西不做，不同的功能放到哪一个阶段做对于产品以及用户最好，哪些功能即使很好，但是不是本产品的主线也不应该放进来，不然很容易变成一个大杂烩，也不好维护。好的产品还有一个特性是脑袋里其实有这个产品半年内发展的脉络，很清晰知道每一个版本应该加哪些功能，以及哪些功能是伪需求，以及什么功能应该放到用户顺手的地方，对于普通小白不要说明书的产品才是好产品，这也是有小伙伴建议一些 mac 上的好功能想加到 mole 里面被我抱歉的原因，保持克制，以及坚信如无必要，勿增实体的产品观点。</p>\n<p>mole 的定位是 mac 的系统优化、清理、维护的安静守护者，保持这个定位，去完善他，做到全世界最好用的 mac 维护软件，要是全球有每 100 个 mac 用户就有一个使用 mole，那么 mole 就真的很好用了，也是我做产品追求的点，让更多非技术小伙伴享受到工程师产品的乐趣，最近还有视障用户在使用 mole，遇到一些无障碍问题，我抓紧修复，非常期待他们使用起来的效果和体验。</p>\n<p>或许在 AI 时代，的确让很多东西方便很多了，但是和人的交流不能用 AI 代替，不然就没有啥意思来，虽然可以提效，但是很难提升彼此感情和信任，这或许会是以后用 AICoding 出来的产品保持人味的一个很好的途径。</p>\n<p>由于第一次做付费产品，可能也有是我思考不周的地方，也很欢迎有经验的朋友帮助指出和建议。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第268期 - 小河公园","link":"https://weekly.tw93.fun/posts/268/","pubDate":"Mon, 25 May 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/26829.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26829.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26829.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图拍摄于上一个周末在小河公园拍到的一座有质感的建筑，刚好阳光非常好，绿树搭一起很好看。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"产品发布\">产品发布</h2>\n<p><strong>Mole 的客户端来啦</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\n终于终于 Mole 的 Mac 桌面版本来啦，CLI 也会一直免费开源下去，桌面端是为喜欢有交互产品感的小伙伴准备的，最近更新到了 1.5 版本，新增了菜单栏的各种精灵动画效果，支持了软件自启动管理、软件更新管理，以及最有趣的风扇控制等功能，还有更多内容欢迎大伙直接去看官网说明，给周刊小伙伴一个折扣码 MOLEWEEKLY 可以 8 折，当前早鸟价 9 刀。</p>\n<p>假如你之前给 Mole 贡献过代码，或者在 GitHub 上赞助过我，欢迎私聊我，我送一个 100% 折扣码给你。</p>\n<p><video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mole206.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>Mole CLI 更新到了 1.39 版本</strong><br>\n<a href=\"https://github.com/tw93/Mole\">https://github.com/tw93/Mole</a><br>\n1、mo clean 大幅加固：GUI app dotdir 和 Gradle DSL 缓存不再被误清，dry-run 与实际清理判断一致不再虚报，simctl 探测加入重试修复重启后首次报错，废纸篓清理不再弹 macOS 警告对话框阻塞运行，TMPDIR 清理提速约一个数量级，新增 UTM/Lima/Arc/QQ Browser/Codex CLI/Antigravity/Gemini 缓存覆盖，VS Code 系列按 .obsolete 标记清残留扩展。<br>\n2、mo uninstall bundle ID 匹配升级为边界校验防止误命中，残留登录项会在摘要中指明清理路径。mo purge 加固超时保护和 trap 处理，任意退出都会恢复光标并清临时文件。<br>\n3、mo analyze 硬链接按 inode 去重，FCP 等托管媒体不再虚报数十倍。mo status 可用内存算法与活动监视器对齐。<br>\n4、mo touchid PAM 写入改用原子操作保持只读权限。mo optimize 移除蓝牙重置避免误踢设备。<br>\n5、全局支持 NO_COLOR=1，Trash 不可用时 fail closed 防止静默永久删除。<br>\n<img src=\"https://cdn.fliggy.com/pic/XjXNoU39.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XjXNoU39.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XjXNoU39.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"></p>\n<p><strong>Kami 支持做产品官网落地页了</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\n最近 Kami 也更新了不少东西，除去原有的 PDF 生成外，你可以告诉他你需要做一个 xxx 产品落地页，他就会帮你做成 Mole 官网那种偏安静的风格。<br>\n<img src=\"https://cdn.fliggy.com/pic/XdDecf51.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XdDecf51.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XdDecf51.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2201\" style=\"aspect-ratio: 1.8610;\" width=\"800\"></p>\n<p><strong>Waza 最近有不少更新</strong><br>\n<a href=\"https://github.com/tw93/Waza\">https://github.com/tw93/Waza</a><br>\nWaza (技, わざ) 工程师技能 Skills 合集最近有不少更新，发一条推同步给大伙，在用的小伙伴记得更新，我又把将近一个月开发的最佳实践沉淀进去了，特别是最近 Mole 客户端研发过程中积累的很多经验。</p>\n<p>首先 Waza 终于完全支持 codex 了，一行命令就能开启，所有能力都支持，因为我感觉最近 codex 挺好用的。</p>\n<p>最重要的是，原来的 health 技能本来只是用来检查 Claude 配置和使用是否符合最佳实践，现在升级成了整个 Agent Health。现在不少人用 AI 写代码有一个非常有趣的现象，就是开始觉得很牛逼，写久了就维护不动、也不好扩展了，这种情况下你可以试试 /health，会帮你检查代码，包括各种能力是否还 OK、是否好维护、是否要拆解、是否要删除无用文件，好比是你 AI 生成的烂代码的清道夫。</p>\n<p>然后是思考模式 /think 也有很多更新，你可以和他一起讨论这个功能是否应该做，他会从 Kill / Keep / Pivot 几个维度给你判断。其实很多时候一个产品是由”什么不该加”决定的，而不是”还能加什么”。</p>\n<p>我一直觉得给 AI 加规则需要克制，你每加一条规则对它而言就变成了上限，模型变强后你的规则反而拖后腿了。这也是我不喜欢 Superpowers 和所谓 Spec 编程的缘故，太啰嗦、规则太多。这也是写 Waza 的原因，好比把我写代码的分身装到了你的电脑里。</p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>Lightpanda：Zig 从头写的无头浏览器</strong><br>\n<a href=\"https://github.com/lightpanda-io/browser\">https://github.com/lightpanda-io/browser</a><br>\nZig 从头写的无头浏览器，为 Agent/自动化设计，传说比 Chrome 内存 -9x，速度 +11x，兼容 CDP 协议（Playwright/Puppeteer），Agent 时代的浏览器基础设施可以试试看。<br>\n<img src=\"https://cdn.fliggy.com/pic/aQKcGc14.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/aQKcGc14.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/aQKcGc14.png\" loading=\"lazy\" data-pswp-width=\"1956\" data-pswp-height=\"1124\" style=\"aspect-ratio: 1.7402;\" width=\"800\"></p>\n<p><strong>Mise：Dev tools, env vars, and tasks in one CLI</strong><br>\n<a href=\"https://github.com/jdx/mise\">https://github.com/jdx/mise</a><br>\n一个工具统一运行时版本(nvm/asdf)+环境变量(direnv)+任务(make)，一个 mise.toml 管全部。Rust 轻量二进制，有兴趣小伙伴可以试试看。<br>\n<img src=\"https://cdn.fliggy.com/pic/demo34.gif\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>推荐这个柠檬味的苏打水</strong><br>\n一定要冷藏后再喝，非常好喝，不要喝原味的，就这个柠檬味最爽！</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n          <img src=\"https://cdn.fliggy.com/pic/XcWaIV34.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XcWaIV34.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XcWaIV34.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"50%\">\n            <img src=\"https://cdn.fliggy.com/pic/PVaCgF40.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/PVaCgF40.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/PVaCgF40.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>这个滴眼液我一直在用还不错</strong><br>\n假如小伙伴经常忘我地 AICoding，可以买一支海露滴眼液，再让你的手表提醒你站起来走走。<br>\n<img src=\"https://cdn.fliggy.com/pic/ybMdQk09.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/ybMdQk09.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/ybMdQk09.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\"></p>\n<p><strong>买了几个不错的木质东西</strong><br>\n第一个是鞋拔子，不用弯腰穿鞋了；第二个是电脑撑高架，非常好用，带防滑；第三个是放香薰的小瓶子；第四个是做咖啡时扫咖啡渣的小刷子。</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"25%\">\n          <img src=\"https://cdn.fliggy.com/pic/gv97iD44.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/gv97iD44.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/gv97iD44.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/UXoeo050.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/UXoeo050.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/UXoeo050.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/NUPl0m57.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/NUPl0m57.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/NUPl0m57.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/j7ICAj15.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/j7ICAj15.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/j7ICAj15.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>聊一聊 Mole 桌面端的发布</strong><br>\n顺着最近发布的 Mole Mac 这个事情，想给大伙分享一下我这两天经历的神奇时刻。感谢这个去年在三亚泳池边的小玩具项目，让我认识了很多海外有趣的开发者，各个国家的。</p>\n<p>Mac 客户端陆续做了两个周末。之前有不少国外用户提过，家里的父母、兄妹不会用 CLI 但很想要这个功能，问能否出一个简单好用的桌面端。当时一方面是时间不够，另一方面是觉得 Mole CLI 还没到我认为成熟的地步，所以一直拖到了现在。</p>\n<p>Mole 发布也才半年，居然超过 50K star，500 个用户提交的 issue 清理建议、300 个高质量的功能 PR、100 位全球开发者的贡献，带来了可能比现在 CleanMyMac 这类工具更强大的清理能力。甚至因为在 README 挂了 2 张我用 Vercel 加速的图片，一周跑了 60T 流量，直接欠了 Vercel 80 刀，我才意识到用的人真的很多，那桌面端就可以做了。</p>\n<p>Mole 桌面端的很多巧思都是开始做的时候才想到的。比如用行星来代表每一个功能，和我小时候喜欢看各种行星运行有关系，加上 10 年前学会前端后第一个特别想学的就是 WebGL，开始用 WebGL 来画行星，行星的特征和 Mole 做的事情可以很好呼应，所以把这个主题加了进来：</p>\n<p>清理用地球，「雨洗旧土，尘随潮去」<br>\n卸载用火星，「红尘覆旧，轻装再行」<br>\n优化用水星，「近轨疾行，小修有声」<br>\n分析用木星，「远目成图，微处可见」<br>\n状态用太阳，「光不合眼，心跳长明」</p>\n<p>好比小鼹鼠的挖掘探索从小地方到了大世界的感觉，但是依然很清静，不会打扰你。</p>\n<p>还有一个设计小巧思，各个行星的贴面图我换了不下 10 次，从 NASA 官网下载挑选了很多，找到最合适的。其实每一个行星转的方向方位、转速、完成后的飞行效果特征均有参考实际的行星运行情况，这个过程也算是 AI Coding 中很有乐趣的部分。虽然感觉这些东西和 Mole 鼹鼠好像没有那么大的联系，完全可以做一个很简单的菜单栏点啥清理啥就行，但还是想着不能这样，用 AI 产生的赛博垃圾已经太多了，我需要做一个舒服一点的东西出来，让我的 token 不浪费，也为了不污染你的时间线。</p>\n<p>当天晚上大概 10 点发布，很感谢很多朋友自发转发，也特别感谢很多用户来购买，甚至有不少小伙伴仅仅是因为 CLI 带来的好处特地来购买的。欧美用户特别多，法国、德国各种币种，真的很神奇。其实 Mac 桌面端还有很多需要补充的功能，也很感谢大家的包容，为了一个漂亮小玩具预付了 9 刀，我继续加油把功能做好才行。</p>\n<p>我做事情很喜欢水到渠成，不喜欢短时间急切追求结果。这种长期持续迭代，持续认识很多新朋友，给到我很多的输入交流讨论，才是最宝贵的财富，特别有意思。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第267期 - 西湖拍字","link":"https://weekly.tw93.fun/posts/267/","pubDate":"Mon, 11 May 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/26722.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26722.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26722.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图拍摄于上一个周末，为了给我的造字Luo找笔画的感觉，去西湖旁边的路上找这种石刻字，拍的图片。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"最新文字\">最新文字</h2>\n<p><strong>你不知道的 GEO：AI 可见性的原理、实践与取舍</strong><br>\n<a href=\"https://tw93.fun/2026-05-01/ai-visibility.html\">https://tw93.fun/2026-05-01/ai-visibility.html</a><br>\n这几天有好几个小伙伴@我说，我的开源工具在他们问 AI 的时候被主动推荐了，啥也没做居然可以被收录，想着要不花一个小时把内容结构化整一整，应该会更好，于是整好以后，快速发了一个速记推，但是内容结构不清晰，想着大家很感兴趣，那要不就整一个结构清晰的文章便于沉淀和查找。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/w5/ai.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/w5/ai.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/w5/ai.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>好内容配好版面的 Kami 升级了</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\n最近 Kami 进行了好几个升级，包括修复 PPT 中文乱码、工程提速、文档类比扩展到 8 类、很多细节的排版打磨、内置图表能力的更新等等事情，欢迎去更新试试。<br>\n<img src=\"https://cdn.fliggy.com/pic/rPlaVb01.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/rPlaVb01.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/rPlaVb01.png\" loading=\"lazy\" data-pswp-width=\"3276\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.3696;\" width=\"800\"></p>\n<p><strong>工程师 8 大技能树 Waza 更新了</strong><br>\n<a href=\"https://github.com/tw93/Waza\">https://github.com/tw93/Waza</a><br>\n1、Durable Context: 六个 skill (think, check, hunt, design, write, health) 可以消费可选 memory/preview 上下文, 安全契约: 当前状态始终优先, 默认禁读原始对话, 不允许写死机器路径。<br>\n2、Plan Execution Mode: /check 按步骤执行已批准的实现计划, 默认 review-then-ship 续行; document review 路由移交 /write。<br>\n3、Evaluation Mode: /think 新增 Kill/Keep/Pivot 输出, 判断某个东西该不该做、该不该留。<br>\n4、验证护栏: 触发词重叠检测、路由漂移检查、attribution 泄漏拦截, 防止 skill 静默冲突和个人信息意外泄露。<br>\n5、Design 和 Write 参考: 新增排印陷阱、设计 token、美学质量、中英混排规范、release-note 风格指南。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/qa/waza_repaired_v4.svg\" width=\"800\"></p>\n<p><strong>Kaku 终于更新到了 V0.10 版本</strong><br>\n<a href=\"https://github.com/tw93/kaku\">https://github.com/tw93/kaku</a><br>\n🥷 大伙久等了，Kaku 终于更新到了 V0.10 版本，这个版本憋了我好几个小版本没有发布，一直在优化调试 Kaku 一个很便捷的端内的 Agent 助手功能，是一个干净利落不啰嗦的技术伙伴的感觉，你可以用 Cmd + L 一键唤起，不会干扰你的任何现有的内容，但是他会很聪明去读你的上下文，并提供了不少我挑选的好工具来补充他的手，他的脑袋由你通过 kaku ai 去配置，这里非常推荐配置上搜索的能力，推荐 pipellm 的不错。</p>\n<p>AI 功能是我一直想做，但是不想打扰用户的功能，这里你假如更习惯纯终端使用，我也更新了非常多的功能和大伙聊聊。</p>\n<p>首先支持一个一个有意思的智能窗口判断拦截，当你没有在 kaku config 里面配置是否需要拦截窗口关闭的时候，假如你正在进行 AI 工作，他会动态拦截问你是否要真的关闭，防止你不小心关掉。</p>\n<p>终于也支持的窗口快照的能力，Kaku 自动保存多 tab、多 pane 布局，需要时按 Cmd+Option+Shift+T，或从 Shell → Restore Previous Window 来恢复，这样可以很好防止你关掉后，想重新再来的痛点。</p>\n<p>也有小伙伴给我提建议说现在浅色模式很好看，但是深色模式对比度有点强了，接收到了，现在我调了一版很柔和的深色模式，降低了高亮色饱和度，前景文字微微调暗，长时间盯屏更不刺眼。</p>\n<p>然后我对启动速度，冷启动速度很有强迫症，还是想做那个最快的终端，我通过 Lua 字节码缓存、字体与配置延迟初始化、shell 用户变量缓存等方式，让你的 Kaku 一下子就可以打开，虽然距离 Alacritty 速度还有一点点差距，我继续加油。</p>\n<p>最后修复了全屏崩溃和卡住、显示器竞态、resize 缝隙、光标 reflow、链接、选择、浅色主题可读性和 TUI 复制等等细节问题。</p>\n<p>假如你第一次听说 Kaku，也很欢迎去试试，当前还不是成熟，正在优化中，有任何建议以及发现 Bug，欢迎大伙提交 issue 给我去解决。<br>\n<video width=\"800px\" preload=\"metadata\" loop autoplay muted><source src=\"https://cdn.fliggy.com/pic/kaku14.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>M5 Pro 黑色终于到了 非常漂亮 非常激动</strong><br>\n16 寸 M5 Pro / 48GB / 1TB 黑色普通玻璃我感觉这个配置非常适合想购买新电脑的小伙伴。<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mac36.MP4\" type=\"video/mp4\"></video></p>\n<p><strong>整了一个 iPhone SE3 玩玩</strong><br>\n这个小手机怎么可以这么精致，摸在手里太舒服了。</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"33%\">\n          <img src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"33%\">\n            <img src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"33%\">\n            <img src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>我的一个不错的 UI Bug 调试的技巧</strong><br>\n给大伙分享一个很有用的 UI bug debug 的方案，就是我之前古法代码阶段经常用的录屏慢放调试的办法，AI 很难理解这个，但人很好理解，找到那一帧有问题的，然后你就大概知道问题在哪儿了，再把截图给 AI，基本上会比打日志、猜的方式排查好太多了。<br>\n<img src=\"https://cdn.fliggy.com/pic/44JbuE11.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/44JbuE11.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/44JbuE11.png\" loading=\"lazy\" data-pswp-width=\"3434\" data-pswp-height=\"2314\" style=\"aspect-ratio: 1.4840;\" width=\"800\"></p>\n<p><strong>玩推特居然 4 年了，发了一个碎碎念</strong><br>\n加入 X 居然已经 4 年了，这段旅程非常有意思，也正是把我不少技术产品分享欲找到一个了一个很好的出口。</p>\n<p>刚好和新朋友聊一下我是怎么来这里的，当时还叫推特，那时候妙言刚刚写不久，想找一个地方来同步我的更新日志，对，很简单的一个事情，于是就用谷歌登录注册的推特，然后发了当时妙言的介绍，非常神奇，原来妙言在已经被很多很多粉丝多的朋友已经在推荐这个简单好用的 markdown 原生笔记应用了，过来后，好像突然有一种原来有这么多朋友在这里，终于见面那种感觉，当时推特环境真好，没有这么多广告营销搞钱，更多是分享、交流，纯粹的技术讨论，很遗憾，当时不少输出质量比我高很多的朋友慢慢发的很少了。</p>\n<p>后面我慢慢每天早上分享我看到的一些好开源产品，或者自己新产品的发布，以及自己的一些想法碎碎念，慢慢的认识了不少志同道合的朋友，他们也给我的开源开项目贡献了非常大的精力，包括台湾的很多朋友、日本的、土耳其的、欧美的，特别是 Pake 这个项目，很多小伙伴帮忙，这也是当时没有 AICoding 的时代写代码的一种纯粹。</p>\n<p>等 ChatGPT 刚出来的那天，我就立马去注册了账号玩起来了 3.5，当时的确是神奇时刻，当时还是分享那种搞笑的提示词，很有意思，在现在看起来属于远古文学了，我甚至还在 2022-12-04 写过一篇《普通人如何不被 OpenAI 取代》，哈哈，可见我当时有多浅，甚至深入问的第一个问题是 给我一些学习 Rust 的在线文档，现在 AI 发展起来也不可同日而语了。</p>\n<p>也正是这个时候，我差不多觉得 all in ai 了，在公司侧把主职的业务支持技术全部下放给到下面的一级管理者，自己给团队找更大的天花板 AI，甚至当时用我自己的国际信用卡去自费买 gpt 的官方 api 给团队使用，了解最新的东西，把业务中大量一直让业务管理者头疼的事情能用 AI 解决的都解决了，顺便我擅长画稿子整产品解决方案，也把 AI 应用研发平台、B 端数字员工解决方案、业务效率工具和 AI 的深入融合，如今发展到现在 3 年多，很多都非常产品化以及效率大幅提升。</p>\n<p>由于在实践中，效果非常明显，我在 23 年初，把我所有中概股以及公司归属的股票全部 all in 到了 AI 方向，虽然非常廉价的给卖了，但是买到了很多现在看起来是宝贝的股票，比如我非常喜欢的 130 多的特斯拉，90 多的英伟达，160 多的 SMH 等，这个阶段我开始有意识的去学习投资，分析一个公司的水平，以及本身的价值如何，也看了很多书来提升自己的思想，但是对于实操效果不大，因为很多书是 AI 没来前几十年写的，不过思想很有用，此外投资 AI 也不能和以前思路不一样，也让我找到了编程之外的一个兴趣，很有意思，以后看能否做一个和投资相关的 AI 产品。</p>\n<p>再到后面，其实慢慢就到了大家熟悉的去年国庆在三亚度假泳池游泳休息过程中写的 Mole，Mole 让我认识了非常多的海外开发者，我的海外粉丝大幅增加也是由于这个产品被全球各地的开发者几乎每天都有人在帮忙主动宣传，非常感谢！然后就到了今年过年写的 Kaku，还有最近给我提效的 Waza、Kami，还有新电脑到了以后想整的 Luo 落文这个字体，旅途非常美好，很期待后续的旅途，也非常欢迎新朋友的加入。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第266期 - 口罩雕塑","link":"https://weekly.tw93.fun/posts/266/","pubDate":"Mon, 27 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"2800\" data-pswp-height=\"2100\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图用于周末去拱墅这边办事看到的一个带着口罩的雕塑小孩，一转眼疫情居然过去了这么久了，但是又感觉弹指一挥间，还是需要记住那几年的。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"介绍一下-tw93-开源小家庭\">介绍一下 Tw93 开源小家庭</h2>\n<p><a href=\"https://github.com/tw93\">https://github.com/tw93</a><br>\n<img src=\"https://gw.alipayobjects.com/zos/k/sa/family.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/sa/family.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/sa/family.png\" loading=\"lazy\" data-pswp-width=\"1586\" data-pswp-height=\"992\" style=\"aspect-ratio: 1.5988;\" width=\"800\"></p>\n<p>在写完 Kami 的时候，我突然想 Kaku、Waza、Kami 非常像一个小家庭，然后继续琢磨，其实 Pake、MiaoYan、Mole 也一直在这个家庭默默存在，甚至比其他成员在没有 AI 的时候就出来干活了，今天给大伙介绍一下我们这个温馨幸福的家庭。</p>\n<p>Kaku 是 爸爸，主要在写代码、终端、构建，在 AI 时代非常可靠能干，把家庭支撑得好好的。</p>\n<p>Pake 是妈妈，一直在默默无闻的打包、整理、交付成 App，非常温和且利落，家里几个孩子最喜欢的就是妈妈。</p>\n<p>MiaoYan 是哥哥，比较懂事沉稳，喜欢写作、Markdown、沉淀思考，一个安静的小伙子，会思考，有自己的主见，会输出自己的观点，不追风不随波逐流。</p>\n<p>Waza 是姐姐，和妈妈的性格很像，很干练的姐姐形象，小时候还去学过跆拳道，非常爱学习，通过不够的练习总结让自己技能越来越好，练到本能。</p>\n<p>Kami 是妹妹，家里最年轻的小可爱，拿着我女儿的照片形象生成的，轻快，非常爱笑，非常明亮的小女孩，在家里有一种秩序检察的感觉，喜欢整齐，喜欢画漂亮的画画，虽然小，但是很能够给人温暖。</p>\n<p>Mole 是家里的小宠物鼹鼠，某年在三亚泳池边游泳带回家的，一只圆滚滚的小鼹鼠，带着小头灯拿着小铲子，非常喜欢翻箱倒柜钻角落，找到不需要的东西帮忙扔掉，很喜欢干净，一看到垃圾还没有等你反应过来就被他扔掉了，一直陪伴着。</p>\n<p>话说，你是先和 Tw93 Open Source Family 哪一个成员认识的，我把他的其他家庭成员介绍给你认识认识，希望给你的生活来带来一点美好的东西，当然也很欢迎你把成员推荐给你的好朋友认识。</p>\n<h2 id=\"产品发布\">产品发布</h2>\n<p><strong>Kami：一个 AI 时代舒爽的排版设计系统</strong><br>\n<a href=\"https://github.com/tw93/kami\">https://github.com/tw93/kami</a><br>\n上上周末在整一个新的 Skill 叫做 Kami (紙, かみ)，大伙可以把他当做 Waza (技, わざ) 的妹妹，Kaku(書く) 的女儿，主打用于 Paper 排版的场景，上周一完成了开源发布，欢迎去使用。</p>\n<p>比如说你需要产出一页纸的报告，你需要写一个白皮书、需要产出一个精致的 PPT、需要弄一个作品集的 PDF 发给别人等等，也就是任何排版的打印场景都可以使用，自动生成精致 PDF，里面还具备自动绘制清晰图的能力。</p>\n<p>然后最近还有很多更新，首先最好玩的是，我支持了 12 种内联的 SVG 图表，比如说你的股票投资各种图、你要画的架构图，配色也和 Kami 一致，会在帮你产出版面的时候自动判断是否需要用图表能力，帮你把事情讲得更明白。</p>\n<p>然后我也花了一些时间去支持英文、日文版本的场景，精挑细选了下对应的我觉得在排版上不错的字体、字间距、行高、文字大小等，假如你有英文、日文的场景可以试试。</p>\n<p>最后支持的生产物里面也支持图片、PPT 的导出，包括 HTML 的展示，当然最好的排版物我推荐 PDF，这样他人阅读起来也非常舒服。</p>\n<img src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png\" loading=\"lazy\" data-pswp-width=\"2992\" data-pswp-height=\"2308\" style=\"aspect-ratio: 1.2964;\" width=\"800\">\n<p><strong>Mole 也有更新啦，还有一个好消息桌面端有进展了</strong><br>\n<a href=\"https://github.com/tw93/Mole\">https://github.com/tw93/Mole</a><br>\n1、mo uninstall: 卸载后会清理残留的 LaunchAgent/LaunchDaemon plist；新增对 /usr/local、/opt 等非标准路径下 pkg 安装应用的识别；嵌套 helper app 不再阻塞登录项清理；调用 brew 前会丢弃 sudo，避免 cask 卸载因 “running as root” 中断；Homebrew bottle 在路径含空格的前缀（如 Applite）下也能正常运行。<br>\n2、mo clean: Chrome / Arc / Brave / Vivaldi / VS Code / Cursor 正在运行时不再清理 Service Worker ScriptCache，MV3 扩展不会再被清理掉；TCC 受保护的 Group Containers 被跳过，避免反复弹隐私授权；<br>\n3、Cloud &#x26; Office 段加入超时与 SIGINT 处理，不再卡住；Microsoft Office helpers 与科研软件 bundle 不再被误判为孤儿（兼容 macOS 自带 bash 3.2）；新增 Yarn v1 全局缓存清理。<br>\n4、mo clean: AI 编程助手老版本清理新增 GitHub Copilot CLI（~/.copilot/pkg/universal/<version>/），与 Claude Code、Cursor Agent 一起处理。<br>\n5、mo analyze: 工作池上限再次下调，防止 Steam 类目录扇出场景下耗尽系统线程；删除文件时使用增量缓存失效，无需整体重扫；bundle 解析在 mdfind 超时后保留文件系统兜底。<br>\n6、mo optimize: macOS 26+ 上底层工具不存在的 periodic maintenance 改为优雅跳过；新增 mo optimise 别名和补全。</version></p>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><strong>你不知道的 AI Coding：非技术人的上手、场景与实战</strong><br>\n<a href=\"https://tw93.fun/2026-04-26/ai-coding.html\">https://tw93.fun/2026-04-26/ai-coding.html</a><br>\n上个月在公司里给产品和业务的小伙伴分享了下如何上手 AI Coding，加上最近又发了条推特，聊到不少同学因为订阅门槛没机会用上一线 AI Coding 工具，方法和习惯不花钱就能先学，索性把上手这部分整理出来。然后为了让内容给大伙更好理解，文章中绘制了不少简单插画，这样看起来应该更会直接。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/z1/00.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/z1/00.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/z1/00.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<p><strong>视频分享版的《你不知道的 Agent：原理、架构与工程实践》</strong><br>\n<a href=\"https://www.youtube.com/watch?v=Z5If1L3eFtw\">https://www.youtube.com/watch?v=Z5If1L3eFtw</a><br>\n终于传到 Youtube 去了，上次看文章的小伙伴假如没有看太懂的，或者想更加了解的，欢迎看视频，Youtuber 视频小白欢迎大家一键三连加关注，以后我尽量把分享都录屏分享给大伙在这里看看。</p>\n<img src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg\" loading=\"lazy\" data-pswp-width=\"3288\" data-pswp-height=\"1876\" style=\"aspect-ratio: 1.7527;\" width=\"800\">\n<p>这个<a href=\"https://tw93.fun/files/share/agent.html\">分享文稿</a>也非常有意思，是 Kami 的前身。Kami 最开始是我在 CC 里面的一个投资报告生成小玩意，然后刚好有一个分享要讲你不知道的 Agent，很懒感觉写一个这么长的 PPT 多费时间啊，然后就直接把原来能力边生成边调试几个版本到满意状态，然后 Kami 就出生了，欢迎阅读。</p>\n<p><strong>幸福瞬间</strong><br>\n周日慵懒的午后在书房敲代码<br>\n没有什么杂事要处理<br>\n用不完的 Claude Code<br>\n代码一把过的惊喜<br>\n一抬头看到了夕阳透过窗户<br>\n一种非常简单的幸福<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"500\"></p>\n<p><strong>一些感悟发出后，又有变化了</strong><br>\n最近校招面试了不少 985 实习生，一个很强烈的感受是：AI 工具正在把学生之间的资源差距快速放大。</p>\n<p>从我这段时间的感受看，差距真的可能到 5 倍。那些明显领先很多的同学，无一例外都比较早接触了 Claude Code、Codex 这类最好的 AI Coding 工具，也愿意自己花钱订阅。他们不只是会用工具，而是已经把它们变成了日常学习和开发的一部分。聊模型、工程、Agent、代码实践，可以很自然地聊一个小时，很多地方甚至比我理解得更深。</p>\n<p>但也有不少同学，学习成绩很好，计算机基础也扎实，只是因为家庭条件或预算有限，平时只能用国内中转站或更便宜的国产模型套餐，这个差距非常现实。现在最好的国产模型和国外一线模型，在 模型综合能力上大概还有半年左右的时间差。以前没有 AI 的时候，资源差距最多只是效率差一点，现在会直接影响视野、实践深度和自信心。</p>\n<p>这件事我最近一直在琢磨，对一些本来很有潜力的学生来说，只是因为每个月几十美元的门槛，就少接触了很多东西，我觉得挺可惜。想起我当时读大学的时候其实也经常囊中羞涩，好在大二认识了不少大牛学长带着我开始做商业项目养好了自己，挺感谢当时很耐心教我技术的各种朋友。</p>\n<p>所以我想做一个很小的尝试：拿一部分 X 发推收益，资助几位学习成绩不错、喜欢计算机、但家庭条件不太宽裕的同学，给他们提供几个月 Claude Code 或类似 AI Coding 工具的订阅，让他们真正体验一下目前比较好的模型和开发方式。</p>\n<p>不过我自己平时也比较忙，不太可能一个人长期处理申请、筛选、核验和跟进。所以也想顺便邀请一些对此有想法的朋友一起做。比如高校老师、学生负责人、开源社区成员，或者本身就在做教育、公益、开发者社区的朋友，可以一起帮忙想一个更靠谱的机制。</p>\n<p><del>这件事我暂时不想做大，也不想做成很复杂。先从小规模实验开始，比如每期 5 到 6 个同学，每人 3 到 4 个月，甚至也可以每周来找我视频问一些问题。想着优先看推荐、作品、学习记录和真实使用反馈，尽量避免变成单纯发钱或者拼谁会写申请，当然现在能上 X 的大学生应该不缺这个钱，所以还是需要看有没有更好的渠道。</del></p>\n<p>如果你有靠谱渠道，或者愿意一起参与规则设计、推荐、审核、跟进，欢迎私信我。能把这件事做得更可信一点，也许真的能帮到几个本来就很有潜力的同学。</p>\n<p><strong>回复更新></strong>：</p>\n<p>消息发出后，收到不少朋友的建议和提醒，我也认真看了。</p>\n<p>这件事确实不能只靠热情直接推进。一方面涉及工具使用边界和合规风险，另一方面学生群体的真实需求、筛选方式、后续反馈，也都需要更稳妥的机制。也有朋友提到，之前做类似事情踩过很大的坑，最后甚至被反咬一口，这个提醒我觉得很有价值。</p>\n<p>所以我准备先接下来先收集一些实际情况，比如大学生现在使用 AI Coding 工具的痛点、预算限制、学习场景和真实需求，再整理一个更清晰的方案。</p>\n<p>后面会优先考虑和国内大模型厂商、开发者社区、高校老师一起，看能不能用更正规、更可持续的方式，把这件事往前推一小步。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第265期 - 西溪窗外","link":"https://weekly.tw93.fun/posts/265/","pubDate":"Mon, 20 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"2400\" data-pswp-height=\"1800\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图用于周内中午去西溪湿地月芽吃了个午饭，好久没有去了，环境真好，刚好那天太阳穿短袖刚刚好舒服的那种状态，拍了一个窗外，春天真快。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"聊聊-waza-的设计思路\">聊聊 Waza 的设计思路</h2>\n<p>我想陆续用几条内容来介绍 Waza 里面一些有趣技能的实现参考，上周每天早上写了一条，记录给大伙看看。<br>\n<a href=\"https://github.com/tw93/waza\">https://github.com/tw93/waza</a></p>\n<img src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"775\" style=\"aspect-ratio: 1.5484;\" width=\"800\">\n<h3 id=\"介绍-design-技能\">介绍 /design 技能</h3>\n<p>首先我非常讨厌 AI 生成的那种千篇一律甚至还带 emoji，蓝紫色渐变的网站，觉得非常丑，只能说能用。</p>\n<p>于是我把我最近做的所有的带 UI 的网站让 Claude Code 去学习我的调教记录，会生成一份基础的我觉得最佳实践和不应该有的反模式，这个基础上会有一个雏形，然后我把 claude frontend design skill 里面有用的学习过来，基本就有一个模式了。</p>\n<p>考虑到一些具体规则，我从 pbakaus/impeccable 学习了一些，他给我贡献了大量具体的规则，比如说禁用的字体清单、色彩系统、主题风格、css 模式的禁止项、动画的规范等，用于让 AI 具备一定的审美知识了。</p>\n<p>然后从 getdesign 的能力中，获取到设计的一个来源于 Google Stitch 的九段式脚手架的结构，在简化能力基础上汇集到 /design 里面，这里他就有一个知识面体系了。</p>\n<p>最后我会在让你用这个技能的时候，先回答几个问题，谁用、美学方向选择、页面想让用户记住的、你最不喜欢的、网页特色微交互是怎么样的，这样 Claude Code 再基于这个重要的上下文以及 /design 去工作 往往会得到事倍功半的效果。</p>\n<h3 id=\"如何设计-check-这个代码-review-技能的\">如何设计 /check 这个代码 Review 技能的</h3>\n<p>首先我们需要知道模型本身告诉你他做完了，不一定是做完了，很有可能会留下一些不存在或者有问题的东西，经常会藏些问题，在 Agent 设计中我的工程经验是会给模型一个 checklist 用来校验是否真的做完了，这样往往会比你让他去检查效果好太多了。</p>\n<p>/check 最开始做的时候设计就不是一个大而全的 reviewer，而是一个编排分工能力系统，其中 SKILLmd 是主审，负责审查的分级和流程控制，agents/ 下有独立的安全审查员和架构审查员，各管各的，互不干扰，什么时候拉谁进来，会由一份激活规则来判断决定，而非传统大家用的关键词匹配。</p>\n<p>分级逻辑也比较有意思，对于 100 行以下的代码快速 review，100-500 行的按需加专家，500 行以上的全拉满，然后再加一轮对抗性测试，对抗性测试会从这四个角度来找漏洞，包括违反假设条件、组合失败下的问题可能、上下级串联错误的问题、滥用的场景等等</p>\n<p>然后发现的问题也分 4 级来处理，能安全修复的直接去修复了，大概了对的会打包出来让你手动再确定一次是否 ok，需要判断的会问你，仅供参考的部分也会高数你，但是不会每一个小问题都来问你一遍，也不会越权帮你改行为逻辑。</p>\n<p>还有一个硬要求，验证没有跑完就不算完成，会自带一个探测的脚本，能识别 Cargo、TypeScript、Python 等项目类型去跑测试，探测不到就直接报错，不会假装通过。</p>\n<p>这样就更像一个很经验的技术专家，在面对不同情况的问题 review 的一些经验，刚好我把这些经验用很简单方式沉淀到了 waza 的 /check 技能。</p>\n<h3 id=\"如何设计-think-这个技能的\">如何设计 /think 这个技能的</h3>\n<p>居然到了 Waza Skill 设计思路分享的第三弹，今天给大伙分享我是如何设计 /think 这个技能的，也就是在写代码之前做方案设计用的。</p>\n<p>我使用 Claude Code 有两个非常有意思的设置，第一个是 /model opusplan, 也即默认做计划会使用 opus 最强模型，然后去执行使用普通 Sonnet 模型，这样可以帮助我的 Max 省点儿用在更需要地方。</p>\n<p>第二个是我其实默认执行会用 alias c=“claude —dangerously-skip-permissions”，这个不建议技术小白用，我用是由于我知道他在做什么，以及主要是我懒得缘故。</p>\n<p>然后回到正题，那么 /think 怎么让最牛的模型执行更好一点呢？继续回到模型本身，其实模型不喜欢表态，但是我更喜欢能表态给你最优方案的工程师，所有我做的第一件事就是，开头就要求模型必须有立场，说清楚什么证据能推翻这个立场，并且明确禁掉了”There are many ways to think about this”这类正确但无用的废话，给 2-3 个选项没问题，但必须有明确推荐，而且必须包含一个最小化选项。</p>\n<p>然后方案并不是想出来就 ok 了，第二部会让他自己反驳自己，什么情况下这个方案会有问题，假如有办法修复，那就补充到方案里面重新呈现，假如直接打破了方案，他会直接高数在哪些情况下为什么不行，这样至少交到你手里的方案是你心知肚明的。</p>\n<p>对于前提验证也会做得比较细，先确定解决的目录代码位置对不对，我还真出现过他出方案拿着一个不对的路径在出，然后查旧的技术方案文档避免重复造轮子，然后去搜索 Github 看看有没有人也处理过类似的问题，这三步做完才开始想办法，防止一开始就建立在错误的前提上。</p>\n<p>这里也会有复杂性分级，超过 8 个文件或者服务新增会明确告知规模，超 3 个组件交换数据会画 ASCII 图找环，所有 API key 和第三方依赖在方案阶段就列清楚，防止白忙，也防止引入不靠谱的方案。</p>\n<p>最后还有一个硬性规定，方案里面不允许出现 TBD、TODO、“以后再说”、“类似第 N 步”这种东西，因为又回到 AI 的性格，给了这个东西执行的时候很容易出现少做或者多瞎想，相当于不要给 AI 任何退路，导致效果不好。</p>\n<p>最后方案的输出也有要求，做什么、不做什么、选了哪一个方案什么理由，3-5 个决策依据，明确的未知项，/think 决不写代码，用户批准后再进行。</p>\n<p>这里我做 Think 技能的时候，也是参考我认为好的技术专家是怎么来做技术方案的，详细分析调研后的最优技术方案，决策果断，不留尾巴，被否定了立马去优化方案本身等等。</p>\n<h3 id=\"聊工程师技能部分的-hunt-技能\">聊工程师技能部分的 /hunt 技能</h3>\n<p>终于到了 Waza SKill 设计思路的第 4 部分，讲完这个就差不多了，因为其他两个是 /read 和 /learn 之前已经简单聊过，这次继续聊工程师技能部分的 /hunt 技能，其实就是 debug 问题排查问题的技能。</p>\n<p>其实证明 AICoding 是民科和专科的一个很大区别，可以来看用户是如何用 AI 来解决一些很久没有解决的问题的排查思路的，这个过程可以看到明显区别，其实这也是经验丰富的工程师其实用好 AI 远会比不那么懂技术的人可以解决更加复杂问题的原因。</p>\n<p>之前经常碰到，Claude Code 遇到一个问题去解决，基本上就是是一个 patch，你说不行，他给你是另外一个，你会发现 4-5 轮下面，又有新问题出来了，也即很容易出现在没有诊断出问题下不断去打补丁，很像之前没有 AI 时候刚刚写代码的小伙伴。</p>\n<p>/hunt 的核心规则有意思，就是在 AI 能用一句话说出根因之前，不许碰代码。而且这句话有精度要求，需要明确的那种原因说明。</p>\n<p>然后我设计了一张“自我欺骗检查表”，防止模型陷入几种典型的自我合理化的思维，每一种都配备了对应的规则，然后在 gotchas 里有真实案例，这里会根据我最近一个月排查问题时候出现的问题再次总结抽象一下。</p>\n<p>假设验证阶段也有一些干活要求，比如加一个最新的观测手段，比如让 AI 学会打 log，打断言，或者跑一个最小失败的测试 case，修完之后还有问题应该是立马去更换方案，会把查了什么、排查了什么方向、还不知道什么整理成 handoff 交给用户来决定怎么继续，而非一直试下去。</p>\n<p>输出也会建议到 AI，根因在哪 file:line、改了什么 file:line、什么证据确认修好了、测试通过情况。最终状态三选一：resolved、resolved with caveats、blocked。</p>\n<p>这样你会发现 /hunt 就很像一个经验丰富的技术专家了，遇到问题不是去猜，而是先沉下心去看问题在哪儿，诊断清楚原因，然后一把就过就解决的那种，往往这样会节约很多时间。</p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>妙言发布了 3.2.0 Nargacuga 🐆 版本</strong><br>\n<a href=\"http://github.com/tw93/MiaoYan\">http://github.com/tw93/MiaoYan</a><br>\n1、预览更快：两阶段渲染让文字立即显示，本地图片在后台懒加载，明显减少预览首屏等待时间<br>\n2、终端快捷入口：新增 Cmd+J 全局快捷键，随时打开当前文件夹所在终端，文件夹右键菜单也有对应入口<br>\n3、复制路径：右键任意笔记可直接复制完整文件路径<br>\n4、西班牙语本地化：完整覆盖菜单、设置页和系统字符串的西班牙语翻译<br>\n5、Mermaid 升级至 v11.14.0，修复子图连线渲染问题并新增图表功能<br>\n6、实时重载修复：其他工具修改的笔记现在能正确触发重载，含符号链接目录内的文件（closes #502）<br>\n7、启动与窗口修复：从 Finder 直接打开 .md 文件不再出现白屏，单栏模式下启动和退出时也不会再丢失笔记<br>\n8、导出与模式切换：修复切换笔记时预览空白、PPT 演示模式退出时序混乱、导出超时处理异常等问题<br>\n9、并发安全：修复 ExportCache 数据竞争、安全作用域 URL 泄漏、异步渲染后笔记状态错乱等问题<br>\n<img src=\"https://raw.githubusercontent.com/tw93/static/main/miaoyan/miaoyan.gif\" width=\"800px\"></p>\n<p><strong>Kaku 最近会上一个有意思的功能，再等几天就上线</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\nKaku 最近在开发一个有意思的功能，一个在终端内可畅通无阻的真 Agent 帮手，慢慢实现过年期间说的那个 Kaku AI 的润物细无声，也满足让我 100% 的 Coding 工作可以完全在 Kaku 完成。</p>\n<p>非常方便的上下文环境 + 各种 CLI 好用的工具 + 模型 + 克制的性格 让 Kaku 不是那种冷冰冰，也不是那种 GPT 那种我稳稳把你接住的浮夸感，Kaku AI 的定位是你的一个技术很厉害但友善且不啰嗦的工程师好友。等我测试几天没有 Bug 的时候，就发布 Kaku 的 0.10 版本给大伙用用。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png\" loading=\"lazy\" data-pswp-width=\"1645\" data-pswp-height=\"1079\" style=\"aspect-ratio: 1.5246;\" width=\"800\"></p>\n<p><strong>我的 Claude Code Max 使用建议</strong><br>\n首先我会在 .zshrc 里面加上一个 alias，这样我每次按 c 就直接启动了危险无阻挡模式，假如你是小白就不建议开始，使用 auto mode 就好了，然后有一个很大的建议，把自动上下文窗口压缩控制到 400k，加起来就是后面这个 alias 写到文件里面去，相当于把 1m 的上下文窗口在 40%的时候就开始压缩了，效果会好不少。</p>\n<pre class=\"astro-code github-dark\" style=\"background-color:#24292e;color:#e1e4e8; overflow-x: auto;\" tabindex=\"0\" data-language=\"sh\"><code><span class=\"line\"><span style=\"color:#F97583\">alias</span><span style=\"color:#E1E4E8\"> c</span><span style=\"color:#F97583\">=</span><span style=\"color:#9ECBFF\">'CLAUDE_CODE_AUTO_COMPACT_WINDOW=400000 claude --dangerously-skip-permissions'</span></span></code></pre>\n<p>然后我会设置 /model 为 opusplan，这类你可以直接在 claude code 里面运行 <code>/model opusplan</code> 这个隐藏命令就开始了，假如想更快，可以 <code>/fast</code> 打开这个，刚好弥补上面节约的 token。</p>\n<p>最后，还有人给了我一个超级好的建议，就是在使用 opusplan 的时候，一定要在 claude 配置文件<code>~/.claude/settings.json</code>里面开启 <code>showClearContextOnPlanAccept</code> 这个字段为 <code>true</code>，不然会会在 sonnet 上遇到严重的缓存未命中问题，一把设置好后，舒服太多了。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第264期 - 终于完工","link":"https://weekly.tw93.fun/posts/264/","pubDate":"Sun, 12 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>封面图用于记录我的硬件小玩具终于完工的照片，很有意思，我想着把这个过程通过今天的周刊记录下来，希望有兴趣的小伙伴来看看。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"新文章发布\">新文章发布</h2>\n<p><strong>在 AI 时代，我是如何深入学习一个技术领域的</strong><br>\n<a href=\"https://tw93.fun/2026-04-06/learn.html\">https://tw93.fun/2026-04-06/learn.html</a><br>\n把上次的学习总结，集合 Waza 里面的/learn 技能给大伙分享一下，关于上一篇大模型的文章我是如何写的过程，希望对你有用。<br>\n<img src=\"https://cdn.fliggy.com/pic/deep04.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/deep04.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/deep04.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"聊聊做小机器狗的过程\">聊聊做小机器狗的过程</h2>\n<p><strong>4 月 4 日，重学硬件，期待可以整一个软硬件结合的小玩意</strong><br>\n这个时候属于买齐了所有的零件和工具，大大小小一桌子，等到清明节假期来好好玩玩。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>4 月 4 日晚上 9 点 45，0.1.0-beta 版本</strong><br>\n终于有第一个反应了，别提我有多高兴了，请忽略粗鲁，因为出厂设置就是这样，我要用 Windows 电脑去修改。<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://gw.alipayobjects.com/os/k/4s/IMG_0321.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>4 月 5 日凌晨 12 点 07，0.1.0-beta1</strong><br>\n搞定 WiFi 模块、AI 模块、单片机模块、四足模块可运行。明天来加上脚以及调试屏幕效果，立马就睡觉去去！<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/IMG_032613.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>4 月 5 日中午 1 点 45，0.1.0-beta2</strong><br>\n调好机械腿控制模块，可以趴下睡觉行走，这个狗还是一如既往的粗率，但但但采购的有一个机械腿马达看着有点问题，等待换零件中！<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/new01.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>4 月 6 日上午 10 点 33，0.1.0-beta3</strong><br>\n腿部控制全部 OK 了，但是现在屏幕应该是我调试过程中烧屏了，等待快递中，期待尽快 Release！<br>\n<img src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg\" loading=\"lazy\" data-pswp-width=\"3880\" data-pswp-height=\"2910\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>4 月 8 日晚上 11 点 37，0.1.0-beta4</strong><br>\n晚上下班后屏幕终于到了，一下子调试好屏幕、温度二氧化碳、红线外、灯光等传感器，WiFi 配网调试中，基本出现差不多了，剩下封胶和稳固。<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/IMG_043028.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>4 月 11 日上午 11 点 30，0.1.0 终于完成 🎉</strong><br>\n把电池包封胶好了，还绑了几根带子防止散架，WiFi 和 Ai 对话模块也调试好了，使用 DeepSeek 模型稍微快一点，对话速度还可以，接下来打算玩高级一点硬件去。<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/26F9D347-A9C8-4DCC-811A-033887BD049515.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>最后拍几张立体照，记录一下</strong></p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/26410.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26410.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26410.jpg\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n    <tr>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>App Store Price：可以查询不同国家/地区 App Store 中应用的价格信息</strong><br>\n<a href=\"https://app.vbr.me\">https://app.vbr.me</a><br>\n这个工具有点意思，可以查询不同国家/地区 App Store 中应用的价格信息，比如说你可以看 Claude 哪一个区订阅最便宜，后面我应该用得上。<br>\n<img src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"886\" style=\"aspect-ratio: 1.3544;\" width=\"800\"></p>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><strong>和大伙聊聊我认为的好的产品体验</strong></p>\n<p>上次飞丢的无人机有后续了，由于飞到中途信号突然消失，找了半天没有找到，上传飞行日志大疆排查也没有排查出来，在他们不确定是否真的飞丢情况下，在提供非常简单证明情况下，随心飞服务，直接寄给我一台全新，甚至担心我使用更方便，还送了我一张 128G 的卡，全程没有任何地方让我解释为啥飞丢了，有没有去找。</p>\n<p>这个事情让我非常喜欢大疆了，服务体验不管是客服还是技术支持工程师在这个过程非常专业清晰，想借这个事情和大伙聊聊我认为的好的产品体验。</p>\n<p>其实产品体验好并不只是大家经常以为，这个产品交互好棒，漂亮，好用，没有 Bug，更更重要的是让用户在着急时刻，你给他提供了一个远比他预期之外的更好体验，让他会非常激动给他的朋友分享你给到他的这次好的体验，这个我认为才是真的好的做生意的服务体验，也很担心这种因为信任所以简单的体验被有些钻空子贪便宜的小人破坏，只能是我们有心的大伙一起去维护这个好的信任关系。</p>\n<p>上两次让我体验非常好的是携程，要不是他是中概股，他应该会是我的持仓大头，体验好在这两次抢火车票的经历。</p>\n<p>第一次是 3 年前，春节回老家抢票，由于票很难买，他给我选的是多买几站确保可以上车，其实这里我就非常感谢他了，因为其他平台都没有抢到，更更更惊喜的是当时下午我还去电影院看电影了，想着这个事情完成了，看电影过程中，接到一个不知道电话我给直接挂断了，结果立马收到一个短信，说先生我们给你抢到了不需要多买几站的方案，担心需要你麻烦去 App 订单页面确定一下，明显看刚刚那个电话也是人打的，这个短信肯定也是那个服务支持同学发出来的，那个时候，并不是那几十块钱，而是我感觉他们服务体验做得真好，真的是在帮你干事，而且比你的预期办的好很多，这个才叫好的体验。</p>\n<p>还有一次在最近国庆回家，也抢到了两张一等座票，不过两个位置不在一块，还挺远的，可能是由于标注了带了一岁半宝宝，关键来了，在出发前 1 天，携程居然自动帮我换座位了，更简单消息通知告诉我，我们找到你这边车厢又有空位了，已经帮你换到一个车厢一起了，这个体验，又是一次比我预期给我带来更好的帮助。</p>\n<p>所以大伙做产品过程中，其实可以给到更多用户在他不好整的时候一个远超出他预期的体验或者帮助，而非骗用户骗点击方式来达成自己的目标，这样用户真的会爱死你了，成为你的产品的死忠粉！</p>\n<img src=\"https://cdn.fliggy.com/pic/lxEYPC26.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/lxEYPC26.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/lxEYPC26.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第263期 - 硬件之美","link":"https://weekly.tw93.fun/posts/263/","pubDate":"Mon, 06 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4029\" data-pswp-height=\"3022\" style=\"aspect-ratio: 1.3332;\" width=\"800\">\n<p><small>封面图用于记录我假期在家三天玩的硬件小玩具，从一堆材料中锡焊、点胶、调试，终于快到最后一步了，屏幕调试过程中烧屏了，只能等快递到了继续整，很好玩。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"新文章发布\">新文章发布</h2>\n<p><strong>你不知道的大模型训练：原理、路径与新实践</strong><br>\n<a href=\"https://tw93.fun/2026-04-03/llm.html\">https://tw93.fun/2026-04-03/llm.html</a><br>\n至今写得耗时最长的一篇文章，好在搞懂了大模型训练皮毛，里面门道和我研究前相差太大了，非常建议从事 AI 应用或者对 AI 有兴趣的任何小伙伴阅读，应该能够让你看懂以及看个够。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"产品发布\">产品发布</h2>\n<p><strong>Waza 我的工程师分身 Skill</strong><br>\n<a href=\"https://github.com/tw93/waza\">https://github.com/tw93/waza</a><br>\n把我自己常用的 Skill Release 成一个新玩意叫 Waza，在日语中是 技（わざ） 的意思，常用于武术领域的招式，第一次开源一个没有代码只有 md 的产品，在没有 AI 的年代对于程序员而言是很羞耻的。</p>\n<p>之前 Superpowers 出来的时候，我安装一次就卸载了，感觉太重了，不是很适合我，会有不少人给我推荐 “你知道 Superpowers 吗？这个都不用那你就不潮流了，非常牛逼”，后面发现了 gstack，好了不少，但还是太多了，还是不习惯，我期待简单好用，同时清楚它在做什么。</p>\n<p>所以我按自己的习惯做了 Waza，对我而言装上这一套就够了，其他 skill 不用再折腾，不多不少刚好够用，后面有新的迭代可以持续优化下去。8 个 skill 对应我认为在 AI 时代一个好的工程师应该具备的 8 个能力：</p>\n<p>1、会思考，AI 写代码很快，但方向错了越快越远，好的工程师在动手前会先质疑问题本身，压测方案，脑子里有清晰的架构再让 AI 去执行，/think 就是把这个习惯固定下来。</p>\n<p>2、会设计，做产品不只是把功能实现了，AI 生成的东西很容易千篇一律，好的工程师对交付物有审美要求，出来的东西要有明确的设计方向，/design 做的就是这件事。</p>\n<p>3、会排查，AI 改 bug 最容易陷入”改了试试”的循环，好的工程师遇到问题会系统化定位，确认根因再动手修，一次到位，这个习惯我沉淀成了 /hunt。</p>\n<p>4、会检查，AI 生成的代码更需要人来把关，合并前先审一遍 diff，能自动修的修掉，需要判断的归拢到一起，用证据验证而不是凭感觉收工，这个是 /check。</p>\n<p>5、会阅读，好的工程师习惯读一手资料而不是二手总结，把 URL 或 PDF 转成干净的 Markdown 直接进工作流，/read 做的就是这件事。</p>\n<p>6、会写作，技术再强，写不清楚别人就接收不到，好的工程师能把学到的、想表达的东西清晰地传递给对应的受众，/write 帮你把这一步做好。</p>\n<p>7、会学习，AI 时代技术迭代更快，进入一个陌生领域不是刷几篇文章就完了，而是收集、消化、提纲、初稿、打磨、发布，用输出驱动学习，/learn 就是这套流程。</p>\n<p>8、会维护，好的工程师不只关注业务代码，工具链本身也需要体检，CLAUDE.md、rules、hooks、MCP 这些配置感觉不对的时候跑一下 /health 就知道问题在哪。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\"></p>\n<h2 id=\"产品更新\">产品更新</h2>\n<p><strong>Kaku 0.9 版本发布了很好用</strong><br>\n<a href=\"https://github.com/tw93/kaku\">https://github.com/tw93/kaku</a><br>\n发布了几个有意思的功能，相信可以帮助到你。</p>\n<p>1、<strong>自然语言生成命令</strong>：输入 <code># &#x3C;描述></code> 后按回车，自动生成的命令注入回提示符<br>\n2、<strong>Option+Click 移动光标</strong>：点击当前行任意位置即可将光标移动到该位置<br>\n3、 <strong>窗口置顶</strong>：通过 Window 菜单将窗口固定在最前，随时可切换开关</p>\n<p><video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://gw.alipayobjects.com/os/k/ke/kaku.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>Claude HUD 这个工具帮你看到你的 Claude 使用量</strong><br>\n<a href=\"https://github.com/jarrodwatts/claude-hud\">https://github.com/jarrodwatts/claude-hud</a><br>\n功能有点儿过于全了，我简单配置后，支持了如下的效果，使用起来不错，有兴趣可以试试，不过代码感觉有点复杂，有空我会优化一下这个功能，极简就好。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png\" loading=\"lazy\" data-pswp-width=\"2440\" data-pswp-height=\"884\" style=\"aspect-ratio: 2.7602;\" width=\"800\"></p>\n<p><strong>一个很极简 AI 友好的 markdown 文档生成器</strong><br>\n<a href=\"https://docmd.io\">https://docmd.io</a><br>\n偶然发现了 docmd，给开发者用的极简零配置文档生成器，可以把 Markdown 转换为快速、清爽的静态文档，具备自动路由、内置搜索和 AI 方便使用的上下文能力。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"></p>\n<p><strong>买了一个 140W 的充电器好用的</strong><br>\n买了一个 140W 的充电器，大小合适，终于从之前 45W 解脱了，有 4 个口，这样出门就方便多了，这个显示屏显示功率我很喜欢了。</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><strong>想和大伙聊聊，在 AI 时代我是如何深入学习一个技术领域的。</strong></p>\n<p>之前没有 AI 之前更多是看书、翻这个领域有名的国内外人的所有博客，然后摘抄记录到笔记本，这种速度挺慢，但是很有学习的乐趣，比如当时学习 WebGL 就是这种感觉，可能学懂一个东西差不多要半年空闲时间，慢但快乐。</p>\n<p>现在有了 AI 之后，其实我很讨厌网上那种 3 分钟教你看完百年孤独，也讨厌一切短剧和倍速看电视剧的方式，更多还是挑好的看，吃好一点。</p>\n<p>不过最近写你不知道的 Claude Code 和 Agent 系列，除了自己懂的部分外，其实还有大量不太清楚的领域，好在之前收藏了不少文章，刚好借助这一块清库存，全部搞懂输出出去，一直认为，很多时候，不在于看了多少东西，听了多少东西，输入了多少东西，其实用处不大，更加看重你输出了多少东西，这个才是你自己的。</p>\n<p>然后我上上周启动了一个深坑挑战自己，研究大模型的训练流程，确保非专业的人也听得懂，探索了 2 周，刚好这个经验可以分享给大伙，当然成文也差不多好了，最近会发出。</p>\n<p>我会把这个学习过程当做写代码一样的组织，第一步收集高质量的资料，比如与之相关的近几年的精品论文，各大模型厂商发布的关键模型的博客，X 上模型负责人发表的一些文章，以及斯坦福等高校的近两年关于这一块的课程学习，还有经典的手搓一个大模型的代码仓库等等，这些都是我的一个资料来源过程，我会借助工具自动化全部下载、转 md、清洗，梳理，弄好结构化分门别类到我这次研究的仓库。</p>\n<p>然后对于自己看得懂的内容就全部看一遍，把不好的删掉，好的留下，对于看不懂的内容，直接借助 Claude 帮我的理解，更复杂一点的直接翻译成中文去阅读，对于代码本地可以跑的就跑起来，不能跑的那种就去看结构，总之会有一个大概的认识和知晓技术原理，这个阶段可以去掉原有一半可能没有用的内容。</p>\n<p>到了这个阶段，其实你对这个领域有一个大概的认知了，就可以给这篇文章开始写一个大纲，以及大纲应该结合的来源内容，这里均可以用 markdown 很多表达，你要讲什么，或者说你想讲什么更想让读者知道，一定一定，文章是写给你给给看的人看的，需要知晓对方的认知水平，和汇报其实差不多。</p>\n<p>然后接下来就是苦力活加之前内容的复习过程，和大学时候考试前复习很像，把每一章的内容填充完整，这样下来，你会得到一篇非常长而且有点啰嗦的文章。</p>\n<p>这个时候 AI 就可以帮太忙，你可以让他帮你不改变你原有的内容意思你的语气的情况下，帮我去掉无用的啰嗦内容，以及连贯不到位的内容，或者是这一块缺少的内容，还需要补充什么知识的地方，借助 AI 继续去完善补充，这里又可以学到很多原来遗漏的东西。</p>\n<p>最后整理好以后，可以继续自己读一遍，而非让 AI 读一遍，这里 AI 只是工具，千万不要把你的脑袋被 AI 代替了，这就没有啥意思来，自己读的过程中可以对文章继续修改调优，这里和写代码又非常像了，自测那种感觉，修复问题修问题，最后读了 2 遍以后，基本感觉完美了，然后就可以发出来给大伙看看。</p>\n<p>有小伙伴肯定是担心自己写的东西没有人看，就不太喜欢发出来，或者说就不写了，其实只要你的内容有意义，自然就有读者，而非是你偷懒的理由。</p>\n<p>花 10min 写完这个碎碎念，结束，欢迎交流你是如何学习一个新领域的，下面视频就是我后面要发的那篇你不知道的大模型训练文章的学习仓库，挺有意思，就录了一个视频给大伙看看我的工业化学习方式。</p>\n<p><video width=\"800px\" preload=\"\" controls muted><source src=\"https://cdn.fliggy.com/pic/llm45.mp4\" type=\"video/mp4\"></video></p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第262期 - 飞机飞丢","link":"https://weekly.tw93.fun/posts/262/","pubDate":"Mon, 30 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"3400\" data-pswp-height=\"1898\" style=\"aspect-ratio: 1.7914;\" width=\"800\">\n<p><small>封面图用于纪念我的无人机，终于飞丢了，这个是它拍下来的最后一个作品，好在有随心飞，应该可以免费换一个。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"产品更新\">产品更新</h2>\n<p><strong>Kaku 发布了 0.8 版本</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\n这个版本取名 Fish 🐟，Kaku 这次更新主要集中在 shell 兼容性、标签行为和稳定性。<br>\n一方面补齐了 fish shell 的完整引导能力，支持 Starship、Yazi、主题同步和配置；另一方面优化了标签管理，包括记住上次目录、让 update 和 doctor 在独立标签中运行，以及新增只显示目录名的标签标题选项。<br>\n同时也修复了快速输出和 Claude Code 场景下的 viewport 跳动，以及窗口隐藏、链接点击、粘贴、emoji 宽度、SSH alias、Cmd+Q 崩溃和透明圆角渲染等一批问题，欢迎大伙更新使用。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png\" loading=\"lazy\" data-pswp-width=\"2560\" data-pswp-height=\"1407\" style=\"aspect-ratio: 1.8195;\" width=\"800\"></p>\n<p><strong>Mole 发布了 1.32 版本了</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\n这个版本取名 Rorqual 🐋，继续更新了不少东西。<br>\nmo clean 修复了壁纸代理和 Messages 预览缓存长期被跳过的问题，补上了 PCSX2 和 RPCS3 的缓存与日志清理，同时优化了 Python 字节码缓存输出、Brave 清理守卫、Spotify 播放状态判断，以及 Service Worker 缓存清理报错。<br>\n另外 mo uninstall 过滤掉了不可见后台辅助程序，主菜单补上了更准确的 Touch ID 检测和版本快捷键查看，安装流程也改成提前统一获取 sudo 权限，减少重复输密码的问题。</p>\n<p><strong>Pake 发布了 3.11 版本</strong><br>\n<a href=\"http://github.com/tw93/Pake\">http://github.com/tw93/Pake</a><br>\n这个版本取名 Evolve 👻 ，挺久没有更新了，主要是 Bug 修复和新特性的增加。<br>\nmacOS 现在支持 <code>--install</code> 一键安装到 <code>/Applications</code>，新增 <code>--new-window</code> 将弹窗和 OAuth 窗口直接托管在应用内，不再频繁跳系统浏览器；同时也补上了 <code>--camera</code>、<code>--microphone</code> 和 <code>--identifier</code> 参数，分别用于按需开启媒体权限和自定义 Bundle ID，减少不同应用之间的冲突。<br>\n另外，这次还修了不少跨平台细节问题，包括 Gemini 下载失败、ChatGPT 缩放后部分 UI 消失、Windows 图标复制报错，以及 macOS 新窗口模式下外链点击崩溃等问题，整体可用性更稳一点。</p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>我使用比较多的 4 个 Claude MCP</strong><br>\n<a href=\"https://tinyfish.ai\">https://tinyfish.ai</a><br>\n第一个是 TinyFish MCP，这个我觉得挺好，它能让 Claude 直接上网浏览、抓取网页、做资料调研，还能返回结构化结果，不只是给一段静态回答。我最近会拿它来给自己的周刊找 AI 新闻，比如抓最近几小时 Hacker News 上比较热门的内容，再整理成一份干净的摘要列表，效率很高。<br>\n第二个是 GitHub MCP，平时看 commit、追变更、理解仓库结构，会顺手很多，不用一直在几个工具之间来回切。<br>\n第三个是 Figma MCP，可以直接在对话里看设计稿、检查布局和间距，把一些 UI 细节直接拉进来，做设计对齐的时候很方便。<br>\n第四个是 Excalidraw MCP，这个更适合拿来想事情，尤其是流程图、系统结构这类内容，靠文字说不清的时候，画一下会快很多。<br>\n后面三个大家可能都比较熟了，我给 TinyFish 录了一个小视频演示它在真实场景里怎么用的效果。<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/TinyFish28.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>最近非常喜欢用 gstack 这个 skill</strong><br>\n<a href=\"https://github.com/garrytan/gstack\">https://github.com/garrytan/gstack</a><br>\n非常非常推荐大伙去用用，好比你有了一个很不错的专家团队，涵盖 CEO、技术 TL、设计、QA、安全等多个角色来帮你参谋你代码开发过程中的所有事情。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>《中国绘画元至清》这本书非常不错</strong><br>\n<a href=\"https://book.douban.com/subject/37156716/\">https://book.douban.com/subject/37156716/</a><br>\n这个中国绘画元至清非常不错，内容很厚实，非常佩服作者巫鸿的水平，假如你想找一本美术入门史，可以看看这个。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"500\"></p>\n<p><strong>杨家牌徒步航拍</strong><br>\n正是我无人机飞丢的地方，哈哈，让你一乐。尊敬的 DJI 大疆创新用户： 非常遗憾收到飞行器失联的消息，请您放心，DJI 大疆创新会尽力协助您。当前您的飞丢申报已成功受理，您可以先参考找飞机功能使用介绍，尝试找飞机。<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/177467994477812.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><strong>杀死那个手工程序员</strong></p>\n<p><img src=\"https://gw.alipayobjects.com/zos/k/zc/sha.png\" alt=\"\"></p>\n<p>标题来源于 12 年前我很喜欢的一首万青的歌《杀死那个石家庄人》的改写，和当时他们描述的那个情景也有点类似。</p>\n<p>好多年没有坐公交了，上次去太子湾，由于景区限行，只能把车停在外面，坐景区免费接驳车过去。</p>\n<p>前面座位看到一个小女孩一直在刷那种 AI 生成的短视频，画面非常粗糙，内容也很假，滑到下一个居然还是差不多的东西，看得津津有味，每个视频的点赞居然也很高。当时看到这一幕我甚至有点伤心，以后我的小孩，是不是也会在看这种粗制滥造的 AI 生产的内容下慢慢长大，很难找不到那种美好的东西。</p>\n<p>有了 AI 之后，很多东西的生产一下子就变简单了，做内容简单了，做软件也简单了。以前做一个东西出来，会需要要花不少时间，反复琢磨，要真的解决很多问题，最后才敢拿出来，现在很多环节一下就被抹平了，写点东西很容易，做个产品也很容易，花钱买 Token 问 AI、拼个流程、套个界面，很快就有一个能跑的东西出来。</p>\n<p>今天也看到有人说两天可以复刻一个 Claude Code，我是既信又不信，最近语音 AI 软件一下冒出来几十个，看了看体验都还不错，甚至豆包都来卷这个了，Claude Code 的套壳的客户端最近也见了不少，有不少说实话做得挺好用的。</p>\n<p>程序员很多以前看着要专业能力、要学习门槛、要长时间积累的东西，正在很快变成一种到处都是的供给。以后最不缺的，可能就是那种看起来像个产品的东西，能用，能跑，也好看，你只能做得再快一点，再好用一点，或者再多包一层，可能还是有价值的，只是这种价值会越来越容易被 AI 的发展追平。</p>\n<p>上次吃饭和同事聊一个有意思的话题，我说我最近一年非常喜欢听磁带机，感觉每一首歌都非常耐听好听。为什么以前的磁带、CD、电视节目，甚至很多老书，整体会让人觉得质量更高一点，原因其实很简单，以前生产和分发都非常重。你想发专辑，先得把作品认真做好，然后才有可能去做上万个磁带出来，不然卖不出去下次公司可能就不推你了。想出一本书，也不是写完随手一发，就能立刻推到很多人面前。以前光做出来这一步，就已经筛掉很多东西了。</p>\n<p>现在发歌传个平台就行，写东西发个公众号就行，做软件有了 AI 之后也差不多，甚至 AI 直接帮你上传到你之前望之却步的 GitHub，甚至帮你把 Release 自动发布的 CI 都创建好了，很多过去要靠长期积累才能跨过去的坎，现在被工具一下填平了，于是整个世界也就慢慢被大量差不多、看起来也能用的东西占满了。</p>\n<p>麻烦的还不只是质量往下走，更是时间久了，大家对质量的感觉也会一起往下走。粗糙的东西越多，传播越广，加上搞钱的驱使，人对美好东西判断会慢慢被带偏，最后慢慢习惯的，就是快刺激、快反馈、快满足。<br>\n再回头看那个小女孩刷视频，让人不舒服的地方就在这里，她看的不只是几个粗糙视频，她从小看到的，可能就是一种越来越低成本、越来越高频、越来越空的东西。</p>\n<p>可以肯定的是，写代码这个事情现在其实也走到这个阶段了。以后普通小白可以用 AI 写出满足自己能用的产品，产品经理也可以用 AI 做出之前要程序员一起来弄的产品，那么真正的工程师以后还能做什么，其实需要好好想想。</p>\n<p>最近听说不少互联网大厂的老板也开始不眠不休的 vibe coding，一个下午也能做出一个自认为可用的 demo，甚至非常沉迷，这件事对一线干活的可能影响会很大，老板跑通代码后会感觉写代码其实也就那么回事。之前要 6 个月的东西，现在是不是一个月就行了，之前要 100 个人，现在是不是 10 个人就够了，后面简直就不太敢想了。</p>\n<p>工程师继续做更好用、更高效的产品，当然还是有空间，但光停在这一层，后面一定会越来越挤，能进来的人越来越多，能做出点样子的人也越来越多，就真的非常内卷了。</p>\n<p>我想后面真正该去做的，应该是和当时歌手演员一样的方式破解，也发专辑，但是会去做演唱会、舞台剧、现场剧，你没法随便套个壳就替掉，里面有组织能力，有细节密度，有长期打磨之后才会出来的完整感，而且是面对世界的。</p>\n<p>软件往后看，我感觉也会越来越像这样，人人都可以 Vide Coding 出产品，都会做一个差不多能用的产品，后面真正能把差距拉开的，还是系统能力、工程深度、场景理解，还有那些别人一眼看不见，但最后会决定这个东西到底有没有分量的地方。</p>\n<p>外面越快，越不能把自己对软件的要求一起放低。低水平的供给以后一定会越来越多，但这不代表我们也要跟着变得粗糙。那个你一用就觉得顺手、舒服、克制、毫无 Bug，能感觉到做的人认真对待过的东西，最后往往才是真正能留下来的。</p>\n<p>我自己也在琢磨未来的发展之路，还是继续做好用、易用、不局限语言、能拿上万 Star 的开源软件，也会去玩底层渲染、终端、编辑器、Rust 这些方向，在没有 AI 之前其实挺有成就感，但是有了 AI 之后，其实只要有想法就够了，很容易显得意义不大了。</p>\n<p>也许是我下一个维度的东西，是软硬件结合的产品，或者是以前只有大厂数千人才能做的那种平台型产品，或者干脆是突破现有维度的东西，但具体是什么，还需要多思考多琢磨。</p>\n<p>最近我的一些产品内容，已经在慢慢往英文，往更大的世界走。当这里很多东西都越来越像、越来越挤的时候，往外走可能是一种办法，去面对更大的市场、更不同的用户、更高的要求，很多事就没法只停在套壳、拼快、抢时间差这一层了，它会逼着你把东西做得更扎实，也逼着你重新想清楚自己到底要做什么。</p>\n<p>有了 AI 之后，很多事都更容易了，但也正因为更容易了，什么东西真的值得做、值得花很多年去换，反而变得更难想清楚。要做什么可能比怎么更快做出一个东西更加重要了。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第261期 - 春天小姐","link":"https://weekly.tw93.fun/posts/261/","pubDate":"Mon, 23 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4000\" data-pswp-height=\"2667\" style=\"aspect-ratio: 1.4998;\" width=\"800\">\n<p><small>封面图拍摄于头顶的春天，杭州的春天还真美啊，期待夏天不要这么快来，这样的天气非常舒服。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"写了篇长文\">写了篇长文</h2>\n<p><strong>你不知道的 Agent：原理、架构与工程实践</strong><br>\n<a href=\"https://tw93.fun/2026-03-21/agent.html\">https://tw93.fun/2026-03-21/agent.html</a><br>\n在写完「你不知道的 Claude Code：架构、治理与工程实践」之后，发现自己对 Agent 底层的理解还不够深入，加上团队在 Agent 方向已经有不少业务落地经验，一直缺少一份系统梳理，所以我又把资料、开源实现和自己写的代码一起过了一遍，最后整理成了这篇文章。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/hy/AlTSDH.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/hy/AlTSDH.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/hy/AlTSDH.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"产品更新\">产品更新</h2>\n<p><strong>Mole 发布了 1.31 版本了</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\nMole 周末发布了 v1.31.0 版本，取名 Makima，性能更快，系统状态报告也更准确，非常感谢所有贡献者，做了一个视频，让大伙感受一下开源的力量。<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/mole04.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>从这些用 Claude 做的项目获取灵感</strong><br>\n<a href=\"https://claude.com/resources/use-cases\">https://claude.com/resources/use-cases</a><br>\n挺值得一看，包括从研究、写作、编程、分析，日常工作中的各种案例，内容比我想的要深入不少。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"780\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>Agent 时代非常推荐 jina 的这个服务</strong><br>\n<a href=\"https://r.jina.ai\">https://r.jina.ai</a><br>\n有时候你需要 AI 去读取一个线上网站的内容，很多时候由于各种原因获取不到，就可以试试这个服务，直接在后面加上你需要获取的地址，他会帮你转成很规范的 markdown，这样 AI 使用非常方便。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2362\" style=\"aspect-ratio: 1.7341;\" width=\"800\"></p>\n<p><strong>Pi 这个最小 Agent 框架值得了解一下</strong><br>\n<a href=\"https://github.com/badlogic/pi-mono\">https://github.com/badlogic/pi-mono</a><br>\n非常小，之前 openclaw 就是基于这个框架来实现，属于了解 Agent 的一个很好入口。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"900\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>夏天试试买成品冰块</strong><br>\n之前一直纠结要不要买一个制冰机，不过家里只有我一个人喜欢喝冰水，感觉使用率不高，还占位置，之前冻冰块也不方便，一般是要喝的时候发现忘记冻了，发现有一个好东西，就是直接买几个成品冰块放冰箱，要用的时候直接拿出来，还可以直接夏天做美式，性价比非常高。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG\" loading=\"lazy\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>整了一张新加坡汇丰卡</strong><br>\n假如你有国内和香港的汇丰，那可以找你的客户经理帮你办一张新加坡的，虽然一种超市购物卡的感觉，挂号信三个月没到，电话过去，重新生产快递一周就到了。<br>\n<img src=\"https://cdn.fliggy.com/pic/KeRlkk25.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/KeRlkk25.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/KeRlkk25.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\"></p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第260期 - 去太子湾","link":"https://weekly.tw93.fun/posts/260/","pubDate":"Mon, 16 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4000\" data-pswp-height=\"2667\" style=\"aspect-ratio: 1.4998;\" width=\"800\">\n<p><small>封面图拍摄于周六去了一趟西湖太子湾，本来想看看郁金香，人人人人人人人人人人真多啊，不建议去凑热闹。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"写了篇长文\">写了篇长文</h2>\n<p><strong>你不知道的 Claude Code：架构、治理与工程实践</strong><br>\n<a href=\"https://tw93.fun/2026-03-12/claude.html\">https://tw93.fun/2026-03-12/claude.html</a><br>\n围绕上下文管理、Skills、Hooks、Subagents、Prompt Caching 以及 CLAUDE.md 的设计展开，重点讨论怎样让协作过程更稳定、更可控，偏工程师技术视角的最佳实践，欢迎大伙一起最佳交流。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg\" loading=\"lazy\" data-pswp-width=\"2750\" data-pswp-height=\"1108\" style=\"aspect-ratio: 2.4819;\" width=\"800\"></p>\n<h2 id=\"产品更新\">产品更新</h2>\n<p><strong>Mole 发布了 1.30 版本了</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\nMole 从去年十一开始写的，到今天居然发了 30 个版本了，本次更新了这些东西。<br>\n1、强化 orphan 应用数据清理策略。通用 orphan 清理现在使用 30 天静置窗口<br>\n2、优化大目录场景下的 Application Support 与项目缓存扫描逻辑，降低卡顿风险，并将扫描范围收敛到更安全的根路径<br>\n3、强化 LaunchServices 刷新兜底逻辑，稳定 Homebrew 卸载与更新路径，减少不必要的 sudo 行为<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"></p>\n<p><strong>Kaku 发布了 0.7 版本</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\n我非常喜欢这次发布的透明磨砂的效果，你也可以试试看，更新如下：<br>\n1、Kaku 现在会跟随 macOS 自动切换深色和浅色模式，并优化了透明度渲染和 Yazi 主题同步体验<br>\n2、新增标签页和窗格关闭确认，重做了关闭浮层样式，新增自制圆角滚动条，试试 kaku config<br>\n3、kaku ai 现在支持 Antigravity 模型配置、额度追踪、后台加载<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2356\" style=\"aspect-ratio: 1.7385;\" width=\"800\"></p>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>了解类 Claude Code 的原理的学习</strong><br>\n<a href=\"https://learn.shareai.run/en/\">https://learn.shareai.run/en/</a><br>\n会一步步引导你从零开始构建一个极简的类似 Claude Code 的 Agent，并详细解释每个机制，值得一看。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png\" loading=\"lazy\" data-pswp-width=\"3384\" data-pswp-height=\"2302\" style=\"aspect-ratio: 1.4700;\" width=\"800\"></p>\n<p><strong>RentAHuman：AI 请人打工</strong><br>\n&#x3C; <a href=\"http://RentAHuman.ai%3E\">http://RentAHuman.ai></a><br>\n当 AI Agent 遇到无法在线完成的任务时，它可以将工作发布到网上，并雇佣一个真人来完成这项任务，哈哈，好有意思。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>一个非常棒的交互式 MicroGPT 演示</strong><br>\n<a href=\"https://growingswe.com/blog/microgpt\">https://growingswe.com/blog/microgpt</a><br>\n这个是基于 Andrej Karpathy 用大约 200 行 Python 代码实现的 GPT，并以可视化的方式解释了语言模型的工作原理的学习网站，值得看看。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>一个公开的 OpenClaw 暴露监控站点</strong><br>\n<a href=\"https://openclaw.allegro.earth\">https://openclaw.allegro.earth</a><br>\n列出可通过网络访问的 OpenClaw 实例，在许多情况下，你可以点击进入这些实例，直接查看正在运行的实例中的内容，其实有很多不懂技术的人装龙虾，很多事情很危险的，居然有很多是阿里的，可怕。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>我的 CodeX 配置，欢迎参考</strong><br>\nModel：Fast GPT-5.4 High<br>\nPersonality: Pragmatic.<br>\nCustom Instructions：<br>\nAct like a high-performing senior engineer. Be concise, direct, and execution-focused.<br>\nPrefer simple, maintainable, production-friendly solutions. Write low-complexity code that is easy to read, debug, and modify.<br>\nDo not overengineer or add heavy abstractions, extra layers, or large dependencies for small features.<br>\nKeep APIs small, behavior explicit, and naming clear. Avoid cleverness unless it clearly improves the result.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png\" loading=\"lazy\" data-pswp-width=\"2952\" data-pswp-height=\"1898\" style=\"aspect-ratio: 1.5553;\" width=\"800\"></p>\n<p><strong>周天炒了 4 个小菜</strong></p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG\" loading=\"lazy\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n    <tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"},{"title":"第259期 - 空中径山","link":"https://weekly.tw93.fun/posts/259/","pubDate":"Mon, 09 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"3608\" data-pswp-height=\"2030\" style=\"aspect-ratio: 1.7773;\" width=\"800\">\n<p><small>封面图拍摄于周末带着无人机去径山花海玩，当前只有油菜花，其他的花没有怎么开，拿着无人机飞到最高拍照玩，看到不少不错的景色。</small></p>\n<blockquote>\n<p><strong>记录每周看到的接地气的潮流技术，筛选后发布于此，觉得不错可关注此周刊，方便获取更新通知</strong></p>\n</blockquote>\n<h2 id=\"潮流工具\">潮流工具</h2>\n<p><strong>妙言最近也更新了，还有 CLI 了</strong><br>\n<a href=\"https://github.com/tw93/miaoyan\">https://github.com/tw93/miaoyan</a><br>\n1、支持 miao 的 cli，可以用命令行列出所有笔记、搜索、新建、cat 内容，非常实用 ai 使用<br>\n2、Apple 公证完成：终于不会出现 App 损坏提示以及不用再去系统设置里点”仍然打开”了！<br>\n3、预览稳定性升级：修复预览偶发空白问题，增强 WebContent 进程异常后的恢复能力。<br>\n4、编辑体验优化：修复分栏模式下输入法问题，解决系统快捷键冲突，消除切换笔记时高亮闪烁。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png\" loading=\"lazy\" data-pswp-width=\"3108\" data-pswp-height=\"1980\" style=\"aspect-ratio: 1.5697;\" width=\"800\"></p>\n<p><strong>Pake 发布了 3.10 版本</strong><br>\n<a href=\"https://github.com/tw93/Pake\">https://github.com/tw93/Pake</a><br>\n1、多窗口支持：新增 —multi-window 参数，允许在同一 App 实例中打开多个窗口。启用后，macOS File 菜单（Cmd+N）和系统托盘菜单均会出现 “New Window” 入口，重新启动 App 时也会打开新窗口而非聚焦已有窗口。<br>\n2、内部链接正则控制：新增 —internal-url-regex 参数，支持通过正则表达式精确控制哪些 URL 被视为内部链接，作为默认同域名判断的替代方案，非法正则时自动回退到默认逻辑。<br>\n3、Windows ICO 图标修复：对多分辨率 ICO 文件重新排序，优先使用 256px 图标，提升 Windows 下 App 图标的显示质量。<br>\n4、DMG 背景图修复：恢复 macOS DMG 背景图的 Retina 元数据并调整尺寸，修复 CI 构建中背景图显示异常的问题。<br>\n<img src=\"https://raw.githubusercontent.com/tw93/static/main/pake/pake1.gif\" width=\"800\"></p>\n<p><strong>nanobot 这种更轻、更适合放在个人电脑上的 OpenClaw 形态</strong><br>\n<a href=\"https://github.com/HKUDS/nanobot\">https://github.com/HKUDS/nanobot</a><br>\n我本地现在就常驻着两个 nanobot，一个偏代码方向，平时帮我看 issue、整理思路、往下推技术方案，另一个偏生活方向，去处理一些更日常的事情，相当于替换半年前习惯的 ChatBot。再加一个定时任务一直盯着，假如服务挂了就自动拉起，同时用 Amphetamine 让我家里电脑一直在线。跑久了以后，它就很像自己环境里一个稳定存在的部分，不需要你每次都特意去打开、去维护、去折腾。</p>\n<p>很多时候你写代码写到一半，或者人在外面不方便开电脑的时候，有些事情就可以顺手丢给它先做，等你回来看，前面的准备工作已经做掉一部分了。这种体验很实际，对喜欢轻量、简单、自己可控的工程师来说会很自然。考虑到不想折腾的话，我其实更建议直接用安装版本，开箱就能跑起来。像我自己会想再加一点想要的东西，就会直接 clone 到本地去用，让 nanobot 自己优化自己的代码，自己去迭代自己，最近也加了不少好玩的东西。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\"></p>\n<p><strong>Amphetamine 让你的电脑不休眠</strong><br>\n<a href=\"https://apps.apple.com/us/app/amphetamine/id937984704\">https://apps.apple.com/us/app/amphetamine/id937984704</a><br>\n当你需要运行类似龙虾或者 nanobot 的时候，其实很不想关掉息屏，甚至想着关上盖子也继续运行，找到了这个软件，免费不错，非常适合你用家里的 Mac 但是想它关掉屏幕一直开着，就可以试试这个。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png\" loading=\"lazy\" data-pswp-width=\"2584\" data-pswp-height=\"1672\" style=\"aspect-ratio: 1.5455;\" width=\"800\"></p>\n<p><strong>Maple 浏览器书签工具最新更新了</strong><br>\n<a href=\"https://github.com/tw93/Maple\">https://github.com/tw93/Maple</a><br>\n1、新标签页打开设置：在设置中新增「在新标签页中打开」选项，默认关闭悬停提示以获得更简洁的界面。<br>\n2、多语言支持：优化设置页面样式，新增多语言支持以提升可访问性。<br>\n3、File 协议支持：修复打开 file 协议书签（file://）的问题。<br>\n4、Bug 修复：修复 Bing 日期问题、排序问题及多项用户体验优化。<br>\n<img src=\"https://raw.githubusercontent.com/tw93/static/master/pic/maple1.gif\" width=\"800\"></p>\n<p><strong>发现一个很现代的 VSCode 的主题 Islands Dark</strong><br>\n<a href=\"https://github.com/bwya77/vscode-dark-islands\">https://github.com/bwya77/vscode-dark-islands</a><br>\n很有苹果新系统的感觉，玻璃圆弧那个效果的，圆角，有一种现代的感觉，不过你可能不会太习惯。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png\" loading=\"lazy\" data-pswp-width=\"1802\" data-pswp-height=\"1389\" style=\"aspect-ratio: 1.2973;\" width=\"800\"></p>\n<p><strong>Readout：把你的 Claude Code 项目可视化</strong><br>\n<a href=\"https://readout.org\">https://readout.org</a><br>\n可实时可视化你的 Claude Code 环境，它能展示 AI、会话、仓库、费用、MCP、端口等信息，并提供即时全局搜索，以及带时间轴回放的完整会话重播，本地运行，不要账号，期待他接下来的发展。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png\" loading=\"lazy\" data-pswp-width=\"2798\" data-pswp-height=\"1792\" style=\"aspect-ratio: 1.5614;\" width=\"800\"></p>\n<h2 id=\"随便看看\">随便看看</h2>\n<p><strong>盖帝虎地漏芯很不错，可以试试</strong><br>\n上次那个最近一年买到的好物里面第一的盖帝虎地漏芯我在买了一个试用后，又买了一个，把家里浴室地漏缘故全换了，非常通顺不堵水，安装简单，推荐推荐。<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"500\"></p>\n<p><strong>好多年都没有吃过椰肉了，很有意思</strong><br>\n椰皇怎么不用刀开孔给我学到了，先把上面顶剥掉，然后会有 3 个面然后轻轻按一下有一个地方明显不硬，然后去找孔就好。<br>\n然后怎么开椰壳，那就是用另外一个椰皇，一手一个，相互去砸三条凸起棱，用力砸几下，然后有一个就有裂缝了，一掰就开了，椰肉很清爽！</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"随便写写\">随便写写</h2>\n<p><img src=\"https://gw.alipayobjects.com/zos/k/2v/4CGWQA.png\" alt=\"\"></p>\n<p>上周五看腾讯大厦装龙虾这件事，挺有感触，有点儿《龙虾大跃进》的感觉。</p>\n<p>最近很多大厂都在疯狂让一线非技术员工去安装龙虾，网上甚至真有 500 上门安装服务。大家都在拼命找使用场景，拼命要求落地，拼命证明这个东西已经重要到不能错过，整个过程让我有一种很强的赛博科技折叠感。</p>\n<p>看到一句话很有意思，连龙虾都不会装的人，怎么会用龙虾呢。再往前一步，连基本使用都没有建立起来，却要先做出完整场景，做出结果，做出价值证明，这本身就更难。</p>\n<p>这背后有两个东西叠在一起。一个是错觉，很多老板看了太多视频号切片，被各种夸张叙事和万能案例反复轰炸以后，真的会产生一种幻觉，觉得这东西什么都能做，哪里都能接，谁都该装，装了就应该立刻有产出。另一个是焦虑，大家又都怕错过这一波，于是开始用行政动作去推动，用集体焦虑去代替真实需求。</p>\n<p>所以你会看到一种很强的反差。一边口号非常大，仿佛人人都要进入 AI 原生时代。另一边是大量人连自己到底有什么事情值得交给它做都说不清楚。这个反差后面只会越来越强，而且会越来越荒诞。</p>\n<p>因为工具从来不会靠安装产生价值，工具只会靠任务密度、流程清不清楚、结果能不能看出来来产生价值。没有连续任务，没有 SOP，没有线上完成的条件，没有明确的输入输出，再强的东西放在那里也只是一个图标。它不会因为被装上了，就自动长出场景。</p>\n<p>所以我一直觉得，龙虾并不适合所有人。</p>\n<p>它很适合指挥者，很适合一人公司，也很适合那种脑子里一直有事情要往上做、能把工作拆成步骤、并且很多事情都能在线上完成的人。尤其是你用过 skills 和 tools，也知道 AI 本身的能力边界，能把流程串起来、把场景搭起来、把事情一步步做完，这种时候就会非常合适。</p>\n<p>比如对我来说，这个场景就很自然。特别是有大量事情要往上做，但是刚好不在家里不在公司，在外带着手机，或者不方便开电脑的时候，我会让我的两个 nanobot 去检查我的开源产品 issue，产出技术方案，然后另外一个去 review、去提交，一气呵成。让我早上上班坐车路上，就把事情优雅做了，真是方便。</p>\n<p>但是对于一个平时本来就没有什么工作要在外面完成的人，甚至回到家连电脑都不想开的人，怎么可能硬有场景去做事情。吃好玩好就很舒服啦。没有场景就是没有场景，真的不用焦虑。</p>\n<p>我觉得这一波最容易被放大的，不是能力差距，是场景差距。有场景的人会越用越顺，越跑越快，最后像多了几个分身。没有场景的人，就很容易在概念、教程、案例、视频里来回打转，最后除了多装几个软件，什么都没变。</p>\n<p>很多人今天最大的问题，也不是没装龙虾，而是把装了某个工具，当成自己已经进入了 AI 时代。其实真正的分水岭，一直都在任务理解、流程设计、结果判断这些地方。你到底有没有持续的问题要解决，你能不能把问题拆出来交给系统，你能不能判断结果是不是对，这些才决定了你能不能真正从 AI 里拿到价值。</p>\n<p>所以无需焦虑。没有场景的时候，硬装龙虾意义不大。</p>\n<p>真想体验这代 AI 到底强在哪里，不如花 20 刀去包一个 Claude Code，或者更有趣一点，再包一个 ChatGPT 会员，用 GPT 5.4 去帮你处理一个你自己真觉得很难的事情，产出方案，推进执行，体验一次这种简单、高效、直接把问题解决掉的过程，这比装一个龙虾好太多了。</p>\n<p>龙虾适合有场景的人，适合指挥者，适合一人公司，适合那些可以把流程 SOP 化、线上化、一步步做完的人。它当然很强，但它不是靠被安装来证明自己强，是靠替你完成工作来证明。</p>\n<p>很多人今天在装的是龙虾，真正更该先想明白的是一句话，我到底有什么问题，值得交给 AI 去解决。</p>\n<p>这件事，可能比装什么都重要。</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >觉得不错，请 Tw93 喝冰可乐 🥤</a>\n    </p>"}]},"en":{"count":12,"issues":[{"title":"270. Qiao Cun","link":"https://weekly.tw93.fun/en/posts/270/","pubDate":"Mon, 15 Jun 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/27034.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/27034.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/27034.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5691\" data-pswp-height=\"4268\" style=\"aspect-ratio: 1.3334;\" width=\"800\">\n<p><small>The cover photo was taken over the weekend when I went to Qiao Cun for a meal, just a casual snap. Their food is great, the avocado and salmon are really tasty. Whenever a friend visits Hangzhou, I usually take them here or to Zhang’s Mansion.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"new-recommendation\">New Recommendation</h2>\n<p><strong>If a friend of yours needs to update their resume soon, you have to recommend Kami to them</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\nIf a friend of yours needs to update their resume soon, you have to recommend Kami to them. I tuned a dedicated version carefully, so Kami alone makes writing a resume genuinely handy, good-looking, and clear. Have them get their raw source material ready in Markdown, then tell the AI <code>/kami help me produce a resume</code>, tweak it once or twice, and it’s pretty much done. It’s not just layout, it also helps optimize and organize your resume content, looking at the talent profile from the perspective of a technical final-round interviewer.<br>\n<img src=\"https://cdn.fliggy.com/pic/9MamaP33.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/9MamaP33.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/9MamaP33.png\" loading=\"lazy\" data-pswp-width=\"1241\" data-pswp-height=\"1754\" style=\"aspect-ratio: 0.7075;\" width=\"800\"></p>\n<h2 id=\"product-releases\">Product Releases</h2>\n<p><strong>Mole’s desktop client 1.7.2 is here</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\nThis release updates a ton of things, including support for users with accessibility needs. Status and the menu bar are faster and more stable, Software, uninstall, and updates are more complete, Clean is more thorough while still keeping review-first, the privacy check is more accurate, quieter, and smarter, Analyze, Doctor, and Clean Screen are more stable too, and there are quite a few optimizations for fan control on Apple silicon.</p>\n<p>It’s been exactly one month since Mole’s Mac version launched, written in my spare time, and the numbers are kind of fun. In total I wrote 110,000 lines of Swift, including 36,000 lines of test code and 1,983 unit tests, shipped 8 releases, added 145 new features, and supported 9 languages. It’s the last day of the early-bird price and MOLEWEEKLY still works, so anyone interested is welcome to give it a try. More surprises to come.</p>\n<p><video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mole318.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>Kaku has finally updated to version 0.12 as well</strong><br>\nKaku even has its own little official site now <a href=\"https://kaku.fun/\">https://kaku.fun/</a>, go take a look. This update brings quite a few things: it now restores session history after you reopen a window, supports AI features you can use directly once logged in with the Codex backend, opens PDFs, images, audio and video, archives, and Office documents with the system default app, and when all panels are sitting at the shell prompt, Cmd+Q quits directly, plus other fun features. Go check out the Release.<br>\n<img src=\"https://cdn.fliggy.com/pic/8fKF3s43.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/8fKF3s43.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/8fKF3s43.png\" loading=\"lazy\" data-pswp-width=\"3116\" data-pswp-height=\"1540\" style=\"aspect-ratio: 2.0234;\" width=\"800\"></p>\n<p><strong>Some fun recent updates to Pake</strong><br>\n<a href=\"http://github.com/tw93/Pake\">http://github.com/tw93/Pake</a><br>\nPake packages a web page into a lightweight desktop app with one command, supporting macOS, Windows, and Linux. Recently it added cmd+f content search, right-click download support, dots in desktop app names, clearer error messages when AppImage builds fail on Linux, a pnpm 11 compatibility fix, and more.<br>\n<img src=\"https://cdn.fliggy.com/pic/pake128.gif\" width=\"800\"></p>\n<h2 id=\"just-chatting\">Just Chatting</h2>\n<p><strong>I’m not an influencer, not a content creator, not a KOL, so what am I</strong><br>\n<img src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/jDQIRZ22.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"><br>\nMy Twitter earnings are only a bit over 100 dollars each time, probably far less than most blue checkmarks, even lower than that friend who got burned twice by Tauri, which is kind of funny. Why so little? Haha, I should reflect on it, and along the way share my failure experience with everyone.</p>\n<p>First off, I’m not an influencer, not a content creator, not a KOL, nothing really, just an ordinary engineer who writes a bit of hobby code. Twitter, to me, is a way to sync the changelogs of my open-source products to everyone, and to share daily life posts about where I went, what I ate, what I watched. There’s no traffic pressure at all, and no pressure to turn traffic into money, so if the earnings are small, so be it. That actually happens to make this an account I like more and more.</p>\n<p>Content creators usually make money by taking ads, and AI companies tend to pay quite well, sharing lots of altruistic products to get more people to follow, earning their due while being helpful, which is honestly pretty nice too. But there’s usually traffic pressure: you have to keep chasing hot topics and obsessing over headlines, and the longer you do it the better you get. I just feel that’s too exhausting, and I can’t pull it off.</p>\n<p>I actually took some ads before, but I haven’t for a long time now. I remember an agency once contacted me and said advertisers don’t like an account like mine, they prefer the kind that constantly posts AI hot takes. When I heard that, I was actually happy, haha. My account hasn’t turned into the high-quality traffic account they see it as, so I guess I’m keeping things pretty well.</p>\n<p>I kept wondering, if I had to describe my account in one word, what would it be? I thought about it for a long time, and finally figured it out today, which is why this casual article exists: my account should be a continuously iterated “Tw93 Engineer Magazine”.</p>\n<p>This magazine has roughly these few columns: Product Notes, recording the updates and interesting ideas behind products like Pake, Mole, and Kaku; a Tech Column, where I write about technical thoughts, thoughts on AI, and learning topics in new tech areas; Good Stuff, all tools I actually use myself, none of the paid-promotion kind; and a Just Looking Around module where you can see my daily life, what I eat, play, and watch.</p>\n<p>Every engineer can flip through it casually, find something they’re interested in, and dive in to play with it. Friends who want to learn can also read through my long articles one by one, then head to my blog and the trending weekly to find more interesting past content.</p>\n<p>This magazine has almost no ads, and won’t say things against my conscience just to promote my own products. Updates are pretty casual too, usually at most two posts a day, just one when I’m too busy, posting whatever comes to mind. At the same time this magazine is a continuously iterating product: through it you can see how I change year by year, like a tech friend who keeps you company, and you can also reach the magazine’s editor via DM.</p>\n<p>The magazine is slowly growing its own side business, Mole. It sells not because the product is so great, but more because of people’s trust in the magazine itself. This made me realize that low-traffic content doesn’t mean it has no value. Not many people read it, but the trust runs deep, and that can actually bring some unexpected conversions, which is pretty magical. It’s just run rather casually, but fairly consistently.</p>\n<p>So what am I really running? It should just be this magazine called Tw93. Whatever kind of person I am, I write that kind of content, and naturally I’ll meet that kind of reader, with no need to worry about what to write. In the end, what I most want to do is let the engineers reading this magazine and me learn from and grow with each other, but without the anxiety.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"269. Tianmu Scenery","link":"https://weekly.tw93.fun/en/posts/269/","pubDate":"Sun, 07 Jun 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_151828.JPG\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo was taken at Tianmu Scenery on Mount Tianmu in Lin’an, where I went the weekend before last. A really nice place, super cool in summer with plenty of fresh air. The Liuchun House up the mountain is delicious, highly recommend a visit, way fewer people than Jiuxi Yanshu.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"new-article\">New Article</h2>\n<p><strong>You Don’t Know Embodied AI: From a Tiny Robot Dog to Optimus</strong><br>\n<a href=\"https://tw93.fun/en/2026-06-07/robot.html\">https://tw93.fun/en/2026-06-07/robot.html</a><br>\nNew article is here. Back in April I assembled a little robot dog. I posted a few things about the build on Twitter, you’ve probably seen them. Then I wrote on and off for almost 2 months and finally finished it, the longest article I’ve ever written. Give it a read.<br>\n<img src=\"https://tw93.fun/images/2026/robot/00-perception-space-action-torque.png\" width=\"800\"></p>\n<h2 id=\"product-releases\">Product Releases</h2>\n<p><strong>Mole’s desktop client 1.6.2 is here</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\nI’m working to round out Mole desktop’s nice features as fast as I can. Just shipped 1.6.2, go update. If you haven’t bought it yet and are interested, you’re welcome to grab it. The price is expected to return to normal after June 15.</p>\n<ol>\n<li>Keep Screen On (new): keep your Mac awake from the menu bar, with selectable durations. Restoring on launch now completes quietly, no more sudden admin-permission prompts.</li>\n<li>Privacy Check (new): the menu bar popover shows camera or microphone usage status and sends a local notification, so you can see it without opening the main window.</li>\n<li>Clean Screen (new): switch the screen to a solid color to make wiping the screen and keyboard easier. Press Escape to exit, and you can enable input lock too.</li>\n<li>Software updates cover more apps: Software now checks the Mac App Store, Sparkle, Electron, Homebrew cask/formula, Homebrew catalog, and GitHub Releases, with clearer progress.</li>\n<li>Uninstall finds more leftovers: leftover detection now covers receipts, Launch Items, Group Containers, Darwin temp caches, and more App Support traces.</li>\n<li>Clean is more useful while staying careful: Mole finds large directories like build, dist, target, and node_modules in your projects, but leaves them for you to review by default.</li>\n<li>Analyze scans faster: disk analysis adds concurrent computation, cache reuse, and subdirectory prewarming, so large directories open faster.</li>\n</ol>\n<img src=\"https://cdn.fliggy.com/pic/2QNwTk40.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/2QNwTk40.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/2QNwTk40.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2027\" style=\"aspect-ratio: 2.0207;\" width=\"800\">\n<p><strong>Kami, where good content deserves good layout, has shipped a bunch of updates</strong><br>\n<a href=\"http://kami.tw93.fun\">http://kami.tw93.fun</a></p>\n<ol>\n<li>Added a landing-page module. The Mole site and Kami’s own site you’ve seen are actually generated by Kami bootstrapping itself. It’s great for your product intro page, and it even thinks through Geo, Sitemap, and Vercel deployment for you, so you can build a site worry-free.</li>\n<li>Finally supports Marp slide mode, back to the days of writing slides in Markdown. One md file exports to HTML, PDF, or PPTX via marp-cli. The theme ships with Kami’s colors and fonts, works out of the box, and stays lightweight.</li>\n<li>Turns out there are quite a few Korean users, so on top of Simplified Chinese, Traditional Chinese, English, and Japanese, Kami now has fine-grained Korean support and multi-template designs. If you’re a friend from Korea, you’re very welcome to try it and send me feedback.</li>\n<li>The one-pager module, portfolio, and slides now all support importing your brand logo and other brand cues, so Kami blends right into your brand style.</li>\n<li>Since we’re engineers, Kami also does automatic syntax highlighting for code, coloring it for you at build time with no external CSS needed.</li>\n<li>One more fun thing: although Kami is also a Skill, it’s actually 70% code rather than Markdown. If you want to learn how to write a Skill that’s obedient and useful by default, you’re welcome to read the code, it might help <a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a></li>\n</ol>\n<p><video width=\"800px\" preload=\"metadata\" loop autoplay muted><source src=\"https://cdn.fliggy.com/pic/kami04.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>Made a nice website for Kaku</strong><br>\n<a href=\"http://kaku.fun\">http://kaku.fun</a><br>\nFinally done, built using the Kami skill, with a lot of docs filled in, and it supports both Chinese and English. Little Kaku finally has its own website, go take a look. Also, Kaku 0.12 is out, remember to update~<br>\n<img src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/Jyw4Z940.png\" loading=\"lazy\" data-pswp-width=\"3818\" data-pswp-height=\"2562\" style=\"aspect-ratio: 1.4902;\" width=\"800\"></p>\n<h2 id=\"just-looking-around\">Just Looking Around</h2>\n<p><strong>Come check out my latest desk setup</strong><br>\nReally happy, it arrived over the weekend. Before, I had a thick book plus a slab of mahjong tiles under my monitor, and the height was just right, but my OCD wanted a clean, unobtrusive 30×20×10 block to put underneath. I looked at lots of dedicated monitor risers, all too big, and looked at acrylic boards too, a bit rough, no solution.<br>\nHere’s the kicker: somehow while browsing PDD I stumbled onto these Buddha-statue bases. A perfect fit, ten times cheaper, and they work great!</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"38%\">\n          <img src=\"https://cdn.fliggy.com/pic/HM8cAV17.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/HM8cAV17.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/HM8cAV17.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"38%\">\n            <img src=\"https://cdn.fliggy.com/pic/2OEw9N23.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/2OEw9N23.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/2OEw9N23.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"24%\">\n            <img src=\"https://cdn.fliggy.com/pic/nBYIfw31.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/nBYIfw31.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/nBYIfw31.png\" loading=\"lazy\" data-pswp-width=\"943\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.4604;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>Can’t believe I only just watched “A Love Letter to Grandma”, highly recommend</strong><br>\nOver the weekend I went to see the film “A Love Letter to Grandma”. It’s about to leave theaters, really good and really moving, the best film I’ve seen in a cinema in the past couple of years. The young actors were cast really well. If you haven’t seen it, definitely go when you have time!<br>\n<img src=\"https://cdn.fliggy.com/pic/HgIK5M29.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/HgIK5M29.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/HgIK5M29.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<h2 id=\"just-saying-thanks\">Just Saying Thanks</h2>\n<p><strong>Some trade-offs I’ve made building products</strong><br>\nMore than 20 days after Mole Mac launched, sales hit a small milestone. I want to share some of the trade-offs I made along the way, and why early on I handled every bit of user communication, Q&#x26;A, and refunds entirely by hand. Hopefully it gives some input to folks building their own indie products.</p>\n<p>First, why do I handle user Q&#x26;A, feedback, email replies, refunds, activation-code resets, price-difference refunds, and so on completely by hand, even though they’re less than 1% of users and I could honestly spend half an hour writing an Agent to handle them? This is a common trap for engineers building products, something that looks efficient but isn’t actually great. There are two considerations here. Only by genuinely handling users’ after-sales issues can you feel what users really need, why they want a refund, why something feels hard to use, their real suggestions and feedback. You can even exchange emails to surface more of their real needs, and through this process you get fluent at knowing the best replies and solutions for every kind of problem. That way, once the product gradually grows, bringing in an Agent for efficiency works much better than doing it from the start.</p>\n<p>Second, why I don’t recommend building a so-called after-sales system from day one. This is an important technical-judgment call for a product engineer: prioritize getting the main product features right, rather than standing up all your peripheral support systems up front. AI is fast, but it still pulls your precious time away from improving the product itself. It looks like it costs no time, but it actually costs you a lot. Spending that time improving the product and meeting users’ real needs is far better.</p>\n<p>Next, I want to talk about some common pitfalls when engineers transition to indie product development. First, what’s the difference between a good product and an average one? A good product is better at deciding what not to build, at which stage each feature is best for the product and users, and which features, even if good, don’t belong on the product’s main line and shouldn’t be added, otherwise it easily turns into a mishmash that’s hard to maintain. Another trait of a good product is that you actually hold the next six months of its development in your head, clearly knowing which features each version should add, which are false needs, and which features should sit right where users naturally reach for them. A product that ordinary beginners don’t need a manual for is a good product. That’s also why, when some friends suggested adding nice Mac features to Mole, I apologetically declined, staying restrained and firmly believing in the product view of “don’t add entities unless necessary”.</p>\n<p>Mole’s positioning is the quiet guardian of Mac system optimization, cleanup, and maintenance. Keep that positioning, refine it, and make it the best Mac maintenance software in the world. If 1 in every 100 Mac users worldwide used Mole, then Mole would truly be good, and that’s what I chase as a product maker: letting more non-technical folks enjoy the fun of an engineer’s product. Recently some visually impaired users have been using Mole and ran into a few accessibility issues, which I’m rushing to fix. I’m really looking forward to how it works and feels for them.</p>\n<p>Maybe in the AI era a lot of things have indeed gotten much more convenient, but communicating with people can’t be replaced by AI, otherwise it loses its meaning. AI can boost efficiency, but it can hardly deepen the feeling and trust between people. This might be a good way for products built with AI Coding to keep a human touch going forward.</p>\n<p>Since this is my first paid product, there may be things I haven’t thought through, and I welcome experienced friends to point them out and offer suggestions.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"268. Xiaohe Park","link":"https://weekly.tw93.fun/en/posts/268/","pubDate":"Mon, 25 May 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/26829.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26829.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26829.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo is of a textured building I shot last weekend at Xiaohe Park. The sunlight happened to be perfect, paired with the green trees, it looked really nice.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"product-releases\">Product Releases</h2>\n<p><strong>The Mole desktop client is here</strong><br>\n<a href=\"https://mole.fit/\">https://mole.fit/</a><br>\nFinally, finally, Mole’s Mac desktop version is out. The CLI will keep being free and open source forever. The desktop client is for folks who enjoy a more interactive product feel. We recently shipped 1.5, which adds various sprite animations in the menu bar, login-item management, software update management, and the most fun part, fan control, plus more. Head over to the official site for the full rundown. Weekly readers get 20% off with code MOLEWEEKLY. Early-bird price is currently $9.</p>\n<p>If you’ve contributed code to Mole or sponsored me on GitHub, DM me and I’ll send a 100% discount code.</p>\n<p><video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mole206.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>Mole CLI updated to 1.39</strong><br>\n<a href=\"https://github.com/tw93/Mole\">https://github.com/tw93/Mole</a></p>\n<ol>\n<li>mo clean major hardening: GUI app dotdirs and Gradle DSL caches are no longer wiped by mistake; dry-run now matches actual cleanup so no more false reports; simctl probing retries to fix the first-error-after-restart issue; Trash cleanup no longer triggers blocking macOS warning dialogs; TMPDIR cleanup is roughly an order of magnitude faster; added cache coverage for UTM/Lima/Arc/QQ Browser/Codex CLI/Antigravity/Gemini; VS Code family now cleans leftover extensions by the .obsolete marker.</li>\n<li>mo uninstall: bundle ID matching upgraded to boundary checks so it won’t hit by mistake; leftover login items are now called out with their cleanup paths in the summary. mo purge: hardened with timeout protection and trap handling, any exit path restores the cursor and clears temp files.</li>\n<li>mo analyze: hardlinks are now deduped by inode, so FCP and other managed media no longer report tens of times inflated. mo status: available-memory math now aligns with Activity Monitor.</li>\n<li>mo touchid: PAM writes switched to atomic operations to preserve read-only permissions. mo optimize: removed Bluetooth reset to avoid accidentally kicking devices.</li>\n<li>Global NO_COLOR=1 support. When Trash isn’t available, it now fails closed to prevent silent permanent deletion.\n<img src=\"https://cdn.fliggy.com/pic/XjXNoU39.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XjXNoU39.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XjXNoU39.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\">\n</li>\n</ol>\n<p><strong>Kami now builds product landing pages</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\nKami has shipped a bunch of updates lately. Beyond the original PDF generation, you can now tell it you want a landing page for product XX, and it’ll build something in the same quiet style as the Mole site.<br>\n<img src=\"https://cdn.fliggy.com/pic/XdDecf51.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XdDecf51.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XdDecf51.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2201\" style=\"aspect-ratio: 1.8610;\" width=\"800\"></p>\n<p><strong>Waza has had a bunch of updates lately</strong><br>\n<a href=\"https://github.com/tw93/Waza\">https://github.com/tw93/Waza</a><br>\nWaza (技, わざ), the engineer’s skill collection, has had a bunch of updates recently. Posting a tweet to keep everyone in the loop. If you’re using it, remember to update. I’ve folded in nearly a month of dev best practices, especially a lot of lessons from the recent Mole client work.</p>\n<p>First, Waza finally supports codex end-to-end. One command and you’re done, every capability is supported, because codex has felt really good to use lately.</p>\n<p>The biggest one: the original health skill was just for checking whether Claude config and usage matched best practices, but now it’s evolved into a full Agent Health check. There’s a fun phenomenon with people writing code with AI now, it feels amazing at first, but after a while it becomes unmaintainable and hard to extend. In that case try /health, it’ll check your code, including whether the various capabilities still look ok, whether it’s maintainable, whether things should be split apart, whether dead files should be deleted. Think of it as a scavenger for the bad code AI generates.</p>\n<p>Then /think (Thinking Mode) also has many updates. You can discuss with it whether a feature should be built, and it’ll give you a Kill / Keep / Pivot judgment across multiple dimensions. Honestly, a lot of the time a product is defined by what you choose not to add, not by what else you could add.</p>\n<p>I’ve always felt that adding rules to AI calls for restraint. Every rule you add becomes a ceiling for it. When the model gets stronger, your rules start dragging it down. That’s why I don’t like Superpowers or so-called Spec programming, too verbose, too many rules. That’s also why I wrote Waza, it’s like installing my code-writing avatar onto your computer.</p>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>Lightpanda: a headless browser written from scratch in Zig</strong><br>\n<a href=\"https://github.com/lightpanda-io/browser\">https://github.com/lightpanda-io/browser</a><br>\nA headless browser written from scratch in Zig, designed for agents and automation. The pitch is -9x memory and +11x speed vs Chrome, compatible with the CDP protocol (Playwright/Puppeteer). Worth a look as browser infrastructure for the agent era.<br>\n<img src=\"https://cdn.fliggy.com/pic/aQKcGc14.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/aQKcGc14.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/aQKcGc14.png\" loading=\"lazy\" data-pswp-width=\"1956\" data-pswp-height=\"1124\" style=\"aspect-ratio: 1.7402;\" width=\"800\"></p>\n<p><strong>Mise: Dev tools, env vars, and tasks in one CLI</strong><br>\n<a href=\"https://github.com/jdx/mise\">https://github.com/jdx/mise</a><br>\nA single tool that unifies runtime versions (nvm/asdf) + env vars (direnv) + tasks (make), all managed by a single mise.toml. Lightweight Rust binary. Worth a try if you’re interested.<br>\n<img src=\"https://cdn.fliggy.com/pic/demo34.gif\" width=\"800\"></p>\n<h2 id=\"just-looking-around\">Just Looking Around</h2>\n<p><strong>Recommending this lemon-flavored sparkling water</strong><br>\nYou have to chill it first, then it’s really good. Don’t drink the plain one, this lemon one is the best!</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n          <img src=\"https://cdn.fliggy.com/pic/XcWaIV34.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/XcWaIV34.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/XcWaIV34.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"50%\">\n            <img src=\"https://cdn.fliggy.com/pic/PVaCgF40.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/PVaCgF40.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/PVaCgF40.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>This eye drop I’ve been using is pretty good</strong><br>\nIf you often lose yourself in AICoding, grab a bottle of Hai-Lu eye drops, and have your watch remind you to stand up and walk around.<br>\n<img src=\"https://cdn.fliggy.com/pic/ybMdQk09.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/ybMdQk09.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/ybMdQk09.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\"></p>\n<p><strong>Bought a few nice wooden things</strong><br>\nFirst is a shoehorn, no more bending over to put on shoes. Second is a laptop riser, very useful, with anti-slip. Third is a small holder for aroma bottles. Fourth is the little brush I use to sweep up coffee grounds when I make coffee.</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"25%\">\n          <img src=\"https://cdn.fliggy.com/pic/gv97iD44.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/gv97iD44.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/gv97iD44.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/UXoeo050.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/UXoeo050.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/UXoeo050.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/NUPl0m57.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/NUPl0m57.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/NUPl0m57.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    <td width=\"25%\">\n            <img src=\"https://cdn.fliggy.com/pic/j7ICAj15.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/j7ICAj15.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/j7ICAj15.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>Some thoughts on the Mole desktop release</strong><br>\nOn the back of the recent Mole Mac release, I want to share the magic moments I’ve had over the past couple days. Thanks to this little toy project I started by the Sanya pool last year, I’ve met many interesting overseas developers from all kinds of countries.</p>\n<p>The Mac client took two weekends to build. Plenty of overseas users had brought it up before, saying their parents and siblings don’t use a CLI but really want this feature, asking if I could put out a simple, easy-to-use desktop version. Back then there was the time issue, plus I didn’t think the Mole CLI was mature enough yet, so it kept getting pushed back until now.</p>\n<p>It’s only been half a year since Mole launched, and somehow it’s over 50K stars, 500 user-submitted cleanup-suggestion issues, 300 high-quality feature PRs, and contributions from 100 developers around the world, delivering cleanup capabilities arguably stronger than tools like CleanMyMac. I even racked up 60T of traffic in one week from just 2 images I hosted on Vercel for the README, which left me owing Vercel $80, that’s when I realized how many people are actually using it, so the desktop version was worth doing.</p>\n<p>A lot of the small clever touches in the Mole desktop client only came to me once I started building. Like using planets to represent each feature, which traces back to my childhood love of watching planets move, plus 10 years ago when I picked up frontend, the very first thing I wanted to learn was WebGL. I started using WebGL to render the planets, and each planet’s character lined up nicely with what Mole does, so I worked that theme in:</p>\n<p>Clean uses Earth, “Rain washes the old soil, dust drifts with the tide”<br>\nUninstall uses Mars, “Red dust covers the old, travel light to journey on”<br>\nOptimize uses Mercury, “Swift along the near orbit, small fixes ring out”<br>\nAnalyze uses Jupiter, “From afar it becomes a map, the smallest details visible”<br>\nStatus uses the Sun, “Light that doesn’t strike the eye, a heartbeat that stays bright”</p>\n<p>Like the little mole’s digging and exploration moving from a small patch to the wide world, but still quiet, not getting in your way.</p>\n<p>Another design touch: I swapped each planet’s texture map more than 10 times, downloading and picking through many from NASA’s site to find the best fit. The rotation direction and axis, the speed, the post-completion flight characteristics of each planet, all reference how the actual planets move. That part was one of the more enjoyable bits of AI Coding. These details might feel only loosely connected to Mole-the-mole, and I could have just built a simple click-to-clean menu bar app, but I didn’t want to. There’s already too much cyber junk being generated by AI. I needed to make something that feels a bit more pleasant, so that my tokens aren’t wasted, and so I’m not polluting your timeline.</p>\n<p>I released it around 10pm that night. So grateful for the many friends who shared it on their own, and especially thankful to all the users who bought it, some folks even bought it purely because of the value the CLI had given them. Lots of European and American users, with French, German, all kinds of currencies coming in, really magical. There’s still a lot to round out on the Mac desktop, and I appreciate everyone’s patience, prepaying $9 for a pretty little toy. I’ll keep working on the features.</p>\n<p>I really like things that come together naturally, I don’t like chasing short-term results. This kind of long-term iteration, continuously meeting new friends, getting so much input and discussion, is the most precious treasure. Really fun.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"267. Westlake Stone Characters","link":"https://weekly.tw93.fun/en/posts/267/","pubDate":"Mon, 11 May 2026 00:00:00 GMT","description":"<img src=\"https://cdn.fliggy.com/pic/26722.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26722.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26722.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo was taken last weekend. To get a feel for the strokes for my type design project Luo, I went looking for these kinds of stone-carved characters along the road by West Lake and snapped this shot.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"just-writing\">Just Writing</h2>\n<p><strong>You Didn’t Know GEO: AI Visibility Principles, Practices, and Trade-offs</strong><br>\n<a href=\"https://tw93.fun/en/2026-05-01/ai-visibility.html\">https://tw93.fun/en/2026-05-01/ai-visibility.html</a><br>\nA bunch of friends have @-ed me lately saying my open source tools are getting recommended unprompted when they ask AI questions. I hadn’t done anything special, so I figured why not spend an hour structuring the content properly. After doing it I fired off a quick tweet, but the structure was messy. People seemed genuinely interested, so I decided to write it up as a proper article for reference and lookup.<br>\n<img src=\"https://cdn.fliggy.com/pic/OMaEoa53.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/OMaEoa53.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/OMaEoa53.png\" loading=\"lazy\" width=\"800\"></p>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>Kami, the typesetting system that gives good content the layout it deserves, has been upgraded</strong><br>\n<a href=\"https://github.com/tw93/Kami\">https://github.com/tw93/Kami</a><br>\nKami has had several upgrades recently, including fixing Chinese garbled text in PPT, speeding up the engineering, expanding doc analogues to 8 categories, polishing many layout details, updating the built-in chart capabilities, and more. Welcome to update and try it out.<br>\n<img src=\"https://cdn.fliggy.com/pic/rPlaVb01.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/rPlaVb01.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/rPlaVb01.png\" loading=\"lazy\" data-pswp-width=\"3276\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.3696;\" width=\"800\"></p>\n<p><strong>Waza, the engineer’s 8 skill trees, has been updated</strong><br>\n<a href=\"https://github.com/tw93/Waza\">https://github.com/tw93/Waza</a></p>\n<ol>\n<li>Durable Context: six skills (think, check, hunt, design, write, health) can consume optional memory/preview context. Safety contract: current state always wins, raw conversation reads disabled by default, hardcoded machine paths not allowed.</li>\n<li>Plan Execution Mode: /check executes approved implementation plans step by step, defaults to review-then-ship continuation, document review routes to /write.</li>\n<li>Evaluation Mode: /think now outputs Kill/Keep/Pivot, deciding whether something should be done or kept.</li>\n<li>Validation guardrails: trigger word overlap detection, routing drift checks, attribution leak interception, preventing silent skill conflicts and accidental personal info leaks.</li>\n<li>Design and Write references: added typography traps, design tokens, aesthetic quality, Chinese-English mixed typesetting standards, release-note style guide.\n<img src=\"https://gw.alipayobjects.com/zos/k/qa/waza_repaired_v4.svg\" width=\"800\">\n</li>\n</ol>\n<p><strong>Kaku finally updated to V0.10</strong><br>\n<a href=\"https://github.com/tw93/kaku\">https://github.com/tw93/kaku</a><br>\n🥷 Long wait, everyone. Kaku finally hits V0.10. I held this version back through several minor releases while I kept tuning a really handy in-app Agent assistant. The vibe is a clean, no-nonsense tech buddy. You can summon it with Cmd + L without disturbing any of your existing content, but it’s smart enough to read your context, and I’ve equipped it with a curated set of solid tools. You configure its brain through kaku ai. I highly recommend setting up search capabilities, and pipellm is a nice option.</p>\n<p>AI features are something I’ve always wanted to build but didn’t want to disturb users with. If you’re more of a pure terminal user, I’ve also added plenty of features worth catching up on.</p>\n<p>First, there’s a fun smart window-close intercept. When you haven’t configured whether to intercept window closing in kaku config, if you’re in the middle of AI work it’ll dynamically intercept and ask whether you really want to close, so you don’t accidentally kill it.</p>\n<p>It also finally supports window snapshot. Kaku auto-saves multi-tab and multi-pane layouts. When needed, hit Cmd+Option+Shift+T or use Shell → Restore Previous Window to recover. This nicely solves the pain of accidentally closing a window and wanting to start back up.</p>\n<p>Some folks suggested that the light mode looks great but the dark mode contrast is a bit too strong. Got it. I’ve now tuned a much softer dark mode, dropping the saturation of highlight colors and slightly dimming foreground text, so staring at the screen for a long time is easier on the eyes.</p>\n<p>I’m also obsessive about startup speed, especially cold start. I want to build the fastest terminal. Through Lua bytecode caching, lazy initialization of fonts and config, shell user variable caching, and similar tricks, your Kaku now opens almost instantly. Still a tiny bit behind Alacritty, but I’m working on it.</p>\n<p>Lastly, fixed full-screen crashes and freezes, multi-monitor race conditions, resize gaps, cursor reflow, links, selection, light theme readability, TUI copy, and many other detail issues.</p>\n<p>If this is your first time hearing about Kaku, welcome to give it a try. Still not mature, actively being polished. Any suggestions or bugs, please file an issue and I’ll handle them.<br>\n<video width=\"800px\" preload=\"metadata\" loop autoplay muted><source src=\"https://cdn.fliggy.com/pic/kaku14.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"just-looking-around\">Just Looking Around</h2>\n<p><strong>M5 Pro in black finally arrived. Stunning. Very excited</strong><br>\n16-inch M5 Pro / 48GB / 1TB black with standard glass. I think this config is a great fit for anyone considering a new machine.<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/mac36.MP4\" type=\"video/mp4\"></video></p>\n<p><strong>Picked up an iPhone SE3 to play with</strong><br>\nHow can such a small phone feel this refined? Just lovely to hold.</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"33%\">\n          <img src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_099853.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"33%\">\n            <img src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_099901.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n        <td width=\"33%\">\n            <img src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_100106.JPG\" loading=\"lazy\" data-pswp-width=\"4284\" data-pswp-height=\"5712\" style=\"aspect-ratio: 0.7500;\" width=\"400\">\n        </td>\n    </tr>\n</tbody></table>\n<p><strong>A neat UI bug debugging trick of mine</strong><br>\nSharing a really useful UI bug debugging approach. Back in my old-school coding days I often used screen-recording with slow-motion playback. AI struggles with this kind of thing, but humans get it instantly. Find the frame with the problem, and you basically know where the issue is. Then hand the screenshot to AI. Way better than logging or guessing.<br>\n<img src=\"https://cdn.fliggy.com/pic/44JbuE11.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/44JbuE11.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/44JbuE11.png\" loading=\"lazy\" data-pswp-width=\"3434\" data-pswp-height=\"2314\" style=\"aspect-ratio: 1.4840;\" width=\"800\"></p>\n<p><strong>Somehow it’s been 4 years on Twitter, posted a little reflection</strong><br>\nJoined X 4 years ago already. The journey has been really fun, and it’s also been a great outlet for my urge to share tech and product stuff.</p>\n<p>I was just chatting with a new friend about how I ended up here. Back then it was still called Twitter. MiaoYan had just been written, and I was looking for somewhere to sync update logs. Yes, that simple. So I signed up with Google login and posted MiaoYan’s intro. Magically, it turned out MiaoYan was already being recommended by lots of folks with big followings as a simple and handy markdown-native notes app. Coming over felt like, oh, there are so many friends here. We finally meet. The Twitter environment back then was great. Not so many ads or money-grabbing. More sharing, conversation, pure tech discussion. Sad to say, many of those friends whose output quality was way higher than mine slowly stopped posting much.</p>\n<p>Later I gradually started sharing some good open source products I’d come across each morning, or the latest releases of my own products, and bits of my own thinking. Slowly I met many like-minded friends, and they put a lot of energy into contributing to my open source projects. Friends from Taiwan, Japan, Turkey, Europe, the US, and especially many friends who helped with Pake. That was a kind of pure code-writing era from before AICoding existed.</p>\n<p>When ChatGPT first came out, I immediately registered an account and started playing with 3.5. It really was a magic moment. Back then we shared funny prompts, very fun, but it now reads like ancient literature. I even wrote an article on 2022-12-04 titled “How Ordinary People Avoid Being Replaced by OpenAI.” Haha, you can see how shallow I was. The first deep question I asked was even “give me some online docs to learn Rust.” How AI has developed since then is beyond comparison.</p>\n<p>That was about when I felt all in on AI. At the company, I handed off all my main business support tech to my direct reports, and went looking for a bigger ceiling for my team in AI. I even paid out of pocket with my international credit card to buy official OpenAI API for the team to use, so we could understand the latest stuff. I solved a lot of business problems that had been giving managers headaches with AI. Meanwhile, since I’m good at sketching solutions and product flows, I also pushed AI application R&#x26;D platforms, B-side digital employee solutions, and the deep integration of business efficiency tools with AI. Three years on, much of it is now well-productized and efficiency has improved dramatically.</p>\n<p>Because the results in practice were so clear, in early 2023 I moved all my Chinese ADRs and company-allocated stock all in on AI direction. I sold them very cheaply, but bought what now look like treasures. Like Tesla I love at around 130, NVIDIA at around 90, SMH at around 160, etc. Around then I started intentionally learning to invest, analyzing companies and their underlying value, and read many books to sharpen my thinking. The books didn’t help much operationally, since most were written decades before AI, but the mindset is useful. Investing in AI also can’t follow the old playbook. It gave me an interest outside of programming, which is fun. Maybe one day I’ll build an investing-related AI product.</p>\n<p>Then, as you all know, came Mole, written last National Day during a Sanya pool vacation between swims and rests. Mole introduced me to many overseas developers. My overseas follower count grew sharply because developers from all over the world have been actively spreading the word almost daily. So grateful! Then came Kaku written during this year’s Spring Festival, plus the recently efficiency-boosting Waza and Kami, and now that the new machine is here I’m planning a font called Luo. The journey has been wonderful, and I’m really looking forward to what’s next. New friends are very welcome.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"266. Masked Sculpture","link":"https://weekly.tw93.fun/en/posts/266/","pubDate":"Mon, 27 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/31/266.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"2800\" data-pswp-height=\"2100\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo is a sculpture of a child wearing a mask, taken on the weekend while running errands over in Gongshu. In a flash, the pandemic already feels like a long time ago, and yet it also feels like just yesterday. Those years are still worth remembering.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"introducing-the-tw93-open-source-family\">Introducing the Tw93 Open Source Family</h2>\n<p><a href=\"https://github.com/tw93\">https://github.com/tw93</a><br>\n<img src=\"https://gw.alipayobjects.com/zos/k/sa/family.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/sa/family.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/sa/family.png\" loading=\"lazy\" data-pswp-width=\"1586\" data-pswp-height=\"992\" style=\"aspect-ratio: 1.5988;\" width=\"800\"></p>\n<p>After finishing Kami, I suddenly realized that Kaku, Waza, and Kami feel a lot like a small family. Then I kept thinking, and actually Pake, MiaoYan, and Mole have always been quietly part of this family too. Some of them were even out doing real work before AI showed up. Today let me introduce you to this warm and happy little family.</p>\n<p>Kaku is the dad. He mainly handles writing code, the terminal, and builds. Very reliable and capable in the AI era, he holds the family together well.</p>\n<p>Pake is the mom. She has been quietly packaging, organizing, and delivering apps all along. Gentle and efficient. She is the kids’ favorite in the family.</p>\n<p>MiaoYan is the older brother. Sensible and steady, he likes writing, Markdown, and reflective thinking. A quiet young man who thinks for himself, has his own opinions, shares his views, and never chases trends or follows the crowd.</p>\n<p>Waza is the older sister. Her personality is similar to mom’s, very sharp and capable. As a kid she even practiced taekwondo. She loves learning, and through endless practice and reflection she sharpens her skills until they become instinct.</p>\n<p>Kami is the younger sister. The youngest little sweetheart in the family, generated based on my daughter’s photo. Bright and cheerful, always smiling, very sunny. She has a kind of order-keeping presence at home, loves tidiness, and loves drawing pretty pictures. Small, but very warm.</p>\n<p>Mole is the family’s little pet mole. Brought home one year while swimming by a pool in Sanya. A round little mole with a tiny headlamp and a small shovel. He loves rummaging through corners, finding things you no longer need and helping you throw them away. He loves cleanliness. The moment he spots trash, before you can react, it is already gone. Always there, keeping us company.</p>\n<p>So, which member of the Tw93 Open Source Family did you meet first? Let me introduce the rest of the family to you, hoping they bring a little something good into your life. And of course, feel free to introduce them to your friends too.</p>\n<h2 id=\"product-releases\">Product Releases</h2>\n<p><strong>Kami: A Comfortable Typesetting and Design System for the AI Era</strong><br>\n<a href=\"https://github.com/tw93/kami\">https://github.com/tw93/kami</a><br>\nThe weekend before last I started working on a new Skill called Kami (紙, かみ). You can think of him as the younger sister of Waza (技, わざ) and the daughter of Kaku (書く), focused on Paper typesetting scenarios. Last Monday I finished the open source release. Welcome to give it a try.</p>\n<p>For example, when you need to produce a one-page report, write a white paper, generate a polished slide deck, or build a portfolio PDF to send to someone. Any printing or typesetting scenario works. It auto-generates beautiful PDFs, and even has the ability to draw clear charts automatically.</p>\n<p>Plenty of updates lately. The most fun one: I added support for 12 inline SVG charts, things like stock investment charts and architecture diagrams, all with colors that match Kami. While generating your layout, it automatically decides whether chart capabilities are needed, helping you explain things more clearly.</p>\n<p>I also spent some time supporting English and Japanese scenarios, carefully picking fonts, letter spacing, line heights, and font sizes that I think work well for typesetting. If you have English or Japanese use cases, give it a try.</p>\n<p>The output also supports image and slide deck export, including HTML display. The best output for typesetting is still PDF in my opinion, since it reads very comfortably for others.</p>\n<img src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/qr/iCgeq1.png\" loading=\"lazy\" data-pswp-width=\"2992\" data-pswp-height=\"2308\" style=\"aspect-ratio: 1.2964;\" width=\"800\">\n<p><strong>Mole has updates, plus good news: progress on the desktop client</strong><br>\n<a href=\"https://github.com/tw93/Mole\">https://github.com/tw93/Mole</a></p>\n<ol>\n<li>mo uninstall: cleans up leftover LaunchAgent/LaunchDaemon plists after uninstall; recognizes pkg-installed apps under non-standard paths like /usr/local and /opt; nested helper apps no longer block login item cleanup; sudo is dropped before calling brew, avoiding cask uninstall failures from “running as root”; Homebrew bottles now run correctly under prefixes that contain spaces (such as Applite).</li>\n<li>mo clean: Service Worker ScriptCache is no longer cleaned while Chrome / Arc / Brave / Vivaldi / VS Code / Cursor are running, so MV3 extensions stay intact; TCC-protected Group Containers are skipped to avoid repeated privacy prompts.</li>\n<li>Cloud &#x26; Office segments now have timeout and SIGINT handling, no more freezing; Microsoft Office helpers and research software bundles are no longer flagged as orphans (compatible with macOS’s built-in bash 3.2); added Yarn v1 global cache cleanup.</li>\n<li>mo clean: legacy AI coding assistant cleanup adds GitHub Copilot CLI (~/.copilot/pkg/universal/<version>/), handled alongside Claude Code and Cursor Agent.</version></li>\n<li>mo analyze: worker pool cap lowered again to prevent system thread exhaustion in Steam-like fan-out scenarios; uses incremental cache invalidation when deleting files, no full rescan needed; bundle parsing falls back to the filesystem after mdfind timeouts.</li>\n<li>mo optimize: gracefully skips periodic maintenance on macOS 26+ where the underlying tool no longer exists; adds mo optimise alias and completion.</li>\n</ol>\n<h2 id=\"just-writing\">Just Writing</h2>\n<p><strong>The AI Coding You Don’t Know: Onboarding, Scenarios, and Practice for Non-Technical Folks</strong><br>\n<a href=\"https://tw93.fun/en/2026-04-26/ai-coding.html\">https://tw93.fun/en/2026-04-26/ai-coding.html</a><br>\nLast month I gave a session at work for product and business folks on how to get started with AI Coding. Recently I also posted about it on Twitter, and a lot of people brought up that subscription costs prevent them from accessing the top-tier AI Coding tools. The methods and habits can actually be learned for free first, so I decided to write up the onboarding part. To make it easier to grasp, the article includes plenty of simple illustrations, which should make it more direct.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/z1/00.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/z1/00.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/z1/00.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<p><strong>Video version of “The Agent You Don’t Know: Principles, Architecture, and Engineering Practice”</strong><br>\n<a href=\"https://www.youtube.com/watch?v=Z5If1L3eFtw\">https://www.youtube.com/watch?v=Z5If1L3eFtw</a><br>\nFinally uploaded to YouTube. If you read the article and did not fully follow it, or want a deeper look, the video version is up. New to YouTube here, so please like, subscribe, and share. From now on I will try to record more sessions and share them here.</p>\n<img src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/bp/SCR-20260423-tuzj.jpeg\" loading=\"lazy\" data-pswp-width=\"3288\" data-pswp-height=\"1876\" style=\"aspect-ratio: 1.7527;\" width=\"800\">\n<p>The <a href=\"https://tw93.fun/files/share/agent.html\">slides</a> are also fun. They are the predecessor of Kami. Kami started as a small investment report generator I was tinkering with inside CC. Around the same time I had a session about agents to give, and writing such a long deck felt tedious, so I just used the existing capability to generate and tweak versions until I was satisfied. That is how Kami was born. Welcome to read.</p>\n<p><strong>Moments of Happiness</strong><br>\nA lazy Sunday afternoon coding in the study<br>\nNothing else to deal with<br>\nEndless Claude Code<br>\nCode that works on the first try<br>\nLook up and see the sunset coming through the window<br>\nA very simple kind of happiness<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/pv/PHyc1R.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\"></p>\n<p><strong>Some thoughts after sharing, and they have shifted again</strong><br>\nRecently I interviewed a number of 985 university interns for campus recruiting. One strong impression: AI tools are rapidly widening the resource gap between students.</p>\n<p>From what I have seen, the gap can really reach 5x. The students clearly ahead, without exception, all got into Claude Code, Codex, and other top AI Coding tools relatively early, and were willing to pay for subscriptions themselves. They do not just use the tools, they have made them part of their daily learning and development. Talking models, engineering, agents, and code practice, the conversation flows naturally for an hour. In many places they understand things more deeply than I do.</p>\n<p>But there are also quite a few students with great grades and solid CS fundamentals who, because of family conditions or budget limits, can only use domestic relays or cheaper local model packages. That gap is very real. The best domestic models and top international ones still have about half a year of difference in overall capability. Before AI, the resource gap mostly meant slightly different efficiency. Now it directly affects vision, depth of practice, and confidence.</p>\n<p>I have been thinking about this a lot. For students with real potential, missing out on so much just because of a few dozen dollars a month feels like a real shame. It reminds me of when I was in college, also pretty broke most of the time. Lucky for me, in my second year I met some senior developers who pulled me into commercial projects and got me on my feet. I am very grateful to all the friends who patiently taught me technical things back then.</p>\n<p>So I want to try a small experiment: take part of the X posting revenue and sponsor a few students who do well academically, love computer science, but come from less wealthy families. Give them a few months of Claude Code or a similar AI Coding subscription, so they actually experience what good models and dev workflows feel like.</p>\n<p>But I am also pretty busy on my end and cannot personally handle applications, screening, verification, and long-term follow-up alone. So I want to invite some friends with similar interests to do it together. University teachers, student leads, open source community members, or friends already working in education, public welfare, or developer communities. Together we can come up with a more reliable mechanism.</p>\n<p><del>I do not want to make this big or complex for now. Start small, maybe 5 to 6 students per round, 3 to 4 months each, perhaps with short weekly video chats with me. Prioritize recommendations, work portfolios, learning records, and real usage feedback, to avoid turning this into pure cash handouts or a contest of who writes the best application. Of course, college students who are on X probably do not lack this money, so we still need better channels.</del></p>\n<p>If you have reliable channels, or want to help with rule design, recommendations, vetting, or follow-up, please DM me. If we can make this trustworthy, maybe we really can help a few students with real potential.</p>\n<p><strong>Update Reply</strong>:</p>\n<p>After the message went out, I received plenty of suggestions and reminders from friends. I read them all carefully.</p>\n<p>This really cannot be pushed forward on enthusiasm alone. On one side there are tool usage boundaries and compliance risks. On the other, the real needs of the student community, the screening method, and the follow-up feedback all need a more solid mechanism. Some friends mentioned getting badly burned doing similar things in the past, even bitten back in the end. I find that reminder very valuable.</p>\n<p>So the plan now is to first gather more on the actual situation, like the real pain points college students face when using AI Coding tools, budget limits, learning scenarios, and real needs. Then put together a clearer proposal.</p>\n<p>Going forward, I will prioritize working with domestic large model vendors, developer communities, and university teachers to see if there is a more formal and sustainable way to push this small step forward.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"265. Xixi Window View","link":"https://weekly.tw93.fun/en/posts/265/","pubDate":"Mon, 20 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ky/265.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"2400\" data-pswp-height=\"1800\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo is from lunch at Yueya in Xixi Wetland one noon this week. I had not been there in a long time. The place still feels great. The sun was out, short sleeves felt just right, and I took this shot outside the window. Spring moves fast.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"talking-about-wazas-design-ideas\">Talking About Waza’s Design Ideas</h2>\n<p>I want to write a few pieces introducing the implementation references behind some interesting skills in Waza. Last week I wrote one every morning, so I am collecting them here for everyone.<br>\n<a href=\"https://github.com/tw93/waza\">https://github.com/tw93/waza</a></p>\n<img src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/7o/4OUzkd.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"775\" style=\"aspect-ratio: 1.5484;\" width=\"800\">\n<h3 id=\"introducing-the-design-skill\">Introducing the /design Skill</h3>\n<p>I really dislike those AI-generated websites that all look the same, often with emoji and blue-purple gradients. They look ugly to me. Usable, sure, but that is about it.</p>\n<p>So I asked Claude Code to study my tuning notes from all the UI websites I have built recently. It produced a basic set of what I consider best practices and anti-patterns. That became the initial shape. Then I learned the useful parts from the Claude frontend design skill, and a pattern basically came together.</p>\n<p>For concrete rules, I learned quite a bit from pbakaus/impeccable. It contributed many specific rules for me, including banned font lists, color systems, theme styles, forbidden CSS patterns, animation standards, and more. These help give AI some aesthetic knowledge.</p>\n<p>Then I took a capability from getdesign: a nine-part scaffold structure originally from Google Stitch. I simplified it and folded it into /design. At that point, the skill had a proper knowledge system.</p>\n<p>Finally, when I ask you to use this skill, it first asks a few questions: who will use it, what aesthetic direction to choose, what you want users to remember from the page, what you dislike most, and what kind of signature micro-interaction the page should have. With this important context plus /design, Claude Code often gets much better results.</p>\n<h3 id=\"how-i-designed-the-check-code-review-skill\">How I Designed the /check Code Review Skill</h3>\n<p>First, we need to understand that when a model says it is done, it may not actually be done. It may have left behind nonexistent things or problematic details, and issues often stay hidden. In Agent design, my engineering experience is to give the model a checklist to verify whether the work is truly complete. This tends to work far better than simply asking it to check the result.</p>\n<p>From the beginning, /check was not designed as one big all-in-one reviewer. It is an orchestration and division-of-labor system. SKILL.md is the lead reviewer, responsible for review levels and process control. Under agents/, there are independent security and architecture reviewers. Each handles its own area without interfering with the others. Which reviewer gets pulled in, and when, is decided by activation rules rather than the keyword matching people usually use.</p>\n<p>The level logic is also interesting. Code changes under 100 lines get a fast review. Changes between 100 and 500 lines bring in experts as needed. Changes above 500 lines bring in the full set, followed by a round of adversarial testing. The adversarial testing looks for problems from four angles: violated assumptions, possible issues under combined failures, errors across parent-child chains, abuse scenarios, and so on.</p>\n<p>The issues found are handled in four levels. Things that can be safely fixed are fixed directly. Things that are probably right but need confirmation are packaged up for you to approve manually. Things that require judgment are asked about. Reference-only items are also reported, but it will not ask you about every tiny issue, and it will not overstep by changing behavior logic for you.</p>\n<p>There is also a hard requirement: if verification has not finished, the task is not complete. It includes a detection script that can identify project types such as Cargo, TypeScript, and Python, then run the relevant tests. If it cannot detect the project type, it reports an error directly instead of pretending everything passed.</p>\n<p>This makes it feel more like an experienced technical expert applying review judgment to different situations. I happened to distill that experience into Waza’s /check skill in a very simple way.</p>\n<h3 id=\"how-i-designed-the-think-skill\">How I Designed the /think Skill</h3>\n<p>This is already the third part of the Waza skill design notes. Today I want to share how I designed /think, the skill used for planning before writing code.</p>\n<p>I have two very interesting settings when using Claude Code. The first is /model opusplan, which means planning uses the strongest Opus model by default, while execution uses the regular Sonnet model. This helps save my Max quota for places where it matters more.</p>\n<p>The second is that I usually run Claude Code with the alias <code>c=\"claude --dangerously-skip-permissions\"</code>. I do not recommend this for technical beginners. I use it because I know what it is doing, and mainly because I am lazy.</p>\n<p>Back to the main topic: how does /think help the strongest model perform better? It starts with the model itself. Models do not like taking a position, but I prefer engineers who can take a position and recommend the best plan. So the first thing I did was require the model to state its position at the beginning, explain what evidence could overturn that position, and explicitly ban correct but useless filler like “There are many ways to think about this”. Giving 2 or 3 options is fine, but there must be a clear recommendation, and it must include a minimal option.</p>\n<p>A plan is not done just because it has been thought up. The second step asks it to argue against itself: under what conditions would this plan fail? If the issue can be fixed, it adds the fix back into the plan and presents it again. If the issue breaks the plan outright, it directly explains when and why the plan does not work. At least the plan you receive is one you understand clearly.</p>\n<p>It also checks assumptions carefully. First, confirm whether the target directory and code location are correct. I have actually seen it produce a plan against the wrong path. Then it checks old technical design documents to avoid reinventing things. Then it searches GitHub to see whether others have handled similar problems. Only after these three steps does it start thinking about solutions, so the plan is not built on a wrong premise from the start.</p>\n<p>There is also complexity grading. If more than 8 files are involved or a new service is added, it clearly states the scale. If more than 3 components exchange data, it draws an ASCII diagram to look for cycles. All API keys and third-party dependencies are listed during the planning stage, preventing wasted work and unreliable plans.</p>\n<p>Finally, there is a hard rule: the plan cannot contain TBD, TODO, “leave it for later”, or “similar to step N”. This goes back to AI’s behavior. If you leave these openings, execution can easily miss things or improvise too much. Do not give AI any escape route that can lead to poor results.</p>\n<p>The output format is also defined: what to do, what not to do, which option was chosen and why, 3 to 5 decision points, and explicit unknowns. /think never writes code. It waits for user approval before execution.</p>\n<p>When I designed the Think skill, I was also using my idea of how a good technical expert writes a technical plan: detailed analysis and research, a decisive best plan, no loose ends, and immediate plan refinement when challenged.</p>\n<h3 id=\"talking-about-the-hunt-skill-for-engineers\">Talking About the /hunt Skill for Engineers</h3>\n<p>This is finally part 4 of the Waza skill design notes. After this, it is almost complete, because the other two, /read and /learn, were already briefly covered before. This time I will continue with the engineering skills and talk about /hunt, which is the skill for debugging and investigating problems.</p>\n<p>One major difference between superficial AI coding and serious AI coding is visible in how users use AI to investigate problems that have stayed unsolved for a long time. The troubleshooting process shows a clear gap. This is also why experienced engineers can use AI to solve much more complex problems than people who understand less about technology.</p>\n<p>I often ran into this before: Claude Code hits a problem and fixes it with a patch. You say it is wrong, so it gives you another patch. After 4 or 5 rounds, new problems appear. It is easy to keep patching without diagnosing the actual issue, much like junior developers did before AI.</p>\n<p>The core rule of /hunt is interesting: before AI can state the root cause in one sentence, it is not allowed to touch the code. That sentence also has a precision requirement. It needs to clearly explain the cause.</p>\n<p>Then I designed a self-deception checklist to prevent the model from falling into several common patterns of self-justifying thinking. Each pattern has matching rules, and the gotchas include real cases. I summarize and abstract this again based on issues I ran into while debugging over the past month.</p>\n<p>The hypothesis verification stage also has concrete work requirements. For example, add a fresh observation method, teach AI to add logs, add assertions, or run a minimal failing test case. If there are still problems after the fix, it should immediately switch plans. It organizes what it checked, which directions it investigated, and what remains unknown into a handoff for the user to decide how to continue, instead of trying endlessly.</p>\n<p>The output also guides AI to include the root cause at file:line, what changed at file:line, what evidence confirms the fix, and which tests passed. The final state has three options: resolved, resolved with caveats, or blocked.</p>\n<p>You can see that /hunt behaves like an experienced technical expert. When it hits a problem, it does not guess. It slows down, looks for where the problem is, diagnoses the cause clearly, and then fixes it in one pass. This often saves a lot of time.</p>\n<h2 id=\"things-to-browse\">Things to Browse</h2>\n<p><strong>MiaoYan released version 3.2.0, Nargacuga</strong><br>\n<a href=\"http://github.com/tw93/MiaoYan\">http://github.com/tw93/MiaoYan</a></p>\n<ol>\n<li>Faster preview: two-stage rendering shows text immediately, while local images lazy-load in the background. This noticeably reduces the wait for the first preview screen.</li>\n<li>Terminal shortcut: added Cmd+J as a global shortcut to open the terminal for the current folder anytime. The folder right-click menu also has the same entry.</li>\n<li>Copy path: right-click any note to copy its full file path directly.</li>\n<li>Spanish localization: complete Spanish translation coverage for menus, settings pages, and system strings.</li>\n<li>Mermaid upgraded to v11.14.0, fixing subgraph edge rendering issues and adding new chart features.</li>\n<li>Real-time reload fix: notes modified by other tools now correctly trigger reloads, including files inside symlinked directories (closes #502).</li>\n<li>Startup and window fixes: opening .md files directly from Finder no longer shows a blank screen. In single-column mode, notes are no longer lost during startup or exit.</li>\n<li>Export and mode switching: fixed blank previews when switching notes, timing issues when exiting PPT presentation mode, export timeout handling errors, and more.</li>\n<li>Concurrency safety: fixed ExportCache data races, security-scoped URL leaks, and note state confusion after async rendering.\n<img src=\"https://raw.githubusercontent.com/tw93/static/main/miaoyan/miaoyan.gif\" width=\"800px\">\n</li>\n</ol>\n<p><strong>Kaku has an interesting feature coming soon. It should ship in a few days</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\nKaku has been developing an interesting feature recently: a real Agent assistant that can move smoothly inside the terminal. It gradually realizes the quiet Kaku AI idea I mentioned during Chinese New Year, and it also helps me move 100% of my coding work fully into Kaku.</p>\n<p>A very convenient context environment, useful CLI tools, models, and a restrained personality make Kaku feel different. It is not cold, and it is not the over-the-top “I have got you” style of GPT either. Kaku AI is positioned as a technically strong, friendly, and concise engineer friend. Once I test it for a few days without bugs, I will release Kaku 0.10 for everyone to try.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/hq/bPJ8tk.png\" loading=\"lazy\" data-pswp-width=\"1645\" data-pswp-height=\"1079\" style=\"aspect-ratio: 1.5246;\" width=\"800\"></p>\n<p><strong>My Claude Code Max usage suggestions</strong><br>\nFirst, I add an alias in <code>.zshrc</code>, so every time I press <code>c</code>, it starts dangerous unrestricted mode directly. If you are a beginner, I do not recommend starting this way. Auto mode is enough. Another big suggestion is to set the automatic context window compaction to 400k. Together, the alias below goes into the file, which means the 1m context window starts compacting at 40%. The result feels much better.</p>\n<pre class=\"astro-code github-dark\" style=\"background-color:#24292e;color:#e1e4e8; overflow-x: auto;\" tabindex=\"0\" data-language=\"sh\"><code><span class=\"line\"><span style=\"color:#F97583\">alias</span><span style=\"color:#E1E4E8\"> c</span><span style=\"color:#F97583\">=</span><span style=\"color:#9ECBFF\">'CLAUDE_CODE_AUTO_COMPACT_WINDOW=400000 claude --dangerously-skip-permissions'</span></span></code></pre>\n<p>Then I set /model to opusplan. You can run the hidden command <code>/model opusplan</code> directly inside Claude Code to enable it. If you want it faster, you can turn on <code>/fast</code>, which nicely makes up for the token savings above.</p>\n<p>Finally, someone gave me a really good suggestion: when using opusplan, make sure to set <code>showClearContextOnPlanAccept</code> to <code>true</code> in the Claude config file <code>~/.claude/settings.json</code>. Otherwise, Sonnet can run into serious cache miss issues. Once this is configured, the experience feels much smoother.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"264. Finally Done","link":"https://weekly.tw93.fun/en/posts/264/","pubDate":"Mon, 06 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/kd/264.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"800\">\n<p><small>The cover photo is a shot of my hardware toy finally finished. It was a fun ride, and I wanted to document the whole process in this week’s issue. Hope you enjoy reading it.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"new-article\">New Article</h2>\n<p><strong>How I Deep-Dive into a New Technical Domain in the AI Era</strong><br>\n<a href=\"https://tw93.fun/2026-04-06/learn.html\">https://tw93.fun/2026-04-06/learn.html</a><br>\nA follow-up to the learning writeup from last time, combined with the /learn skill inside Waza, walking through how I actually wrote that previous large model article. Hope it is useful to you.<br>\n<img src=\"https://cdn.fliggy.com/pic/deep04.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/deep04.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/deep04.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"building-a-little-robot-dog\">Building a Little Robot Dog</h2>\n<p><strong>April 4: Back to hardware basics. I want to build something that combines software and hardware.</strong><br>\nAll the parts and tools had finally arrived, a whole table full of them. Saving it all for the Qingming holiday to dig in properly.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gu/gOR0gb.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>April 4, 9:45 PM: v0.1.0-beta</strong><br>\nThe first sign of life. I was so happy I couldn’t describe it.<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://gw.alipayobjects.com/os/k/4s/IMG_0321.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>April 5, 12:07 AM: v0.1.0-beta1</strong><br>\nGot the WiFi module, AI module, microcontroller module, and quad-leg module all running together. Tomorrow I’ll attach the legs and tune the screen. Going to sleep right now!<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/IMG_032613.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>April 5, 1:45 PM: v0.1.0-beta2</strong><br>\nMechanical leg control is working. It can crouch, sleep, and walk. Still rough around the edges, but one of the leg motors from the order looks like it has a problem. Waiting on a replacement part.<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/new01.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>April 6, 10:33 AM: v0.1.0-beta3</strong><br>\nAll four legs are fully under control now. But I burned the screen during debugging. Waiting on shipping. Can’t wait to release.<br>\n<img src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_0379.jpg06.jpg\" loading=\"lazy\" data-pswp-width=\"3880\" data-pswp-height=\"2910\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>April 8, 11:37 PM: v0.1.0-beta4</strong><br>\nThe replacement screen arrived after work. Got it running, then tuned the temperature, CO2, infrared, and lighting sensors all in one go. Still working on WiFi provisioning. It’s basically taking shape now, just need to seal and secure everything.<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/IMG_043028.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>April 11, 11:30 AM: v0.1.0 finally ships 🎉</strong><br>\nSealed up the battery pack and tied a few straps around it to keep things from falling apart. Got the WiFi and AI conversation module working too. Using DeepSeek makes it noticeably faster, response speed is decent. Next up: something with more advanced hardware.<br>\n<video width=\"800px\" preload=\"metadata\" controls><source src=\"https://cdn.fliggy.com/pic/26F9D347-A9C8-4DCC-811A-033887BD049515.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>A few photos from different angles to mark the moment</strong></p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/26410.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/26410.jpg\" data-pswp-src=\"https://cdn.fliggy.com/pic/26410.jpg\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050519.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n    <tr>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050736.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG\" data-pswp-src=\"https://cdn.fliggy.com/pic/IMG_050944.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>App Store Price: Look up app prices across different countries and regions</strong><br>\n<a href=\"https://app.vbr.me\">https://app.vbr.me</a><br>\nA handy little tool. You can check what an app costs in any App Store region, like figuring out which country has the cheapest Claude subscription. I’ll probably find a use for this soon.<br>\n<img src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/Pnc8XN58.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"886\" style=\"aspect-ratio: 1.3544;\" width=\"800\"></p>\n<h2 id=\"random-thoughts\">Random Thoughts</h2>\n<p><strong>Let me share what I think makes for a genuinely good product experience.</strong></p>\n<p>There’s a followup to my lost drone story. The signal cut out mid-flight, I searched for a long time, couldn’t find it. I uploaded the flight logs and DJI couldn’t find a clear cause either. Even without being sure it was actually lost, they asked for very minimal proof and, under their Care Refresh service, just shipped me a brand new one. They even threw in a 128GB card in case it would be more convenient. Not once did anyone ask me to explain how it got lost or whether I had gone looking for it.</p>\n<p>That experience made me a real fan of DJI. Their customer service and technical support engineers were professional and clear throughout the whole process. I want to use that story to share what I think makes a good product experience.</p>\n<p>Good product experience is not just what people usually say: great interaction design, beautiful UI, easy to use, no bugs. Those matter, but what matters even more is this: when a user is in a tough spot, you give them something far better than they expected. Something so good that they get excited and tell their friends about it. That is what I consider truly good product experience, the kind that is good for business too. The only thing I worry about is that this culture of trust and simplicity gets taken advantage of by people trying to game the system. It’s something we all have to protect together.</p>\n<p>Two other experiences that stood out to me involved Ctrip.</p>\n<p>The first was three years ago during the Spring Festival. Tickets home were nearly impossible to get. They suggested I buy tickets for a few extra stops to guarantee I could board, and I was already grateful for that because nothing else had worked. But then, even better: I was at the movies that afternoon, feeling like everything was handled, when I got a call from an unknown number that I declined. Right after, a text came in saying they had found me a direct option that didn’t require the extra stops, and could I please go to the app to confirm. You could tell a real person had made that call and sent that message. It wasn’t the few dollars saved. It was the feeling that someone was genuinely working hard for me and delivering better than I had hoped. That is good experience.</p>\n<p>The second happened recently, during National Day. I had gotten two first-class seats but they weren’t together, pretty far apart. I had noted I was traveling with an 18-month-old. Then, the day before departure, Ctrip quietly swapped our seats. Just a simple notification: we found an open seat in your carriage and moved you both together. Another moment where someone gave me more than I expected.</p>\n<p>So if you are building a product, think about giving your users something far beyond what they expect in the moments when they really need it, rather than chasing clicks with tricks. When you do that, people will genuinely love your product and become your most loyal fans.</p>\n<img src=\"https://cdn.fliggy.com/pic/lxEYPC26.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/lxEYPC26.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/lxEYPC26.png\" loading=\"lazy\" data-pswp-width=\"2048\" data-pswp-height=\"1536\" style=\"aspect-ratio: 1.3333;\" width=\"800\"><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"263. Hardware Beauty","link":"https://weekly.tw93.fun/en/posts/263/","pubDate":"Mon, 06 Apr 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/e5/263.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4029\" data-pswp-height=\"3022\" style=\"aspect-ratio: 1.3332;\" width=\"800\">\n<p><small>The cover photo is from a hardware toy I spent three days playing with at home during the holiday. I was soldering, applying glue, and debugging through a pile of components. I was almost at the final step when I burned the screen during testing. Now I am waiting for the replacement to arrive so I can keep going. Lots of fun.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"new-article\">New Article</h2>\n<p><strong>What You Don’t Know About LLM Training: Principles, Paths, and New Practices</strong><br>\n<a href=\"https://tw93.fun/2026-04-03/llm.html\">https://tw93.fun/2026-04-03/llm.html</a><br>\nThis is the longest article I have ever written. The good news is I finally got a handle on the basics of large model training. The gap between what I assumed I knew before and what I actually found was massive. I highly recommend this to anyone working in AI applications or anyone curious about AI. It should give you a clear picture without leaving you lost.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/4q/Group.png\" loading=\"lazy\" data-pswp-width=\"1500\" data-pswp-height=\"600\" style=\"aspect-ratio: 2.5000;\" width=\"800\"></p>\n<h2 id=\"product-releases\">Product Releases</h2>\n<p><strong>Waza, My Engineer-Alter-Ego Skill Set</strong><br>\n<a href=\"https://github.com/tw93/waza\">https://github.com/tw93/waza</a><br>\nI packaged my personal skills into something new called Waza. In Japanese, 技（わざ）means technique or skill, often used in martial arts. This is the first time I have released an open-source project with zero code, just markdown files. In the pre-AI era, for a programmer, that would have been embarrassing.</p>\n<p>When Superpowers came out, I installed it once and deleted it right away. Too heavy, not my thing. A lot of people kept telling me “You don’t know Superpowers? If you’re not using it you’re not with the times, it’s amazing.” Then I found gstack, which was better, but still felt like too much. I still wasn’t used to it. I wanted something simple and useful where I could clearly see what it was doing.</p>\n<p>So I built Waza the way I like it. For me, this set is enough. No need to mess with other skills. Not too many, not too few, just right. New iterations can be added over time.</p>\n<p>The 8 skills correspond to 8 abilities I think a good engineer in the AI era should have:</p>\n<ol>\n<li>\n<p><strong>Think clearly.</strong> AI writes code fast, but if the direction is wrong, the faster you go the further off course you get. A good engineer questions the problem itself before touching any code, stress-tests the plan, and has a clear mental architecture before asking AI to execute. /think locks this habit in.</p>\n</li>\n<li>\n<p><strong>Design well.</strong> Building a product is not just about making features work. AI-generated things tend to look the same. Good engineers have an aesthetic standard for what they deliver and a clear design direction. /design handles this.</p>\n</li>\n<li>\n<p><strong>Debug systematically.</strong> AI fixing bugs most easily falls into a “try this, try that” loop. A good engineer diagnoses problems systematically, confirms the root cause before touching the code, and gets it right in one shot. I turned this habit into /hunt.</p>\n</li>\n<li>\n<p><strong>Review before merging.</strong> AI-generated code needs human oversight even more. Check the diff before merging, auto-fix what can be auto-fixed, group the judgment calls together, and verify with evidence rather than gut feeling. That is /check.</p>\n</li>\n<li>\n<p><strong>Read primary sources.</strong> Good engineers read original material, not second-hand summaries. Converting URLs or PDFs into clean Markdown and pulling it directly into the workflow is what /read does.</p>\n</li>\n<li>\n<p><strong>Write clearly.</strong> No matter how technically strong you are, if you can’t explain it clearly, others won’t receive it. A good engineer can convey what they have learned and what they want to express to the right audience. /write helps you nail this step.</p>\n</li>\n<li>\n<p><strong>Learn actively.</strong> Tech moves faster in the AI era. Entering an unfamiliar domain is not just skimming a few articles. It is collecting, digesting, outlining, drafting, refining, and publishing. Output drives learning. That entire flow is /learn.</p>\n</li>\n<li>\n<p><strong>Maintain the toolchain.</strong> A good engineer does not only care about business code. The toolchain itself needs regular checkups. When something feels off with CLAUDE.md, rules, hooks, or MCP configs, run /health and find out what is wrong.</p>\n<img src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/yx/JMouVn.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\">\n</li>\n</ol>\n<h2 id=\"product-updates\">Product Updates</h2>\n<p><strong>Kaku 0.9 is out and it is really good</strong><br>\n<a href=\"https://github.com/tw93/kaku\">https://github.com/tw93/kaku</a><br>\nA few fun features shipped in this version that should be genuinely helpful.</p>\n<ol>\n<li><strong>Natural language command generation</strong>: Type <code># &#x3C;description></code> and press Enter, and the auto-generated command is injected back into the prompt.</li>\n<li><strong>Option+Click to move the cursor</strong>: Click anywhere on the current line to move the cursor there.</li>\n<li><strong>Window pinning</strong>: Pin the window to the front via the Window menu, and toggle it on or off anytime.</li>\n</ol>\n<p><video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://gw.alipayobjects.com/os/k/ke/kaku.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>Claude HUD helps you track your Claude usage</strong><br>\n<a href=\"https://github.com/jarrodwatts/claude-hud\">https://github.com/jarrodwatts/claude-hud</a><br>\nIt is a little feature-heavy, but after some simple configuration it works well. Worth trying if you are curious. The code feels a bit complex, and when I have time I will probably simplify it myself. Minimalism is the goal.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/bc/l4yelI.png\" loading=\"lazy\" data-pswp-width=\"2440\" data-pswp-height=\"884\" style=\"aspect-ratio: 2.7602;\" width=\"800\"></p>\n<p><strong>A super minimal, AI-friendly Markdown doc generator</strong><br>\n<a href=\"https://docmd.io\">https://docmd.io</a><br>\nStumbled on docmd. It is a zero-config documentation generator built for developers. It converts Markdown into fast, clean static docs with automatic routing, built-in search, and context that AI can easily use.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/rx/u4S6HX.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\"></p>\n<p><strong>Picked up a 140W charger and it is great</strong><br>\nGot a 140W charger. Good size, finally free from my old 45W. Four ports, which makes it way more convenient on the go. The display showing real-time power output is a nice touch.</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/2s/4R4qMs.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/k5/XWLwvO.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n        <td width=\"33%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/vr/2oXfRE.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"300\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"random-thoughts\">Random Thoughts</h2>\n<p><strong>Let me share how I dive deep into a new technical domain in the AI era.</strong></p>\n<p>Before AI, I mostly read books and went through every blog post from notable people in the field, both domestic and international, writing notes by hand. It was slow but genuinely fun. Learning WebGL back then felt like that. Getting a solid understanding of something might take half a year of free time. Slow, but happy.</p>\n<p>Now that AI is here, I still can’t stand those “summarize a hundred-year-old novel in 3 minutes” things online. I also dislike short-episode dramas and watching shows at 2x speed. I mostly still choose good things and take time with them.</p>\n<p>But recently while writing the “You Don’t Know Claude Code” and Agent series, outside of the parts I already understood, there were huge areas I wasn’t clear on. Luckily I had saved a lot of articles, and this was the perfect chance to clear the backlog, fully digest everything, and write it all out. I have always believed that what matters is not how much you read, how much you hear, or how much you take in. Most of that doesn’t really stick. What matters is how much you output. That is what becomes truly yours.</p>\n<p>A couple of weeks ago I started a deep challenge: studying the training pipeline of large language models and making sure even non-specialists could understand it. I explored for two weeks, and the experience is now ready to share. The article is basically done and should be coming out soon.</p>\n<p>I organize this learning process like writing code. Step one: collect high-quality material. Recent top papers in the field, blog posts from major model providers about their key releases, threads from model leads on X, recent courses from Stanford and similar schools, and classic “build an LLM from scratch” repos. These are my sources. I use tools to automate downloading everything, converting to Markdown, cleaning, and organizing it all into a structured repo for this research.</p>\n<p>For content I understand, I read it all through, delete the bad parts, and keep the good ones. For content I don’t understand, I use Claude to help me get it. The more complex parts I translate into Chinese and read that way. For code that can run locally, I run it. For code that can’t, I read the structure. Either way, I end up with a rough understanding of the technical principles. This phase usually cuts the original material by half.</p>\n<p>At this point you have a general picture of the field, so you can start writing an outline and figuring out which source material belongs with each section. All of it works well in Markdown. What do you want to say, or more accurately, what do you want your reader to know? Always remember: an article is written for its readers. You need to know your audience’s level. It is a lot like giving a presentation.</p>\n<p>Then comes the grind, which is also a review of everything you have covered. It feels a lot like cramming before an exam in college. You fill in each section completely, and what you end up with is a very long and somewhat rambling article.</p>\n<p>This is where AI really helps. You can ask it to remove the redundant parts and smooth out the disconnected bits, without changing your original meaning or your voice. You can also ask it to flag gaps and help fill them in. That process teaches you even more things you had missed.</p>\n<p>Once that is done, read through it yourself one more time, not AI. AI is just a tool here. Do not let it replace your brain, that defeats the whole point. Reading through yourself, you can keep adjusting and polishing. It feels a lot like testing your own code: fix issues, fix more issues. After reading it twice and feeling good about it, you can publish it for everyone to see.</p>\n<p>Some folks worry that nobody will read what they write, so they hold back or just don’t write at all. Honestly, if your content has real value, readers will come. Worry about quality, not the audience.</p>\n<p>That took 10 minutes to write. Done. Happy to hear how you learn new fields. The video below is a recording of the learning repo for the LLM training article I mentioned, the one coming out soon. It shows my “industrial-scale” way of learning. Kind of fun to look at.</p>\n<p><video width=\"800px\" preload=\"\" controls muted><source src=\"https://cdn.fliggy.com/pic/llm45.mp4\" type=\"video/mp4\"></video></p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"262. Lost My Drone","link":"https://weekly.tw93.fun/en/posts/262/","pubDate":"Mon, 30 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/c6/262.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"3400\" data-pswp-height=\"1898\" style=\"aspect-ratio: 1.7914;\" width=\"800\">\n<p><small>The cover photo is here in memory of my drone, which I finally lost. This was the last shot it ever took. Thankfully I have DJI Care Refresh, so I should be able to get a replacement for free.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"product-updates\">Product Updates</h2>\n<p><strong>Kaku released version 0.8</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\nThis release is called Fish 🐟. Most of the work in this round went into shell compatibility, tab behavior, and overall stability.<br>\nIt now has full fish shell bootstrap support, including Starship, Yazi, theme sync, and config handling. Tab management was also improved, with remembered last directories, isolated tabs for <code>update</code> and <code>doctor</code>, and a new option to show directory names only in tab titles.<br>\nOn top of that, it fixes a batch of issues around fast output and Claude Code viewport jumping, plus window hiding, link clicking, paste behavior, emoji width, SSH aliases, Cmd+Q crashes, and transparent rounded-corner rendering. Worth updating.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/t6/9UTHLG.png\" loading=\"lazy\" data-pswp-width=\"2560\" data-pswp-height=\"1407\" style=\"aspect-ratio: 1.8195;\" width=\"800\"></p>\n<p><strong>Mole released version 1.32</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\nThis version is called Rorqual 🐋, and there are quite a few updates again.<br>\n<code>mo clean</code> now fixes the long-skipped wallpaper proxy and Messages preview caches, and adds cache and log cleanup for PCSX2 and RPCS3. It also improves Python bytecode cache output, the Brave cleanup guard, Spotify playback detection, and the error handling around Service Worker cache cleanup.<br>\nBesides that, <code>mo uninstall</code> now filters out invisible background helper apps, the main menu shows more accurate Touch ID detection and a version shortcut, and the install flow now grabs sudo permission up front so you do not have to keep entering your password over and over.</p>\n<p><strong>Pake released version 3.11</strong><br>\n<a href=\"http://github.com/tw93/Pake\">http://github.com/tw93/Pake</a><br>\nThis release is called Evolve 👻. It had been a while since the last update, and this one is mostly focused on bug fixes plus a few new features.<br>\nOn macOS, <code>--install</code> now supports one-command installation into <code>/Applications</code>. The new <code>--new-window</code> flag keeps popup and OAuth windows inside the app instead of constantly bouncing out to the system browser. It also adds <code>--camera</code>, <code>--microphone</code>, and <code>--identifier</code> for on-demand media permissions and custom Bundle IDs, which helps reduce conflicts between apps.<br>\nThere are also plenty of cross-platform fixes in this release, including Gemini download failures, parts of the ChatGPT UI disappearing after zooming, Windows icon copy errors, and crashes when clicking external links in macOS new-window mode. Overall it feels more stable.</p>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>The 4 Claude MCPs I use the most</strong><br>\n<a href=\"https://tinyfish.ai\">https://tinyfish.ai</a><br>\nThe first one is TinyFish MCP. I like it a lot because it lets Claude browse the web directly, fetch pages, do research, and return structured results instead of just a static answer. Lately I have been using it to collect AI news for this weekly, like pulling the most popular Hacker News items from the past few hours and turning them into a clean summary list. It saves a lot of time.<br>\nThe second is GitHub MCP. It makes everyday things like reading commits, tracing changes, and understanding a repository much smoother, without constantly switching between tools.<br>\nThe third is Figma MCP. You can inspect design files, check layout and spacing, and pull UI details directly into the conversation, which is very handy when you are aligning implementation with design.<br>\nThe fourth is Excalidraw MCP. This one is better for thinking through things, especially flows and system structure. When words are not enough, drawing it out is much faster.<br>\nThe last three are probably already familiar to many people. I also recorded a short video showing how TinyFish works in a real workflow.<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/TinyFish28.mp4\" type=\"video/mp4\"></video></p>\n<p><strong>I have really been enjoying the gstack skill lately</strong><br>\n<a href=\"https://github.com/garrytan/gstack\">https://github.com/garrytan/gstack</a><br>\nI highly recommend trying it. It feels like having a solid team of specialists around you, covering roles like CEO, tech lead, design, QA, and security, all helping you reason through the code development process.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/5q/Hh8cHR.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\"></p>\n<h2 id=\"random-looks\">Random Looks</h2>\n<p><strong>Chinese Painting from the Yuan to the Qing is an excellent book</strong><br>\n<a href=\"https://book.douban.com/subject/37156716/\">https://book.douban.com/subject/37156716/</a><br>\nThis book is really good. It is dense in the best way, and Wu Hung’s scholarship is seriously impressive. If you want an art history book to get started with, this is a good one.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/s9/suseYb.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"500\"></p>\n<p><strong>A drone clip from the Yangjiapai hike</strong><br>\nThis is exactly where I lost my drone, for your amusement. “Dear DJI customer, we are very sorry to hear that your aircraft has gone missing. Please rest assured that DJI will do its best to assist you. Your flyaway report has been successfully accepted. You may first refer to the Find My Drone guide and try to locate the aircraft.”<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/177467994477812.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"random-thoughts\">Random Thoughts</h2>\n<p><strong>Kill the Manual Programmer</strong></p>\n<p><img src=\"https://gw.alipayobjects.com/zos/k/zc/sha.png\" alt=\"\"></p>\n<p>The title is adapted from a song I loved 12 years ago, “Kill That Shijiazhuang Man” by Omnipotent Youth Society. The scene they wrote about feels a little similar to what we are looking at now.</p>\n<p>I have not taken a bus in years. Last time I went to Prince Bay, the scenic area had traffic restrictions, so I had to park outside and take the free shuttle in.</p>\n<p>In the seat ahead of me, a little girl kept swiping through those AI-generated short videos. The visuals were rough, the content felt fake, and when she moved to the next one, it was somehow more of the same. She was completely absorbed. The strangest part was that every video had a huge number of likes. Watching that made me a little sad. I kept thinking, when my own kid grows up, will they also be surrounded by this kind of low-grade AI-made content from the start, to the point that it becomes hard to even find something genuinely beautiful?</p>\n<p>Once AI showed up, producing things suddenly became much easier. Making content got easier, and making software got easier too. In the past, if you wanted to build something, you had to spend real time on it, go back and forth, solve actual problems, and only then dare to ship it. Now a lot of those steps have been flattened. Writing something is easy, building a product is easy, you buy some tokens, ask AI, stitch together a workflow, throw on an interface, and pretty quickly you have something that runs.</p>\n<p>Today I also saw someone say they could recreate a Claude Code in two days. I both believe that and do not. In voice AI alone, dozens of products have appeared all at once, and a lot of them are actually pretty decent. Even Doubao is competing in that space now. I have also seen quite a few Claude Code wrapper clients lately, and honestly some of them are very usable.</p>\n<p>For programmers, a lot of things that used to require professional skill, a learning curve, and years of accumulation are quickly turning into abundant supply. In the future, the least scarce thing may be products that look like products. They work, they run, they look fine. You can only try to do them a bit faster, a bit better, or wrap one more layer around them and maybe there is still some value there. But that value will get matched by AI more and more easily.</p>\n<p>Not long ago I was having dinner with a colleague and we got onto an interesting topic. I told him that over the past year I have really enjoyed listening to cassette tapes, and that every song somehow feels more durable and more beautiful. Why did cassettes, CDs, TV shows, and even many old books often feel higher quality overall? The reason is actually simple: production and distribution used to be heavy. If you wanted to release an album, you first had to make the work good enough, and only then would it make sense to produce tens of thousands of tapes. Otherwise they would not sell, and the company probably would not back your next release. Publishing a book was similar. You could not just finish it casually and push it in front of a huge audience right away. Back then, the act of making something was already a filter.</p>\n<p>Now you can upload a song to a platform and that is it. You can post an article to a public account and that is it. Software is becoming similar after AI, and in some cases AI will even upload the code to GitHub for you, a place many people used to find intimidating, and even generate the CI that publishes the release for you. A lot of thresholds that once required long-term accumulation to cross have been filled in by tools, and so the world slowly gets flooded with things that are all kind of the same and kind of usable.</p>\n<p>The trouble is not just that quality drops. Over time, people’s sense of quality drops with it. The more rough things there are, and the wider they spread, plus the pressure to make money, the more our judgment gets pulled off course. Eventually what people get used to is fast stimulation, fast feedback, and fast satisfaction.</p>\n<p>When I think back to that little girl watching videos, that is the part that feels uncomfortable. She was not just watching a few rough clips. She may be growing up inside a world filled with lower-cost, higher-frequency, emptier things.</p>\n<p>Code is clearly entering the same phase now. In the future, ordinary beginners will be able to use AI to build products that satisfy their own needs. Product managers will be able to make things that used to require engineers working alongside them. So what exactly is left for real engineers to do? That is something we need to think about seriously.</p>\n<p>I have also heard that a lot of bosses at big internet companies are now staying up day and night vibe coding. In a single afternoon they can build a demo they personally consider usable, and some of them are deeply hooked on it. This could have a major effect on people doing frontline work. Once the boss gets a few flows working in code, the natural conclusion becomes: writing software is not that big a deal after all. Things that used to take six months, can they now be done in one? Things that used to need 100 people, can they now be done with 10? It is hard not to think about where that leads.</p>\n<p>There is still room for engineers to keep building products that are more usable and more efficient. But if we stop at that layer, the field will only get more crowded. More people can enter, and more people can ship something that looks convincing. The competition will get brutal.</p>\n<p>I suspect the real way forward is something closer to how singers and actors responded. Yes, they still release albums, but they also make concerts, stage productions, and live performances. Those are not things you can casually replace by putting a wrapper around something. They require organization, density of detail, and a sense of wholeness that only comes after long polishing, and they face the world directly.</p>\n<p>Looking ahead, software may move in that direction too. Everyone will be able to vibe code a product. Everyone will be able to make something that is more or less usable. What will really open up the gap later is still system capability, engineering depth, understanding of real scenarios, and all the things people do not notice at first glance but that ultimately determine whether a product has real weight.</p>\n<p>The faster the outside world moves, the less we can afford to lower our own standards for software along with it. Low-level supply will definitely keep increasing, but that does not mean we also have to become rough. The things that survive are usually the ones that feel smooth, comfortable, restrained, almost bug-free, the kind where you can tell the maker treated the work seriously.</p>\n<p>I am also thinking through my own next step. I still want to keep building open-source software that is useful, approachable, language-independent, and can earn tens of thousands of stars. I also want to keep playing with low-level rendering, terminals, editors, Rust, and related directions. Before AI, all of that felt very rewarding. After AI, though, once you have an idea, so much suddenly becomes easy that the meaning of it can start to feel less obvious.</p>\n<p>Maybe the next thing for me lives in a different dimension, a hardware-software product, or the kind of platform product that used to require thousands of people at a big company, or maybe something that breaks out of the current frame entirely. What exactly it is still needs more thought.</p>\n<p>Some of my products and content have already been slowly moving toward English, toward a bigger world. When everything here starts to feel more similar and more crowded, going outward may be one answer. A bigger market, more varied users, and higher expectations make it impossible to stay at the level of wrappers, speed, and timing alone. That pressure forces you to build something more solid, and it also forces you to think again about what you actually want to make.</p>\n<p>AI has made many things easier. But precisely because things are easier now, it has become harder to figure out what is truly worth doing and worth trading years of your life for. What to build may matter more than how quickly you can build something.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"261. miss spring","link":"https://weekly.tw93.fun/en/posts/261/","pubDate":"Mon, 23 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/58/261.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4000\" data-pswp-height=\"2667\" style=\"aspect-ratio: 1.4998;\" width=\"800\">\n<p><small>The cover photo was taken looking up at the spring sky. Spring in Hangzhou is truly beautiful. I kind of hope summer doesn’t come too quickly—weather like this is incredibly comfortable.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech seen every week, published here after filtering. If you find it useful, feel free to subscribe to this weekly newsletter for update notifications.</strong></p>\n</blockquote>\n<h2 id=\"wrote-a-long-article\">Wrote a Long Article</h2>\n<p><strong>The Agent You Don’t Know: Principles, Architecture, and Engineering Practices</strong><br>\n<a href=\"https://tw93.fun/en/2026-03-21/agent.html\">https://tw93.fun/en/2026-03-21/agent.html</a><br>\nAfter writing “The Claude Code You Don’t Know: Architecture, Governance, and Engineering Practices,” I realized my understanding of the underlying Agent mechanics wasn’t deep enough. Plus, our team has accumulated quite a bit of business implementation experience in the Agent direction, yet we’ve always lacked a systematic summary. So, I went through the materials, open-source implementations, and the code I wrote myself again, ultimately organizing it all into this article.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/7q/agent.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/7q/agent.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/7q/agent.png\" loading=\"lazy\" width=\"800\"></p>\n<h2 id=\"product-updates\">Product Updates</h2>\n<p><strong>Mole Released Version 1.31</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\nMole released version v1.31.0 over the weekend, codenamed Makima. It features faster performance and more accurate system status reporting. Huge thanks to all the contributors! I also made a video so everyone can feel the power of open source.<br>\n<video width=\"800px\" preload=\"\" loop autoplay controls muted><source src=\"https://cdn.fliggy.com/pic/mole04.mp4\" type=\"video/mp4\"></video></p>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>Get Inspired by These Projects Built with Claude</strong><br>\n<a href=\"https://claude.com/resources/use-cases\">https://claude.com/resources/use-cases</a><br>\nDefinitely worth a look. It covers various use cases in daily work, from research, writing, programming, to analysis. The content is much more in-depth than I expected.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/m1/HavtgM.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"780\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>Highly Recommend This Service from Jina in the Agent Era</strong><br>\n<a href=\"https://r.jina.ai\">https://r.jina.ai</a><br>\nSometimes you need an AI to read the content of a live website, but often it can’t fetch it due to various reasons. You can try this service: just append the URL you need to fetch after it, and it will convert it into nicely formatted markdown for you, making it super convenient for AI to use.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/jw/ydmbnn.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2362\" style=\"aspect-ratio: 1.7341;\" width=\"800\"></p>\n<p><strong>Pi, This Minimalist Agent Framework, is Worth Getting to Know</strong><br>\n<a href=\"https://github.com/badlogic/pi-mono\">https://github.com/badlogic/pi-mono</a><br>\nIt’s very small. The openclaw project was previously implemented based on this framework. It serves as a great entry point for understanding Agents.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/1q/sMGuUv.png\" loading=\"lazy\" data-pswp-width=\"1200\" data-pswp-height=\"900\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<h2 id=\"random-thoughts\">Random Thoughts</h2>\n<p><strong>Try Buying Pre-made Ice Cubes This Summer</strong><br>\nI had been debating whether to buy an ice maker, but since I’m the only one at home who likes drinking ice water, I felt the usage rate would be low and it would just take up space. Freezing ice cubes myself was also inconvenient—I’d usually realize I forgot to make them right when I wanted a drink. I found a great solution: just buy some pre-made ice cubes and keep them in the freezer. When you need them, just take them out. You can even use them directly to make Americanos in the summer. The cost-effectiveness is super high.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ob/IMG_9934.JPG\" loading=\"lazy\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"800\"></p>\n<p><strong>Got a Singapore HSBC Card</strong><br>\nIf you already have HSBC accounts in mainland China and Hong Kong, you can ask your relationship manager to help you apply for a Singapore one. Although it kind of feels like a supermarket loyalty card. The registered mail didn’t arrive for three months; after a phone call, they remade it and it arrived via express delivery in a week.<br>\n<img src=\"https://cdn.fliggy.com/pic/KeRlkk25.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://cdn.fliggy.com/pic/KeRlkk25.png\" data-pswp-src=\"https://cdn.fliggy.com/pic/KeRlkk25.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"400\"></p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"260. Prince Bay","link":"https://weekly.tw93.fun/en/posts/260/","pubDate":"Mon, 16 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/eu/260.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"4000\" data-pswp-height=\"2667\" style=\"aspect-ratio: 1.4998;\" width=\"800\">\n<p><small>Cover photo taken on Saturday when I took the kid to Prince Bay Park at West Lake. Originally wanted to see the tulips, but there were way too many people. I wouldn’t recommend going to join the crowds.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"wrote-a-long-article\">Wrote a Long Article</h2>\n<p><strong>The Claude Code You Don’t Know: Architecture, Governance, and Engineering Practices</strong><br>\n<a href=\"https://tw93.fun/en/2026-03-12/claude.html\">https://tw93.fun/en/2026-03-12/claude.html</a><br>\nRevolves around Context Management, Skills, Hooks, Subagents, Prompt Caching, and CLAUDE.md design. It focuses on how to make the collaboration process more stable and controllable, sharing best practices from an engineer’s technical perspective. Welcome to exchange ideas.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/g7/SCR-20260311-rtkf%252520copy.jpeg\" loading=\"lazy\" data-pswp-width=\"2750\" data-pswp-height=\"1108\" style=\"aspect-ratio: 2.4819;\" width=\"800\"></p>\n<h2 id=\"product-updates\">Product Updates</h2>\n<p><strong>Mole has released version 1.30</strong><br>\n<a href=\"https://github.com/tw93/mole\">https://github.com/tw93/mole</a><br>\nI started writing Mole last November, and surprisingly, 30 versions have been released up to today. This update includes:</p>\n<ol>\n<li>Strengthened orphan app data cleanup strategy. General orphan cleanup now uses a 30-day resting window.</li>\n<li>Optimized Application Support and project cache scanning logic in large directory scenarios, reducing the risk of stuttering, and converging the scanning scope to a safer root path.</li>\n<li>Strengthened LaunchServices refresh fallback logic, stabilized Homebrew uninstall and update paths, and reduced unnecessary sudo behaviors.\n<img src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/mi/C4Lrgz.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1080\" style=\"aspect-ratio: 1.7778;\" width=\"800\">\n</li>\n</ol>\n<p><strong>Kaku released version 0.7</strong><br>\n<a href=\"https://github.com/tw93/Kaku\">https://github.com/tw93/Kaku</a><br>\nI really like the transparent frosted effect in this release, you can give it a try. Updates are as follows:</p>\n<ol>\n<li>Kaku will now automatically switch between dark and light modes along with macOS, and has optimized transparency rendering and Yazi theme synchronization experience.</li>\n<li>Added closing confirmation for tabs and panes, reworked the close overlay style, and added custom rounded scrollbars. Try <code>kaku config</code>.</li>\n<li>kaku ai now supports Antigravity model configuration, quota tracking, and background loading.\n<img src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/dc/YitxG7.png\" loading=\"lazy\" data-pswp-width=\"4096\" data-pswp-height=\"2356\" style=\"aspect-ratio: 1.7385;\" width=\"800\">\n</li>\n</ol>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>Learning the principles of Claude Code-like systems</strong><br>\n<a href=\"https://learn.shareai.run/en/\">https://learn.shareai.run/en/</a><br>\nIt will guide you step-by-step from scratch to build a minimalist Agent similar to Claude Code, and explain each mechanism in detail. Worth a look.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/vx/fYMKXY.png\" loading=\"lazy\" data-pswp-width=\"3384\" data-pswp-height=\"2302\" style=\"aspect-ratio: 1.4700;\" width=\"800\"></p>\n<p><strong>RentAHuman: AI hiring humans to work</strong><br>\n<a href=\"http://RentAHuman.ai\">http://RentAHuman.ai</a><br>\nWhen an AI Agent encounters a task that cannot be completed online, it can post the job online and hire a real human to complete the task. Haha, quite interesting.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/s3/RXXfRO.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>A fantastic interactive MicroGPT demo</strong><br>\n<a href=\"https://growingswe.com/blog/microgpt\">https://growingswe.com/blog/microgpt</a><br>\nThis is a learning website based on Andrej Karpathy’s GPT implemented in about 200 lines of Python code, explaining how language models work in a visual way. Worth checking out.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/6o/Xrmn73.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<p><strong>A public OpenClaw exposure monitoring site</strong><br>\n<a href=\"https://openclaw.allegro.earth\">https://openclaw.allegro.earth</a><br>\nLists OpenClaw instances accessible over the network. In many cases, you can click into these instances and directly view what is running inside. Actually, a lot of people who don’t understand the technology are installing OpenClaw. Many things are very dangerous, and surprisingly, many belong to Alibaba, which is scary.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ph/fwcGXW.png\" loading=\"lazy\" data-pswp-width=\"3680\" data-pswp-height=\"2392\" style=\"aspect-ratio: 1.5385;\" width=\"800\"></p>\n<h2 id=\"random-looks\">Random Looks</h2>\n<p><strong>My CodeX configuration, for your reference</strong><br>\nModel: Fast GPT-5.4 High<br>\nPersonality: Pragmatic.<br>\nCustom Instructions:<br>\nAct like a high-performing senior engineer. Be concise, direct, and execution-focused.<br>\nPrefer simple, maintainable, production-friendly solutions. Write low-complexity code that is easy to read, debug, and modify.<br>\nDo not overengineer or add heavy abstractions, extra layers, or large dependencies for small features.<br>\nKeep APIs small, behavior explicit, and naming clear. Avoid cleverness unless it clearly improves the result.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/1k/kUaT0p.png\" loading=\"lazy\" data-pswp-width=\"2952\" data-pswp-height=\"1898\" style=\"aspect-ratio: 1.5553;\" width=\"800\"></p>\n<p><strong>Cooked 4 dishes on Sunday</strong></p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gg/IMG_9948.JPG\" loading=\"lazy\" data-pswp-width=\"5712\" data-pswp-height=\"4284\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8e/IMG_9949.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n    <tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/97/IMG_9950.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/p2/IMG_9951.JPG\" loading=\"lazy\" data-pswp-width=\"4032\" data-pswp-height=\"3024\" style=\"aspect-ratio: 1.3333;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"},{"title":"259. Jingshan from Above","link":"https://weekly.tw93.fun/en/posts/259/","pubDate":"Mon, 09 Mar 2026 00:00:00 GMT","description":"<img src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/sj/259.jpg\" loading=\"eager\" fetchpriority=\"high\" data-pswp-width=\"3608\" data-pswp-height=\"2030\" style=\"aspect-ratio: 1.7773;\" width=\"800\">\n<p><small>Cover photo taken during a weekend trip to Jingshan Flower Sea with my drone. Currently only rapeseed flowers are blooming - the other flowers haven’t really opened yet. Flew the drone to maximum altitude for some photos and spotted quite a few nice views.</small></p>\n<blockquote>\n<p><strong>Recording down-to-earth trending tech I see every week, filtered and published here. Follow this weekly newsletter to get update notifications</strong></p>\n</blockquote>\n<h2 id=\"trending-tools\">Trending Tools</h2>\n<p><strong>MiaoYan recently got updated with CLI support</strong><br>\n<a href=\"https://github.com/tw93/miaoyan\">https://github.com/tw93/miaoyan</a></p>\n<ol>\n<li>CLI support via <code>miao</code> command - list all notes, search, create new ones, and cat content from the terminal. Very practical for AI workflows.</li>\n<li>Apple notarization complete: No more “App is damaged” warnings or having to click “Open Anyway” in System Settings!</li>\n<li>Preview stability upgrade: Fixed occasional blank preview issues and enhanced recovery capabilities after WebContent process crashes.</li>\n<li>Editing experience optimization: Fixed input method issues in split-column mode, resolved system shortcut conflicts, and eliminated highlight flickering when switching notes.\n<img src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/si/ZSMT9v.png\" loading=\"lazy\" data-pswp-width=\"3108\" data-pswp-height=\"1980\" style=\"aspect-ratio: 1.5697;\" width=\"800\">\n</li>\n</ol>\n<p><strong>Pake released version 3.10</strong><br>\n<a href=\"https://github.com/tw93/Pake\">https://github.com/tw93/Pake</a></p>\n<ol>\n<li>Multi-window support: New <code>--multi-window</code> parameter allows opening multiple windows in the same App instance. When enabled, macOS File menu (Cmd+N) and system tray menu will both show “New Window” entry. Restarting the App opens new windows instead of focusing existing ones.</li>\n<li>Internal link regex control: New <code>--internal-url-regex</code> parameter supports precise control over which URLs are treated as internal links via regex, as an alternative to the default same-domain judgment. Falls back to default logic on invalid regex.</li>\n<li>Windows ICO icon fix: Reordered multi-resolution ICO files to prioritize 256px icons, improving App icon display quality on Windows.</li>\n<li>DMG background image fix: Restored Retina metadata for macOS DMG background images and adjusted dimensions, fixing background display issues in CI builds.\n<img src=\"https://raw.githubusercontent.com/tw93/static/main/pake/pake1.gif\" width=\"800\">\n</li>\n</ol>\n<p><strong>nanobot: A lighter OpenClaw form factor perfect for personal computers</strong><br>\n<a href=\"https://github.com/HKUDS/nanobot\">https://github.com/HKUDS/nanobot</a><br>\nI currently have two nanobots running locally - one focused on code that helps me review issues, organize thoughts, and push technical solutions forward; another for life stuff handling daily tasks. Basically replaced my ChatBot habit from six months ago. Plus a cron job that keeps watching - if the service goes down it automatically restarts, and I use Amphetamine to keep my home computer always online. After running for a while, it becomes a stable part of your environment that doesn’t require you to consciously open, maintain, or fuss with it.</p>\n<p>Often when you’re halfway through coding or when you’re out and can’t conveniently open your computer, you can casually toss tasks to it to work on first. When you come back later, some of the prep work is already done. This experience is very practical and feels natural for engineers who prefer lightweight, simple, self-controllable solutions. If you don’t want to tinker, I’d actually recommend using the installer version - works out of the box. For those who want to add custom features like me, you can clone it locally and have nanobot optimize its own code and iterate on itself. Recently added quite a few fun features.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/gr/ci8Zk6.png\" loading=\"lazy\" data-pswp-width=\"1920\" data-pswp-height=\"1920\" style=\"aspect-ratio: 1.0000;\" width=\"800\"></p>\n<p><strong>Amphetamine keeps your Mac awake</strong><br>\n<a href=\"https://apps.apple.com/us/app/amphetamine/id937984704\">https://apps.apple.com/us/app/amphetamine/id937984704</a><br>\nWhen running things like OpenClaw or nanobot, you really don’t want the screen to sleep or even want it to keep running with the lid closed. Found this software - free and works great. Perfect for when you’re using a home Mac but want it to stay on with the screen off.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8k/B4NycU.png\" loading=\"lazy\" data-pswp-width=\"2584\" data-pswp-height=\"1672\" style=\"aspect-ratio: 1.5455;\" width=\"800\"></p>\n<p><strong>Maple browser bookmark tool latest update</strong><br>\n<a href=\"https://github.com/tw93/Maple\">https://github.com/tw93/Maple</a></p>\n<ol>\n<li>New tab opening setting: Added “Open in new tab” option in settings, with hover tooltips disabled by default for a cleaner interface.</li>\n<li>Multi-language support: Optimized settings page styling and added multi-language support for better accessibility.</li>\n<li>File protocol support: Fixed issues with opening file protocol bookmarks (file://).</li>\n<li>Bug fixes: Fixed Bing date issues, sorting problems, and various UX improvements.\n<img src=\"https://raw.githubusercontent.com/tw93/static/master/pic/maple1.gif\" width=\"800\">\n</li>\n</ol>\n<p><strong>Discovered a very modern VSCode theme: Islands Dark</strong><br>\n<a href=\"https://github.com/bwya77/vscode-dark-islands\">https://github.com/bwya77/vscode-dark-islands</a><br>\nHas that new Apple system feel with glass arc effects, rounded corners - very modern looking, though you might not get used to it.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/iz/JgqaH9.png\" loading=\"lazy\" data-pswp-width=\"1802\" data-pswp-height=\"1389\" style=\"aspect-ratio: 1.2973;\" width=\"800\"></p>\n<p><strong>Readout: Visualize your Claude Code projects</strong><br>\n<a href=\"https://readout.org\">https://readout.org</a><br>\nVisualizes your Claude Code environment in real-time. Shows AI, sessions, repos, costs, MCPs, ports, and more. Provides instant global search and complete session replay with timeline scrubbing. Runs locally, no account needed. Looking forward to its future development.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/r7/GC1Jxv.png\" loading=\"lazy\" data-pswp-width=\"2798\" data-pswp-height=\"1792\" style=\"aspect-ratio: 1.5614;\" width=\"800\"></p>\n<h2 id=\"random-finds\">Random Finds</h2>\n<p><strong>Gaidihu floor drain core is excellent, worth trying</strong><br>\nAfter buying the Gaidihu floor drain core that topped my “best purchases of the year” list and testing one, I bought another and replaced all the bathroom floor drains in my house. Very smooth drainage without clogging, easy to install. Highly recommended.<br>\n<img src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/ml/S8ecc2.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"500\"></p>\n<p><strong>Haven’t eaten coconut meat in years, quite interesting</strong><br>\nLearned how to open a coconut without a knife: First peel off the top, then you’ll see 3 faces. Gently press to find the spot that’s noticeably softer, then look for the hole there.</p>\n<p>As for cracking the shell open - use another coconut. Hold one in each hand and smash the three raised ridges against each other. Hit hard a few times and one will crack, then break it open. The coconut meat is very refreshing!</p>\n<table style=\"margin-top:-20px\">\n    <tbody><tr>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/fh/7ufDAD.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"600\">\n        </td>\n        <td width=\"50%\">\n           <img src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png?x-oss-process=image/auto-orient,1/resize,w_2000/format,webp\" data-lightense-src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png\" data-pswp-src=\"https://gw.alipayobjects.com/zos/k/8r/3XWXW6.png\" loading=\"lazy\" data-pswp-width=\"1536\" data-pswp-height=\"2048\" style=\"aspect-ratio: 0.7500;\" width=\"600\">\n        </td>\n    </tr>\n</tbody></table>\n<h2 id=\"random-thoughts\">Random Thoughts</h2>\n<p><img src=\"https://gw.alipayobjects.com/zos/k/2v/4CGWQA.png\" alt=\"\"></p>\n<p>Last Friday I saw Tencent Tower installing OpenClaw company-wide. Quite thought-provoking - felt a bit like “The Great OpenClaw Leap Forward”.</p>\n<p>Recently many big tech companies have been frantically pushing frontline non-technical employees to install OpenClaw. There’s even a real 500 RMB on-site installation service online. Everyone’s desperately searching for use cases, demanding implementation, trying to prove this thing is too important to miss. The whole process gives me a strong sense of cyber-tech folding.</p>\n<p>Saw an interesting quote: “People who can’t even install OpenClaw, how would they use it?” Taking it a step further - if you haven’t even established basic usage, yet you’re expected to first create complete scenarios, deliver results, and prove value - that’s even harder.</p>\n<p>There are two things叠加 (stacked) behind this. One is illusion: many bosses have watched too many WeChat video clips, been repeatedly bombarded by exaggerated narratives and universal case studies, and really start hallucinating that this thing can do anything, connect anywhere, everyone should install it, and installing it should immediately produce output. The other is anxiety: everyone fears missing this wave, so they start using administrative actions to push adoption, using collective anxiety to replace real demand.</p>\n<p>So you see a strong contrast. On one side, slogans are huge - as if everyone must enter the AI-native era. On the other side, many people can’t even clearly articulate what things are worth handing over to it. This contrast will only grow stronger and increasingly absurd.</p>\n<p>Because tools never generate value through installation. Tools only generate value through task density, clear processes, and visible results. Without continuous tasks, without SOPs, without conditions for online completion, without clear inputs and outputs - even the strongest thing sitting there is just an icon. It won’t automatically grow scenarios just because it’s installed.</p>\n<p>So I’ve always felt OpenClaw isn’t for everyone.</p>\n<p>It suits commanders, solo entrepreneurs, and people who constantly have things they want to push forward, can break work into steps, and can complete many things online. Especially if you’ve used skills and tools, understand AI’s capability boundaries, can string processes together, build scenarios, and complete things step by step - then it’s very suitable.</p>\n<p>For me, this scenario comes naturally. Especially when there’s lots to push forward but I’m not home or at the office - out with just my phone or can’t conveniently open my computer - I’ll have my two nanobots check my open source product issues, produce technical solutions, then have another review and submit. All in one go. Lets me elegantly get things done during my morning commute. Really convenient.</p>\n<p>But for someone who normally has no work to complete outside, or who doesn’t even want to open their computer when they get home - how could you force scenarios to exist? Eating well and having fun is comfortable enough. No scenario means no scenario, really no need for anxiety.</p>\n<p>I think what’s most easily amplified in this wave isn’t capability gap - it’s scenario gap. People with scenarios will use it more smoothly, run faster, eventually feeling like they have multiple selves. People without scenarios will easily spin around in concepts, tutorials, case studies, and videos, ending up with nothing changed except having installed more software.</p>\n<p>Many people’s biggest problem today isn’t not having installed OpenClaw - it’s treating having installed a tool as having entered the AI era. The real watershed has always been in task understanding, process design, and result judgment. Do you actually have continuous problems to solve? Can you break problems down and hand them to the system? Can you judge whether results are correct? These determine whether you can truly extract value from AI.</p>\n<p>So no need for anxiety. Installing OpenClaw when you have no real use case doesn’t mean much.</p>\n<p>If you really want to experience where this generation of AI is strong, better spend $20 on Claude Code, or more interestingly get a ChatGPT subscription, use GPT 5.4 to handle something you truly find difficult - produce a solution, push execution forward, experience this simple, efficient, problem-solving process once. That’s way better than installing OpenClaw.</p>\n<p>OpenClaw suits people with scenarios, suits commanders, suits solo entrepreneurs, suits those who can SOP-ize, online-ize, and complete processes step by step. It’s certainly powerful, but it proves its power through completing work for you, not through being installed.</p>\n<p>What many people are installing today is OpenClaw. What’s more important to figure out first: What problem do I actually have that’s worth solving with AI?</p>\n<p>That question may be more important than installing anything.</p><hr style=\"border:none;border-top:0.5px solid rgba(0,0,0,0.08);margin:26px 0 14px;\" />\n    <p style=\"text-align:left;margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;\">\n      <a\n        href=\"https://cats.tw93.fun?name=潮流周刊\"\n        style=\"\n          display:inline-block;\n          padding:6px 18px;\n          border-radius:999px;\n          background:#222;\n          color:#fff;\n          font-size:13px;\n          text-decoration:none;\n        \"\n        target=\"_blank\"\n        rel=\"noreferrer\"\n      >Buy me a coke 🥤</a>\n    </p>"}]}}