如果不给 AI 提示词写架构指南,它能写出符合规范的代码吗?
我最近在琢磨一个挺硬核的问题:如果一个 SaaS 项目的底座(Boilerplate)写得足够好,那么 Coding Agent(比如 Claude Code 或 Cursor)是不是应该能自动“悟”出这套项目的架构逻辑,而不是靠我写一长串的 Prompt 去教它怎么用 Pundit 做权限、怎么用 Solid Queue 做异步任务?
我只想看它能不能通过阅读现有的代码库,自己总结出这套“潜规则”。
虽然中间出了一次 Policy-scope 的小错误,但它在自检阶段自己就给修好了。这种“发现问题并自动对齐架构”的行为,比那种写了一堆看起来很漂亮但实际上破坏了账号隔离性的代码要强得多。
下一篇
别再只用 add 和 commit 了 →
为了验证这个想法,我拿 Rails Baseline 这个项目做了一次实测。这个项目本身就是一个为了让 Agent 更好干活而设计的 Rails 生产级底座。我没有像往常那样把所有的架构规范、权限逻辑、多租户隔离规则全都塞进 Prompt 里,而是直接把项目的压缩包丢给了一个全新的 Claude 会话,然后只给了它一个纯粹的“产品需求”:帮我做一个带反馈功能的看板系统。
需求很简单:用户能建看板,游客能留反馈,不同等级的订阅计划决定了看板数量上限,付费用户还能导出 CSV。
重点来了,我完全没有告诉它:
- 使用
Current.account来处理租户隔离。 - 权限校验必须走 Pundit。
- 限制功能要调用
Entitlements模块。 - URL 必须用
HasPublicId这种公有 ID 模式。
我只想看它能不能通过阅读现有的代码库,自己总结出这套“潜规则”。
实测下来的结果挺让我意外的,甚至有点“无聊”——这意味着它成功了。Claude 并没有像那种只会写 Demo 的小白一样,随手写一堆散落在 Controller 里的逻辑,它表现出了极强的模式识别能力:
- 租户隔离: 它自动识别了记录应该归属于
account。 - 权限控制: 自动沿用了现有的 Policy 模式。
- 计费逻辑: 限制看板数量时,它没去硬改数据库,而是通过应用预设的
plan-limit边界来处理。 - 公有 URL: 自动用了现有的 ID 转换约定。
虽然中间出了一次 Policy-scope 的小错误,但它在自检阶段自己就给修好了。这种“发现问题并自动对齐架构”的行为,比那种写了一堆看起来很漂亮但实际上破坏了账号隔离性的代码要强得多。
这次实测让我意识到,我们在构建 AI 工作流或者公司内部的工程底座时,重心可能要从“如何写出完美的 Prompt”转移到“如何构建一套具备自解释能力的工程规范”上。如果你的代码库本身逻辑自洽且模式统一,Agent 就不需要你当“保姆”一样手把手教,它自己就能顺着你的路走下去。
当然,这次测试也暴露了一个坑:当涉及到像 CSV 导出这种文件存储问题时,Agent 还是会卡壳,因为它不知道你的项目到底打算把生成的文件放在 Active Storage 还是 S3。这说明底座的标准化还需要覆盖更深层的 IO 决策。
免费 AI 工具箱 · 全部完全免费