Install
openclaw skills install @thcjp/api-scaffold-genopenclaw skills install @thcjp/api-scaffold-gen解决痛点:团队技术栈多样,单一框架模板不够用。
专业版能力:支持四种语言的主流框架。
| 语言 | 框架 | 特点 |
|---|---|---|
| Node.js | NestJS | 依赖注入、模块化、装饰器、类似Spring |
| Python | Django REST | 全功能、admin后台、ORM一体 |
| Java | Spring Boot | 企业级、生态丰富、注解驱动 |
| Go | Gin | 高性能、轻量、中间件友好 |
api-scaffold-gen rest user --stack nodejs-nestjs --orm typeorm
api-scaffold-gen rest user --stack python-django --orm django-orm
api-scaffold-gen rest user --stack java-springboot --orm jpa
api-scaffold-gen rest user --stack go-gin --orm gorm
处理: 按照skill规范执行功能2:多框架支持操作,遵循单一意图原则。 输出: 返回功能2:多框架支持的执行结果,包含操作状态和输出数据。### 功能3:DDD分层架构 解决痛点:CRUD代码全堆在controller里,业务复杂后维护不动。
专业版能力:按DDD四层架构生成代码,职责清晰。
输入: 用户提供功能3:DDD分层架构所需的指令和必要参数。 处理: 按照skill规范执行功能3:DDD分层架构操作,遵循单一意图原则。### 功能4:微服务模板 解决痛点:微服务项目起步要配服务注册、发现、通信、追踪,半天搭不完。
专业版能力:一键生成微服务全套基础设施代码。
api-scaffold-gen microservice order-service \
--stack java-springboot \
--service-registry eureka \
--communication feign \
--tracing sleuth-zipkin \
--config-server spring-cloud-config \
--gateway spring-cloud-gateway
生成的微服务包含:
输入: 用户提供功能4:微服务模板所需的指令和必要参数。 处理: 按照skill规范执行功能4:微服务模板操作,遵循单一意图原则。### 功能5:OpenAPI Spec反向生成 解决痛点:代码写完了才发现没文档,手写Spec太慢。
专业版能力:从代码注解反向生成OpenAPI Spec。
api-scaffold-gen openapi reverse --path ./src --lang java-springboot --output ./openapi.yaml
api-scaffold-gen openapi reverse --path ./src --lang nodejs-nestjs --output ./openapi.yaml
输入: 用户提供功能5:OpenAPI Spec反向生成所需的指令和必要参数。 处理: 按照skill规范执行功能5:OpenAPI Spec反向生成操作,遵循单一意图原则。### 功能6:多资源关联生成 解决痛点:资源间有one-to-many/many-to-many关系,手写关联代码容易出错。
专业版能力:声明资源关系,自动生成关联代码。
api-scaffold-gen relate "user has many posts, post has many tags, post belongs to category"
解决痛点:公司有统一代码规范,通用模板不合规范。
专业版能力:基于Jinja2/Mustache的自定义模板引擎。
api-scaffold-gen rest user --template ./templates/company-rest.tpl
/**
* api-scaffold-gen 接口
* @company (根据实际场景填充)
* @author (根据实际场景填充)
*/
router.模板化内容生成('/(根据实际场景填充)', async (req, res) => {
// 详情见说明: 实现(根据实际场景填充)逻辑
{% for field in fields %}
// req.body.api-scaffold-gen - 专业工具
{% endfor %}
});
处理: 按照skill规范执行功能7:自定义模板引擎操作,遵循单一意图原则。
功能7:自定义模板引擎操作,处理输入数据并返回结果功能7:自定义模板引擎 选项解决痛点:实时通信API(聊天/通知/协作)的WebSocket代码与REST不同,手写易错。
专业版能力:生成WebSocket端点,支持房间/广播/心跳。
输入: 用户提供功能9:WebSocket端点生成所需的指令和必要参数。 处理: 按照skill规范执行功能9:WebSocket端点生成操作,遵循单一意图原则。
功能9:WebSocket端点生成操作,处理输入数据并返回结果功能9:WebSocket端点生成相关配置参数进行设置本skill还覆盖以下能力场景: 脚手架平台、含多框架、Docker、全套模板、脚手架生成器专业、版是面向研发团队、的全功能、在免费版的、GraphQL、认证模板、测试套件、Mock、服务器基础上、解锁数据库、与迁移、端点九大高级能力、覆盖从脚手架到部、署的完整项目起步。这些能力在上述核心功能中均有对应处理逻辑。
痛点:新项目要符合公司规范,但每次都要从零搭,规范难落地。
专业版方案:
ddd 命令生成DDD分层架构项目骨架PostgreSQL效果:项目起步效率提升80%,规范100%落地。
痛点:DDD理论懂,但落地时domain/application/infrastructure怎么分记不清。
专业版方案:
ddd 命令生成四层架构骨架效果:DDD从"理论"变为"可执行骨架",团队对齐成本降低。
痛点:每个微服务都要配注册/发现/通信/追踪,重复且易错。
专业版方案:
microservice 命令生成全套微服务模板效果:微服务起步时间减少90%,基础设施代码统一。
痛点:多个业务团队各用各的模板,代码风格混乱,合并难。
专业版方案:
--template ./company-templates/ 生成代码效果:多团队代码风格一致性从30%提升至95%。
痛点:老项目代码风格混乱,想规范化但不知从何下手。
专业版方案:
openapi reverse 从代码反推Spec效果:老项目规范化从"不敢动"变为"渐进式替换"。
专业版完全兼容免费版的所有生成能力。首次使用时,直接对Agent说:
Agent会按免费版的规则生成路由+测试+Mock,并额外提示:是否要生成ORM模型、Docker配置、CI/CD流水线?
api-scaffold-gen microservice order-service \
--stack java-springboot \
--orm jpa \
--db postgresql \
--service-registry eureka \
--tracing sleuth \
--output ./order-service
api-scaffold-gen deploy order-service \
--docker \
--k8s \
--ci github-actions \
--cd argocd
--service-registry: 命令参数,用于指定操作选项-cloud-config: 命令参数,用于指定操作选项--db: 命令参数,用于指定操作选项--communication: 命令参数,用于指定操作选项-cloud-gateway: 命令参数,用于指定操作选项-springboot: 命令参数,用于指定操作选项--stack: 命令参数,用于指定操作选项--path: 命令参数,用于指定操作选项--config-server: 命令参数,用于指定操作选项--lang: 命令参数,用于指定操作选项--tracing: 命令参数,用于指定操作选项| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content | string | 是 | 相关说明 |
| content | string | 否 | 相关说明, 默认: 默认值 |
| content | string | 否 | 相关说明, 可选值: json/text/markdown |
| style | string | 否 | 输出风格, 参考 references/style.md |
{
"success": true,
"data": {
result: "相关说明",
result: "相关说明",
result: "相关说明",
"metadata": {
"template_used": "reviewer",
"word_count": 0,
"style": "专业"
}
},
"error": null
}
输出模板参考: assets/output.json
| 问题 | 可能原因 | 解决方案 | 优先级 |
|---|---|---|---|
| ORM迁移失败 | 数据库连接错或字段类型不匹配 | 检查DATABASE_URL,核对字段类型 | 高 |
| DDD分层循环依赖 | 层间依赖方向错 | domain不依赖任何层,application依赖domain | 高 |
| 微服务注册不上 | 注册中心地址错或网络不通 | 检查Eureka/Nacos地址与网络 | 高 |
| OpenAPI反推漏接口 | 注解不规范或框架不支持 | 检查注解格式,确认框架支持 | 中 |
| 多资源关联查询慢 | 缺索引或N+1查询 | 生成索引,用eager loading | 高 |
| 自定义模板渲染失败 | 模板语法错 | 用 template lint 校验模板 | 中 |
| Docker构建慢 | 未多阶段构建或未.dockerignore | 启用多阶段构建,配置ignore | 中 |
| CI/CD流水线慢 | 未缓存依赖或串行执行 | 启用npm缓存,并行化job | 中 |
| WebSocket连接断开 | 心跳超时或代理不支持 | 配置心跳间隔,检查反向代理 | 中 |
| K8s部署OOM | 资源limit过低 | 调高memory limit,检查内存泄漏 | 高 |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent平台内置LLM提供(专业版路由GPT-4o) |
| Node.js 18+ | 运行时 | Node.js项目必需 | 从nodejs.org安装 |
| Docker | 工具 | 部署配置必需 | 从docker.com安装 |
| Kubectl | 工具 | K8s部署必需 | 从kubernetes.io安装 |
| Git | 工具 | 模板管理必需 | 系统自带或从git-scm.com安装 |
api-scaffold-gen template login.env 文件(已gitignore)或K8s Secret输入:
{
"content": "示例数据",
"content": "示例数据",
"style": "示例数据"
}
输出:
示例数据
输入:
{
"content": "示例数据",
"content": "示例数据",
"style": "示例数据"
}
输出:
示例数据
输入:
{
"content": "示例数据"
}
输出:
示例数据
免费版聚焦"个人项目起步",提供REST/GraphQL生成、认证模板、测试套件、Mock服务器。专业版聚焦"企业级脚手架平台",新增九大高级功能:数据库ORM与迁移、多框架支持、DDD分层架构、微服务模板、OpenAPI反向生成、多资源关联、自定义模板引擎、Docker与CI/CD配置、WebSocket端点。此外提供多角色场景指南、性能优化策略、多平台集成示例与版本迁移指南。
专业版支持三种主流ORM:
每种ORM生成对应风格的模型与迁移文件,支持 PostgreSQL、MySQL、SQLite三种数据库。
不强制。DDD是可选的架构模式,适合复杂业务。简单CRUD用免费版的平铺结构即可。专业版的 ddd 命令生成四层架构,但也可用 rest 命令生成平铺结构。建议:业务复杂度高(5+资源、复杂关联)时用DDD,简单项目用平铺。
包含六大微服务基础设施组件:
可按需选择,不强制全用。
对于规范使用注解的代码,准确率约95%。主要误差来源:动态类型语言缺类型注解、自定义返回包装、泛型类型。反推后建议人工核对字段类型。
基于Jinja2语法(Node.js用Handlebars),支持变量替换、条件判断、循环、过滤器、模板继承。模板可版本化管理,团队共享。提供模板lint工具校验语法。
可以。生成的Dockerfile用多阶段构建,最终镜像基于alpine,体积小。包含HEALTHCHECK、非root用户、.dockerignore等优秀实践。配合生成的docker-compose.yml可一键启动。生产部署建议用生成的K8s清单。
专业版支持三种CI/CD平台:
CD部分支持:
支持三类实时通信场景:
生成的代码基于Socket.io(Node.js)或Channels(Python)或WebSocket(Java)。
可以。专业版CLI支持CI模式,可在流水线中自动生成代码并提交。典型场景:Spec变更触发代码重新生成,生成结果以PR形式供评审。
通过模板仓库(Git)共享:
--template 引用支持。CLI工具、模板仓库、治理层均可私有化部署到企业内网。代码生成在本地执行,不上传代码。联系销售获取私有化部署包。
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| LLM响应超时或无响应 | 网络延迟或模型负载过高 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接,执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令请求;确认Agent平台LLM服务正常 |
| 输入内容格式不正确 | 用户输入不符合skill预期格式 | 检查输入是否符合skill使用说明中的格式要求,参考示例章节 |
| 执行结果与预期不符 | 指令描述不够明确或上下文不足 | 提供更详细的指令描述,补充必要的上下文信息 |
| 命令执行失败 | 运行环境不满足要求或权限不足 | 确认运行环境符合依赖说明中的要求;检查命令权限设置 |