从 Cloudflare Workers OAuth Provider 学习 AI 结对编程:深入分析 AI 编程的最佳实践

Cloudflare 的 OAuth 2.1 Provider Framework 项目通过与 Claude 结对编程完成,展示了 AI 在软件开发中的潜力与局限性。关键点包括:

  1. 高质量 Prompt 是关键:首个 Prompt 包含 130 行示例代码、明确的技术栈(TypeScript、Cloudflare Workers)和安全要求(如 Token 哈希存储),帮助 AI 精准理解任务。

  2. 小步迭代:项目从单一文件开始,通过多轮反馈逐步完善,体现了人机协作的渐进式开发。

  3. AI 的局限性:

    • 环境感知不足:如误用 Node.js 的 crypto 库,需人类指出使用 WebCrypto。
    • 安全细节需明确:AI 不会主动考虑所有安全隐患,需人类明确要求。
    • 偶尔的"幻觉":AI 可能声称已修复问题,但代码未变。
    • 过度工程化:如引入不必要的"备份密钥",增加复杂性。
  4. 人类的核心作用:资深工程师通过经验优化设计(如改进 Refresh Token 的实用性),确保代码适应现实场景。

  5. 高效人机分工:AI 负责代码生成,人类负责架构设计、审查和关键决策。

AI 的局限性:那些需要"人类出手"的时刻

这其中的人和 AI 结对过程也并非一帆风顺。你可以清晰的看到

AI 的局限性:

  1. 环境感知不足:除了错用 Node.js API,AI 对特定平台的特性(如 Workers KV 的 list() 功能)也需要人类提醒才能有效利用。
  2. 安全细节需要明确:你需要明确告诉它"所有敏感信息都要哈希存储",它不会主动思考所有潜在的安全隐患。
  3. 偶尔的"幻觉"和固执:有好几次,Kenton 指出问题后,AI 声称已经修改,但实际上代码并没有变化,最终需要工程师手动修复。 4。** 过度工程化的倾向**:在实现加密功能时,AI 引入了一个不必要的"备份密钥"概念,增加了复杂性,被 Kenton 要求移除。 有时,对于一些简单的样式修改或代码整理,Kenton 也不得不亲自上手,因为通过 Prompt 反复纠正的效率反而更低。这提醒我们,也不要太过于依赖 AI,有时候手动修改可能还更高效!

AI 结对编程最佳实践

  1. 提供详细上下文:包含代码示例、技术栈和明确目标,避免模糊指令。
  2. 明确平台特性:如 Cloudflare Workers 的 WebCrypto 或 KV 功能,防止 AI 使用错误 API。
  3. 小步迭代:将任务拆分为小块,逐步优化。
  4. 具体反馈:明确指出问题及修改方向,如"用 WebCrypto 替换 Node.js crypto"。
  5. 人机分工:AI 处理代码生成,人类把关架构和质量。
  6. 记录 Prompt:将 Prompt 存入提交历史,作为文档和学习素材。
  7. 适时手动干预:当 AI 在简单任务上效率低下时,直接手动修改。

关于"查看键盘快捷键,按下问号"

你的输入提到"按下问号查看键盘快捷键",可能是在某个工具或界面(如 GitHub 或 IDE)中查看快捷键的提示。如果你在使用相关工具(如 GitHub 查看 Cloudflare 的提交记录),可以尝试以下:

  • GitHub 快捷键:在 GitHub 页面按 ? 调出快捷键列表,常见功能包括:

    • t:快速搜索文件。
    • l:跳转到指定行。
    • /:聚焦搜索栏。
  • IDE 快捷键:如果你在 VS Code 或其他 IDE 查看代码,按 Ctrl + K, Ctrl + S(Windows)或 Cmd + K, Cmd + S(Mac)查看快捷键设置。

  • Claude 或其他 AI 工具:如果你使用 Claude 或类似工具,快捷键可能因平台而异,建议查看官方文档或界面提示。

如果你的"按下问号"指的是其他具体工具或场景,请提供更多上下文,我可以帮你查找相关快捷键或操作方式!


补充信息

  • 项目链接:Cloudflare 的 OAuth 2.1 Provider Framework 仓库 GitHub 包含完整提交历史,可查看 Prompt 和代码演变。

  • 推荐阅读:《I Read All Of Cloudflare's Claude-Generated Commits》 链接,提供更详细的分析。

  • AI 依赖性提醒:如宝玉(@dotey)在 X 帖子中提到,过度依赖 AI 可能导致"懒惰编程",建议平衡 AI 使用与手动编码能力。

原文宝玉:x.com/dotey/statu...

相关推荐
Goboy3 小时前
连连看游戏:Trae 轻松实现图标消除挑战
ai编程·trae
Goboy3 小时前
扫雷游戏:Trae 轻松实现经典的逻辑挑战
ai编程·trae
程序员老刘·4 小时前
Flutter 3.35 更新要点解析
flutter·ai编程·跨平台开发·客户端开发
不如摸鱼去7 小时前
Trae 辅助下的 uni-app 跨端小程序工程化开发实践分享
微信小程序·小程序·uni-app·aigc·ai编程
bug菌9 小时前
程序员转型产品经理,是逃避技术还是拥抱未来?Trae可替你回答!
aigc·ai编程·trae
阿坡RPA9 小时前
3 分钟讲透 win 版 Claude Code部署:整合 Qwen-Coder + GLM-4.5,零翻墙平替 Cursor!
ai编程
bug菌10 小时前
当产品迭代遇上AI编程,Trae能否重新定义“快速交付“?
aigc·ai编程·trae
猫头虎11 小时前
猫头虎AI分享|一款Coze、Dify类开源AI应用超级智能体Agent快速构建工具:FastbuildAI
人工智能·开源·github·aigc·ai编程·ai写作·ai-native
bug菌11 小时前
还在为多平台开发头疼?看Trae如何让你一人顶一个团队!
aigc·ai编程·trae
bug菌11 小时前
还在为团队协作扯皮?看字节Trae如何让代码评审变成"享受"!
aigc·ai编程·trae