菜单

Administrator
发布于 2026-05-20 / 2 阅读
0
0

Andrej Karpathy Skills:Karpathy 式 AI 编码准则 — 让 LLM 像资深工程师那样写代码

Andrej Karpathy Skills:Karpathy 式 AI 编码准则 — 让 LLM 像资深工程师那样写代码

项目介绍

Andrej Karpathy Skills(仓库:multica-ai/andrej-karpathy-skills)不是一个传统的代码工具,而是一份精心设计的 CLAUDE.md 文件,将 AI 先驱 Andrej Karpathy 关于 LLM 编码缺陷的深刻观察系统化为四 条可执行的编码准则

项目由 Forrest Chang(Multica)创建,基于 Karpathy 在 X(Twitter)上发表的对 LLM 编码问题的观察帖。截至目前,该项目已获得 139,897 Stars,单日增长 2,620 Stars,成为 GitHub 当日最受关注的"思想驱动型"开源项目。

核心动机:Karpathy 观察到的四大问题

Karpathy 认为当前 LLM 在编码中存在四个核心缺陷:

  1. 错误的假设——模型会擅自替你做假设而不验证
  2. 过度复杂化——把 100 行能解决的问题写成 1000 行
  3. 附带损害——修改不该改的代码,删除不理解的内容
  4. 缺乏目标感——完成任务不校验结果

“它们真的喜欢过度复杂化代码和 API,堆砌抽象层,不清除死代码……当 100 行就够的时候,实现一个臃肿的 1000 行结构。”

四个核心原则

1️⃣ 先思考再编码(Think Before Coding)

  • 明确陈述假设——不确定时间问,不要猜测
  • 呈现多种解释——歧义存在时不要默默选择一种
  • 必要时要反驳——如果存在更简单的方案,要指出来
  • 困惑时停下——指出不明确之处并请求澄清

2️⃣ 简约优先(Simplicity First)

  • 不添加超出需求的功能
  • 不为单次使用的代码创建抽象层
  • 不添加未要求的"灵活性"
  • 不处理不可能发生的错误场景
  • 如果 200 行能写成 50 行,重写它

检验标准: 资深工程师会觉得这个实现过于复杂吗?如果是,简化它。

3️⃣ 精准修改(Surgical Changes)

  • 只动必须改的代码
  • 不要"改进"相邻的代码或注释
  • 不要重构没有问题的代码
  • 匹配现有风格,即使你会有不同做法
  • 如果你注意到不相关的死代码,提出来——但不要删除

检验标准: 每一行修改都应该直接追溯到用户的请求。

4️⃣ 目标驱动执行(Goal-Driven Execution)

将命令式任务转化为可验证的目标:

不要这样说 要这样转化
“添加验证” “先写无效输入的测试,然后让它们通过”
“修复 Bug” “先写复现 Bug 的测试,然后让测试通过”
“重构 X” “确保重构前后测试都通过”

Karpathy 关键洞见:“LLM 在循环迭代直到达成特定目标方面异常出色……不要告诉它做什么,给它成功标准,然后看它自己完成。”

安装方式

方式 A:Claude Code 插件(推荐)

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

方式 B:CLAUDE.md(按项目)

# 新项目
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md

# 已有项目(追加)
echo "" >> CLAUDE.md
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md

Cursor 用户

仓库包含已提交的规则文件(.cursor/rules/karpathy-guidelines.mdc),可跨项目使用。

实用效果与权衡

使用效果:

  • 不必要的 diff 显著减少
  • 更少的代码重写
  • 实施之前主动提出澄清问题
  • 生成更干净、更简洁的 PR

权衡: 偏重谨慎而非速度。对于简单任务(拼写修正、一行改动),需要人工判断——并非每次修改都需要完整的四步流程。

类似项目对比

项目 相似点 差异
obra/superpowers 都是 AI 编码方法论 Superpowers 是完整的开发流程方法论,内容更丰富但更重;Karpathy Skills 仅一个 CLAUDE.md,极简
mattpocock/skills 都是 AI Agent 技能集合 mattpocock/skills 更注重工程实操(diagnose、tdd 等具体命令);Karpathy Skills 更注重思维原则
anthropics/skills Anthropic 官方技能库 官方出品,内容更全面但缺少 Karpathy 独特的"简约主义"视角

结合当前 AI 发展背景的分析

2026 年 5 月,AI 编码工具已经度过了"能不能生成代码"的阶段,进入了"如何生成高质量代码"的新阶段。Andrej Karpathy Skills 的爆火并非偶然:

  1. Token 经济学的驱动——RTK 和 CodeGraph 从技术层面优化 Token 消耗,而 Karpathy Skills 从行为层面减少无意义的代码修改——两者相辅相成
  2. "质量焦虑"的体现——开发者发现 AI 虽然能写很多代码,但这些代码往往过度设计。Karpathy 的核心批评准确击中了这一痛点
  3. 思想框架的重要性——在一个框架泛滥的时代(GSD、BMAD、Spec-Kit),Karpathy Skills 通过一份简单的 MD 文件,用 4 条原则影响 AI 的行为——这是"极简主义方法论"的胜利

对开发者的启示: 与其找更"智能"的模型,不如给现有模型更好的行为指南。一个精心设计的 CLAUDE.md 文件,可能比换更大的模型带来更显著的编码质量提升。


更新记录(2026-05-20)

  • 首次上榜,当日 Stars 增长 2,620+
  • 总 Stars 达到 139,897
  • 进入 GitHub Trending 今日榜 Top 3

评论