SuperAPI AI 工具集

create-engine

编程与开发

查看项目

更新于 10-15 22:17

技能介绍

用途:在需要创建、脚手架或重构 Rails engine、Rails 插件或 engine gem 时使用。技能聚焦结构与设计,安装器细节、深度测试覆盖、发布流程和文档工作交由相邻技能处理。

主要能力:先判定引擎类型——纯 gem(无需 Rails 钩子)、Railtie(需初始化钩子但无模型/控制器/路由/视图)、Engine(需自动加载路径、初始化器、迁移、资源、任务或宿主集成)、Mountable engine(需自有路由、控制器、视图、资源与命名空间边界)。若用户未指定类型,则根据所需行为推断并说明所选类型。

使用方式:用对应生成器脚手架,如 rails plugin new my_engine --mountable、rails plugin new my_engine --full、rails plugin new my_engine。定义宿主应用契约(宿主需提供什么、引擎暴露什么、支持哪些扩展点)。创建最小结构后,在引擎内运行 bundle exec rake 作为检查点;在 dummy 应用路由中挂载引擎并用 bundle exec rails routes 验证;通过 dummy 应用编写最小集成覆盖。

硬性要求:根文件只 require version、configuration 和 engine;公共引擎使用 isolate_namespace,配置暴露 .configure 块;宿主模型引用为可配置字符串(如 "User"),不得硬编码 ::User;文档化宿主契约;引擎代码不得在启动时自动应用迁移;初始化器需幂等且开发重载安全;资源与生成器需命名空间化且幂等。验证命令包括 ls spec/dummy 或 ls test/dummy、bundle exec rspec 或 bundle exec rake test、dummy 应用内 bundle exec rails routes,以及用 grep 检查无硬编码宿主常量和无迁移自动应用模式。

适用场景:新建或重构 Rails 引擎、插件、engine gem,以及需要明确宿主集成边界与 dummy 应用验证的项目。

限制:资料未提供具体收费、价格、平台支持范围或性能效果信息;扩展资源 reference.md、EXAMPLES.md、TESTING.md 等仅被提及,未给出完整内容。