news 2026/8/28 23:46:35

一份 CLAUDE.md 驯服 AI 编程三大坏毛病:andrej-karpathy-skills 快速上手指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一份 CLAUDE.md 驯服 AI 编程三大坏毛病:andrej-karpathy-skills 快速上手指南

一份 CLAUDE.md 驯服 AI 编程三大坏毛病:andrej-karpathy-skills 快速上手指南

【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills

让 AI 修一个空邮箱崩溃的 bug,它顺手把整个函数的引号换成了双引号、补上一堆没人要的类型注解,还删了一段"看起来没用"的死代码。代码是修好了,你的 code review 却要翻两倍的量,确认它没顺手改坏别的。这类糟心事的根源不是模型不行,而是没人告诉它"边界在哪"。andrej-karpathy-skills 就是为这件事做的一个开源项目:它把 Andrej Karpathy 对 LLM 编程坑位的观察,压缩成一份 核心指南文件,给 AI 编程行为加上一套约束,让 diff 变干净、返工变少。

三步跑起来:从 clone 到验证生效

  1. 拿到核心文件。仓库地址:https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills
git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills
  1. 按你的工具做最小配置。用 Claude Code 的话,直接在会话里装官方插件,全局生效:
/plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skills@karpathy-skills

用 Cursor 的话,把仓库里的.cursor/rules/karpathy-guidelines.mdc复制到你项目的.cursor/rules/目录下,它带了alwaysApply: true,打开项目即生效,详见 Cursor 使用说明。其他只认根目录说明文件工具的话,把 CLAUDE.md 拷到项目根目录即可;已有该文件就追加合并,别覆盖。

  1. 验证准则真的生效了。装完别急着干正事,丢一个故意模糊的小任务,比如"帮我把搜索变快一点"。AI 先反问是响应时间、并发量还是体验问题,说明准则在工作;它直接闷头开始加缓存、加索引,说明没接上,回头检查安装步骤。

它到底改变了什么:四条准则逐条拆解

这份准则就四句话能概括完的东西,核心是把模糊指令转成可验证目标。逐条看它怎么管住 AI 的手:

准则管住什么
编码前思考场景:一句"导出用户数据",范围、格式、字段全是没说清的信息。做法:AI 先列出自己的假设、把多种解释摆出来、没把握就停住提问,而不是挑一个解释闷头跑完。效果:方向性错误在动手前被拦下,而不是交付后你才发现它导出了不该导出的东西。
简单优先场景:一个百分比折扣计算,AI 爱给你整出策略模式加配置类的抽象。做法:只写解决当前问题的最小代码,没被要求的"灵活性"一概不加,200 行能压到 50 行就重写。效果:代码第一次提交就够简洁,不用等你喊"这也太复杂了"再返工。
外科手术式修改场景:修一个校验 bug,AI 习惯"顺手"重排格式、改注释、补注解。做法:只动与任务直接相关的行,匹配现有代码风格,发现无关死代码只报告不删,自己改动产生的孤儿代码才负责清理。效果:diff 里每一行变更都能追溯回你的原始请求,review 一眼看完。
目标驱动执行场景:"修好认证系统"这种话没有验收标准,AI 只能靠猜。做法:把任务转成"为非法输入写测试再让它通过""先写复现 bug 的测试再修""重构前后测试全绿"。效果:AI 能自己循环到验证通过,你不用全程盯着逐条确认。

这里有个值得记住的洞察:LLM 特别擅长朝着明确目标循环迭代。所以别告诉它"做什么",给它成功标准,然后看着它自己跑。示例文档 里按这四条准则整理了十几组真实代码正反例,比如"加速率限制"任务被拆成"每步一个验证点"的渐进计划,比通读规则更能帮你建立直觉。

同一个需求,装没装准则的差别

说个典型的下午:你让 AI 加个计算折扣的小函数。没上准则时,它给你端回来一个 30 多行的策略模式——抽象基类、枚举、工厂方法齐活,仿佛你明天就要支持八种折扣。第二天你让它修个邮箱校验的 bug,它顺手把整个函数的引号统一了、加了类型注解,还删掉一段它"判断为无用"的旧逻辑。代码确实修好了,但 PR 里混进了你根本没授权的变更。

