该技能面向 TanStack Start 项目的代码组织与架构审查,核心是把“同构(isomorphic)默认”下的服务端/客户端边界显式化。按资料,数据库访问、密钥和文件系统操作必须放在 createServerFn().handler() 或 createServerOnlyFn 中,不能出现在裸 loader 里。
主要能力与规则:一是源文件行数上限以 FUSE_SOLID_MAX_LINES 钩子为准,内聚度下降时按职责拆分;二是绝不可手动编辑 src/routeTree.gen.ts,该文件由 tanstackStart() 插件在每次开发或构建时生成,手改会被覆盖并破坏路由类型,应改为在 src/routes/ 中增删或重命名文件;三是接口集中在 src/modules/[feature]/src/interfaces/ 下,禁止在路由或组件文件中声明类型;四是每个导出必须有 JSDoc;五是禁止特性模块互相导入(cores/ 除外)、禁止 barrel 导出(index.ts 再导出)、禁止 any 类型。
使用方式上,技能要求在实现前做强制代码库分析:探索 src/routes/ 树与现有 modules/ 了解约定,阅读相关路由文件及其 createServerFn 包装,确认命名、路径别名(~/、@/)与数据流模式。写新代码前需用 grep 查找相似函数名、loader 或服务端函数,检查 src/modules/cores/ 与 src/lib/ 等共享位置;相似代码应扩展复用而非重复,被 2 个以上特性使用的逻辑直接放入 src/modules/cores/,新文件创建后运行 npx jscpd ./src --threshold 3 查重。
技能提供可直接复制的代码模板:route.md(createFileRoute 组件与 loader)、server-fn.md(带 Zod validator 的 createServerFn)、interface.md(src/interfaces/ 中的 TypeScript 接口)、hook.md(包装服务端函数的客户端 hook)。SOLID 细分指南包括 single-responsibility.md(路由或服务端函数超限时的行数预算与拆分策略)、interface-segregation.md(设计 loader 数据、服务端函数载荷与路由上下文)、dependency-inversion.md(服务端函数调用服务时依赖 interfaces/ 中的抽象并注入实现),另有 solid-principles.md 概览与 architecture-patterns.md 完整目录布局。
适用场景为 TanStack Start 项目的模块化重构、超大路由拆分、架构评审。限制方面:不用于初始框架搭建(应用 start-core),不用于 Server/Client 执行边界本身的深入讲解(应用 start-execution-model),也不适用于没有 Start 路由树的普通 React SPA(应用 solid-react);同时要求在编码前先查阅最新文档(Context7 与 Exa)。资料未提供该技能的收费、价格与平台支持信息。