用途:为 Ruby 源文件生成或更新 Sorbet 类型签名,写入独立的 .rbi 文件。适用于不能或不应改动原始 Ruby 源码的场景,例如 gem、生成代码或遗留代码库;也支持对单个变更文件做增量更新。
主要能力:按五步流程执行——分析 Ruby 源、生成 RBI 文件、消除签名中的 T.untyped、审查并精修签名、用 Sorbet 校验。处理多文件时先创建追踪文件 .sorbet-rbi-generation-todo.tmp 逐项标记,全部完成后删除:rm .sorbet-rbi-generation-todo.tmp;中断后可据此续做。
必要用法与规则:不得运行项目 Ruby 代码;不得使用 T.untyped(应推断真实类型)、T.unsafe、T.cast;信息不清时必须向用户追问;项目含 Gemfile 时命令需加 bundle exec 前缀;方法签名使用 sig { } 块语法;使用 sig 前须为类/模块添加 extend T::Sig;RBI 文件只放签名与空方法定义,不写方法体;RBI 文件须置于 ./rbi 目录;RBI 文件需带 # typed: strict 类型标记。
校验:运行 srb tc 或 bundle exec srb tc,检查签名语法、类型一致性、参数与返回类型匹配、类/模块结构是否与源码一致,修正错误直至通过。
限制与参考:官方资料未提供安装方式、收费、价格、平台或效果数据,暂未提供。参考资料含 syntax.md(Sorbet RBI 语法指南)、references/(stripe-ruby 的实际 RBI 示例)及 Sorbet 官方 RBI 文档。