最近看到一个挺有意思的开源项目,叫 show-me,是 HumanLayer 团队做的一个 Skill。它干的事情说白了就一句话:帮你把正在聊的话题,用最直观的方式画出来。先说它怎么处理逻辑和算法。遇到这类内容,它不会给你写一大段文字解释,直接用伪代码呈现。比如一个保存操作,内容没变就返回缓存,变了就写入新内容,几行代码一目了然。
然后是程序运行时的调用关系。它会画成一棵调用树,谁调用了谁,层级关系清清楚楚。比如提交表单这个动作,底下先创建会话,再保存提示词,再启动代理,最后跳转页面,一层一层往下排,看一眼就知道整个流程。
碰到前端 UI 的结构,它会画组件树,把状态和模块边界标出来,连文件路径都给你写上。这样你一看就知道哪个组件在哪个文件里,谁嵌套了谁。
如果是多个组件之间的交互,比如用户点了一个按钮,UI 把请求发给后台,后台再把结果流式返回,这种场景它会用 Mermaid 时序图来画,箭头指来指去,交互过程一眼就能跟上。
还有一个很实用的功能:diff 视图。当你已经知道整体结构长什么样,只是想看哪里改了,它就用加号减号标出变化的部分。组件变了、文件目录调整了、调用链多了一步,都能用这种方式展示。不用重新看一遍全貌,只看变化就够了。
不过如果大部分内容都是新的,它就不省略了,直接给你完整的代码块,方便你直接复制去用。
最后,遇到那种特别复杂的场景,文字和简单图表都搞不定的,它会生成一个 HTML 文件,做成图表、信息图,甚至小型幻灯片,配色和排版都跟着产品风格走,手机和电脑都能看。
整个设计思路就一个原则:挑最小的视图,把关键点说清楚。不堆砌,不炫技,该用哪种就用哪种,甚至大多数时候只用其中一两种。够用就好。
传送门:github.com/humanlayer/skills/blob/main/plugins/show-me/skills/show-me/SKILL.md
科技先锋官How I AI
