5.8 KiB
Executable File
5.8 KiB
Executable File
Andrej Karpathy Skills 研究
基于 Karpathy 洞察的 AI 编程行为指南
归档:2026-04-23
📊 项目概览
| 项目 | Stars | 定位 |
|---|---|---|
| andrej-karpathy-skills | ⭐ 79,105 | 核心 CLAUDE.md 行为指南 |
| karpathy-wiki | ⭐ 66 | LLM Wiki 模式(知识库) |
| superpowers-zh | ⭐ 1,331 | 含 Karpathy 汉化版 |
💡 核心洞察
Karpathy 指出 AI 编程的四大问题:
"模型会替你做出错误假设并一路走下去。它们不管理困惑、不寻求澄清、不暴露矛盾、不展示权衡、不该推的时候不推。"
"它们喜欢过度复杂化代码和 API、膨胀抽象、不清理死代码……用 1000 行实现 100 行就能搞定的事。"
"它们有时会修改/删除它们不理解的代码和注释,即使与任务无关。"
🎯 四大原则
原则 1: Think Before Coding(先思考再编码)
解决问题:错误假设、隐藏困惑、缺少权衡
| 行为 | 说明 |
|---|---|
| 明确假设 | 不确定就问,不要猜 |
| 多种解读 | 有歧义时不要默默选择 |
| 该推就推 | 有更简单方法就说出来 |
| 困惑就停 | 说清哪里不清楚并询问 |
原则 2: Simplicity First(简单优先)
解决问题:过度复杂化、膨胀抽象
| 规则 | 说明 |
|---|---|
| ❌ 不要额外功能 | 只做被要求的 |
| ❌ 不要一次性抽象 | 只有一处用就别抽象 |
| ❌ 不要"灵活性" | 没要求就别做 |
| ❌ 不要不可能场景的错误处理 | 过度防御 |
| ✅ 200 行能改 50 行就重写 | 保持简洁 |
测试标准:资深工程师会说这过度复杂吗?如果是,简化。
原则 3: Surgical Changes(精准修改)
解决问题:无关修改、碰不该碰的代码
| 规则 | 说明 |
|---|---|
| ❌ 不要"改进"相邻代码 | 只改必须改的 |
| ❌ 不要重构没坏的东西 | |
| ✅ 匹配现有风格 | 即使你会不同做法 |
| ✅ 发现死代码提一嘴 | 但别删(除非被要求) |
| ✅ 清理自己引入的孤儿 | 自己的垃圾自己收拾 |
测试标准:每行变更都能追溯到用户需求。
原则 4: Goal-Driven Execution(目标驱动执行)
解决问题:模糊的成功标准、反复沟通
| 不要说 | 应该说 |
|---|---|
| "加验证" | "写无效输入测试,然后让它通过" |
| "修 Bug" | "写复现测试,然后修复" |
| "重构 X" | "确保重构前后测试通过" |
Karpathy 原话:
"LLM 非常擅长循环直到达成具体目标……不要告诉它怎么做,给它成功标准然后看它干活。"
🚀 安装方式
Claude Code 插件(推荐)
/plugin marketplace add forrestchang/andrej-karpathy-skills
/plugin install andrej-karpathy-skills@karpathy-skills
项目级 CLAUDE.md
# 新项目
curl -o CLAUDE.md https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md
# 已有项目(追加)
curl https://raw.githubusercontent.com/forrestchang/andrej-karpathy-skills/main/CLAUDE.md >> CLAUDE.md
Cursor
项目自带 .cursor/rules/karpathy-guidelines.mdc
📋 效果检验
| ✅ 好的信号 | ❌ 不好的信号 |
|---|---|
| Diff 里只有被要求的变更 | 大量无关修改 |
| 代码第一次就简洁 | 因为过度复杂重写 |
| 实现前会提问题 | 做完才发现理解错了 |
| PR 干净最小 | 附带重构和"改进" |
🧠 Karpathy Wiki(衍生项目)
定位:基于 Karpathy LLM Wiki 模式的持久知识库技能
两种 Wiki
| 类型 | 用途 |
|---|---|
| Research Wiki | 研究/学习/个人知识管理 |
| Project Wiki | 代码库文档自动生成 |
三层结构
Raw Sources(原始资料)
↓
The Wiki(LLM 生成的结构化知识库)
↓
The Schema(SKILL.md 定义规范)
三种操作
| 操作 | 说明 |
|---|---|
| Ingest | 处理新资料,更新 10-15 页 |
| Query | 搜索知识库,合成答案 |
| Lint | 健康检查:矛盾、过期、孤立页面 |
安装
# 通用知识库
cp -r karpathy-wiki ~/.claude/skills/wiki
# 项目知识库
cp -r karpathy-project-wiki ~/.claude/skills/project-wiki
使用
"Initialize a wiki for my research on [topic]"
"Initialize a project wiki for this codebase"
自动触发:
- 添加新资料到
raw/ - 问综合问题("比较 A 和 B")
- 请求健康检查("lint the wiki")
🌐 中文版本
项目:vtroisWhite/andrej-karpathy-skills ⭐ 87
完整简体中文翻译。
📊 对比 Superpowers
| 维度 | Karpathy Skills | Superpowers |
|---|---|---|
| Stars | 79k | 159k |
| 定位 | 行为准则 | 完整方法论 |
| 复杂度 | 单文件 | 20+ Skills |
| 安装 | 一个 CLAUDE.md | 插件系统 |
| 适用 | 所有 AI 编程工具 | 需 Skills 支持的工具 |
| 互补 | ✅ 可以一起用 | ✅ 可以一起用 |
🔗 资源
AI工程索引
相关笔记:
- INDEX_AI工程 - AI工程知识索引
- ClaudeCode完全研究 - Claude Code 完整指南
- ClaudeCodeSuperpowers - Superpowers 方法论
整理:知识库管理员 | 归档:2026-04-23