这段时间用mattpocock/skills搞了几个给自己用的小玩意,分享一点经验。
啥最好用
grill-me/grill-with-docs王者grill-me/grill-with-docs再次上线。这技能强就强在“达成共识”四个字,如果你的需求太宽泛,是真的会问到你神志不清的。我试过几次前面一些问题都还是会认真看,后面就摆烂直接开启Yes工程师模式了。
但王者也需要注意一些点,grill-with-docs会记录文档,很好的设计,但文档在完成任务之后应该删掉,因为可能会与后续的需求产生冲突。我在WinTProxy(自己搞的一个Win平台透明代理)的重构就遇到了与文档冲突的问题。我想要用ndisapi取代WinDivert做数据包的捕获和改写以支持WSL和HyperV的二层NAT,但原有架构是多个Worker在三层做数据包的处理,当时留了个docs/adr文档,然后切换ndisapi就遭殃了,它工作在二层,然后NAT又会经过几个网卡,然后就重复捕获了好几次。
这个技能的其中一个思想是很值得参考的,垂直切片。这要求任务划分是从端到端的划分,而不是层间划分。一个任务需要处理完一个需求从后端到前端的全部实现,有效反馈对于AGENTS来说是提效的一个重点。
diagnose很好用的debug技能,上面那个问题最后就是用它找的,当然也算是我懒,主要是trace级别日志太多了,也懒得看。不过这个技能本身规范了一整套流程,有点啰嗦的。后来我自己改了一套更个人化的技能库,对这个技能就是砍掉了后面的修改和测试,只报告原因就行了,把修改和测试交给to-issues和tdd。
tdd另一个王者,AGENTS时代大概tdd是最合适的了,要是再配上rust。什么叫做写完就结项?准确来说不是这个技能是王者,是测试驱动这种思想是王者。
啥我不用
这里列几个我不用的技能,不过mattpocock的技能库里面的engineering基本都很有用就是了。顺带一提,我自己魔改就是engineering剔除了triage,魔改了包括zoom-out在内的其他技能,然后加上了handoff做session交接。
前置配置的Issue tracker并不是说不好用,只是我认为做本地的文档会方便一点。但Matt pocock原来设计就是维护github上的项目的,所以并没有什么毛病,也就开头配置时候多个选择而已。
triage这是搭配上面的Issue tracker用的,你如果是本地文档,你大概率不会用这个。因为你不可能先写个文档描述issue,然后再丢目录里面去排序吧!真的有人这样做吗?
zoom-out这玩意就一句话,直接写提示词都行,没有什么工作流程之类的,所以本质上只是方便一点。魔改的话可以让它做些数据流图啊之类的,更清晰一点。
一般咋用
grill-with-docs → prototype(optional) → to-prd → to-issues → tdd improve-codebase-architecture → prototype(optional) → to-prd → to-issues → tdd diagnose → tdd这个to-prd → to-issues很多时候是形影不离的,一开始我认为这两个就该合并,但后来实际开发中发现,有时候不会去写prd的,一个明确的需求就直接拆分任务了。这两个技能拆分是有道理的。
为啥用这
superpowers、trellis等这些其实都用过,有个共同的特点就是流程控制比较强,或者说比较重,穷鬼最喜欢省token了。
1 个帖子 - 1 位参与者