SuperAPI AI 工具集

cli-creation

编程与开发

查看项目

更新于 10-15 23:46

技能介绍

用途:从零创建可运行的 DreamCLI 起始 CLI,并用类型化命令模式扩展。面向基于 DreamCLI 的用户应用代码,不涉及框架内部。目标版本为 DreamCLI 4.0。

主要能力:提供 single(单一根命令)与 multi(分组命令)两种起始模式;通过 python scripts/scaffold_cli.py --name mycli --mode single --out . 生成起始文件,默认同时生成测试(--no-test 可关闭),测试模板自动识别 Bun 或 Vitest。支持类型化值(string、number、boolean、enum、custom、keyValue、url、path、date、duration、bytes 等)、声明式约束、Standard Schema 校验、默认值构建期校验、集合聚合与去重、多来源解析(argv、stdin、env、config、prompt、default)、来源溯源、跨标志规则 .derive()、输出与测试工具。

使用方式:先选起始模式并生成文件,用脚手架输出的路径运行验证,如 bun ./mycli.ts --help,并运行生成的测试。扩展时参考 references/pattern-cookbook.md、consumer-workflow.md、runtime-notes.md。查询 API 可用 deno doc jsr:@kjanat/dreamcli 2>/dev/null 等命令;文档站可用 curl -s https://dreamcli.kjanat.dev/llms.txt 等获取。

适用场景:搭建新 CLI、按 git/gh 风格组织嵌套命令、需要类型化标志与多来源输入、需要测试与输出格式化的命令行应用。

限制:不修改 DreamCLI 核心内部;导入保持 @kjanat/dreamcli 与 @kjanat/dreamcli/testkit;保持解析顺序;stdout 保持机器可读,进度走 stderr;.default(cmd) 为根界面且不可按名路由,需 { route: true } 才支持 mycli <name>;优先 Bun 命令,按需提供 npm/tsx 与 Deno 替代。