SuperAPI AI 工具集

nuqs-scaffolder

前端与建站

查看项目

更新于 10-16 03:46

技能介绍

用途:为 Next.js 页面搭建 URL 支持的过滤器、分页、搜索或排序状态;也可把已有页面的 useState 过滤逻辑统一到 nuqs,并通过客户端与服务端共用同一份解析器映射避免漂移。

主要能力:从一份 spec 生成多份 nuqs 文件,包括 searchParams.ts、searchParams.server.ts(可导出用于 tRPC 的 Standard Schema 校验 schema)、filters.tsx,以及可选的 filters.test.tsx。支持 string、integer、float、boolean、iso-date、iso-date-time、timestamp、hex、index、array-of-string、array-of-string-native、string-literal、number-literal、json 等参数类型;default 为 null 时参数可空,否则使用 .withDefault(...)。

使用方式:先读取或依据 assets/templates/spec.template.json 创建 spec(填写 name、module、params);再逐份渲染模板、替换占位符;最后按 config.json 计算路径写出文件,提交前先展示 diff。该技能不修改已有文件,目标路径存在时会先询问。默认配置为 lib_dir=lib、components_dir=components、generate_tests=true、test_runner=vitest。首次使用且无 spec 时,应通过 AskUserQuestion 向用户询问。

适用场景:新建带 URL 过滤的 Next.js 页面、标准化现有页面的临时过滤器、需要客户端/服务端共用解析器定义、为 tRPC 查询参数加校验。

限制与注意:模板由 Claude 作为模板引擎渲染,/= ... =/ 标记是给代理的指令而非字面替换;array-of-string-native 需要 nuqs ≥ 2.7;若代码库使用 v2.5 之前的 nuqs 旧模式,应先运行 nuqs-codemod-runner。文件命名、导入顺序等约定见 references/conventions.md,边界情况见 gotchas.md。官方文档未提供收费、价格与效果信息。