当前位置: 首页 > news >正文

andrej-karpathy-skills:CLAUDE.md 完整拆解

andrej-karpathy-skills: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 修一个空值崩溃,它顺手把注释、引号、类型注解全翻新,diff 比功能本身还大——这场景熟不熟悉?andrej-karpathy-skills 就是冲着它来的:把 Andrej Karpathy 对 LLM 编码陷阱的观察,压成一份 65 行的 CLAUDE.md,四组行为准则专治瞎假设、堆抽象、乱改不相干代码这三类毛病,diff 从此干净到只剩你要的改动。

拆出一份 65 行的 CLAUDE.md 📐

Karpathy 吐槽过 LLM 写代码的四种毛病:替用户瞎假设还不问、一百行能写完的活堆上千行、顺手改掉自己也没完全看懂的注释和代码、任务没有验收标准只能蒙。这个项目把吐槽翻成了行为文件:CLAUDE.md 全文 65 行,MIT 协议,丢进项目根目录即生效,给所有用 Claude Code 写代码的人兜底。

核心资产就这一个文件,其余都是镜像:skills/karpathy-guidelines/SKILL.md 是插件形态,EXAMPLES.md 是配套的案例与反模式集。

把四条原则拆成一条链 🔧

四条原则不是平铺的清单,而是按编码流程排好的:先管住输入,再管住产出,最后管住验收。

1. 编码前思考(把隐藏假设逼到台面上)

管的是"输入"。模型遇到歧义会默默选一个解释直接开干,困惑藏起来不说。准则要求:假设必须写出来,不确定就问;存在多种解释就都摆出来,不许默默挑一个;发现更简单的路,直说并顶回去。效果是澄清问题出现在动手之前,而不是踩坑之后。

2. 简洁优先(用解决问题的最小代码)

管的是"产出"。为算一个折扣写出抽象基类加策略模式,是 LLM 最爱的炫技。准则列了四道禁令:

  • 不加没要的功能
  • 不给单一用途的代码做抽象
  • 不加没人要的配置与"灵活性"
  • 不防不可能发生的场景

200 行能压到 50 行就重写。验收标准一句话——资深工程师会觉得过于复杂吗?是,就砍。

3. 外科手术式修改(只动必须动的行)

管的是"改动"。修 bug 的路上顺手翻新注释、引号、docstring,是 diff 变脏的头号原因。准则划线:不改进相邻代码,不重构没坏的东西,匹配现有风格哪怕自己不爱,发现无关死代码只提一嘴不删;自己这次改动弄出的孤儿导入才清理。判据一句话:每一行改动都应能直接追溯到那次请求

4. 目标驱动执行(把指令翻译成可验证目标)

管的是"验收"。"修一下登录"这种任务没有终点线,模型只能边做边问。准则把命令式任务改写成测试先行的目标,多步骤任务列成"步骤 → 验证"清单:

1. 写复现测试 → 验证:测试失败(说明复现成功) 2. 实现修复 → 验证:该测试通过 3. 回归检查 → 验证:全量测试绿

成功标准越强,模型越能独立循环推进,不用人一直盯着确认。

命令式说法可验证目标
"加个校验""为非法输入写测试,再让它通过"
"修这个 bug""写一个能复现它的测试,再让它通过"
"重构 X""确保重构前后测试都通过"

对比同一个 bug 的两种 diff ✅

任务:修复空 email 导致校验器崩溃。

❌ 常见写法——修 bug 的路上顺手把整个函数翻新:

def validate_user(user_data): - # Check email format - if not user_data.get('email'): + """Validate user data.""" + email = user_data.get('email', '').strip() + if not email: raise ValueError("Email required") + username = user_data.get('username', '').strip()

注释改了,docstring 加了,连 username 分支也被重写——而崩溃只发生在 email 那条路径上。

✅ 外科手术式:只碰崩溃路径。

def validate_user(user_data): # Check email format - if not user_data.get('email'): + email = user_data.get('email', '') + if not email or not email.strip(): raise ValueError("Email required")

