Simon Willison用details/summary折叠AI写的PR描述
这位开发者称,Claude Code和Codex生成的PR描述准确但冗长,他把人类判断写进开头段落,其余内容收进GitHub Markdown支持的折叠块。
AI解读:Simon Willison在 2026 年 11 月 9 日的文章中说,他项目里大部分改动现在由Claude Code或Codex提交PR,PR是他的工作单元。
他的判断是:编码代理写的PR描述准确、全面,但长到让他不想读,因此他希望开头有一段经人类筛选的高层说明。
做法是把开头段落写成简短摘要,有时加截图,再用HTML的details/summary折叠代理生成的完整描述;GitHub Markdown支持这两个标签。
折叠块的标题他用模型名和投入档位标注,例如“Claude Opus 5.5 Medium”,让读者知道后续内容是代理写的。
适用范围是他自己项目的PR描述和issue评论;文章没有给出阅读效率或评审质量的量化数据。
Simon Willison在 2026 年 11 月 9 日的一篇文章中介绍了一种处理AI生成PR描述的方法:用自己的话写一段简短开头,把代理写的大部分内容折叠进HTML的details元素。他说,他项目中当前大部分改动都由Claude Code或Codex以PR形式提交。
问题:代理描述准确但太长
Willison说,今天的编码代理很擅长写PR描述,问题是“太擅长了”。代理写出的描述准确、全面,会交代问题、详细解决方案和验证步骤。
他的反应是“我不读这些”。他指出,这类文字未必是低质内容,但读起来像AI生成的内容;不论信息多有用,他都会因为预计阅读时间长于作者写它的时间而先被劝退,即使作者是他自己。
做法:人类摘要在前,全文折叠
他要求PR开头提供经人类判断的引言,让人快速了解这个PR是做什么的、是否值得继续看。
具体实现是用HTML的summary元素作为可点击展开的标题,details元素包住其余内容。他称GitHub Markdown支持这组标签,可以直接放进PR描述或issue评论。
他会把代理写的完整说明放进折叠块,摘要标题常用模型名和投入档位,例如“Claude Opus 5.5 Medium”,以表明下面内容是代理生成的。他还提到有时会加截图,因为图片能更快说明新功能。
他强调,开头短文本代表他作为人类对“什么值得读者花时间”的判断。他也说,开头不总是自己写,有时是从代理输出的大量文字里挑出已合适的内容。
- datasette PR #3052 的开头描述行页面原来把单行显示为单行表格,宽表会向右滚出页面。
- datasette PR #3043 的开头说明分页栏现在会显示当前页包含哪些行,并在页面顶部和底部都提供导航。
- datasette-agent PR #51 的开头说明新增register_agent_reference_types插件钩子,让插件在聊天输入框的 # 标记中加入自己的条目类型。
- llm PR #1838 的开头说明新增管理extra-openai-models.yaml记录的命令行命令,之后附上 --help输出。
记忆标签顺序的技巧
Willison说,他自己曾记不住两个标签的顺序:是details在前,还是summary在前。
他的记法是:summary是对内容做摘要的那段可点击文字,因此details必须包住其余所有内容。他还建议把这组标签读作“details-summary”,两个音节加三个音节更顺口。
他希望GitHub在Markdown编辑器里加一个按钮来插入这组标签,既省去在手机键盘上手动输入,也让更多用户知道这个功能。