你让 AI 帮你搭建项目时,它会倾向于推荐成熟的现成工具,还是直接上手为你写一套代码?这是一个有趣的开发者日常问题。
最近,有人进行了一项大规模的实验:让 Claude Code 在面对真实代码库的 2,430 次交互中,回答诸如“加个功能开关”、“加个认证系统”这类开放性问题。关键之处在于,问题描述中没有任何工具名称的暗示,完全观察 AI 的自主选择。
实验结果揭示了一个有趣且令人意外的倾向。
1. 它更喜欢自己造轮子
在实验覆盖的 20 个技术类别中,有 12 个类别里,Claude Code 都选择了自己编写代码,而不是推荐现成的第三方工具。
252 次自定义解决方案,这个数量比任何单个被推荐的工具都要多。
举几个具体的例子:
- 当你要求“加个功能开关”时,它不会推荐 LaunchDarkly 这类专业服务,而是为你编写一套基于环境变量和百分比滚动的配置系统。
- 在 Python 项目中要求“增加认证功能”,它可能直接用 JWT + bcrypt 从头实现一套。
- 需要缓存功能?它会为你手写一个带 TTL(生存时间)的内存缓存包装器。
这不禁让人思考那个经典问题:什么时候该用轮子,什么时候又该自己造轮子?
传统开发者的决策标准可能包括需求复杂度、长期维护成本以及团队技术能力。但 AI 的判断逻辑似乎有所不同。它在评估“这个需求是否有必要引入外部依赖”时,设定的门槛比许多人预想的要高。这种现象在开源实战社区中也常被讨论,是复用还是自研,始终是个值得权衡的议题。
2. 当它确实推荐工具时,选择异常坚定
尽管“自己动手”的倾向明显,但当 Claude Code 决定推荐工具时,其选择又显得非常果断和一致:
- GitHub Actions 94% (CI/CD 场景)
- Stripe 91% (支付场景)
- shadcn/ui 90% (UI 组件场景)
- Vercel 100% (JavaScript 项目部署)
这些高比例数字背后反映了什么?
或许是生态位清晰度在起作用。像支付、部署这类需求,边界非常明确,外部工具提供的价值显而易见,且集成复杂度相对可控。但对于认证、缓存这类功能,AI 的底层逻辑可能是:“这件事我自己能搞定,为什么还要额外引入一层依赖和潜在复杂性?”
3. 三个模型,三种迥异的“性格”
更有意思的是不同 Claude 模型版本表现出来的偏好差异:
Claude 3.5 Sonnet:保守派
- Redis 93% (Python 缓存)
- Prisma 79% (JavaScript ORM)
- Celery 100% (Python 任务队列)
它倾向于选择经过市场长期验证的成熟工具,风格稳健。
Claude 3.5 Opus:平衡派
- 86.7% 的情况下会推荐具体工具(所有模型中最高)
- 在各种备选方案间的分布最为均匀
Claude 3.7 Opus:激进派
- Drizzle 100% (JavaScript ORM,Prisma 的推荐直接归零)
- Inngest 50% (JavaScript 任务队列)
- 自定义方案占比 11.4% (所有模型中最高)
一个明显的趋势是:模型越新、能力越强,似乎越倾向于推荐新锐工具,甚至更乐于自己“造轮子”。
这可能是因为像 Opus 4.6 这类新模型,其训练数据中包含了更多社区的最新讨论,比如对 Prisma 性能瓶颈的吐槽,或是对 Drizzle 类型安全性的赞美。它在学习“什么是更好的选择”时,迅速吸收并反映了开发者社区的最新共识。
4. 几个反常识的发现
Redux 的“消失”
在状态管理场景中,Redux 作为曾经的王者,获得了 0 次主要推荐,仅被提及 23 次。Claude Code 显然知道它的存在,但就是不将其作为首选。取而代之的是 Zustand,获得了 57 次推荐。
Express 的缺席
在 Node.js 后端框架选择中,Express 完全缺席。框架(如 Next.js, Nuxt.js)的原生 API 路由成为了首选方案。
Jest 被冷落
在测试框架领域,Jest 只获得了 4% 的主要推荐率,虽有 31 次作为备选被提及。它依然存在,但已不再是默认选项。Vitest 拿走了 59.1% 的份额。
这些工具都曾是各自生态的支柱。但在 AI 的推荐逻辑里,历史市场份额并不直接等同于推荐权重,当下的开发者体验、简洁度和社区热度似乎占据了更重要的位置。这些变迁正是开发者广场里大家热衷探讨的技术趋势话题。
5. 部署的“世界观”:简洁至上
在项目部署这件事上,Claude Code 的选择呈现出强烈的技术栈导向和“简洁化”倾向:
JavaScript 项目?100% Vercel
86 次针对前端项目的部署推荐,全部指向 Vercel,没有出现第二个选择。
Python 项目?82% Railway
你可能会猜想是 AWS、GCP 或 Azure。但实际结果是:
- Railway 82%
- Docker 8%
- Fly.io 5%
- Render 5%
AWS、GCP、Azure 的主要推荐次数?零。
它们虽然经常被作为选项提及(例如 AWS Amplify 24 次,Firebase Hosting 7 次),但从未成为第一选择。
原因何在?核心可能在于认知负荷。Vercel 和 Railway 是“零配置”或低配置部署的典型代表,其流程简单到几乎可以用一句话描述清楚。而传统云服务商通常需要开发者理解 VPC、安全组、负载均衡器等复杂概念。
AI 在优化技术方案的同时,似乎也在刻意优化开发者的决策与实施成本。
6. 对开发工具公司的启示
如果你正在开发或运营一款开发者工具,这项研究值得深入分析。AI 正在成为一个全新的、强大的工具分发渠道。
过去的渠道是搜索引擎、技术博客、开发者社区。现在,AI 助手的“默认推荐”加入了战局。而这个新渠道的规则有所不同:
- 市场份额不是护城河(参考 Redux、Jest 的境遇)。
- 产品复杂度过高是减分项(对比 AWS 与 Railway)。
- 生态位清晰度至关重要(如 Stripe、Vercel 的成功)。
- 社区的最新共识会快速影响新模型(Prisma 到 Drizzle 的变迁就是例证)。
如果 AI 不推荐你的工具,很可能不是因为它不知道,而是它判断存在更优的选择。
7. 当 AI 的选择成为行业的选择
这项研究促使我们重新思考一个问题:AI 正在塑造一个什么样的技术生态?
它不仅仅是在回答开发者提出的问题,更在潜移默化中定义着“默认选项”。当越来越多的新项目由 AI 辅助启动和搭建时,它的偏好将逐渐成为事实上的标准。
Vercel、Stripe、shadcn/ui 所获得的高推荐率,不仅反映了当前的市场现状,更在某种程度上创造着未来的市场格局。而那些被 AI 冷落的工具,即便现有市场份额庞大,也可能逐渐失去进入新项目的“门票”。
这并非简单的优劣评判,而是一个清晰的趋势信号。你手中的 AI 助手,正在替你做出大量微小的技术选型决策。而这些看似微小的选择,汇集起来,正在重新定义哪些工具值得被采用,而哪些可能慢慢走向边缘。对于广大开发者而言,理解并审视 AI 的推荐逻辑,变得比以往任何时候都更加重要。