两处修复的第一刀几乎一样,差距全在"顺手"二字。判据很简单:diff 里每一行都要能回答"这一行是为什么改的",答不上来的就是夹带的。

60 秒把准则装进项目 🚀

$ git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills $ cp andrej-karpathy-skills/CLAUDE.md 你的项目/CLAUDE.md $ cat andrej-karpathy-skills/CLAUDE.md >> CLAUDE.md # 已有 CLAUDE.md 的项目

三行搞定:clone、新项目直拷、老项目追加。

按需进阶:在 Claude Code 里先加插件市场再安装插件,两步让准则跨项目生效,省去每个仓库手动拷贝;用 Cursor 的话,仓库里附了 CURSOR.md,同一套规则换个壳就能接上。

看出准则在起作用的四个信号 ✅

  • diff 里只剩请求的改动,没有顺手的格式翻新与 docstring
  • 实现之前先收到澄清问题(范围、格式、字段),而不是踩坑之后
  • 代码第一次就保持简单,不用为过度抽象返工重写
  • PR 干净,没有夹带的重构和"改进"

Karpathy 留下这个项目最有分量的一句话:"别告诉模型该做什么,给它成功标准,看它自己跑。" LLM 本来就擅长朝明确目标循环,这份 65 行的准则只是把"明确"两个字提前到了动手之前——下次 diff 比功能还大的时候,先想想是哪里没给它成功标准。

【免费下载链接】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),仅供参考

http://www.cnnetsun.cn/news/4266750.html

相关文章:

  • 996引擎-实战笔记:双击类道具触发之●盟重回城石●
  • FPGA Xilinx 7系列高速收发器GTP通信
  • 编码面试怎么高效准备:3个月软工面试备战指南
  • Apalis i.MX8X + Torizon Linux:容器化嵌入式开发实战指南
  • Kotlin 笔记
  • 3 步用深度学习做材料性能预测:Python 算法库实操指南
  • C++面试核心:内存管理、虚函数与对象模型深度解析
  • C++模板编程:从函数模板到类模板,掌握泛型编程核心机制
  • Jeff Dean 离开谷歌:Gemini 和 TPU 路线影响深度解析
  • MATLAB数学建模实战:从数据导入到算法优化的高效编程指南
  • OpenClaw 用久了越来越卡?从诊断到提速的完整性能优化指南
  • Hamilton方法详解与Matlab实现:席位分配公平性算法
  • WebGPU玻璃材质渲染:反射、折射与菲涅尔效应的完整实现
  • Adafruit TinyS3实战:u.FL天线与ESP32-S3极限小尺寸开发板全解析
  • MATLAB GUI实现图论路径规划:Floyd算法与SVM在俄尔普斯问题中的应用
  • Python-100-Days:Python学习路径,100天从新手到全栈实战的完整地图
  • Hermes Agent自定义工具怎么开发:3步注册一个能用的自定义工具集
  • 空间智能决策引擎 × 智能决策:空间会思考,安全有答案
  • 大模型接入编程工具链:从报错排查到OpenAI兼容接口配置指南
  • 工程视角解读最优Agnostic PAC算法:样本复杂度与模型选择
  • 如何用AI进行高校教材编写?6个步骤+实用工具,轻松搞定教材!
  • 上岸学姐真心话❗90%同学查重降重全做错!OKBIYE双功能才是合规通关关键
  • Skills3:给 Claude 装的「技能包」,如何让它产出能打开的文档
  • Spring Boot校园兼职小程序后端实战:从架构设计到部署优化
  • SWE Refactor Bench:用全仓库栈迁移评测Coding Agent的长期任务能力
  • Superpowers:5分钟给AI编程助手装上一套完整的开发流程
  • 专用Agent开发实战:从零构建安全审查智能体
  • 棋盘覆盖问题:递归分治算法详解与Python实现
  • 改进灰狼优化算法(I-GWO)原理与Python实现:提升多元函数寻优性能
  • 数据科学与大数据技术毕设2026开题帮助