开发 Claude Code mod 的心得:提示框上方的状态栏
我收到 Lydia 的每周邮件,看到一个很令人兴奋的消息:Claude Code 现在支持 mods,也就是以函数钩子编写的插件,能在终端和桌面应用内绘制 UI。我读完文档,做了建议的天气栏,很不错。还能做什么呢?我最近使用 Ponytail,效果很好,想知道它目前的等级,所以加上去;接着也加上 Caveman。很好玩,也很实用。以下是我的心得和作品。 mod 会针对 AbovePrompt 这类位置挂上 ui.render,返回由少数元素(Box、Text、Button、Select、Link、Svg)组成的树,并用 flexbox 布局。不是 HTML,也没有 CSS。最小的栏大概像这样: on('ui.render', { component: 'AbovePrompt' }, async ($, e) => { const { Box, Text } = $.ui.resolve(e) return <Box flexDirection="row"><Text>hello from a mod</Text></Box> }) 如何把设置放在栏内。设置经过几次尝试。这部分很有趣,因为 UI 非常有限:设置在 /config 里,但桌面版没有它。先用 /overalls weather minimal 命令,再加一个 ⚙ 按钮,输入…