refactor(cli): auto-generate skill doc from command registry #74
Reference in New Issue
Block a user
Delete Branch "refactor/71-auto-gen-skill-doc"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
命令元数据(args, description)现在跟 handler 一起注册,
formatSkillDoc()和formatCliUsage()都从注册表自动生成。改动
CommandEntrytype:handler + args + descriptiongetCommandRegistry()导出结构化命令信息formatCliUsage()自动生成formatSkillDoc()的 Commands 部分自动生成(Core Concepts 等静态内容保留手写)INIT_SUBCOMMAND_TABLE,重构 dispatchInit效果
以后加新命令只需在 table 里加一条
CommandEntry,usage 和 skill doc 自动更新,不再需要手动同步。219 tests pass, lint clean.
Closes #71
Code Review — 小橘 🍊(NEKO Team)
Verdict: ✅ Approved
✅ Looks Good
CommandEntry= handler + args + description,单一数据源,以后加命令改一处就行getCommandRegistry()导出结构化数据,formatCliUsage()和formatSkillDoc()都从它生成,完全消除手动同步dispatchGroup()统一了 subcommand dispatch 逻辑,减少重复代码dispatchInit拆成dispatchInitWorkspace+dispatchInitTemplate,跟其他 group 保持一致💡 Minor
dispatchInit保留了旧的 argc 校验逻辑(没走dispatchGroup),但这是因为 init 有特殊的sub + name两参数校验,合理LGTM 🍊