mcpField
C
clack

clack

github.com/alexeira开发055 次安装26 周前更新
代码仓库

关于 clack

clack 是一项使用 Clack 构建稳健、易用命令行流程的技能,提供实现指引、输入验证与取消处理模式,并附带 JS 和 TS 起步模板。

主要功能

  1. 01@clack/prompts 与 @clack/core 使用指引
  2. 02提示输入验证与取消处理模式
  3. 03用户体验和可靠性建议
  4. 04JS 与 TS 命令行脚手架模板

适用场景

  1. 01构建交互式命令行流程
  2. 02为提示流程添加安全取消处理
  3. 03生成基础或带 spinner 的 CLI

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alexeira/skills --skill clack

安装后在 Claude Code 中输入/clack确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

assets/templates/
basic-cli.mjs
basic-cli.ts
spinner-cli.mjs
spinner-cli.ts
references/
best-practices.md
core-api.md
examples.md
prompts-api.md
sources.md
scripts/
scaffold-clack.sh

详细介绍

Clack CLI 技能

使用 Clack 实现稳健、易用的 CLI 流程。

按此工作流操作

  1. 确定实现目标。
  • 对于大多数交互式 CLI 流程,使用 @clack/prompts。
  • 对于低级/自定义提示词渲染和生命周期控制,使用 @clack/core。
  1. 仅加载相关参考资料。
  • 以提示词为中心的工作流:references/prompts-api.md
  • 低级/核心扩展工作:references/core-api.md
  • UX 和可靠性审查:references/best-practices.md
  • 模式选择和脚手架:references/examples.md
  • 源链接和时效性检查:references/sources.md
  • 如果用户快速需要一个起始文件,运行 scripts/scaffold-clack.sh。
  1. 先构建最小可运行骨架。
  • 包含导入、intro()、流程逻辑和 outro()。
  • 为用户的运行时添加安装/运行命令。
  1. 添加提示词,并明确处理验证和取消路径。
  • 验证每个可能不符合约束的面向用户字段。
  • 在每个提示词结果之后使用 isCancel(...) 和 cancel(...) 处理取消。
  1. 有目的地添加 UX 辅助函数。
  • 使用 log.* 提供结构化反馈。
  • 对耗时的单个操作使用 spinner()。
  • 使用 note() 展示摘要和后续操作。
  1. 对于异步多步骤工作,使用面向任务的模式。
  • 优先提供清晰的状态更新和简洁的任务标题。
  • 保持成功/错误消息简短且可操作。
  1. 以可用于生产环境的答复收尾。
  • 除非用户另有要求,否则提供完整可运行代码(而非代码片段)。
  • 包含快速验证步骤。

随附资源

  • scripts/scaffold-clack.sh

  • 使用精选模板生成 JS 或 TS 起始 CLI。

  • 用法:bash scripts/scaffold-clack.sh <target-dir> [basic|spinner] [js|ts] [auto|npm|pnpm|yarn|bun]

  • assets/templates/basic-cli.mjs

  • 基础提示词流程,包含验证、取消处理和摘要说明。

  • assets/templates/spinner-cli.mjs

  • 提示词流程,以及适用于较长操作的旋转指示器执行模式。

  • assets/templates/basic-cli.ts

  • 基础提示词流程的 TypeScript 版本。

  • assets/templates/spinner-cli.ts

  • 旋转指示器流程的 TypeScript 版本。

不可妥协的规则

  • 始终包含可安全处理取消的路径。
  • 切勿假设输入有效;应进行验证,并就如何修正问题提供即时说明。
  • 状态和错误消息的语气应保持一致。
  • 保持提示词树浅显;将复杂流程拆分为分组步骤。
  • 优先使用合理的默认值,以减少用户输入和错误。

时效性政策

  • 将 Clack API 视为持续演进的内容。
  • 使用 references/sources.md 作为权威来源链接映射。
  • 如果用户询问最新行为或特定版本的细节,定稿前应重新查阅官方文档。
  • 如果无法访问网络,应明确说明这一限制,并仅使用此技能中有文档记录的 API。

评论

支持 Markdown