用途:在设计、审查或重构命令行工具与脚本时提供 UX 指导,覆盖新增参数、子命令、配置与环境变量支持,改进帮助、输出与错误信息,提升 shell 管道中的可组合性,减少歧义与意外。
主要能力与原则:以人为本,优先服务人类而非仅程序调用者;可组合,小工具配清晰接口,尊重 stdin/stdout/stderr;一致,复用熟悉约定降低认知负担;输出适度,平衡静默与噪声;可发现,帮助与示例让功能易找;对话式,引导重试与多步流程;健壮,优雅处理错误;共情与混乱,预期误用与真实环境。
实践要点:始终支持 -h 与 --help,帮助可扫读,含用法、选项、示例与关键子命令,非 TTY 输出避免转义垃圾;成功时给简短输出,提供 -q/--quiet,状态变化说明改了什么及如何查看,多步流程建议下一步命令,长任务显示进度;错误改写为人类可读并附可操作提示,高信号、聚合重复错误,失败用非零退出码,错误走 stderr;参数优先用标志而非位置参数,提供长标志,常用项配短标志,尽量用标准名(--help、--json、--dry-run、--quiet),避免歧义顺序,允许标志位于子命令前后,不强制交互,支持 --no-input;仅在 stdin 为 TTY 时提示,否则报错并给指引,危险操作适当确认并支持 --force/--confirm;用子命令降低复杂度,保持标志一致,优先“名词 动词”命名;尽早校验输入,副作用前失败,快速反馈,慢操作加进度,跨网络/文件系统边界要明确,为瞬时故障加超时与可恢复性。
使用方式:作为技能在 CLI 设计、评审或重构任务中调用,按清单检查帮助、输出、错误、标志、交互、子命令与可组合性。
限制:内容基于 clig.dev 及其中文翻译,采用 CC BY-SA 4.0 许可,复制或改编文本时需保留署名;具体安装命令、平台与收费信息暂未提供。