关于 dorodango
dorodango 是用于实现完成且测试通过后的代码打磨技能,面向准备评审或发布的开发者。它按正确性、清晰度、一致性和润饰分阶段处理,并可通过状态文件跨会话续做。
主要功能
- 01按四个质量维度分阶段检查
- 02通过测试、检查器和审阅确认收敛
- 03保存状态并支持跨会话续做
- 04回归时重新打开已完成维度
- 05最多执行 10 轮打磨
适用场景
- 01为代码评审或发布准备实现
- 02对已通过测试的代码做全面改进
- 03恢复先前中断的打磨流程
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ athola/ claude-night-market --skill dorodango安装后在 Claude Code 中输入/dorodango确认已加载。
附带文件modules/pass-definitions.md
详细介绍
Dorodango 打磨工作流
名称源自日本的一种艺术:将泥球打磨成高光泽球体。应用到代码上:将初始实现(“泥球”)经过多轮质量打磨,直到熠熠生辉。
何时使用
- 初始实现已完成且测试通过后
- 代码可以正常工作,但需要从多个质量维度进行打磨
- 准备提交代码评审或发布
- 继续之前的打磨会话
何时不使用
- 代码无法编译或未通过基本测试(先修复)
- 只需改进单一维度(直接使用特定技能:pensive:code-refinement 等)
- 全新设计阶段(改用 brainstorming)
轮次顺序
四个质量维度,每个维度都是独立的一轮:
- 正确性 - 运行测试并修复失败项
- 清晰度 - 代码可读性和结构
- 一致性 - 命名、模式、风格对齐
- 润色 - 文档、错误消息、边界情况
各轮类型的详细范围请参见 modules/pass-definitions.md。
收敛模型
- 每轮针对一个维度
- 一个维度是否收敛取决于记录,而绝不只取决于执行子代理自己的计数:正确性依据测试命令的退出代码;清晰度和一致性依据检查器和格式化工具的退出代码,以及评审者计数为 0;润色依据一个未参与编辑的新子代理给出的评审者计数为 0
- 如果报告
issues_found: 0,但状态文件中没有记录相应的退出代码,则该轮尚未收敛 - 收敛状态可以撤销:如果后续轮次发现某个已收敛维度出现回归,则该维度将取消收敛,并在本次运行结束前重新执行
- 所有 4 个维度都收敛后,打磨即告完成
- 总轮数最多为 10 轮(硬性限制)
- 如果 10 轮后仍未收敛,则向人工人员呈现状态,并建议拆分成更小的单元
状态持久化
状态记录在 .attune/dorodango-state.json 中:
{
"target": "plugins/foo",
"started_at": "2026-03-18T12:00:00Z",
"pass_count": 3,
"passes": [
{
"type": "correctness",
"issues_found": 2,
"issues_fixed": 2
},
{
"type": "clarity",
"issues_found": 5,
"issues_fixed": 5
},
{
"type": "consistency",
"issues_found": 0
}
],
"converged_dimensions": ["consistency"],
"converged": false
}
此文件可用于跨会话恢复。恢复时,跳过已收敛的维度,从下一个尚未收敛的维度继续。
子代理隔离
每轮都会派发一个独立的子代理,以防止上下文累积。子代理会收到:
- 目标目录/文件
- 轮次类型和范围(来自 pass-definitions 模块)
- 前几轮的结果(仅摘要,而非完整上下文)
对于代码少于 100 行的目标,派发子代理是可选的;小文件通过会话内评审即可。
工作流
- 初始化状态文件(或加载现有文件)
- 确定下一个尚未收敛的维度
- 为该维度派发子代理
- 将结果记录到状态文件
- 如果该维度已收敛(0 个问题),则将其标记为已收敛
- 如果所有维度都已收敛或已达到 10 轮,则停止
- 否则,继续下一个维度
交叉引用
pensive:code-refinement- 用于清晰度轮次conserve:code-quality-principles- KISS/YAGNI/SOLIDimbue:latent-space-engineering- 为轮次提示词加入情感化表述,以获得更好的结果
退出标准
-
.attune/dorodango-state.json存在,其中"converged": true,且converged_dimensions下列出了全部四个维度 (correctness、clarity、consistency、polish)。 - 状态文件中的
pass_count总数 <= 10;如果完成 10 轮后仍未完全收敛,该技能会向用户显示未收敛的维度,并建议将目标拆分为更小的单元。 - 只有在所有测试都通过(退出代码为 0)后,正确性维度才会收敛;发现测试失败的正确性检查不会将该维度标记为已收敛。
- 只有在状态文件中记录了 linter 和 formatter 的退出代码均为 0,并列在审查者的问题计数旁边时,清晰度和一致性维度才会收敛;没有退出代码的
0 issues声明不会使维度收敛。 - 如果后续轮次发现回归问题,状态文件中对应维度会取消收敛(
converged_dimensions缩减),并且必须重新运行该维度后,才能将converged: true。 - 对于超过 100 行的目标,每轮检查都会作为单独的子代理任务分派;状态文件会记录各轮的单独结果,而非单条批量记录,以此确认。
评论
支持 Markdown