关于 knitwork-x
面向 Agent 和开发工具的 JavaScript 与 TypeScript 代码生成技能,可通过程序组装源代码。其纯 gen* 辅助函数返回可组合的代码字符串,且不会修改输入。
主要功能
- 01生成 JavaScript 和 TypeScript 代码片段
- 02提供类、函数和类型辅助函数
- 03生成控制流结构
- 04序列化对象和集合
- 05输出可组合的纯字符串
适用场景
- 01构建代码生成工具
- 02生成插件源代码
- 03创建动态模块
- 04组装 TypeScript 声明
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ hairyf/ knitwork-x --skill knitwork-x安装后在 Claude Code 中输入/knitwork-x确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
GENERATION.mdreferences/core-design-guidelines.mdcore-esm.mdcore-overview.mdcore-string.mdcore-variable.mdfeatures-class.mdfeatures-condition.mdfeatures-conditional.mdfeatures-decorator.mdfeatures-enum.mdfeatures-function.mdfeatures-interface.mdfeatures-loop.mdfeatures-module-namespace.mdfeatures-object.mdfeatures-statement.mdfeatures-switch.mdfeatures-try.mdfeatures-type.mdfeatures-utils.md详细介绍
knitwork-x 为 JavaScript 和 TypeScript 提供代码生成程序接口。它从 knitwork 派生,并新增了全面的 TypeScript 辅助函数:ESM(导入/导出)、字符串、变量、类、接口、函数、类型、控制流(if/try/loop/switch)和序列化(object/array/map/set)。所有 gen* 函数都会返回适合插入源码的字符串;它们都是纯函数,不会修改输入。
当 Agent 需要生成代码字符串(例如用于代码生成工具、插件或动态模块输出)时,请使用此技能。
核心参考
| 主题 | 说明 | 参考 |
|---|---|---|
| 概览 | 用途、安装和适用场景 | core-overview |
| ESM | 导入、导出、默认导出、动态导入 | core-esm |
| 字符串 | genString、escapeString、genTemplateLiteral | core-string |
| 变量 | genVariable、genVariableName | core-variable |
| 设计指南 | 命名、参数、选项(供贡献者参考) | core-design-guidelines |
功能
| 主题 | 说明 | 参考 |
|---|---|---|
| 类 | genClass、genConstructor、genProperty、genMethod、getter/setter | features-class |
| 接口 | genInterface、genIndexSignature | features-interface |
| 枚举 | genEnum、genConstEnum | features-enum |
| 函数 | genFunction、genArrowFunction、genBlock、genParam | features-function |
| 类型 | genTypeAlias、genUnion、genIntersection、genMappedType 等 | features-type |
| 条件 | genConditionalType、genTernary | features-conditional |
| 装饰器 | genDecorator | features-decorator |
| 模块与命名空间 | genModule、genNamespace、genDeclareNamespace | features-module-namespace |
| 条件语句 | genIf、genElse、genElseIf | features-condition |
| Try | genTry、genCatch、genFinally | features-try |
| 循环 | genFor、genForOf、genWhile、genDoWhile | features-loop |
| Switch | genSwitch、genCase、genDefault | features-switch |
| 语句 | genReturn、genThrow、genPrefixedBlock | features-statement |
| 对象与序列化 | genObject、genArray、genMap、genSet、genTypeObject | features-object |
| 工具函数 | genComment、genKey、genLiteral、genRegExp、wrapInDelimiters | features-utils |
要点
- 返回类型: 每个
gen*函数都会返回一个string(代码片段)。 - 选项: 大多数函数都接受可选的
options对象(例如export、singleQuotes、indent);默认值为{}。 - 缩进: 支持时,将
indent作为最后一个参数传入;嵌套代码块使用indent + " "。 - 字符串: 使用
genString(input, options)生成带引号且经过转义的输出,以遵循singleQuotes设置。 - 组合: 组合多个
gen*的输出(例如genClass(..., [genConstructor(...)]))来构建更大的代码片段。
评论
支持 Markdown