news 2026/8/28 14:54:04

用 andrej-karpathy-skills 让 LLM 代码更可靠:从确认到验证的三步流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 andrej-karpathy-skills 让 LLM 代码更可靠:从确认到验证的三步流程

用 andrej-karpathy-skills 让 LLM 代码更可靠:从确认到验证的三步流程

【免费下载链接】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 加一个小导出按钮,却换回 300 行 diff:它"顺手"重构了旁边的代码,还加了个没人要的缓存层。如果你也被这类 AI 编程翻车折磨过,可以试试 andrej-karpathy-skills——一套基于 Andrej Karpathy 对 LLM 写代码观察整理出的开源技能包,用 4 条原则约束 AI 编码行为,文末会讲如何配置。

🩺 先诊断:LLM 写代码的三类毛病

LLM 生成的代码问题看似零散,其实能归并成三类根因:

  • 擅自假设:指令有歧义时,它挑一个自己认为最可能的解释,闷头写下去,从不回头确认。这是返工的最大来源。
  • 过度设计:爱给一次性代码套抽象层、加"灵活性"和"可配置性",100 行能写完的事写成 1000 行。
  • 改动范围失控:顺手改与任务无关的代码和注释,甚至删掉自己都没完全理解的逻辑。

按时间线设置的三道护栏

动手前:让 AI 先列出假设

写码之前,先要求它做到四点:把假设明说,不确定就问而不是猜;存在多种理解时列出来,不要悄悄选一个;有更简单的做法时直接提醒;遇到没把握的地方停下,说清哪里不清楚。以"加个导出用户数据的功能"为例,合格的反应是先追问:导出全部还是筛选后的?什么格式?包含哪些字段?仓库里的 EXAMPLES.md 给出了这类场景的完整对照案例,值得细看。

编码中:最小改动的边界

写码过程中,把 AI 限制在最小改动的框里:

不做:

  • 不添加没被要求的功能、"灵活性"和"配置项"
  • 不为只用一次的代码创建抽象层
  • 不"顺手改进"相邻代码、注释或格式
  • 不删除原本就存在的死代码

要做:

  • 用解决问题所需的最少代码,200 行能压到 50 行就重写
  • 匹配现有代码风格,不引入新写法
  • 只清理自己这次改动导致冗余的导入和变量
  • 自检一句:资深工程师会嫌这段代码复杂吗?

完成后:把模糊指令变成可验证目标

模糊的验收标准产出模糊的结果。任务收尾时,把要求转成可验证的形式:

  • "修复这个 bug" → 先写出能复现它的测试,再让它通过
  • "加上参数校验" → 为非法输入写测试,并全部跑绿
  • "重构模块 X" → 现有测试在改动前后都保持通过

多步骤任务则让它先给出"步骤 → 验证点"的清单,逐项推进。强成功标准能支撑 AI 独立循环直到完成;"让它能跑就行"这种弱标准,只会换来反复追问。

常见坑速查表

典型场景常见坑该怎么做
新增功能默认按自己猜的理解写完整套要求先列出假设和歧义,确认后再动手
写工具函数50 行逻辑被包上类和抽象层先写函数,出现第二个调用方再重构
修改现有代码连带改了格式和相邻函数命名逐行核对:每处改动能否对应你的请求
修 bug症状消失了,但无法证明已修复先写一个失败的复现测试,再改到通过
重构改完测试全红,不知道哪步改坏的改动前后各跑一遍现有测试

两种 30 秒落地的方式

方式一:Claude Code 插件(推荐)。在 Claude Code 里执行两条命令,规则对所有项目全局生效:

/plugin marketplace add forrestchang/andrej-karpathy-skills /plugin install andrej-karpathy-skills@karpathy-skills

适合:希望统一约束自己所有项目的场景。

方式二:按项目放配置文件。把仓库克隆下来,将 CLAUDE.md 放进项目根目录即可:

git clone https://gitcode.com/GitHub_Trending/an/andrej-karpathy-skills

新项目直接用作 CLAUDE.md;已有项目把它追加到原文件末尾,还可以续写项目专属规则。适合只约束单个项目、或需要混合自定义规则的场景。用 Cursor 的话,可参考仓库里的 CURSOR.md 配置对应规则,原则定义在 skills/karpathy-guidelines/SKILL.md 中。

✅ 自检清单:判断它是否生效

观察接下来的几个任务,满足以下条目说明护栏在起作用:

  • diff 里只有你请求的改动,没有"顺手"重构
  • 澄清问题发生在写码之前,而不是出错之后
  • 代码第一次就简单,很少需要让 AI"再简化一下"
  • 遇到 bug 时,AI 先写复现测试而不是直接改
  • 发现无关死代码时,它会提出来但不删除

这套护栏偏向"谨慎优先于速度":改个错别字、明显的一行修复,不用走完整流程,用判断力裁剪即可。它的目标是减少非平凡任务上的昂贵错误,而不是拖慢简单工作。下次任务先跑一遍,看看 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),仅供参考

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

Linux 常用命令及权限管理练习指南

目录 1.使用Linux常用命令 a.启用计算机后用pwd查看当前所在目录 b.用ls列出此目录中的文件和目录 c.在当前目录创建测试目录test d.利用ls,确认创建成功 e.进入test目录,并利用pwd查看 f.利用touch创建空文件newfile g.用ll命令列出所有文件 2…

作者头像 李华
网站建设 2026/8/28 14:48:05

AI Agent 办公自动化实战:从豆包工作看飞书多维表格与机器人开发

豆包工作这类 Agent 产品的出现,正在把办公软件从一个“工具型平台”变成“智能执行平台”。本文会从字节跳动发布豆包工作、并与飞书深度打通这一产品动态出发,拆解 AI Agent 在办公协作场景中的技术定位,然后落到工程实践:如何基…

作者头像 李华
网站建设 2026/8/28 14:44:33

Matlab微分方程求解实战:从初值问题到刚性系统与性能优化

1. 项目概述:为什么微分方程是工程与科研的“通用语言”?如果你正在读这篇文章,大概率是工程、物理、金融或者生物医学等领域的研究者或学生,正被一堆描述系统变化的微分方程所困扰。无论是描述电路振荡的RLC方程,还是…

作者头像 李华
网站建设 2026/8/28 14:43:47

一定要把:豆包生成的水印盖住

我们的影响力这么大,如果不把水印盖住,很多人就会开始用豆包来生成视频,到时候可能直接导致这个东西策略发生改变。所以一定要盖住。第一步:先用静态图盖住,优化以后再说

作者头像 李华