AA命令行工具最佳实践
aa/cli taste
CLI项目开发指南,推荐使用pnpm、TypeScript和tsup等工具链的最佳实践。
适用平台:
ChatGPTClaudeGemini
# AA 的 CLI 风格
- CLI 项目使用 pnpm 作为包管理器。置信度:1.00
- CLI 项目使用 TypeScript。置信度:0.95
- CLI 项目使用 tsup 作为构建工具。置信度:0.95
- CLI 项目使用 vitest 进行测试。置信度:0.95
- CLI 命令处理使用 Commander.js。置信度:0.95
- CLI 项目中交互式用户输入使用 clack。置信度:0.95
- 在运行 npm link 之前检查现有 CLI 名称冲突。置信度:0.95
- 将 CLI 命令组织在专门的 commands 文件夹中,每个模块独立。置信度:0.95
- 包含一个显示 CLI 名称的 150px 小 ASCII 艺术欢迎横幅。置信度:0.95
- 版本和帮助命令使用小写标志 (-v, --version, -h, --help)。置信度:0.85
- 项目从版本 0.0.1 开始,而不是 1.0.0。置信度:0.85
- 版本命令应仅输出版本号,不带 ASCII 艺术、横幅或额外信息。置信度:0.90
- 从 package.json 读取 CLI 版本,而不是在源代码中硬编码。置信度:0.75
- CLI 项目中始终使用 ora 作为加载旋转器。置信度:0.95
- CLI 项目中使用 picocolors 进行终端字符串着色。置信度:0.90
- 在 CommandCode 项目中使用 Ink 构建交互式 CLI UI。置信度:0.80
- 在基于 Ink 的 CLI 中使用 ink-spinner 进行加载动画。置信度:0.70
- 从帮助中隐藏内部标志:.addOption(new Option('--local').hideHelp())。置信度:0.90
- 在 package.json 中使用 pnpm.onlyBuiltDependencies 预批准原生二进制构建。置信度:0.60
- 在大终端宽度下使用 ANSI Shadow 字体作为 ASCII 艺术,小宽度下使用 ANSI Compact。置信度:0.85
- ASCII 艺术横幅使用最少的白色、灰色和黑色。置信度:0.85
- 在构建或发布之前使用 `npx can-i-publish` 检查包是否可发布。置信度:0.85