用途:这是一份 CLI 用户体验设计风格指南,提炼 HashiCorp 创始人 Mitchell Hashimoto 所创建工具(Vagrant、Terraform、Consul、Vault、Nomad)共有的命令行设计思路,用于指导开发者设计可发现、易上手且强大的 CLI。
主要能力与原则:命令结构采用 <tool> <command> [options] [args] 模式;渐进式披露,默认简单、需要时强大;错误信息同时说明问题与修复方法;始终支持 --json 或 -o json 等机器可读输出;每一级命令都提供 --help,支持 -h、--version、-v、退出码约定(0 成功、1 错误)、长操作进度显示与拼写纠错建议。
使用方式:资料给出 Rust 示例,使用 clap 定义子命令(list、search、info、install、uninstall、init、update、where、doctor、completions),用 thiserror 与 colored 构造带建议的错误提示,用 fuzzy-matcher 生成“Did you mean”候选,用 serde 输出 JSON,并展示 init、uninstall、doctor 等命令的实现片段。
适用场景:设计或评审命令行工具时参考,尤其适合需要兼顾人类可读与脚本可解析输出的开发者工具。
限制:资料未提供该技能的具体安装命令、运行环境要求、收费方式或平台支持信息,暂未提供;示例代码为设计参考,未说明可直接运行。