装上准则后,同样的两件事:折扣函数是三行就完事的写法,真要多种折扣时再抽象不迟;修 bug 的 diff 只剩邮箱校验那两行的痕迹,旁边那段可疑的死代码,它只在回复里提了一句"这个函数从没被调用过",没有擅自删。最明显的变化是 AI 开始先问:你丢一句"导出用户数据",它先问哪些字段、什么格式、大概多少条,再动手——假设被摆上了台面,而不是埋进代码里等你踩雷。

# 没装准则:策略模式 + 配置类,30 行起 class DiscountStrategy(ABC): @abstractmethod def calculate(self, amount): ... # 装上之后: def calculate_discount(amount, percent): return amount * (percent / 100)

新手容易踩的坑

这份指南是万能的吗?不是。它把高频失误压下去,不保证零失误。测试、代码审查该有还是要有的,它解决的是"AI 自己给自己挖的坑",替代不了验收环节。

是不是每个任务都得走全套流程?不用。修个拼写错误不需要列假设、写验证计划。指南开头就写了它的取舍是"谨慎优先于速度",琐碎任务用你自己的判断就行,别为了仪式感拖慢简单活。

我用的是 Cursor,还需要 CLAUDE.md 吗?各走各的配置:Claude Code 认根目录的 CLAUDE.md,Cursor 读.cursor/rules/下的规则文件,两者内容一致、互不冲突。团队项目建议根目录放一份 CLAUDE.md,让每个人的 AI 都受同一套约束。

下一步就一件事

这份指南的价值一句话能说完:它不教 AI 写代码,而是约束 AI 的行为,让 diff 更干净、返工更少、提问出现在动手之前而不是事故之后。把 CLAUDE.md 放进你手头项目的根目录,明天第一个任务丢一个故意模糊的需求进去,看它是先动手还是先问——答案会告诉你这套准则值不值。

【免费下载链接】andrej-karpathy-skillsA single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.项目地址: https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/28 23:44:22

单文件物理引擎Picophysics:复古游戏平台的轻量碰撞与刚体方案

Picophysics 这个名字,指向的是一个给 N64、PSX、Dreamcast 这类旧游戏平台准备的“单文件物理引擎”。它要解决的是复古自制游戏开发里最容易卡住的一环:在内存紧张、CPU 主频不高、工具链古老的环境下,把刚体运动、碰撞检测、重力这些基础物…

作者头像 李华
网站建设 2026/8/28 23:42:32

Foundation for Rails 响应式布局速成

Foundation for Rails 响应式布局速成 【免费下载链接】three.js JavaScript 3D Library. 项目地址: https://gitcode.com/GitHub_Trending/th/three.js Foundation for Rails 是一个把 Foundation 组件体系装进 Rails 的集成 gem。依赖加一行、生成器跑一下&#xff0c…

作者头像 李华
网站建设 2026/8/28 23:40:58

基于SSM与微信小程序的英语学习激励系统设计与实现

简介:在Web应用开发领域,B/S架构与前后端分离是构建现代应用的基础模式。其核心原理在于将业务逻辑、数据持久化与用户界面解耦,通过HTTP协议进行数据交互,从而实现高内聚、低耦合的系统设计。这种架构的技术价值在于提升了系统的…

作者头像 李华
网站建设 2026/8/28 23:40:04

LLM控制确定性代码生成:让vibe coding走向工程化

Vibe coding 这个词从 2025 年初开始被反复讨论,但大部分讨论都停留在“AI 帮我写代码”这个表面。真正把它落地到工程里的人会发现一个尴尬的事实:大模型写代码写得好不好,取决于你对“好”的定义。如果你要的是“能跑”,那确实很…

作者头像 李华
网站建设 2026/8/28 23:37:58

PDF自动化测试实战:用Python与pytest构建可靠断言

在业务系统里,我们经常接触 PDF 相关的功能:导出对账单、生成合同、转换发票、合并文件、加密归档……但很多团队对 PDF 的验证,长期停留在“人工打开看两眼”的阶段。直到某次上线后发现生成的合同少了一页、金额千分位丢失、加密 PDF 在客户…

作者头像 李华